{"version":3,"file":"static/js/main.0eacff07.js","mappings":"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","sources":["../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/classCallCheck.js","../node_modules/@babel/runtime/helpers/createClass.js","../node_modules/@babel/runtime/helpers/createSuper.js","../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/inherits.js","../node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/regenerator/index.js","../node_modules/@ethersproject/keccak256/node_modules/js-sha3/src/sha3.js","../node_modules/@metamask/logo/index.js","../node_modules/base64-js/index.js","../node_modules/bech32/index.js","../node_modules/bn.js/lib/bn.js","../node_modules/bowser/es5.js","../node_modules/buffer/index.js","../node_modules/cookie/index.js","../node_modules/dijkstrajs/dijkstra.js","../node_modules/encode-utf8/index.js","../node_modules/es5-ext/global.js","../node_modules/gl-mat4/identity.js","../node_modules/gl-mat4/invert.js","../node_modules/gl-mat4/lookAt.js","../node_modules/gl-mat4/multiply.js","../node_modules/gl-mat4/perspective.js","../node_modules/gl-mat4/rotate.js","../node_modules/gl-vec3/transformMat4.js","../node_modules/hash.js/lib/hash.js","../node_modules/hash.js/lib/hash/common.js","../node_modules/hash.js/lib/hash/hmac.js","../node_modules/hash.js/lib/hash/ripemd.js","../node_modules/hash.js/lib/hash/sha.js","../node_modules/hash.js/lib/hash/sha/1.js","../node_modules/hash.js/lib/hash/sha/224.js","../node_modules/hash.js/lib/hash/sha/256.js","../node_modules/hash.js/lib/hash/sha/384.js","../node_modules/hash.js/lib/hash/sha/512.js","../node_modules/hash.js/lib/hash/sha/common.js","../node_modules/hash.js/lib/hash/utils.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.js","../node_modules/ieee754/index.js","../node_modules/inherits/inherits_browser.js","../node_modules/jquery/dist/jquery.js","../node_modules/minimalistic-assert/index.js","../node_modules/object-assign/index.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/qrcode/lib/browser.js","../node_modules/qrcode/lib/can-promise.js","../node_modules/qrcode/lib/core/alignment-pattern.js","../node_modules/qrcode/lib/core/alphanumeric-data.js","../node_modules/qrcode/lib/core/bit-buffer.js","../node_modules/qrcode/lib/core/bit-matrix.js","../node_modules/qrcode/lib/core/byte-data.js","../node_modules/qrcode/lib/core/error-correction-code.js","../node_modules/qrcode/lib/core/error-correction-level.js","../node_modules/qrcode/lib/core/finder-pattern.js","../node_modules/qrcode/lib/core/format-info.js","../node_modules/qrcode/lib/core/galois-field.js","../node_modules/qrcode/lib/core/kanji-data.js","../node_modules/qrcode/lib/core/mask-pattern.js","../node_modules/qrcode/lib/core/mode.js","../node_modules/qrcode/lib/core/numeric-data.js","../node_modules/qrcode/lib/core/polynomial.js","../node_modules/qrcode/lib/core/qrcode.js","../node_modules/qrcode/lib/core/reed-solomon-encoder.js","../node_modules/qrcode/lib/core/regex.js","../node_modules/qrcode/lib/core/segments.js","../node_modules/qrcode/lib/core/utils.js","../node_modules/qrcode/lib/core/version-check.js","../node_modules/qrcode/lib/core/version.js","../node_modules/qrcode/lib/renderer/canvas.js","../node_modules/qrcode/lib/renderer/svg-tag.js","../node_modules/qrcode/lib/renderer/utils.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/index.js","../node_modules/react-fast-compare/index.js","../node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-is/index.js","../node_modules/react-side-effect/lib/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/regenerator-runtime/runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/regex.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/validate.js","../node_modules/uuid/dist/esm-browser/v1.js","../node_modules/uuid/dist/esm-browser/parse.js","../node_modules/uuid/dist/esm-browser/v35.js","../node_modules/uuid/dist/esm-browser/md5.js","../node_modules/uuid/dist/esm-browser/v3.js","../node_modules/uuid/dist/esm-browser/v4.js","../node_modules/uuid/dist/esm-browser/sha1.js","../node_modules/uuid/dist/esm-browser/v5.js","../node_modules/uuid/dist/esm-browser/nil.js","../node_modules/uuid/dist/esm-browser/version.js","../node_modules/websocket/lib/browser.js","../node_modules/websocket/lib/version.js","../webpack/bootstrap","../webpack/runtime/amd options","../webpack/runtime/compat get default export","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/extends.js","../../packages/react-router/index.tsx","../../packages/react-router-dom/index.tsx","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","logo.svg","../node_modules/universal-cookie/es6/utils.js","../node_modules/universal-cookie/es6/Cookies.js","../node_modules/react-cookie/es6/Cookies.js","../node_modules/react-cookie/es6/CookiesContext.js","../node_modules/react-cookie/es6/useCookies.js","../node_modules/react-cookie/es6/utils.js","../node_modules/react-helmet/es/Helmet.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/createClass.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/inherits.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/typeof.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/createSuper.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../node_modules/@ethersproject/logger/src.ts/_version.ts","../node_modules/@ethersproject/logger/src.ts/index.ts","../node_modules/@ethersproject/properties/src.ts/_version.ts","../node_modules/@ethersproject/properties/src.ts/index.ts","../node_modules/@ethersproject/providers/src.ts/_version.ts","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/superPropBase.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/get.js","../node_modules/@ethersproject/abstract-signer/src.ts/_version.ts","../node_modules/@ethersproject/abstract-signer/src.ts/index.ts","../node_modules/@ethersproject/bytes/src.ts/index.ts","../node_modules/@ethersproject/bytes/src.ts/_version.ts","../node_modules/@ethersproject/bignumber/src.ts/_version.ts","../node_modules/@ethersproject/bignumber/src.ts/bignumber.ts","../node_modules/@ethersproject/keccak256/src.ts/index.ts","../node_modules/@ethersproject/rlp/src.ts/_version.ts","../node_modules/@ethersproject/rlp/src.ts/index.ts","../node_modules/@ethersproject/address/src.ts/_version.ts","../node_modules/@ethersproject/address/src.ts/index.ts","../node_modules/@ethersproject/hash/src.ts/_version.ts","../node_modules/@ethersproject/strings/src.ts/utf8.ts","../node_modules/@ethersproject/strings/src.ts/_version.ts","../node_modules/@ethersproject/hash/src.ts/id.ts","../node_modules/@ethersproject/hash/src.ts/typed-data.ts","../node_modules/@ethersproject/constants/src.ts/bignumbers.ts","../node_modules/node_modules/minimalistic-assert/index.js","../node_modules/node_modules/minimalistic-crypto-utils/lib/utils.js","../node_modules/node_modules/elliptic/lib/elliptic/utils.js","../node_modules/node_modules/elliptic/lib/elliptic/curve/base.js","../node_modules/node_modules/inherits/inherits_browser.js","../node_modules/node_modules/elliptic/lib/elliptic/curve/short.js","../node_modules/node_modules/elliptic/lib/elliptic/curve/index.js","../node_modules/node_modules/elliptic/lib/elliptic/curves.js","../node_modules/node_modules/hmac-drbg/lib/hmac-drbg.js","../node_modules/node_modules/elliptic/lib/elliptic/ec/key.js","../node_modules/node_modules/elliptic/lib/elliptic/ec/signature.js","../node_modules/node_modules/elliptic/lib/elliptic/ec/index.js","../node_modules/@ethersproject/signing-key/lib.esm/elliptic.js","../node_modules/node_modules/elliptic/lib/elliptic.js","../node_modules/@ethersproject/signing-key/src.ts/index.ts","../node_modules/@ethersproject/signing-key/src.ts/_version.ts","../node_modules/@ethersproject/transactions/src.ts/_version.ts","../node_modules/@ethersproject/transactions/src.ts/index.ts","../node_modules/@ethersproject/base64/src.ts/browser-base64.ts","../node_modules/@ethersproject/web/src.ts/_version.ts","../node_modules/@ethersproject/web/src.ts/browser-geturl.ts","../node_modules/@ethersproject/web/src.ts/index.ts","../node_modules/@ethersproject/abstract-provider/src.ts/_version.ts","../node_modules/@ethersproject/abstract-provider/src.ts/index.ts","../node_modules/@ethersproject/basex/src.ts/index.ts","../node_modules/@ethersproject/strings/src.ts/idna.ts","../node_modules/@ethersproject/hash/src.ts/namehash.ts","../node_modules/@ethersproject/networks/src.ts/_version.ts","../node_modules/@ethersproject/networks/src.ts/index.ts","../node_modules/@ethersproject/sha2/src.ts/browser-sha2.ts","../node_modules/@ethersproject/sha2/src.ts/_version.ts","../node_modules/@ethersproject/providers/src.ts/formatter.ts","../node_modules/@ethersproject/constants/src.ts/addresses.ts","../node_modules/@ethersproject/providers/src.ts/base-provider.ts","../node_modules/@ethersproject/constants/src.ts/hashes.ts","../node_modules/@ethersproject/providers/src.ts/json-rpc-provider.ts","../node_modules/@ethersproject/providers/src.ts/web3-provider.ts","../node_modules/@headlessui/react/src/utils/render.ts","../node_modules/@headlessui/react/src/utils/match.ts","../node_modules/@headlessui/react/src/hooks/use-iso-morphic-effect.ts","../node_modules/@headlessui/react/src/hooks/use-server-handoff-complete.ts","../node_modules/@headlessui/react/src/hooks/use-id.ts","../node_modules/@headlessui/react/src/hooks/use-is-mounted.ts","../node_modules/@headlessui/react/src/internal/open-closed.tsx","../node_modules/@headlessui/react/src/components/transitions/utils/transition.ts","../node_modules/@headlessui/react/src/utils/disposables.ts","../node_modules/@headlessui/react/src/utils/once.ts","../node_modules/@headlessui/react/src/components/transitions/transition.tsx","../node_modules/@headlessui/react/src/components/keyboard.ts","../node_modules/@headlessui/react/src/hooks/use-is-initial-render.ts","../node_modules/@headlessui/react/src/hooks/use-sync-refs.ts","../node_modules/@headlessui/react/src/utils/bugs.ts","../node_modules/@headlessui/react/src/hooks/use-window-event.ts","../node_modules/@headlessui/react/src/utils/focus-management.ts","../node_modules/@headlessui/react/src/hooks/use-focus-trap.ts","../node_modules/@headlessui/react/src/hooks/use-inert-others.ts","../node_modules/@headlessui/react/src/internal/portal-force-root.tsx","../node_modules/@headlessui/react/src/components/portal/portal.tsx","../node_modules/@headlessui/react/src/components/description/description.tsx","../node_modules/@headlessui/react/src/internal/stack-context.tsx","../node_modules/@headlessui/react/src/components/dialog/dialog.tsx","../node_modules/@heroicons/react/outline/esm/CheckCircleIcon.js","../node_modules/@heroicons/react/outline/esm/ChevronDownIcon.js","../node_modules/@heroicons/react/outline/esm/IdentificationIcon.js","../node_modules/@heroicons/react/outline/esm/ZoomOutIcon.js","components/login.js","../node_modules/@heroicons/react/solid/esm/QrcodeIcon.js","../node_modules/@heroicons/react/solid/esm/XIcon.js","components/SignupSuccess.js","../node_modules/@fortawesome/fontawesome-svg-core/index.es.js","../node_modules/@fortawesome/react-fontawesome/index.es.js","../node_modules/@headlessui/react/src/components/disclosure/disclosure.tsx","../node_modules/@fortawesome/free-brands-svg-icons/index.es.js","components/authedContent.js","components/logoutModal.js","../node_modules/@headlessui/react/src/hooks/use-resolve-button-type.ts","components/faq.js","pages/home.js","pages/otk.js","metamask.svg","../node_modules/@metamask/onboarding/dist/metamask-onboarding.es.js","components/SignUp.js","App.js","reportWebVitals.js","../node_modules/immer/src/utils/errors.ts","../node_modules/immer/src/utils/common.ts","../node_modules/immer/src/utils/plugins.ts","../node_modules/immer/src/core/scope.ts","../node_modules/immer/src/core/finalize.ts","../node_modules/immer/src/core/proxy.ts","../node_modules/immer/src/core/immerClass.ts","../node_modules/immer/src/core/current.ts","../node_modules/immer/src/plugins/es5.ts","../node_modules/immer/src/immer.ts","../node_modules/immer/src/utils/env.ts","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../javascript/esm|/opt/buildhome/repo/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/redux/es/redux.js","../node_modules/redux-thunk/es/index.js","../node_modules/@reduxjs/toolkit/src/devtoolsExtension.ts","../node_modules/@reduxjs/toolkit/src/isPlainObject.ts","../node_modules/@reduxjs/toolkit/src/utils.ts","../node_modules/@reduxjs/toolkit/src/getDefaultMiddleware.ts","../node_modules/@reduxjs/toolkit/src/index.ts","app/store.js","../node_modules/@reduxjs/toolkit/src/configureStore.ts","../node_modules/react-redux/es/components/Context.js","../node_modules/react-redux/es/utils/batch.js","../node_modules/react-redux/es/utils/Subscription.js","../node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","../node_modules/react-redux/es/components/Provider.js","../node_modules/react-redux/es/hooks/useSelector.js","../node_modules/react-redux/es/index.js","index.js"],"sourcesContent":["function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\n\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\n\nvar possibleConstructorReturn = require(\"./possibleConstructorReturn.js\");\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return possibleConstructorReturn(this, result);\n };\n}\n\nmodule.exports = _createSuper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\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 Object.defineProperty(subClass, \"prototype\", {\n value: Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n }),\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"@babel/runtime/helpers/typeof\")[\"default\"];\n\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\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\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _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 }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\n\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","module.exports = require(\"regenerator-runtime\");\n","/**\n * [js-sha3]{@link https://github.com/emn178/js-sha3}\n *\n * @version 0.8.0\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\n * @copyright Chen, Yi-Cyuan 2015-2018\n * @license MIT\n */\n/*jslint bitwise: true */\n(function () {\n 'use strict';\n\n var INPUT_ERROR = 'input is invalid type';\n var FINALIZE_ERROR = 'finalize already called';\n var WINDOW = typeof window === 'object';\n var root = WINDOW ? window : {};\n if (root.JS_SHA3_NO_WINDOW) {\n WINDOW = false;\n }\n var WEB_WORKER = !WINDOW && typeof self === 'object';\n var NODE_JS = !root.JS_SHA3_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node;\n if (NODE_JS) {\n root = global;\n } else if (WEB_WORKER) {\n root = self;\n }\n var COMMON_JS = !root.JS_SHA3_NO_COMMON_JS && typeof module === 'object' && module.exports;\n var AMD = typeof define === 'function' && define.amd;\n var ARRAY_BUFFER = !root.JS_SHA3_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined';\n var HEX_CHARS = '0123456789abcdef'.split('');\n var SHAKE_PADDING = [31, 7936, 2031616, 520093696];\n var CSHAKE_PADDING = [4, 1024, 262144, 67108864];\n var KECCAK_PADDING = [1, 256, 65536, 16777216];\n var PADDING = [6, 1536, 393216, 100663296];\n var SHIFT = [0, 8, 16, 24];\n var RC = [1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0, 2147483649,\n 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0, 2147516425, 0,\n 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905, 2147483648, 32771,\n 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0, 2147483658, 2147483648,\n 2147516545, 2147483648, 32896, 2147483648, 2147483649, 0, 2147516424, 2147483648];\n var BITS = [224, 256, 384, 512];\n var SHAKE_BITS = [128, 256];\n var OUTPUT_TYPES = ['hex', 'buffer', 'arrayBuffer', 'array', 'digest'];\n var CSHAKE_BYTEPAD = {\n '128': 168,\n '256': 136\n };\n\n if (root.JS_SHA3_NO_NODE_JS || !Array.isArray) {\n Array.isArray = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n };\n }\n\n if (ARRAY_BUFFER && (root.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) {\n ArrayBuffer.isView = function (obj) {\n return typeof obj === 'object' && obj.buffer && obj.buffer.constructor === ArrayBuffer;\n };\n }\n\n var createOutputMethod = function (bits, padding, outputType) {\n return function (message) {\n return new Keccak(bits, padding, bits).update(message)[outputType]();\n };\n };\n\n var createShakeOutputMethod = function (bits, padding, outputType) {\n return function (message, outputBits) {\n return new Keccak(bits, padding, outputBits).update(message)[outputType]();\n };\n };\n\n var createCshakeOutputMethod = function (bits, padding, outputType) {\n return function (message, outputBits, n, s) {\n return methods['cshake' + bits].update(message, outputBits, n, s)[outputType]();\n };\n };\n\n var createKmacOutputMethod = function (bits, padding, outputType) {\n return function (key, message, outputBits, s) {\n return methods['kmac' + bits].update(key, message, outputBits, s)[outputType]();\n };\n };\n\n var createOutputMethods = function (method, createMethod, bits, padding) {\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createMethod(bits, padding, type);\n }\n return method;\n };\n\n var createMethod = function (bits, padding) {\n var method = createOutputMethod(bits, padding, 'hex');\n method.create = function () {\n return new Keccak(bits, padding, bits);\n };\n method.update = function (message) {\n return method.create().update(message);\n };\n return createOutputMethods(method, createOutputMethod, bits, padding);\n };\n\n var createShakeMethod = function (bits, padding) {\n var method = createShakeOutputMethod(bits, padding, 'hex');\n method.create = function (outputBits) {\n return new Keccak(bits, padding, outputBits);\n };\n method.update = function (message, outputBits) {\n return method.create(outputBits).update(message);\n };\n return createOutputMethods(method, createShakeOutputMethod, bits, padding);\n };\n\n var createCshakeMethod = function (bits, padding) {\n var w = CSHAKE_BYTEPAD[bits];\n var method = createCshakeOutputMethod(bits, padding, 'hex');\n method.create = function (outputBits, n, s) {\n if (!n && !s) {\n return methods['shake' + bits].create(outputBits);\n } else {\n return new Keccak(bits, padding, outputBits).bytepad([n, s], w);\n }\n };\n method.update = function (message, outputBits, n, s) {\n return method.create(outputBits, n, s).update(message);\n };\n return createOutputMethods(method, createCshakeOutputMethod, bits, padding);\n };\n\n var createKmacMethod = function (bits, padding) {\n var w = CSHAKE_BYTEPAD[bits];\n var method = createKmacOutputMethod(bits, padding, 'hex');\n method.create = function (key, outputBits, s) {\n return new Kmac(bits, padding, outputBits).bytepad(['KMAC', s], w).bytepad([key], w);\n };\n method.update = function (key, message, outputBits, s) {\n return method.create(key, outputBits, s).update(message);\n };\n return createOutputMethods(method, createKmacOutputMethod, bits, padding);\n };\n\n var algorithms = [\n { name: 'keccak', padding: KECCAK_PADDING, bits: BITS, createMethod: createMethod },\n { name: 'sha3', padding: PADDING, bits: BITS, createMethod: createMethod },\n { name: 'shake', padding: SHAKE_PADDING, bits: SHAKE_BITS, createMethod: createShakeMethod },\n { name: 'cshake', padding: CSHAKE_PADDING, bits: SHAKE_BITS, createMethod: createCshakeMethod },\n { name: 'kmac', padding: CSHAKE_PADDING, bits: SHAKE_BITS, createMethod: createKmacMethod }\n ];\n\n var methods = {}, methodNames = [];\n\n for (var i = 0; i < algorithms.length; ++i) {\n var algorithm = algorithms[i];\n var bits = algorithm.bits;\n for (var j = 0; j < bits.length; ++j) {\n var methodName = algorithm.name + '_' + bits[j];\n methodNames.push(methodName);\n methods[methodName] = algorithm.createMethod(bits[j], algorithm.padding);\n if (algorithm.name !== 'sha3') {\n var newMethodName = algorithm.name + bits[j];\n methodNames.push(newMethodName);\n methods[newMethodName] = methods[methodName];\n }\n }\n }\n\n function Keccak(bits, padding, outputBits) {\n this.blocks = [];\n this.s = [];\n this.padding = padding;\n this.outputBits = outputBits;\n this.reset = true;\n this.finalized = false;\n this.block = 0;\n this.start = 0;\n this.blockCount = (1600 - (bits << 1)) >> 5;\n this.byteCount = this.blockCount << 2;\n this.outputBlocks = outputBits >> 5;\n this.extraBytes = (outputBits & 31) >> 3;\n\n for (var i = 0; i < 50; ++i) {\n this.s[i] = 0;\n }\n }\n\n Keccak.prototype.update = function (message) {\n if (this.finalized) {\n throw new Error(FINALIZE_ERROR);\n }\n var notString, type = typeof message;\n if (type !== 'string') {\n if (type === 'object') {\n if (message === null) {\n throw new Error(INPUT_ERROR);\n } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n } else if (!Array.isArray(message)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) {\n throw new Error(INPUT_ERROR);\n }\n }\n } else {\n throw new Error(INPUT_ERROR);\n }\n notString = true;\n }\n var blocks = this.blocks, byteCount = this.byteCount, length = message.length,\n blockCount = this.blockCount, index = 0, s = this.s, i, code;\n\n while (index < length) {\n if (this.reset) {\n this.reset = false;\n blocks[0] = this.block;\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n if (notString) {\n for (i = this.start; index < length && i < byteCount; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = this.start; index < length && i < byteCount; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (message.charCodeAt(++index) & 0x3ff));\n blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n }\n }\n }\n this.lastByteIndex = i;\n if (i >= byteCount) {\n this.start = i - byteCount;\n this.block = blocks[blockCount];\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n this.reset = true;\n } else {\n this.start = i;\n }\n }\n return this;\n };\n\n Keccak.prototype.encode = function (x, right) {\n var o = x & 255, n = 1;\n var bytes = [o];\n x = x >> 8;\n o = x & 255;\n while (o > 0) {\n bytes.unshift(o);\n x = x >> 8;\n o = x & 255;\n ++n;\n }\n if (right) {\n bytes.push(n);\n } else {\n bytes.unshift(n);\n }\n this.update(bytes);\n return bytes.length;\n };\n\n Keccak.prototype.encodeString = function (str) {\n var notString, type = typeof str;\n if (type !== 'string') {\n if (type === 'object') {\n if (str === null) {\n throw new Error(INPUT_ERROR);\n } else if (ARRAY_BUFFER && str.constructor === ArrayBuffer) {\n str = new Uint8Array(str);\n } else if (!Array.isArray(str)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(str)) {\n throw new Error(INPUT_ERROR);\n }\n }\n } else {\n throw new Error(INPUT_ERROR);\n }\n notString = true;\n }\n var bytes = 0, length = str.length;\n if (notString) {\n bytes = length;\n } else {\n for (var i = 0; i < str.length; ++i) {\n var code = str.charCodeAt(i);\n if (code < 0x80) {\n bytes += 1;\n } else if (code < 0x800) {\n bytes += 2;\n } else if (code < 0xd800 || code >= 0xe000) {\n bytes += 3;\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (str.charCodeAt(++i) & 0x3ff));\n bytes += 4;\n }\n }\n }\n bytes += this.encode(bytes * 8);\n this.update(str);\n return bytes;\n };\n\n Keccak.prototype.bytepad = function (strs, w) {\n var bytes = this.encode(w);\n for (var i = 0; i < strs.length; ++i) {\n bytes += this.encodeString(strs[i]);\n }\n var paddingBytes = w - bytes % w;\n var zeros = [];\n zeros.length = paddingBytes;\n this.update(zeros);\n return this;\n };\n\n Keccak.prototype.finalize = function () {\n if (this.finalized) {\n return;\n }\n this.finalized = true;\n var blocks = this.blocks, i = this.lastByteIndex, blockCount = this.blockCount, s = this.s;\n blocks[i >> 2] |= this.padding[i & 3];\n if (this.lastByteIndex === this.byteCount) {\n blocks[0] = blocks[blockCount];\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n blocks[blockCount - 1] |= 0x80000000;\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n };\n\n Keccak.prototype.toString = Keccak.prototype.hex = function () {\n this.finalize();\n\n var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks,\n extraBytes = this.extraBytes, i = 0, j = 0;\n var hex = '', block;\n while (j < outputBlocks) {\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\n block = s[i];\n hex += HEX_CHARS[(block >> 4) & 0x0F] + HEX_CHARS[block & 0x0F] +\n HEX_CHARS[(block >> 12) & 0x0F] + HEX_CHARS[(block >> 8) & 0x0F] +\n HEX_CHARS[(block >> 20) & 0x0F] + HEX_CHARS[(block >> 16) & 0x0F] +\n HEX_CHARS[(block >> 28) & 0x0F] + HEX_CHARS[(block >> 24) & 0x0F];\n }\n if (j % blockCount === 0) {\n f(s);\n i = 0;\n }\n }\n if (extraBytes) {\n block = s[i];\n hex += HEX_CHARS[(block >> 4) & 0x0F] + HEX_CHARS[block & 0x0F];\n if (extraBytes > 1) {\n hex += HEX_CHARS[(block >> 12) & 0x0F] + HEX_CHARS[(block >> 8) & 0x0F];\n }\n if (extraBytes > 2) {\n hex += HEX_CHARS[(block >> 20) & 0x0F] + HEX_CHARS[(block >> 16) & 0x0F];\n }\n }\n return hex;\n };\n\n Keccak.prototype.arrayBuffer = function () {\n this.finalize();\n\n var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks,\n extraBytes = this.extraBytes, i = 0, j = 0;\n var bytes = this.outputBits >> 3;\n var buffer;\n if (extraBytes) {\n buffer = new ArrayBuffer((outputBlocks + 1) << 2);\n } else {\n buffer = new ArrayBuffer(bytes);\n }\n var array = new Uint32Array(buffer);\n while (j < outputBlocks) {\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\n array[j] = s[i];\n }\n if (j % blockCount === 0) {\n f(s);\n }\n }\n if (extraBytes) {\n array[i] = s[i];\n buffer = buffer.slice(0, bytes);\n }\n return buffer;\n };\n\n Keccak.prototype.buffer = Keccak.prototype.arrayBuffer;\n\n Keccak.prototype.digest = Keccak.prototype.array = function () {\n this.finalize();\n\n var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks,\n extraBytes = this.extraBytes, i = 0, j = 0;\n var array = [], offset, block;\n while (j < outputBlocks) {\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\n offset = j << 2;\n block = s[i];\n array[offset] = block & 0xFF;\n array[offset + 1] = (block >> 8) & 0xFF;\n array[offset + 2] = (block >> 16) & 0xFF;\n array[offset + 3] = (block >> 24) & 0xFF;\n }\n if (j % blockCount === 0) {\n f(s);\n }\n }\n if (extraBytes) {\n offset = j << 2;\n block = s[i];\n array[offset] = block & 0xFF;\n if (extraBytes > 1) {\n array[offset + 1] = (block >> 8) & 0xFF;\n }\n if (extraBytes > 2) {\n array[offset + 2] = (block >> 16) & 0xFF;\n }\n }\n return array;\n };\n\n function Kmac(bits, padding, outputBits) {\n Keccak.call(this, bits, padding, outputBits);\n }\n\n Kmac.prototype = new Keccak();\n\n Kmac.prototype.finalize = function () {\n this.encode(this.outputBits, true);\n return Keccak.prototype.finalize.call(this);\n };\n\n var f = function (s) {\n var h, l, n, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9,\n b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17,\n b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33,\n b34, b35, b36, b37, b38, b39, b40, b41, b42, b43, b44, b45, b46, b47, b48, b49;\n for (n = 0; n < 48; n += 2) {\n c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40];\n c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41];\n c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42];\n c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43];\n c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44];\n c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45];\n c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46];\n c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47];\n c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48];\n c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49];\n\n h = c8 ^ ((c2 << 1) | (c3 >>> 31));\n l = c9 ^ ((c3 << 1) | (c2 >>> 31));\n s[0] ^= h;\n s[1] ^= l;\n s[10] ^= h;\n s[11] ^= l;\n s[20] ^= h;\n s[21] ^= l;\n s[30] ^= h;\n s[31] ^= l;\n s[40] ^= h;\n s[41] ^= l;\n h = c0 ^ ((c4 << 1) | (c5 >>> 31));\n l = c1 ^ ((c5 << 1) | (c4 >>> 31));\n s[2] ^= h;\n s[3] ^= l;\n s[12] ^= h;\n s[13] ^= l;\n s[22] ^= h;\n s[23] ^= l;\n s[32] ^= h;\n s[33] ^= l;\n s[42] ^= h;\n s[43] ^= l;\n h = c2 ^ ((c6 << 1) | (c7 >>> 31));\n l = c3 ^ ((c7 << 1) | (c6 >>> 31));\n s[4] ^= h;\n s[5] ^= l;\n s[14] ^= h;\n s[15] ^= l;\n s[24] ^= h;\n s[25] ^= l;\n s[34] ^= h;\n s[35] ^= l;\n s[44] ^= h;\n s[45] ^= l;\n h = c4 ^ ((c8 << 1) | (c9 >>> 31));\n l = c5 ^ ((c9 << 1) | (c8 >>> 31));\n s[6] ^= h;\n s[7] ^= l;\n s[16] ^= h;\n s[17] ^= l;\n s[26] ^= h;\n s[27] ^= l;\n s[36] ^= h;\n s[37] ^= l;\n s[46] ^= h;\n s[47] ^= l;\n h = c6 ^ ((c0 << 1) | (c1 >>> 31));\n l = c7 ^ ((c1 << 1) | (c0 >>> 31));\n s[8] ^= h;\n s[9] ^= l;\n s[18] ^= h;\n s[19] ^= l;\n s[28] ^= h;\n s[29] ^= l;\n s[38] ^= h;\n s[39] ^= l;\n s[48] ^= h;\n s[49] ^= l;\n\n b0 = s[0];\n b1 = s[1];\n b32 = (s[11] << 4) | (s[10] >>> 28);\n b33 = (s[10] << 4) | (s[11] >>> 28);\n b14 = (s[20] << 3) | (s[21] >>> 29);\n b15 = (s[21] << 3) | (s[20] >>> 29);\n b46 = (s[31] << 9) | (s[30] >>> 23);\n b47 = (s[30] << 9) | (s[31] >>> 23);\n b28 = (s[40] << 18) | (s[41] >>> 14);\n b29 = (s[41] << 18) | (s[40] >>> 14);\n b20 = (s[2] << 1) | (s[3] >>> 31);\n b21 = (s[3] << 1) | (s[2] >>> 31);\n b2 = (s[13] << 12) | (s[12] >>> 20);\n b3 = (s[12] << 12) | (s[13] >>> 20);\n b34 = (s[22] << 10) | (s[23] >>> 22);\n b35 = (s[23] << 10) | (s[22] >>> 22);\n b16 = (s[33] << 13) | (s[32] >>> 19);\n b17 = (s[32] << 13) | (s[33] >>> 19);\n b48 = (s[42] << 2) | (s[43] >>> 30);\n b49 = (s[43] << 2) | (s[42] >>> 30);\n b40 = (s[5] << 30) | (s[4] >>> 2);\n b41 = (s[4] << 30) | (s[5] >>> 2);\n b22 = (s[14] << 6) | (s[15] >>> 26);\n b23 = (s[15] << 6) | (s[14] >>> 26);\n b4 = (s[25] << 11) | (s[24] >>> 21);\n b5 = (s[24] << 11) | (s[25] >>> 21);\n b36 = (s[34] << 15) | (s[35] >>> 17);\n b37 = (s[35] << 15) | (s[34] >>> 17);\n b18 = (s[45] << 29) | (s[44] >>> 3);\n b19 = (s[44] << 29) | (s[45] >>> 3);\n b10 = (s[6] << 28) | (s[7] >>> 4);\n b11 = (s[7] << 28) | (s[6] >>> 4);\n b42 = (s[17] << 23) | (s[16] >>> 9);\n b43 = (s[16] << 23) | (s[17] >>> 9);\n b24 = (s[26] << 25) | (s[27] >>> 7);\n b25 = (s[27] << 25) | (s[26] >>> 7);\n b6 = (s[36] << 21) | (s[37] >>> 11);\n b7 = (s[37] << 21) | (s[36] >>> 11);\n b38 = (s[47] << 24) | (s[46] >>> 8);\n b39 = (s[46] << 24) | (s[47] >>> 8);\n b30 = (s[8] << 27) | (s[9] >>> 5);\n b31 = (s[9] << 27) | (s[8] >>> 5);\n b12 = (s[18] << 20) | (s[19] >>> 12);\n b13 = (s[19] << 20) | (s[18] >>> 12);\n b44 = (s[29] << 7) | (s[28] >>> 25);\n b45 = (s[28] << 7) | (s[29] >>> 25);\n b26 = (s[38] << 8) | (s[39] >>> 24);\n b27 = (s[39] << 8) | (s[38] >>> 24);\n b8 = (s[48] << 14) | (s[49] >>> 18);\n b9 = (s[49] << 14) | (s[48] >>> 18);\n\n s[0] = b0 ^ (~b2 & b4);\n s[1] = b1 ^ (~b3 & b5);\n s[10] = b10 ^ (~b12 & b14);\n s[11] = b11 ^ (~b13 & b15);\n s[20] = b20 ^ (~b22 & b24);\n s[21] = b21 ^ (~b23 & b25);\n s[30] = b30 ^ (~b32 & b34);\n s[31] = b31 ^ (~b33 & b35);\n s[40] = b40 ^ (~b42 & b44);\n s[41] = b41 ^ (~b43 & b45);\n s[2] = b2 ^ (~b4 & b6);\n s[3] = b3 ^ (~b5 & b7);\n s[12] = b12 ^ (~b14 & b16);\n s[13] = b13 ^ (~b15 & b17);\n s[22] = b22 ^ (~b24 & b26);\n s[23] = b23 ^ (~b25 & b27);\n s[32] = b32 ^ (~b34 & b36);\n s[33] = b33 ^ (~b35 & b37);\n s[42] = b42 ^ (~b44 & b46);\n s[43] = b43 ^ (~b45 & b47);\n s[4] = b4 ^ (~b6 & b8);\n s[5] = b5 ^ (~b7 & b9);\n s[14] = b14 ^ (~b16 & b18);\n s[15] = b15 ^ (~b17 & b19);\n s[24] = b24 ^ (~b26 & b28);\n s[25] = b25 ^ (~b27 & b29);\n s[34] = b34 ^ (~b36 & b38);\n s[35] = b35 ^ (~b37 & b39);\n s[44] = b44 ^ (~b46 & b48);\n s[45] = b45 ^ (~b47 & b49);\n s[6] = b6 ^ (~b8 & b0);\n s[7] = b7 ^ (~b9 & b1);\n s[16] = b16 ^ (~b18 & b10);\n s[17] = b17 ^ (~b19 & b11);\n s[26] = b26 ^ (~b28 & b20);\n s[27] = b27 ^ (~b29 & b21);\n s[36] = b36 ^ (~b38 & b30);\n s[37] = b37 ^ (~b39 & b31);\n s[46] = b46 ^ (~b48 & b40);\n s[47] = b47 ^ (~b49 & b41);\n s[8] = b8 ^ (~b0 & b2);\n s[9] = b9 ^ (~b1 & b3);\n s[18] = b18 ^ (~b10 & b12);\n s[19] = b19 ^ (~b11 & b13);\n s[28] = b28 ^ (~b20 & b22);\n s[29] = b29 ^ (~b21 & b23);\n s[38] = b38 ^ (~b30 & b32);\n s[39] = b39 ^ (~b31 & b33);\n s[48] = b48 ^ (~b40 & b42);\n s[49] = b49 ^ (~b41 & b43);\n\n s[0] ^= RC[n];\n s[1] ^= RC[n + 1];\n }\n };\n\n if (COMMON_JS) {\n module.exports = methods;\n } else {\n for (i = 0; i < methodNames.length; ++i) {\n root[methodNames[i]] = methods[methodNames[i]];\n }\n if (AMD) {\n define(function () {\n return methods;\n });\n }\n }\n})();\n","const perspective = require('gl-mat4/perspective')\nconst multiply = require('gl-mat4/multiply')\nconst lookAt = require('gl-mat4/lookAt')\nconst invert = require('gl-mat4/invert')\nconst rotate = require('gl-mat4/rotate')\nconst transform = require('gl-vec3/transformMat4')\nconst foxJSON = require('./fox.json')\n\nconst SVG_NS = 'http://www.w3.org/2000/svg'\n\nfunction createNode (type) {\n return document.createElementNS(SVG_NS, type)\n}\n\nfunction setAttribute (node, attribute, value) {\n node.setAttributeNS(null, attribute, value)\n}\n\nmodule.exports = function createLogo (options_) {\n const options = options_ || {}\n\n let followCursor = Boolean(options.followMouse)\n let followMotion = Boolean(options.followMotion)\n const slowDrift = Boolean(options.slowDrift)\n let shouldRender = true\n\n const DISTANCE = 400\n const lookCurrent = [0, 0]\n const lookRate = 0.3\n\n let width = options.width || 400\n let height = options.height || 400\n const container = createNode('svg')\n const mouse = {\n x: 0,\n y: 0,\n }\n\n const NUM_VERTS = foxJSON.positions.length\n\n const positions = new Float32Array(3 * NUM_VERTS)\n const transformed = new Float32Array(3 * NUM_VERTS)\n\n const toDraw = []\n\n if (!options.pxNotRatio) {\n width = (window.innerWidth * (options.width || 0.25)) | 0\n height = ((window.innerHeight * options.height) || width) | 0\n\n if ('minWidth' in options && width < options.minWidth) {\n width = options.minWidth\n height = (options.minWidth * options.height / options.width) | 0\n }\n }\n\n setAttribute(container, 'width', `${width}px`)\n setAttribute(container, 'height', `${height}px`)\n\n function setLookAt (target) {\n const bounds = container.getBoundingClientRect()\n mouse.x = 1.0 - ((2.0 * (target.x - bounds.left)) / bounds.width)\n mouse.y = 1.0 - ((2.0 * (target.y - bounds.top)) / bounds.height)\n }\n\n document.body.appendChild(container);\n (function () {\n const pp = foxJSON.positions\n let ptr = 0\n for (let i = 0; i < pp.length; ++i) {\n const p = pp[i]\n for (let j = 0; j < 3; ++j) {\n positions[ptr] = p[j]\n ptr += 1\n }\n }\n })()\n\n function Polygon (svg, indices) {\n this.svg = svg\n this.indices = indices\n this.zIndex = 0\n }\n\n const polygons = (function () {\n const _polygons = []\n for (let i = 0; i < foxJSON.chunks.length; ++i) {\n const chunk = foxJSON.chunks[i]\n const color = `rgb(${chunk.color})`\n const { faces } = chunk\n for (let j = 0; j < faces.length; ++j) {\n const f = faces[j]\n const polygon = createNode('polygon')\n setAttribute(\n polygon,\n 'fill',\n color,\n )\n setAttribute(\n polygon,\n 'stroke',\n color,\n )\n setAttribute(\n polygon,\n 'points',\n '0,0, 10,0, 0,10',\n )\n container.appendChild(polygon)\n _polygons.push(new Polygon(polygon, f))\n }\n }\n return _polygons\n })()\n\n const computeMatrix = (function () {\n const objectCenter = new Float32Array(3)\n const up = new Float32Array([0, 1, 0])\n const projection = new Float32Array(16)\n const model = new Float32Array(16)\n const view = lookAt(\n new Float32Array(16),\n new Float32Array([0, 0, DISTANCE]),\n objectCenter,\n up,\n )\n const invView = invert(new Float32Array(16), view)\n const invProjection = new Float32Array(16)\n const target = new Float32Array(3)\n const transformedMatrix = new Float32Array(16)\n\n const X = new Float32Array([1, 0, 0])\n const Y = new Float32Array([0, 1, 0])\n const Z = new Float32Array([0, 0, 1])\n\n return function () {\n const rect = container.getBoundingClientRect()\n const viewportWidth = rect.width\n const viewportHeight = rect.height\n perspective(\n projection,\n Math.PI / 4.0,\n viewportWidth / viewportHeight,\n 100.0,\n 1000.0,\n )\n invert(invProjection, projection)\n target[0] = lookCurrent[0]\n target[1] = lookCurrent[1]\n target[2] = 1.2\n transform(target, target, invProjection)\n transform(target, target, invView)\n lookAt(\n model,\n objectCenter,\n target,\n up,\n )\n if (slowDrift) {\n const time = (Date.now() / 1000.0)\n rotate(model, model, 0.1 + (Math.sin(time / 3) * 0.2), X)\n rotate(model, model, -0.1 + (Math.sin(time / 2) * 0.03), Z)\n rotate(model, model, 0.5 + (Math.sin(time / 3) * 0.2), Y)\n }\n\n multiply(transformedMatrix, projection, view)\n multiply(transformedMatrix, transformedMatrix, model)\n\n return transformedMatrix\n }\n })()\n\n function updatePositions (M) {\n const m00 = M[0]\n const m01 = M[1]\n const m02 = M[2]\n const m03 = M[3]\n const m10 = M[4]\n const m11 = M[5]\n const m12 = M[6]\n const m13 = M[7]\n const m20 = M[8]\n const m21 = M[9]\n const m22 = M[10]\n const m23 = M[11]\n const m30 = M[12]\n const m31 = M[13]\n const m32 = M[14]\n const m33 = M[15]\n\n for (let i = 0; i < NUM_VERTS; ++i) {\n const x = positions[3 * i]\n const y = positions[(3 * i) + 1]\n const z = positions[(3 * i) + 2]\n\n const tw = (x * m03) + (y * m13) + (z * m23) + m33\n transformed[3 * i] =\n ((x * m00) + (y * m10) + (z * m20) + m30) / tw\n transformed[(3 * i) + 1] =\n ((x * m01) + (y * m11) + (z * m21) + m31) / tw\n transformed[(3 * i) + 2] =\n ((x * m02) + (y * m12) + (z * m22) + m32) / tw\n }\n }\n\n function compareZ (a, b) {\n return b.zIndex - a.zIndex\n }\n\n function updateFaces () {\n let i\n const rect = container.getBoundingClientRect()\n const w = rect.width\n const h = rect.height\n toDraw.length = 0\n for (i = 0; i < polygons.length; ++i) {\n const poly = polygons[i]\n const { indices } = poly\n\n const i0 = indices[0]\n const i1 = indices[1]\n const i2 = indices[2]\n const ax = transformed[3 * i0]\n const ay = transformed[(3 * i0) + 1]\n const bx = transformed[3 * i1]\n const by = transformed[(3 * i1) + 1]\n const cx = transformed[3 * i2]\n const cy = transformed[(3 * i2) + 1]\n const det = ((bx - ax) * (cy - ay)) - ((by - ay) * (cx - ax))\n if (det < 0) {\n continue\n }\n\n const points = []\n let zmax = -Infinity\n let zmin = Infinity\n const element = poly.svg\n for (let j = 0; j < 3; ++j) {\n const idx = indices[j]\n points.push(\n `${0.5 * w * (1.0 - transformed[3 * idx])},${\n 0.5 * h * (1.0 - transformed[(3 * idx) + 1])}`,\n )\n const z = transformed[(3 * idx) + 2]\n zmax = Math.max(zmax, z)\n zmin = Math.min(zmin, z)\n }\n poly.zIndex = zmax + (0.25 * zmin)\n const joinedPoints = points.join(' ')\n\n if (joinedPoints.indexOf('NaN') === -1) {\n setAttribute(element, 'points', joinedPoints)\n }\n\n toDraw.push(poly)\n }\n toDraw.sort(compareZ)\n container.innerHTML = ''\n for (i = 0; i < toDraw.length; ++i) {\n container.appendChild(toDraw[i].svg)\n }\n }\n\n function stopAnimation () {\n shouldRender = false\n }\n function startAnimation () {\n shouldRender = true\n }\n function setFollowMouse (state) {\n followCursor = state\n }\n function setFollowMotion (state) {\n followMotion = state\n }\n\n window.addEventListener('mousemove', function (ev) {\n if (!shouldRender) {\n startAnimation()\n }\n if (followCursor) {\n setLookAt({\n x: ev.clientX,\n y: ev.clientY,\n })\n renderScene()\n }\n })\n\n window.addEventListener('deviceorientation', function (event) {\n if (!shouldRender) {\n startAnimation()\n }\n if (followMotion) {\n // gamma: left to right\n const leftToRight = event.gamma\n // beta: front back motion\n const frontToBack = event.beta\n // x offset: needed to correct the intial position\n const xOffset = 200\n // y offset: needed to correct the intial position\n const yOffset = -300\n // acceleration\n const acceleration = 10\n\n setLookAt({\n x: xOffset + (leftToRight * acceleration),\n y: yOffset + (frontToBack * acceleration),\n })\n renderScene()\n }\n })\n\n function lookAtAndRender (target) {\n setLookAt(target)\n\n lookCurrent[0] = mouse.x\n lookCurrent[1] = mouse.y + (0.085 / lookRate)\n\n const matrix = computeMatrix()\n updatePositions(matrix)\n updateFaces()\n stopAnimation()\n }\n\n function renderScene () {\n if (!shouldRender) {\n return\n }\n window.requestAnimationFrame(renderScene)\n\n const li = (1.0 - lookRate)\n\n lookCurrent[0] = (li * lookCurrent[0]) + (lookRate * mouse.x)\n lookCurrent[1] = (li * lookCurrent[1]) + (lookRate * mouse.y) + 0.085\n\n const matrix = computeMatrix()\n updatePositions(matrix)\n updateFaces()\n stopAnimation()\n }\n\n renderScene()\n\n return {\n container,\n lookAt: setLookAt,\n setFollowMouse,\n setFollowMotion,\n stopAnimation,\n startAnimation,\n lookAtAndRender,\n }\n}\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","'use strict'\nvar ALPHABET = 'qpzry9x8gf2tvdw0s3jn54khce6mua7l'\n\n// pre-compute lookup table\nvar ALPHABET_MAP = {}\nfor (var z = 0; z < ALPHABET.length; z++) {\n var x = ALPHABET.charAt(z)\n\n if (ALPHABET_MAP[x] !== undefined) throw new TypeError(x + ' is ambiguous')\n ALPHABET_MAP[x] = z\n}\n\nfunction polymodStep (pre) {\n var b = pre >> 25\n return ((pre & 0x1FFFFFF) << 5) ^\n (-((b >> 0) & 1) & 0x3b6a57b2) ^\n (-((b >> 1) & 1) & 0x26508e6d) ^\n (-((b >> 2) & 1) & 0x1ea119fa) ^\n (-((b >> 3) & 1) & 0x3d4233dd) ^\n (-((b >> 4) & 1) & 0x2a1462b3)\n}\n\nfunction prefixChk (prefix) {\n var chk = 1\n for (var i = 0; i < prefix.length; ++i) {\n var c = prefix.charCodeAt(i)\n if (c < 33 || c > 126) return 'Invalid prefix (' + prefix + ')'\n\n chk = polymodStep(chk) ^ (c >> 5)\n }\n chk = polymodStep(chk)\n\n for (i = 0; i < prefix.length; ++i) {\n var v = prefix.charCodeAt(i)\n chk = polymodStep(chk) ^ (v & 0x1f)\n }\n return chk\n}\n\nfunction encode (prefix, words, LIMIT) {\n LIMIT = LIMIT || 90\n if ((prefix.length + 7 + words.length) > LIMIT) throw new TypeError('Exceeds length limit')\n\n prefix = prefix.toLowerCase()\n\n // determine chk mod\n var chk = prefixChk(prefix)\n if (typeof chk === 'string') throw new Error(chk)\n\n var result = prefix + '1'\n for (var i = 0; i < words.length; ++i) {\n var x = words[i]\n if ((x >> 5) !== 0) throw new Error('Non 5-bit word')\n\n chk = polymodStep(chk) ^ x\n result += ALPHABET.charAt(x)\n }\n\n for (i = 0; i < 6; ++i) {\n chk = polymodStep(chk)\n }\n chk ^= 1\n\n for (i = 0; i < 6; ++i) {\n var v = (chk >> ((5 - i) * 5)) & 0x1f\n result += ALPHABET.charAt(v)\n }\n\n return result\n}\n\nfunction __decode (str, LIMIT) {\n LIMIT = LIMIT || 90\n if (str.length < 8) return str + ' too short'\n if (str.length > LIMIT) return 'Exceeds length limit'\n\n // don't allow mixed case\n var lowered = str.toLowerCase()\n var uppered = str.toUpperCase()\n if (str !== lowered && str !== uppered) return 'Mixed-case string ' + str\n str = lowered\n\n var split = str.lastIndexOf('1')\n if (split === -1) return 'No separator character for ' + str\n if (split === 0) return 'Missing prefix for ' + str\n\n var prefix = str.slice(0, split)\n var wordChars = str.slice(split + 1)\n if (wordChars.length < 6) return 'Data too short'\n\n var chk = prefixChk(prefix)\n if (typeof chk === 'string') return chk\n\n var words = []\n for (var i = 0; i < wordChars.length; ++i) {\n var c = wordChars.charAt(i)\n var v = ALPHABET_MAP[c]\n if (v === undefined) return 'Unknown character ' + c\n chk = polymodStep(chk) ^ v\n\n // not in the checksum?\n if (i + 6 >= wordChars.length) continue\n words.push(v)\n }\n\n if (chk !== 1) return 'Invalid checksum for ' + str\n return { prefix: prefix, words: words }\n}\n\nfunction decodeUnsafe () {\n var res = __decode.apply(null, arguments)\n if (typeof res === 'object') return res\n}\n\nfunction decode (str) {\n var res = __decode.apply(null, arguments)\n if (typeof res === 'object') return res\n\n throw new Error(res)\n}\n\nfunction convert (data, inBits, outBits, pad) {\n var value = 0\n var bits = 0\n var maxV = (1 << outBits) - 1\n\n var result = []\n for (var i = 0; i < data.length; ++i) {\n value = (value << inBits) | data[i]\n bits += inBits\n\n while (bits >= outBits) {\n bits -= outBits\n result.push((value >> bits) & maxV)\n }\n }\n\n if (pad) {\n if (bits > 0) {\n result.push((value << (outBits - bits)) & maxV)\n }\n } else {\n if (bits >= inBits) return 'Excess padding'\n if ((value << (outBits - bits)) & maxV) return 'Non-zero padding'\n }\n\n return result\n}\n\nfunction toWordsUnsafe (bytes) {\n var res = convert(bytes, 8, 5, true)\n if (Array.isArray(res)) return res\n}\n\nfunction toWords (bytes) {\n var res = convert(bytes, 8, 5, true)\n if (Array.isArray(res)) return res\n\n throw new Error(res)\n}\n\nfunction fromWordsUnsafe (words) {\n var res = convert(words, 5, 8, false)\n if (Array.isArray(res)) return res\n}\n\nfunction fromWords (words) {\n var res = convert(words, 5, 8, false)\n if (Array.isArray(res)) return res\n\n throw new Error(res)\n}\n\nmodule.exports = {\n decodeUnsafe: decodeUnsafe,\n decode: decode,\n encode: encode,\n toWordsUnsafe: toWordsUnsafe,\n toWords: toWords,\n fromWordsUnsafe: fromWordsUnsafe,\n fromWords: fromWords\n}\n","(function (module, exports) {\n 'use strict';\n\n // Utils\n function assert (val, msg) {\n if (!val) throw new Error(msg || 'Assertion failed');\n }\n\n // Could use `inherits` module, but don't want to move from single file\n // architecture yet.\n function inherits (ctor, superCtor) {\n ctor.super_ = superCtor;\n var TempCtor = function () {};\n TempCtor.prototype = superCtor.prototype;\n ctor.prototype = new TempCtor();\n ctor.prototype.constructor = ctor;\n }\n\n // BN\n\n function BN (number, base, endian) {\n if (BN.isBN(number)) {\n return number;\n }\n\n this.negative = 0;\n this.words = null;\n this.length = 0;\n\n // Reduction context\n this.red = null;\n\n if (number !== null) {\n if (base === 'le' || base === 'be') {\n endian = base;\n base = 10;\n }\n\n this._init(number || 0, base || 10, endian || 'be');\n }\n }\n if (typeof module === 'object') {\n module.exports = BN;\n } else {\n exports.BN = BN;\n }\n\n BN.BN = BN;\n BN.wordSize = 26;\n\n var Buffer;\n try {\n if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') {\n Buffer = window.Buffer;\n } else {\n Buffer = require('buffer').Buffer;\n }\n } catch (e) {\n }\n\n BN.isBN = function isBN (num) {\n if (num instanceof BN) {\n return true;\n }\n\n return num !== null && typeof num === 'object' &&\n num.constructor.wordSize === BN.wordSize && Array.isArray(num.words);\n };\n\n BN.max = function max (left, right) {\n if (left.cmp(right) > 0) return left;\n return right;\n };\n\n BN.min = function min (left, right) {\n if (left.cmp(right) < 0) return left;\n return right;\n };\n\n BN.prototype._init = function init (number, base, endian) {\n if (typeof number === 'number') {\n return this._initNumber(number, base, endian);\n }\n\n if (typeof number === 'object') {\n return this._initArray(number, base, endian);\n }\n\n if (base === 'hex') {\n base = 16;\n }\n assert(base === (base | 0) && base >= 2 && base <= 36);\n\n number = number.toString().replace(/\\s+/g, '');\n var start = 0;\n if (number[0] === '-') {\n start++;\n this.negative = 1;\n }\n\n if (start < number.length) {\n if (base === 16) {\n this._parseHex(number, start, endian);\n } else {\n this._parseBase(number, base, start);\n if (endian === 'le') {\n this._initArray(this.toArray(), base, endian);\n }\n }\n }\n };\n\n BN.prototype._initNumber = function _initNumber (number, base, endian) {\n if (number < 0) {\n this.negative = 1;\n number = -number;\n }\n if (number < 0x4000000) {\n this.words = [ number & 0x3ffffff ];\n this.length = 1;\n } else if (number < 0x10000000000000) {\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff\n ];\n this.length = 2;\n } else {\n assert(number < 0x20000000000000); // 2 ^ 53 (unsafe)\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff,\n 1\n ];\n this.length = 3;\n }\n\n if (endian !== 'le') return;\n\n // Reverse the bytes\n this._initArray(this.toArray(), base, endian);\n };\n\n BN.prototype._initArray = function _initArray (number, base, endian) {\n // Perhaps a Uint8Array\n assert(typeof number.length === 'number');\n if (number.length <= 0) {\n this.words = [ 0 ];\n this.length = 1;\n return this;\n }\n\n this.length = Math.ceil(number.length / 3);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n var j, w;\n var off = 0;\n if (endian === 'be') {\n for (i = number.length - 1, j = 0; i >= 0; i -= 3) {\n w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n } else if (endian === 'le') {\n for (i = 0, j = 0; i < number.length; i += 3) {\n w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n }\n return this.strip();\n };\n\n function parseHex4Bits (string, index) {\n var c = string.charCodeAt(index);\n // 'A' - 'F'\n if (c >= 65 && c <= 70) {\n return c - 55;\n // 'a' - 'f'\n } else if (c >= 97 && c <= 102) {\n return c - 87;\n // '0' - '9'\n } else {\n return (c - 48) & 0xf;\n }\n }\n\n function parseHexByte (string, lowerBound, index) {\n var r = parseHex4Bits(string, index);\n if (index - 1 >= lowerBound) {\n r |= parseHex4Bits(string, index - 1) << 4;\n }\n return r;\n }\n\n BN.prototype._parseHex = function _parseHex (number, start, endian) {\n // Create possibly bigger array to ensure that it fits the number\n this.length = Math.ceil((number.length - start) / 6);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n // 24-bits chunks\n var off = 0;\n var j = 0;\n\n var w;\n if (endian === 'be') {\n for (i = number.length - 1; i >= start; i -= 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n } else {\n var parseLength = number.length - start;\n for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n }\n\n this.strip();\n };\n\n function parseBase (str, start, end, mul) {\n var r = 0;\n var len = Math.min(str.length, end);\n for (var i = start; i < len; i++) {\n var c = str.charCodeAt(i) - 48;\n\n r *= mul;\n\n // 'a'\n if (c >= 49) {\n r += c - 49 + 0xa;\n\n // 'A'\n } else if (c >= 17) {\n r += c - 17 + 0xa;\n\n // '0' - '9'\n } else {\n r += c;\n }\n }\n return r;\n }\n\n BN.prototype._parseBase = function _parseBase (number, base, start) {\n // Initialize as zero\n this.words = [ 0 ];\n this.length = 1;\n\n // Find length of limb in base\n for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) {\n limbLen++;\n }\n limbLen--;\n limbPow = (limbPow / base) | 0;\n\n var total = number.length - start;\n var mod = total % limbLen;\n var end = Math.min(total, total - mod) + start;\n\n var word = 0;\n for (var i = start; i < end; i += limbLen) {\n word = parseBase(number, i, i + limbLen, base);\n\n this.imuln(limbPow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n if (mod !== 0) {\n var pow = 1;\n word = parseBase(number, i, number.length, base);\n\n for (i = 0; i < mod; i++) {\n pow *= base;\n }\n\n this.imuln(pow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n this.strip();\n };\n\n BN.prototype.copy = function copy (dest) {\n dest.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n dest.words[i] = this.words[i];\n }\n dest.length = this.length;\n dest.negative = this.negative;\n dest.red = this.red;\n };\n\n BN.prototype.clone = function clone () {\n var r = new BN(null);\n this.copy(r);\n return r;\n };\n\n BN.prototype._expand = function _expand (size) {\n while (this.length < size) {\n this.words[this.length++] = 0;\n }\n return this;\n };\n\n // Remove leading `0` from `this`\n BN.prototype.strip = function strip () {\n while (this.length > 1 && this.words[this.length - 1] === 0) {\n this.length--;\n }\n return this._normSign();\n };\n\n BN.prototype._normSign = function _normSign () {\n // -0 = 0\n if (this.length === 1 && this.words[0] === 0) {\n this.negative = 0;\n }\n return this;\n };\n\n BN.prototype.inspect = function inspect () {\n return (this.red ? '';\n };\n\n /*\n\n var zeros = [];\n var groupSizes = [];\n var groupBases = [];\n\n var s = '';\n var i = -1;\n while (++i < BN.wordSize) {\n zeros[i] = s;\n s += '0';\n }\n groupSizes[0] = 0;\n groupSizes[1] = 0;\n groupBases[0] = 0;\n groupBases[1] = 0;\n var base = 2 - 1;\n while (++base < 36 + 1) {\n var groupSize = 0;\n var groupBase = 1;\n while (groupBase < (1 << BN.wordSize) / base) {\n groupBase *= base;\n groupSize += 1;\n }\n groupSizes[base] = groupSize;\n groupBases[base] = groupBase;\n }\n\n */\n\n var zeros = [\n '',\n '0',\n '00',\n '000',\n '0000',\n '00000',\n '000000',\n '0000000',\n '00000000',\n '000000000',\n '0000000000',\n '00000000000',\n '000000000000',\n '0000000000000',\n '00000000000000',\n '000000000000000',\n '0000000000000000',\n '00000000000000000',\n '000000000000000000',\n '0000000000000000000',\n '00000000000000000000',\n '000000000000000000000',\n '0000000000000000000000',\n '00000000000000000000000',\n '000000000000000000000000',\n '0000000000000000000000000'\n ];\n\n var groupSizes = [\n 0, 0,\n 25, 16, 12, 11, 10, 9, 8,\n 8, 7, 7, 7, 7, 6, 6,\n 6, 6, 6, 6, 6, 5, 5,\n 5, 5, 5, 5, 5, 5, 5,\n 5, 5, 5, 5, 5, 5, 5\n ];\n\n var groupBases = [\n 0, 0,\n 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216,\n 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625,\n 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632,\n 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149,\n 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176\n ];\n\n BN.prototype.toString = function toString (base, padding) {\n base = base || 10;\n padding = padding | 0 || 1;\n\n var out;\n if (base === 16 || base === 'hex') {\n out = '';\n var off = 0;\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = this.words[i];\n var word = (((w << off) | carry) & 0xffffff).toString(16);\n carry = (w >>> (24 - off)) & 0xffffff;\n if (carry !== 0 || i !== this.length - 1) {\n out = zeros[6 - word.length] + word + out;\n } else {\n out = word + out;\n }\n off += 2;\n if (off >= 26) {\n off -= 26;\n i--;\n }\n }\n if (carry !== 0) {\n out = carry.toString(16) + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n if (base === (base | 0) && base >= 2 && base <= 36) {\n // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base));\n var groupSize = groupSizes[base];\n // var groupBase = Math.pow(base, groupSize);\n var groupBase = groupBases[base];\n out = '';\n var c = this.clone();\n c.negative = 0;\n while (!c.isZero()) {\n var r = c.modn(groupBase).toString(base);\n c = c.idivn(groupBase);\n\n if (!c.isZero()) {\n out = zeros[groupSize - r.length] + r + out;\n } else {\n out = r + out;\n }\n }\n if (this.isZero()) {\n out = '0' + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n assert(false, 'Base should be between 2 and 36');\n };\n\n BN.prototype.toNumber = function toNumber () {\n var ret = this.words[0];\n if (this.length === 2) {\n ret += this.words[1] * 0x4000000;\n } else if (this.length === 3 && this.words[2] === 0x01) {\n // NOTE: at this stage it is known that the top bit is set\n ret += 0x10000000000000 + (this.words[1] * 0x4000000);\n } else if (this.length > 2) {\n assert(false, 'Number can only safely store up to 53 bits');\n }\n return (this.negative !== 0) ? -ret : ret;\n };\n\n BN.prototype.toJSON = function toJSON () {\n return this.toString(16);\n };\n\n BN.prototype.toBuffer = function toBuffer (endian, length) {\n assert(typeof Buffer !== 'undefined');\n return this.toArrayLike(Buffer, endian, length);\n };\n\n BN.prototype.toArray = function toArray (endian, length) {\n return this.toArrayLike(Array, endian, length);\n };\n\n BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) {\n var byteLength = this.byteLength();\n var reqLength = length || Math.max(1, byteLength);\n assert(byteLength <= reqLength, 'byte array longer than desired length');\n assert(reqLength > 0, 'Requested array length <= 0');\n\n this.strip();\n var littleEndian = endian === 'le';\n var res = new ArrayType(reqLength);\n\n var b, i;\n var q = this.clone();\n if (!littleEndian) {\n // Assume big-endian\n for (i = 0; i < reqLength - byteLength; i++) {\n res[i] = 0;\n }\n\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[reqLength - i - 1] = b;\n }\n } else {\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[i] = b;\n }\n\n for (; i < reqLength; i++) {\n res[i] = 0;\n }\n }\n\n return res;\n };\n\n if (Math.clz32) {\n BN.prototype._countBits = function _countBits (w) {\n return 32 - Math.clz32(w);\n };\n } else {\n BN.prototype._countBits = function _countBits (w) {\n var t = w;\n var r = 0;\n if (t >= 0x1000) {\n r += 13;\n t >>>= 13;\n }\n if (t >= 0x40) {\n r += 7;\n t >>>= 7;\n }\n if (t >= 0x8) {\n r += 4;\n t >>>= 4;\n }\n if (t >= 0x02) {\n r += 2;\n t >>>= 2;\n }\n return r + t;\n };\n }\n\n BN.prototype._zeroBits = function _zeroBits (w) {\n // Short-cut\n if (w === 0) return 26;\n\n var t = w;\n var r = 0;\n if ((t & 0x1fff) === 0) {\n r += 13;\n t >>>= 13;\n }\n if ((t & 0x7f) === 0) {\n r += 7;\n t >>>= 7;\n }\n if ((t & 0xf) === 0) {\n r += 4;\n t >>>= 4;\n }\n if ((t & 0x3) === 0) {\n r += 2;\n t >>>= 2;\n }\n if ((t & 0x1) === 0) {\n r++;\n }\n return r;\n };\n\n // Return number of used bits in a BN\n BN.prototype.bitLength = function bitLength () {\n var w = this.words[this.length - 1];\n var hi = this._countBits(w);\n return (this.length - 1) * 26 + hi;\n };\n\n function toBitArray (num) {\n var w = new Array(num.bitLength());\n\n for (var bit = 0; bit < w.length; bit++) {\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n w[bit] = (num.words[off] & (1 << wbit)) >>> wbit;\n }\n\n return w;\n }\n\n // Number of trailing zero bits\n BN.prototype.zeroBits = function zeroBits () {\n if (this.isZero()) return 0;\n\n var r = 0;\n for (var i = 0; i < this.length; i++) {\n var b = this._zeroBits(this.words[i]);\n r += b;\n if (b !== 26) break;\n }\n return r;\n };\n\n BN.prototype.byteLength = function byteLength () {\n return Math.ceil(this.bitLength() / 8);\n };\n\n BN.prototype.toTwos = function toTwos (width) {\n if (this.negative !== 0) {\n return this.abs().inotn(width).iaddn(1);\n }\n return this.clone();\n };\n\n BN.prototype.fromTwos = function fromTwos (width) {\n if (this.testn(width - 1)) {\n return this.notn(width).iaddn(1).ineg();\n }\n return this.clone();\n };\n\n BN.prototype.isNeg = function isNeg () {\n return this.negative !== 0;\n };\n\n // Return negative clone of `this`\n BN.prototype.neg = function neg () {\n return this.clone().ineg();\n };\n\n BN.prototype.ineg = function ineg () {\n if (!this.isZero()) {\n this.negative ^= 1;\n }\n\n return this;\n };\n\n // Or `num` with `this` in-place\n BN.prototype.iuor = function iuor (num) {\n while (this.length < num.length) {\n this.words[this.length++] = 0;\n }\n\n for (var i = 0; i < num.length; i++) {\n this.words[i] = this.words[i] | num.words[i];\n }\n\n return this.strip();\n };\n\n BN.prototype.ior = function ior (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuor(num);\n };\n\n // Or `num` with `this`\n BN.prototype.or = function or (num) {\n if (this.length > num.length) return this.clone().ior(num);\n return num.clone().ior(this);\n };\n\n BN.prototype.uor = function uor (num) {\n if (this.length > num.length) return this.clone().iuor(num);\n return num.clone().iuor(this);\n };\n\n // And `num` with `this` in-place\n BN.prototype.iuand = function iuand (num) {\n // b = min-length(num, this)\n var b;\n if (this.length > num.length) {\n b = num;\n } else {\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = this.words[i] & num.words[i];\n }\n\n this.length = b.length;\n\n return this.strip();\n };\n\n BN.prototype.iand = function iand (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuand(num);\n };\n\n // And `num` with `this`\n BN.prototype.and = function and (num) {\n if (this.length > num.length) return this.clone().iand(num);\n return num.clone().iand(this);\n };\n\n BN.prototype.uand = function uand (num) {\n if (this.length > num.length) return this.clone().iuand(num);\n return num.clone().iuand(this);\n };\n\n // Xor `num` with `this` in-place\n BN.prototype.iuxor = function iuxor (num) {\n // a.length > b.length\n var a;\n var b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = a.words[i] ^ b.words[i];\n }\n\n if (this !== a) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = a.length;\n\n return this.strip();\n };\n\n BN.prototype.ixor = function ixor (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuxor(num);\n };\n\n // Xor `num` with `this`\n BN.prototype.xor = function xor (num) {\n if (this.length > num.length) return this.clone().ixor(num);\n return num.clone().ixor(this);\n };\n\n BN.prototype.uxor = function uxor (num) {\n if (this.length > num.length) return this.clone().iuxor(num);\n return num.clone().iuxor(this);\n };\n\n // Not ``this`` with ``width`` bitwidth\n BN.prototype.inotn = function inotn (width) {\n assert(typeof width === 'number' && width >= 0);\n\n var bytesNeeded = Math.ceil(width / 26) | 0;\n var bitsLeft = width % 26;\n\n // Extend the buffer with leading zeroes\n this._expand(bytesNeeded);\n\n if (bitsLeft > 0) {\n bytesNeeded--;\n }\n\n // Handle complete words\n for (var i = 0; i < bytesNeeded; i++) {\n this.words[i] = ~this.words[i] & 0x3ffffff;\n }\n\n // Handle the residue\n if (bitsLeft > 0) {\n this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft));\n }\n\n // And remove leading zeroes\n return this.strip();\n };\n\n BN.prototype.notn = function notn (width) {\n return this.clone().inotn(width);\n };\n\n // Set `bit` of `this`\n BN.prototype.setn = function setn (bit, val) {\n assert(typeof bit === 'number' && bit >= 0);\n\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n this._expand(off + 1);\n\n if (val) {\n this.words[off] = this.words[off] | (1 << wbit);\n } else {\n this.words[off] = this.words[off] & ~(1 << wbit);\n }\n\n return this.strip();\n };\n\n // Add `num` to `this` in-place\n BN.prototype.iadd = function iadd (num) {\n var r;\n\n // negative + positive\n if (this.negative !== 0 && num.negative === 0) {\n this.negative = 0;\n r = this.isub(num);\n this.negative ^= 1;\n return this._normSign();\n\n // positive + negative\n } else if (this.negative === 0 && num.negative !== 0) {\n num.negative = 0;\n r = this.isub(num);\n num.negative = 1;\n return r._normSign();\n }\n\n // a.length > b.length\n var a, b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) + (b.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n\n this.length = a.length;\n if (carry !== 0) {\n this.words[this.length] = carry;\n this.length++;\n // Copy the rest of the words\n } else if (a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n return this;\n };\n\n // Add `num` to `this`\n BN.prototype.add = function add (num) {\n var res;\n if (num.negative !== 0 && this.negative === 0) {\n num.negative = 0;\n res = this.sub(num);\n num.negative ^= 1;\n return res;\n } else if (num.negative === 0 && this.negative !== 0) {\n this.negative = 0;\n res = num.sub(this);\n this.negative = 1;\n return res;\n }\n\n if (this.length > num.length) return this.clone().iadd(num);\n\n return num.clone().iadd(this);\n };\n\n // Subtract `num` from `this` in-place\n BN.prototype.isub = function isub (num) {\n // this - (-num) = this + num\n if (num.negative !== 0) {\n num.negative = 0;\n var r = this.iadd(num);\n num.negative = 1;\n return r._normSign();\n\n // -this - num = -(this + num)\n } else if (this.negative !== 0) {\n this.negative = 0;\n this.iadd(num);\n this.negative = 1;\n return this._normSign();\n }\n\n // At this point both numbers are positive\n var cmp = this.cmp(num);\n\n // Optimization - zeroify\n if (cmp === 0) {\n this.negative = 0;\n this.length = 1;\n this.words[0] = 0;\n return this;\n }\n\n // a > b\n var a, b;\n if (cmp > 0) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) - (b.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n\n // Copy rest of the words\n if (carry === 0 && i < a.length && a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = Math.max(this.length, i);\n\n if (a !== this) {\n this.negative = 1;\n }\n\n return this.strip();\n };\n\n // Subtract `num` from `this`\n BN.prototype.sub = function sub (num) {\n return this.clone().isub(num);\n };\n\n function smallMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n var len = (self.length + num.length) | 0;\n out.length = len;\n len = (len - 1) | 0;\n\n // Peel one iteration (compiler can't do it, because of code complexity)\n var a = self.words[0] | 0;\n var b = num.words[0] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n var carry = (r / 0x4000000) | 0;\n out.words[0] = lo;\n\n for (var k = 1; k < len; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = carry >>> 26;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = (k - j) | 0;\n a = self.words[i] | 0;\n b = num.words[j] | 0;\n r = a * b + rword;\n ncarry += (r / 0x4000000) | 0;\n rword = r & 0x3ffffff;\n }\n out.words[k] = rword | 0;\n carry = ncarry | 0;\n }\n if (carry !== 0) {\n out.words[k] = carry | 0;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n // TODO(indutny): it may be reasonable to omit it for users who don't need\n // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit\n // multiplication (like elliptic secp256k1).\n var comb10MulTo = function comb10MulTo (self, num, out) {\n var a = self.words;\n var b = num.words;\n var o = out.words;\n var c = 0;\n var lo;\n var mid;\n var hi;\n var a0 = a[0] | 0;\n var al0 = a0 & 0x1fff;\n var ah0 = a0 >>> 13;\n var a1 = a[1] | 0;\n var al1 = a1 & 0x1fff;\n var ah1 = a1 >>> 13;\n var a2 = a[2] | 0;\n var al2 = a2 & 0x1fff;\n var ah2 = a2 >>> 13;\n var a3 = a[3] | 0;\n var al3 = a3 & 0x1fff;\n var ah3 = a3 >>> 13;\n var a4 = a[4] | 0;\n var al4 = a4 & 0x1fff;\n var ah4 = a4 >>> 13;\n var a5 = a[5] | 0;\n var al5 = a5 & 0x1fff;\n var ah5 = a5 >>> 13;\n var a6 = a[6] | 0;\n var al6 = a6 & 0x1fff;\n var ah6 = a6 >>> 13;\n var a7 = a[7] | 0;\n var al7 = a7 & 0x1fff;\n var ah7 = a7 >>> 13;\n var a8 = a[8] | 0;\n var al8 = a8 & 0x1fff;\n var ah8 = a8 >>> 13;\n var a9 = a[9] | 0;\n var al9 = a9 & 0x1fff;\n var ah9 = a9 >>> 13;\n var b0 = b[0] | 0;\n var bl0 = b0 & 0x1fff;\n var bh0 = b0 >>> 13;\n var b1 = b[1] | 0;\n var bl1 = b1 & 0x1fff;\n var bh1 = b1 >>> 13;\n var b2 = b[2] | 0;\n var bl2 = b2 & 0x1fff;\n var bh2 = b2 >>> 13;\n var b3 = b[3] | 0;\n var bl3 = b3 & 0x1fff;\n var bh3 = b3 >>> 13;\n var b4 = b[4] | 0;\n var bl4 = b4 & 0x1fff;\n var bh4 = b4 >>> 13;\n var b5 = b[5] | 0;\n var bl5 = b5 & 0x1fff;\n var bh5 = b5 >>> 13;\n var b6 = b[6] | 0;\n var bl6 = b6 & 0x1fff;\n var bh6 = b6 >>> 13;\n var b7 = b[7] | 0;\n var bl7 = b7 & 0x1fff;\n var bh7 = b7 >>> 13;\n var b8 = b[8] | 0;\n var bl8 = b8 & 0x1fff;\n var bh8 = b8 >>> 13;\n var b9 = b[9] | 0;\n var bl9 = b9 & 0x1fff;\n var bh9 = b9 >>> 13;\n\n out.negative = self.negative ^ num.negative;\n out.length = 19;\n /* k = 0 */\n lo = Math.imul(al0, bl0);\n mid = Math.imul(al0, bh0);\n mid = (mid + Math.imul(ah0, bl0)) | 0;\n hi = Math.imul(ah0, bh0);\n var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0;\n w0 &= 0x3ffffff;\n /* k = 1 */\n lo = Math.imul(al1, bl0);\n mid = Math.imul(al1, bh0);\n mid = (mid + Math.imul(ah1, bl0)) | 0;\n hi = Math.imul(ah1, bh0);\n lo = (lo + Math.imul(al0, bl1)) | 0;\n mid = (mid + Math.imul(al0, bh1)) | 0;\n mid = (mid + Math.imul(ah0, bl1)) | 0;\n hi = (hi + Math.imul(ah0, bh1)) | 0;\n var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0;\n w1 &= 0x3ffffff;\n /* k = 2 */\n lo = Math.imul(al2, bl0);\n mid = Math.imul(al2, bh0);\n mid = (mid + Math.imul(ah2, bl0)) | 0;\n hi = Math.imul(ah2, bh0);\n lo = (lo + Math.imul(al1, bl1)) | 0;\n mid = (mid + Math.imul(al1, bh1)) | 0;\n mid = (mid + Math.imul(ah1, bl1)) | 0;\n hi = (hi + Math.imul(ah1, bh1)) | 0;\n lo = (lo + Math.imul(al0, bl2)) | 0;\n mid = (mid + Math.imul(al0, bh2)) | 0;\n mid = (mid + Math.imul(ah0, bl2)) | 0;\n hi = (hi + Math.imul(ah0, bh2)) | 0;\n var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0;\n w2 &= 0x3ffffff;\n /* k = 3 */\n lo = Math.imul(al3, bl0);\n mid = Math.imul(al3, bh0);\n mid = (mid + Math.imul(ah3, bl0)) | 0;\n hi = Math.imul(ah3, bh0);\n lo = (lo + Math.imul(al2, bl1)) | 0;\n mid = (mid + Math.imul(al2, bh1)) | 0;\n mid = (mid + Math.imul(ah2, bl1)) | 0;\n hi = (hi + Math.imul(ah2, bh1)) | 0;\n lo = (lo + Math.imul(al1, bl2)) | 0;\n mid = (mid + Math.imul(al1, bh2)) | 0;\n mid = (mid + Math.imul(ah1, bl2)) | 0;\n hi = (hi + Math.imul(ah1, bh2)) | 0;\n lo = (lo + Math.imul(al0, bl3)) | 0;\n mid = (mid + Math.imul(al0, bh3)) | 0;\n mid = (mid + Math.imul(ah0, bl3)) | 0;\n hi = (hi + Math.imul(ah0, bh3)) | 0;\n var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0;\n w3 &= 0x3ffffff;\n /* k = 4 */\n lo = Math.imul(al4, bl0);\n mid = Math.imul(al4, bh0);\n mid = (mid + Math.imul(ah4, bl0)) | 0;\n hi = Math.imul(ah4, bh0);\n lo = (lo + Math.imul(al3, bl1)) | 0;\n mid = (mid + Math.imul(al3, bh1)) | 0;\n mid = (mid + Math.imul(ah3, bl1)) | 0;\n hi = (hi + Math.imul(ah3, bh1)) | 0;\n lo = (lo + Math.imul(al2, bl2)) | 0;\n mid = (mid + Math.imul(al2, bh2)) | 0;\n mid = (mid + Math.imul(ah2, bl2)) | 0;\n hi = (hi + Math.imul(ah2, bh2)) | 0;\n lo = (lo + Math.imul(al1, bl3)) | 0;\n mid = (mid + Math.imul(al1, bh3)) | 0;\n mid = (mid + Math.imul(ah1, bl3)) | 0;\n hi = (hi + Math.imul(ah1, bh3)) | 0;\n lo = (lo + Math.imul(al0, bl4)) | 0;\n mid = (mid + Math.imul(al0, bh4)) | 0;\n mid = (mid + Math.imul(ah0, bl4)) | 0;\n hi = (hi + Math.imul(ah0, bh4)) | 0;\n var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0;\n w4 &= 0x3ffffff;\n /* k = 5 */\n lo = Math.imul(al5, bl0);\n mid = Math.imul(al5, bh0);\n mid = (mid + Math.imul(ah5, bl0)) | 0;\n hi = Math.imul(ah5, bh0);\n lo = (lo + Math.imul(al4, bl1)) | 0;\n mid = (mid + Math.imul(al4, bh1)) | 0;\n mid = (mid + Math.imul(ah4, bl1)) | 0;\n hi = (hi + Math.imul(ah4, bh1)) | 0;\n lo = (lo + Math.imul(al3, bl2)) | 0;\n mid = (mid + Math.imul(al3, bh2)) | 0;\n mid = (mid + Math.imul(ah3, bl2)) | 0;\n hi = (hi + Math.imul(ah3, bh2)) | 0;\n lo = (lo + Math.imul(al2, bl3)) | 0;\n mid = (mid + Math.imul(al2, bh3)) | 0;\n mid = (mid + Math.imul(ah2, bl3)) | 0;\n hi = (hi + Math.imul(ah2, bh3)) | 0;\n lo = (lo + Math.imul(al1, bl4)) | 0;\n mid = (mid + Math.imul(al1, bh4)) | 0;\n mid = (mid + Math.imul(ah1, bl4)) | 0;\n hi = (hi + Math.imul(ah1, bh4)) | 0;\n lo = (lo + Math.imul(al0, bl5)) | 0;\n mid = (mid + Math.imul(al0, bh5)) | 0;\n mid = (mid + Math.imul(ah0, bl5)) | 0;\n hi = (hi + Math.imul(ah0, bh5)) | 0;\n var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0;\n w5 &= 0x3ffffff;\n /* k = 6 */\n lo = Math.imul(al6, bl0);\n mid = Math.imul(al6, bh0);\n mid = (mid + Math.imul(ah6, bl0)) | 0;\n hi = Math.imul(ah6, bh0);\n lo = (lo + Math.imul(al5, bl1)) | 0;\n mid = (mid + Math.imul(al5, bh1)) | 0;\n mid = (mid + Math.imul(ah5, bl1)) | 0;\n hi = (hi + Math.imul(ah5, bh1)) | 0;\n lo = (lo + Math.imul(al4, bl2)) | 0;\n mid = (mid + Math.imul(al4, bh2)) | 0;\n mid = (mid + Math.imul(ah4, bl2)) | 0;\n hi = (hi + Math.imul(ah4, bh2)) | 0;\n lo = (lo + Math.imul(al3, bl3)) | 0;\n mid = (mid + Math.imul(al3, bh3)) | 0;\n mid = (mid + Math.imul(ah3, bl3)) | 0;\n hi = (hi + Math.imul(ah3, bh3)) | 0;\n lo = (lo + Math.imul(al2, bl4)) | 0;\n mid = (mid + Math.imul(al2, bh4)) | 0;\n mid = (mid + Math.imul(ah2, bl4)) | 0;\n hi = (hi + Math.imul(ah2, bh4)) | 0;\n lo = (lo + Math.imul(al1, bl5)) | 0;\n mid = (mid + Math.imul(al1, bh5)) | 0;\n mid = (mid + Math.imul(ah1, bl5)) | 0;\n hi = (hi + Math.imul(ah1, bh5)) | 0;\n lo = (lo + Math.imul(al0, bl6)) | 0;\n mid = (mid + Math.imul(al0, bh6)) | 0;\n mid = (mid + Math.imul(ah0, bl6)) | 0;\n hi = (hi + Math.imul(ah0, bh6)) | 0;\n var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0;\n w6 &= 0x3ffffff;\n /* k = 7 */\n lo = Math.imul(al7, bl0);\n mid = Math.imul(al7, bh0);\n mid = (mid + Math.imul(ah7, bl0)) | 0;\n hi = Math.imul(ah7, bh0);\n lo = (lo + Math.imul(al6, bl1)) | 0;\n mid = (mid + Math.imul(al6, bh1)) | 0;\n mid = (mid + Math.imul(ah6, bl1)) | 0;\n hi = (hi + Math.imul(ah6, bh1)) | 0;\n lo = (lo + Math.imul(al5, bl2)) | 0;\n mid = (mid + Math.imul(al5, bh2)) | 0;\n mid = (mid + Math.imul(ah5, bl2)) | 0;\n hi = (hi + Math.imul(ah5, bh2)) | 0;\n lo = (lo + Math.imul(al4, bl3)) | 0;\n mid = (mid + Math.imul(al4, bh3)) | 0;\n mid = (mid + Math.imul(ah4, bl3)) | 0;\n hi = (hi + Math.imul(ah4, bh3)) | 0;\n lo = (lo + Math.imul(al3, bl4)) | 0;\n mid = (mid + Math.imul(al3, bh4)) | 0;\n mid = (mid + Math.imul(ah3, bl4)) | 0;\n hi = (hi + Math.imul(ah3, bh4)) | 0;\n lo = (lo + Math.imul(al2, bl5)) | 0;\n mid = (mid + Math.imul(al2, bh5)) | 0;\n mid = (mid + Math.imul(ah2, bl5)) | 0;\n hi = (hi + Math.imul(ah2, bh5)) | 0;\n lo = (lo + Math.imul(al1, bl6)) | 0;\n mid = (mid + Math.imul(al1, bh6)) | 0;\n mid = (mid + Math.imul(ah1, bl6)) | 0;\n hi = (hi + Math.imul(ah1, bh6)) | 0;\n lo = (lo + Math.imul(al0, bl7)) | 0;\n mid = (mid + Math.imul(al0, bh7)) | 0;\n mid = (mid + Math.imul(ah0, bl7)) | 0;\n hi = (hi + Math.imul(ah0, bh7)) | 0;\n var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0;\n w7 &= 0x3ffffff;\n /* k = 8 */\n lo = Math.imul(al8, bl0);\n mid = Math.imul(al8, bh0);\n mid = (mid + Math.imul(ah8, bl0)) | 0;\n hi = Math.imul(ah8, bh0);\n lo = (lo + Math.imul(al7, bl1)) | 0;\n mid = (mid + Math.imul(al7, bh1)) | 0;\n mid = (mid + Math.imul(ah7, bl1)) | 0;\n hi = (hi + Math.imul(ah7, bh1)) | 0;\n lo = (lo + Math.imul(al6, bl2)) | 0;\n mid = (mid + Math.imul(al6, bh2)) | 0;\n mid = (mid + Math.imul(ah6, bl2)) | 0;\n hi = (hi + Math.imul(ah6, bh2)) | 0;\n lo = (lo + Math.imul(al5, bl3)) | 0;\n mid = (mid + Math.imul(al5, bh3)) | 0;\n mid = (mid + Math.imul(ah5, bl3)) | 0;\n hi = (hi + Math.imul(ah5, bh3)) | 0;\n lo = (lo + Math.imul(al4, bl4)) | 0;\n mid = (mid + Math.imul(al4, bh4)) | 0;\n mid = (mid + Math.imul(ah4, bl4)) | 0;\n hi = (hi + Math.imul(ah4, bh4)) | 0;\n lo = (lo + Math.imul(al3, bl5)) | 0;\n mid = (mid + Math.imul(al3, bh5)) | 0;\n mid = (mid + Math.imul(ah3, bl5)) | 0;\n hi = (hi + Math.imul(ah3, bh5)) | 0;\n lo = (lo + Math.imul(al2, bl6)) | 0;\n mid = (mid + Math.imul(al2, bh6)) | 0;\n mid = (mid + Math.imul(ah2, bl6)) | 0;\n hi = (hi + Math.imul(ah2, bh6)) | 0;\n lo = (lo + Math.imul(al1, bl7)) | 0;\n mid = (mid + Math.imul(al1, bh7)) | 0;\n mid = (mid + Math.imul(ah1, bl7)) | 0;\n hi = (hi + Math.imul(ah1, bh7)) | 0;\n lo = (lo + Math.imul(al0, bl8)) | 0;\n mid = (mid + Math.imul(al0, bh8)) | 0;\n mid = (mid + Math.imul(ah0, bl8)) | 0;\n hi = (hi + Math.imul(ah0, bh8)) | 0;\n var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0;\n w8 &= 0x3ffffff;\n /* k = 9 */\n lo = Math.imul(al9, bl0);\n mid = Math.imul(al9, bh0);\n mid = (mid + Math.imul(ah9, bl0)) | 0;\n hi = Math.imul(ah9, bh0);\n lo = (lo + Math.imul(al8, bl1)) | 0;\n mid = (mid + Math.imul(al8, bh1)) | 0;\n mid = (mid + Math.imul(ah8, bl1)) | 0;\n hi = (hi + Math.imul(ah8, bh1)) | 0;\n lo = (lo + Math.imul(al7, bl2)) | 0;\n mid = (mid + Math.imul(al7, bh2)) | 0;\n mid = (mid + Math.imul(ah7, bl2)) | 0;\n hi = (hi + Math.imul(ah7, bh2)) | 0;\n lo = (lo + Math.imul(al6, bl3)) | 0;\n mid = (mid + Math.imul(al6, bh3)) | 0;\n mid = (mid + Math.imul(ah6, bl3)) | 0;\n hi = (hi + Math.imul(ah6, bh3)) | 0;\n lo = (lo + Math.imul(al5, bl4)) | 0;\n mid = (mid + Math.imul(al5, bh4)) | 0;\n mid = (mid + Math.imul(ah5, bl4)) | 0;\n hi = (hi + Math.imul(ah5, bh4)) | 0;\n lo = (lo + Math.imul(al4, bl5)) | 0;\n mid = (mid + Math.imul(al4, bh5)) | 0;\n mid = (mid + Math.imul(ah4, bl5)) | 0;\n hi = (hi + Math.imul(ah4, bh5)) | 0;\n lo = (lo + Math.imul(al3, bl6)) | 0;\n mid = (mid + Math.imul(al3, bh6)) | 0;\n mid = (mid + Math.imul(ah3, bl6)) | 0;\n hi = (hi + Math.imul(ah3, bh6)) | 0;\n lo = (lo + Math.imul(al2, bl7)) | 0;\n mid = (mid + Math.imul(al2, bh7)) | 0;\n mid = (mid + Math.imul(ah2, bl7)) | 0;\n hi = (hi + Math.imul(ah2, bh7)) | 0;\n lo = (lo + Math.imul(al1, bl8)) | 0;\n mid = (mid + Math.imul(al1, bh8)) | 0;\n mid = (mid + Math.imul(ah1, bl8)) | 0;\n hi = (hi + Math.imul(ah1, bh8)) | 0;\n lo = (lo + Math.imul(al0, bl9)) | 0;\n mid = (mid + Math.imul(al0, bh9)) | 0;\n mid = (mid + Math.imul(ah0, bl9)) | 0;\n hi = (hi + Math.imul(ah0, bh9)) | 0;\n var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0;\n w9 &= 0x3ffffff;\n /* k = 10 */\n lo = Math.imul(al9, bl1);\n mid = Math.imul(al9, bh1);\n mid = (mid + Math.imul(ah9, bl1)) | 0;\n hi = Math.imul(ah9, bh1);\n lo = (lo + Math.imul(al8, bl2)) | 0;\n mid = (mid + Math.imul(al8, bh2)) | 0;\n mid = (mid + Math.imul(ah8, bl2)) | 0;\n hi = (hi + Math.imul(ah8, bh2)) | 0;\n lo = (lo + Math.imul(al7, bl3)) | 0;\n mid = (mid + Math.imul(al7, bh3)) | 0;\n mid = (mid + Math.imul(ah7, bl3)) | 0;\n hi = (hi + Math.imul(ah7, bh3)) | 0;\n lo = (lo + Math.imul(al6, bl4)) | 0;\n mid = (mid + Math.imul(al6, bh4)) | 0;\n mid = (mid + Math.imul(ah6, bl4)) | 0;\n hi = (hi + Math.imul(ah6, bh4)) | 0;\n lo = (lo + Math.imul(al5, bl5)) | 0;\n mid = (mid + Math.imul(al5, bh5)) | 0;\n mid = (mid + Math.imul(ah5, bl5)) | 0;\n hi = (hi + Math.imul(ah5, bh5)) | 0;\n lo = (lo + Math.imul(al4, bl6)) | 0;\n mid = (mid + Math.imul(al4, bh6)) | 0;\n mid = (mid + Math.imul(ah4, bl6)) | 0;\n hi = (hi + Math.imul(ah4, bh6)) | 0;\n lo = (lo + Math.imul(al3, bl7)) | 0;\n mid = (mid + Math.imul(al3, bh7)) | 0;\n mid = (mid + Math.imul(ah3, bl7)) | 0;\n hi = (hi + Math.imul(ah3, bh7)) | 0;\n lo = (lo + Math.imul(al2, bl8)) | 0;\n mid = (mid + Math.imul(al2, bh8)) | 0;\n mid = (mid + Math.imul(ah2, bl8)) | 0;\n hi = (hi + Math.imul(ah2, bh8)) | 0;\n lo = (lo + Math.imul(al1, bl9)) | 0;\n mid = (mid + Math.imul(al1, bh9)) | 0;\n mid = (mid + Math.imul(ah1, bl9)) | 0;\n hi = (hi + Math.imul(ah1, bh9)) | 0;\n var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0;\n w10 &= 0x3ffffff;\n /* k = 11 */\n lo = Math.imul(al9, bl2);\n mid = Math.imul(al9, bh2);\n mid = (mid + Math.imul(ah9, bl2)) | 0;\n hi = Math.imul(ah9, bh2);\n lo = (lo + Math.imul(al8, bl3)) | 0;\n mid = (mid + Math.imul(al8, bh3)) | 0;\n mid = (mid + Math.imul(ah8, bl3)) | 0;\n hi = (hi + Math.imul(ah8, bh3)) | 0;\n lo = (lo + Math.imul(al7, bl4)) | 0;\n mid = (mid + Math.imul(al7, bh4)) | 0;\n mid = (mid + Math.imul(ah7, bl4)) | 0;\n hi = (hi + Math.imul(ah7, bh4)) | 0;\n lo = (lo + Math.imul(al6, bl5)) | 0;\n mid = (mid + Math.imul(al6, bh5)) | 0;\n mid = (mid + Math.imul(ah6, bl5)) | 0;\n hi = (hi + Math.imul(ah6, bh5)) | 0;\n lo = (lo + Math.imul(al5, bl6)) | 0;\n mid = (mid + Math.imul(al5, bh6)) | 0;\n mid = (mid + Math.imul(ah5, bl6)) | 0;\n hi = (hi + Math.imul(ah5, bh6)) | 0;\n lo = (lo + Math.imul(al4, bl7)) | 0;\n mid = (mid + Math.imul(al4, bh7)) | 0;\n mid = (mid + Math.imul(ah4, bl7)) | 0;\n hi = (hi + Math.imul(ah4, bh7)) | 0;\n lo = (lo + Math.imul(al3, bl8)) | 0;\n mid = (mid + Math.imul(al3, bh8)) | 0;\n mid = (mid + Math.imul(ah3, bl8)) | 0;\n hi = (hi + Math.imul(ah3, bh8)) | 0;\n lo = (lo + Math.imul(al2, bl9)) | 0;\n mid = (mid + Math.imul(al2, bh9)) | 0;\n mid = (mid + Math.imul(ah2, bl9)) | 0;\n hi = (hi + Math.imul(ah2, bh9)) | 0;\n var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0;\n w11 &= 0x3ffffff;\n /* k = 12 */\n lo = Math.imul(al9, bl3);\n mid = Math.imul(al9, bh3);\n mid = (mid + Math.imul(ah9, bl3)) | 0;\n hi = Math.imul(ah9, bh3);\n lo = (lo + Math.imul(al8, bl4)) | 0;\n mid = (mid + Math.imul(al8, bh4)) | 0;\n mid = (mid + Math.imul(ah8, bl4)) | 0;\n hi = (hi + Math.imul(ah8, bh4)) | 0;\n lo = (lo + Math.imul(al7, bl5)) | 0;\n mid = (mid + Math.imul(al7, bh5)) | 0;\n mid = (mid + Math.imul(ah7, bl5)) | 0;\n hi = (hi + Math.imul(ah7, bh5)) | 0;\n lo = (lo + Math.imul(al6, bl6)) | 0;\n mid = (mid + Math.imul(al6, bh6)) | 0;\n mid = (mid + Math.imul(ah6, bl6)) | 0;\n hi = (hi + Math.imul(ah6, bh6)) | 0;\n lo = (lo + Math.imul(al5, bl7)) | 0;\n mid = (mid + Math.imul(al5, bh7)) | 0;\n mid = (mid + Math.imul(ah5, bl7)) | 0;\n hi = (hi + Math.imul(ah5, bh7)) | 0;\n lo = (lo + Math.imul(al4, bl8)) | 0;\n mid = (mid + Math.imul(al4, bh8)) | 0;\n mid = (mid + Math.imul(ah4, bl8)) | 0;\n hi = (hi + Math.imul(ah4, bh8)) | 0;\n lo = (lo + Math.imul(al3, bl9)) | 0;\n mid = (mid + Math.imul(al3, bh9)) | 0;\n mid = (mid + Math.imul(ah3, bl9)) | 0;\n hi = (hi + Math.imul(ah3, bh9)) | 0;\n var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0;\n w12 &= 0x3ffffff;\n /* k = 13 */\n lo = Math.imul(al9, bl4);\n mid = Math.imul(al9, bh4);\n mid = (mid + Math.imul(ah9, bl4)) | 0;\n hi = Math.imul(ah9, bh4);\n lo = (lo + Math.imul(al8, bl5)) | 0;\n mid = (mid + Math.imul(al8, bh5)) | 0;\n mid = (mid + Math.imul(ah8, bl5)) | 0;\n hi = (hi + Math.imul(ah8, bh5)) | 0;\n lo = (lo + Math.imul(al7, bl6)) | 0;\n mid = (mid + Math.imul(al7, bh6)) | 0;\n mid = (mid + Math.imul(ah7, bl6)) | 0;\n hi = (hi + Math.imul(ah7, bh6)) | 0;\n lo = (lo + Math.imul(al6, bl7)) | 0;\n mid = (mid + Math.imul(al6, bh7)) | 0;\n mid = (mid + Math.imul(ah6, bl7)) | 0;\n hi = (hi + Math.imul(ah6, bh7)) | 0;\n lo = (lo + Math.imul(al5, bl8)) | 0;\n mid = (mid + Math.imul(al5, bh8)) | 0;\n mid = (mid + Math.imul(ah5, bl8)) | 0;\n hi = (hi + Math.imul(ah5, bh8)) | 0;\n lo = (lo + Math.imul(al4, bl9)) | 0;\n mid = (mid + Math.imul(al4, bh9)) | 0;\n mid = (mid + Math.imul(ah4, bl9)) | 0;\n hi = (hi + Math.imul(ah4, bh9)) | 0;\n var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0;\n w13 &= 0x3ffffff;\n /* k = 14 */\n lo = Math.imul(al9, bl5);\n mid = Math.imul(al9, bh5);\n mid = (mid + Math.imul(ah9, bl5)) | 0;\n hi = Math.imul(ah9, bh5);\n lo = (lo + Math.imul(al8, bl6)) | 0;\n mid = (mid + Math.imul(al8, bh6)) | 0;\n mid = (mid + Math.imul(ah8, bl6)) | 0;\n hi = (hi + Math.imul(ah8, bh6)) | 0;\n lo = (lo + Math.imul(al7, bl7)) | 0;\n mid = (mid + Math.imul(al7, bh7)) | 0;\n mid = (mid + Math.imul(ah7, bl7)) | 0;\n hi = (hi + Math.imul(ah7, bh7)) | 0;\n lo = (lo + Math.imul(al6, bl8)) | 0;\n mid = (mid + Math.imul(al6, bh8)) | 0;\n mid = (mid + Math.imul(ah6, bl8)) | 0;\n hi = (hi + Math.imul(ah6, bh8)) | 0;\n lo = (lo + Math.imul(al5, bl9)) | 0;\n mid = (mid + Math.imul(al5, bh9)) | 0;\n mid = (mid + Math.imul(ah5, bl9)) | 0;\n hi = (hi + Math.imul(ah5, bh9)) | 0;\n var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0;\n w14 &= 0x3ffffff;\n /* k = 15 */\n lo = Math.imul(al9, bl6);\n mid = Math.imul(al9, bh6);\n mid = (mid + Math.imul(ah9, bl6)) | 0;\n hi = Math.imul(ah9, bh6);\n lo = (lo + Math.imul(al8, bl7)) | 0;\n mid = (mid + Math.imul(al8, bh7)) | 0;\n mid = (mid + Math.imul(ah8, bl7)) | 0;\n hi = (hi + Math.imul(ah8, bh7)) | 0;\n lo = (lo + Math.imul(al7, bl8)) | 0;\n mid = (mid + Math.imul(al7, bh8)) | 0;\n mid = (mid + Math.imul(ah7, bl8)) | 0;\n hi = (hi + Math.imul(ah7, bh8)) | 0;\n lo = (lo + Math.imul(al6, bl9)) | 0;\n mid = (mid + Math.imul(al6, bh9)) | 0;\n mid = (mid + Math.imul(ah6, bl9)) | 0;\n hi = (hi + Math.imul(ah6, bh9)) | 0;\n var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0;\n w15 &= 0x3ffffff;\n /* k = 16 */\n lo = Math.imul(al9, bl7);\n mid = Math.imul(al9, bh7);\n mid = (mid + Math.imul(ah9, bl7)) | 0;\n hi = Math.imul(ah9, bh7);\n lo = (lo + Math.imul(al8, bl8)) | 0;\n mid = (mid + Math.imul(al8, bh8)) | 0;\n mid = (mid + Math.imul(ah8, bl8)) | 0;\n hi = (hi + Math.imul(ah8, bh8)) | 0;\n lo = (lo + Math.imul(al7, bl9)) | 0;\n mid = (mid + Math.imul(al7, bh9)) | 0;\n mid = (mid + Math.imul(ah7, bl9)) | 0;\n hi = (hi + Math.imul(ah7, bh9)) | 0;\n var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0;\n w16 &= 0x3ffffff;\n /* k = 17 */\n lo = Math.imul(al9, bl8);\n mid = Math.imul(al9, bh8);\n mid = (mid + Math.imul(ah9, bl8)) | 0;\n hi = Math.imul(ah9, bh8);\n lo = (lo + Math.imul(al8, bl9)) | 0;\n mid = (mid + Math.imul(al8, bh9)) | 0;\n mid = (mid + Math.imul(ah8, bl9)) | 0;\n hi = (hi + Math.imul(ah8, bh9)) | 0;\n var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0;\n w17 &= 0x3ffffff;\n /* k = 18 */\n lo = Math.imul(al9, bl9);\n mid = Math.imul(al9, bh9);\n mid = (mid + Math.imul(ah9, bl9)) | 0;\n hi = Math.imul(ah9, bh9);\n var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0;\n w18 &= 0x3ffffff;\n o[0] = w0;\n o[1] = w1;\n o[2] = w2;\n o[3] = w3;\n o[4] = w4;\n o[5] = w5;\n o[6] = w6;\n o[7] = w7;\n o[8] = w8;\n o[9] = w9;\n o[10] = w10;\n o[11] = w11;\n o[12] = w12;\n o[13] = w13;\n o[14] = w14;\n o[15] = w15;\n o[16] = w16;\n o[17] = w17;\n o[18] = w18;\n if (c !== 0) {\n o[19] = c;\n out.length++;\n }\n return out;\n };\n\n // Polyfill comb\n if (!Math.imul) {\n comb10MulTo = smallMulTo;\n }\n\n function bigMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n out.length = self.length + num.length;\n\n var carry = 0;\n var hncarry = 0;\n for (var k = 0; k < out.length - 1; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = hncarry;\n hncarry = 0;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = k - j;\n var a = self.words[i] | 0;\n var b = num.words[j] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0;\n lo = (lo + rword) | 0;\n rword = lo & 0x3ffffff;\n ncarry = (ncarry + (lo >>> 26)) | 0;\n\n hncarry += ncarry >>> 26;\n ncarry &= 0x3ffffff;\n }\n out.words[k] = rword;\n carry = ncarry;\n ncarry = hncarry;\n }\n if (carry !== 0) {\n out.words[k] = carry;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n function jumboMulTo (self, num, out) {\n var fftm = new FFTM();\n return fftm.mulp(self, num, out);\n }\n\n BN.prototype.mulTo = function mulTo (num, out) {\n var res;\n var len = this.length + num.length;\n if (this.length === 10 && num.length === 10) {\n res = comb10MulTo(this, num, out);\n } else if (len < 63) {\n res = smallMulTo(this, num, out);\n } else if (len < 1024) {\n res = bigMulTo(this, num, out);\n } else {\n res = jumboMulTo(this, num, out);\n }\n\n return res;\n };\n\n // Cooley-Tukey algorithm for FFT\n // slightly revisited to rely on looping instead of recursion\n\n function FFTM (x, y) {\n this.x = x;\n this.y = y;\n }\n\n FFTM.prototype.makeRBT = function makeRBT (N) {\n var t = new Array(N);\n var l = BN.prototype._countBits(N) - 1;\n for (var i = 0; i < N; i++) {\n t[i] = this.revBin(i, l, N);\n }\n\n return t;\n };\n\n // Returns binary-reversed representation of `x`\n FFTM.prototype.revBin = function revBin (x, l, N) {\n if (x === 0 || x === N - 1) return x;\n\n var rb = 0;\n for (var i = 0; i < l; i++) {\n rb |= (x & 1) << (l - i - 1);\n x >>= 1;\n }\n\n return rb;\n };\n\n // Performs \"tweedling\" phase, therefore 'emulating'\n // behaviour of the recursive algorithm\n FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) {\n for (var i = 0; i < N; i++) {\n rtws[i] = rws[rbt[i]];\n itws[i] = iws[rbt[i]];\n }\n };\n\n FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) {\n this.permute(rbt, rws, iws, rtws, itws, N);\n\n for (var s = 1; s < N; s <<= 1) {\n var l = s << 1;\n\n var rtwdf = Math.cos(2 * Math.PI / l);\n var itwdf = Math.sin(2 * Math.PI / l);\n\n for (var p = 0; p < N; p += l) {\n var rtwdf_ = rtwdf;\n var itwdf_ = itwdf;\n\n for (var j = 0; j < s; j++) {\n var re = rtws[p + j];\n var ie = itws[p + j];\n\n var ro = rtws[p + j + s];\n var io = itws[p + j + s];\n\n var rx = rtwdf_ * ro - itwdf_ * io;\n\n io = rtwdf_ * io + itwdf_ * ro;\n ro = rx;\n\n rtws[p + j] = re + ro;\n itws[p + j] = ie + io;\n\n rtws[p + j + s] = re - ro;\n itws[p + j + s] = ie - io;\n\n /* jshint maxdepth : false */\n if (j !== l) {\n rx = rtwdf * rtwdf_ - itwdf * itwdf_;\n\n itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_;\n rtwdf_ = rx;\n }\n }\n }\n }\n };\n\n FFTM.prototype.guessLen13b = function guessLen13b (n, m) {\n var N = Math.max(m, n) | 1;\n var odd = N & 1;\n var i = 0;\n for (N = N / 2 | 0; N; N = N >>> 1) {\n i++;\n }\n\n return 1 << i + 1 + odd;\n };\n\n FFTM.prototype.conjugate = function conjugate (rws, iws, N) {\n if (N <= 1) return;\n\n for (var i = 0; i < N / 2; i++) {\n var t = rws[i];\n\n rws[i] = rws[N - i - 1];\n rws[N - i - 1] = t;\n\n t = iws[i];\n\n iws[i] = -iws[N - i - 1];\n iws[N - i - 1] = -t;\n }\n };\n\n FFTM.prototype.normalize13b = function normalize13b (ws, N) {\n var carry = 0;\n for (var i = 0; i < N / 2; i++) {\n var w = Math.round(ws[2 * i + 1] / N) * 0x2000 +\n Math.round(ws[2 * i] / N) +\n carry;\n\n ws[i] = w & 0x3ffffff;\n\n if (w < 0x4000000) {\n carry = 0;\n } else {\n carry = w / 0x4000000 | 0;\n }\n }\n\n return ws;\n };\n\n FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) {\n var carry = 0;\n for (var i = 0; i < len; i++) {\n carry = carry + (ws[i] | 0);\n\n rws[2 * i] = carry & 0x1fff; carry = carry >>> 13;\n rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13;\n }\n\n // Pad with zeroes\n for (i = 2 * len; i < N; ++i) {\n rws[i] = 0;\n }\n\n assert(carry === 0);\n assert((carry & ~0x1fff) === 0);\n };\n\n FFTM.prototype.stub = function stub (N) {\n var ph = new Array(N);\n for (var i = 0; i < N; i++) {\n ph[i] = 0;\n }\n\n return ph;\n };\n\n FFTM.prototype.mulp = function mulp (x, y, out) {\n var N = 2 * this.guessLen13b(x.length, y.length);\n\n var rbt = this.makeRBT(N);\n\n var _ = this.stub(N);\n\n var rws = new Array(N);\n var rwst = new Array(N);\n var iwst = new Array(N);\n\n var nrws = new Array(N);\n var nrwst = new Array(N);\n var niwst = new Array(N);\n\n var rmws = out.words;\n rmws.length = N;\n\n this.convert13b(x.words, x.length, rws, N);\n this.convert13b(y.words, y.length, nrws, N);\n\n this.transform(rws, _, rwst, iwst, N, rbt);\n this.transform(nrws, _, nrwst, niwst, N, rbt);\n\n for (var i = 0; i < N; i++) {\n var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i];\n iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i];\n rwst[i] = rx;\n }\n\n this.conjugate(rwst, iwst, N);\n this.transform(rwst, iwst, rmws, _, N, rbt);\n this.conjugate(rmws, _, N);\n this.normalize13b(rmws, N);\n\n out.negative = x.negative ^ y.negative;\n out.length = x.length + y.length;\n return out.strip();\n };\n\n // Multiply `this` by `num`\n BN.prototype.mul = function mul (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return this.mulTo(num, out);\n };\n\n // Multiply employing FFT\n BN.prototype.mulf = function mulf (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return jumboMulTo(this, num, out);\n };\n\n // In-place Multiplication\n BN.prototype.imul = function imul (num) {\n return this.clone().mulTo(num, this);\n };\n\n BN.prototype.imuln = function imuln (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n\n // Carry\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = (this.words[i] | 0) * num;\n var lo = (w & 0x3ffffff) + (carry & 0x3ffffff);\n carry >>= 26;\n carry += (w / 0x4000000) | 0;\n // NOTE: lo is 27bit maximum\n carry += lo >>> 26;\n this.words[i] = lo & 0x3ffffff;\n }\n\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n\n return this;\n };\n\n BN.prototype.muln = function muln (num) {\n return this.clone().imuln(num);\n };\n\n // `this` * `this`\n BN.prototype.sqr = function sqr () {\n return this.mul(this);\n };\n\n // `this` * `this` in-place\n BN.prototype.isqr = function isqr () {\n return this.imul(this.clone());\n };\n\n // Math.pow(`this`, `num`)\n BN.prototype.pow = function pow (num) {\n var w = toBitArray(num);\n if (w.length === 0) return new BN(1);\n\n // Skip leading zeroes\n var res = this;\n for (var i = 0; i < w.length; i++, res = res.sqr()) {\n if (w[i] !== 0) break;\n }\n\n if (++i < w.length) {\n for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) {\n if (w[i] === 0) continue;\n\n res = res.mul(q);\n }\n }\n\n return res;\n };\n\n // Shift-left in-place\n BN.prototype.iushln = function iushln (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r);\n var i;\n\n if (r !== 0) {\n var carry = 0;\n\n for (i = 0; i < this.length; i++) {\n var newCarry = this.words[i] & carryMask;\n var c = ((this.words[i] | 0) - newCarry) << r;\n this.words[i] = c | carry;\n carry = newCarry >>> (26 - r);\n }\n\n if (carry) {\n this.words[i] = carry;\n this.length++;\n }\n }\n\n if (s !== 0) {\n for (i = this.length - 1; i >= 0; i--) {\n this.words[i + s] = this.words[i];\n }\n\n for (i = 0; i < s; i++) {\n this.words[i] = 0;\n }\n\n this.length += s;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishln = function ishln (bits) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushln(bits);\n };\n\n // Shift-right in-place\n // NOTE: `hint` is a lowest bit before trailing zeroes\n // NOTE: if `extended` is present - it will be filled with destroyed bits\n BN.prototype.iushrn = function iushrn (bits, hint, extended) {\n assert(typeof bits === 'number' && bits >= 0);\n var h;\n if (hint) {\n h = (hint - (hint % 26)) / 26;\n } else {\n h = 0;\n }\n\n var r = bits % 26;\n var s = Math.min((bits - r) / 26, this.length);\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n var maskedWords = extended;\n\n h -= s;\n h = Math.max(0, h);\n\n // Extended mode, copy masked part\n if (maskedWords) {\n for (var i = 0; i < s; i++) {\n maskedWords.words[i] = this.words[i];\n }\n maskedWords.length = s;\n }\n\n if (s === 0) {\n // No-op, we should not move anything at all\n } else if (this.length > s) {\n this.length -= s;\n for (i = 0; i < this.length; i++) {\n this.words[i] = this.words[i + s];\n }\n } else {\n this.words[0] = 0;\n this.length = 1;\n }\n\n var carry = 0;\n for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) {\n var word = this.words[i] | 0;\n this.words[i] = (carry << (26 - r)) | (word >>> r);\n carry = word & mask;\n }\n\n // Push carried bits as a mask\n if (maskedWords && carry !== 0) {\n maskedWords.words[maskedWords.length++] = carry;\n }\n\n if (this.length === 0) {\n this.words[0] = 0;\n this.length = 1;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishrn = function ishrn (bits, hint, extended) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushrn(bits, hint, extended);\n };\n\n // Shift-left\n BN.prototype.shln = function shln (bits) {\n return this.clone().ishln(bits);\n };\n\n BN.prototype.ushln = function ushln (bits) {\n return this.clone().iushln(bits);\n };\n\n // Shift-right\n BN.prototype.shrn = function shrn (bits) {\n return this.clone().ishrn(bits);\n };\n\n BN.prototype.ushrn = function ushrn (bits) {\n return this.clone().iushrn(bits);\n };\n\n // Test if n bit is set\n BN.prototype.testn = function testn (bit) {\n assert(typeof bit === 'number' && bit >= 0);\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) return false;\n\n // Check bit and return\n var w = this.words[s];\n\n return !!(w & q);\n };\n\n // Return only lowers bits of number (in-place)\n BN.prototype.imaskn = function imaskn (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n\n assert(this.negative === 0, 'imaskn works only with positive numbers');\n\n if (this.length <= s) {\n return this;\n }\n\n if (r !== 0) {\n s++;\n }\n this.length = Math.min(s, this.length);\n\n if (r !== 0) {\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n this.words[this.length - 1] &= mask;\n }\n\n return this.strip();\n };\n\n // Return only lowers bits of number\n BN.prototype.maskn = function maskn (bits) {\n return this.clone().imaskn(bits);\n };\n\n // Add plain number `num` to `this`\n BN.prototype.iaddn = function iaddn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.isubn(-num);\n\n // Possible sign change\n if (this.negative !== 0) {\n if (this.length === 1 && (this.words[0] | 0) < num) {\n this.words[0] = num - (this.words[0] | 0);\n this.negative = 0;\n return this;\n }\n\n this.negative = 0;\n this.isubn(num);\n this.negative = 1;\n return this;\n }\n\n // Add without checks\n return this._iaddn(num);\n };\n\n BN.prototype._iaddn = function _iaddn (num) {\n this.words[0] += num;\n\n // Carry\n for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) {\n this.words[i] -= 0x4000000;\n if (i === this.length - 1) {\n this.words[i + 1] = 1;\n } else {\n this.words[i + 1]++;\n }\n }\n this.length = Math.max(this.length, i + 1);\n\n return this;\n };\n\n // Subtract plain number `num` from `this`\n BN.prototype.isubn = function isubn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.iaddn(-num);\n\n if (this.negative !== 0) {\n this.negative = 0;\n this.iaddn(num);\n this.negative = 1;\n return this;\n }\n\n this.words[0] -= num;\n\n if (this.length === 1 && this.words[0] < 0) {\n this.words[0] = -this.words[0];\n this.negative = 1;\n } else {\n // Carry\n for (var i = 0; i < this.length && this.words[i] < 0; i++) {\n this.words[i] += 0x4000000;\n this.words[i + 1] -= 1;\n }\n }\n\n return this.strip();\n };\n\n BN.prototype.addn = function addn (num) {\n return this.clone().iaddn(num);\n };\n\n BN.prototype.subn = function subn (num) {\n return this.clone().isubn(num);\n };\n\n BN.prototype.iabs = function iabs () {\n this.negative = 0;\n\n return this;\n };\n\n BN.prototype.abs = function abs () {\n return this.clone().iabs();\n };\n\n BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) {\n var len = num.length + shift;\n var i;\n\n this._expand(len);\n\n var w;\n var carry = 0;\n for (i = 0; i < num.length; i++) {\n w = (this.words[i + shift] | 0) + carry;\n var right = (num.words[i] | 0) * mul;\n w -= right & 0x3ffffff;\n carry = (w >> 26) - ((right / 0x4000000) | 0);\n this.words[i + shift] = w & 0x3ffffff;\n }\n for (; i < this.length - shift; i++) {\n w = (this.words[i + shift] | 0) + carry;\n carry = w >> 26;\n this.words[i + shift] = w & 0x3ffffff;\n }\n\n if (carry === 0) return this.strip();\n\n // Subtraction overflow\n assert(carry === -1);\n carry = 0;\n for (i = 0; i < this.length; i++) {\n w = -(this.words[i] | 0) + carry;\n carry = w >> 26;\n this.words[i] = w & 0x3ffffff;\n }\n this.negative = 1;\n\n return this.strip();\n };\n\n BN.prototype._wordDiv = function _wordDiv (num, mode) {\n var shift = this.length - num.length;\n\n var a = this.clone();\n var b = num;\n\n // Normalize\n var bhi = b.words[b.length - 1] | 0;\n var bhiBits = this._countBits(bhi);\n shift = 26 - bhiBits;\n if (shift !== 0) {\n b = b.ushln(shift);\n a.iushln(shift);\n bhi = b.words[b.length - 1] | 0;\n }\n\n // Initialize quotient\n var m = a.length - b.length;\n var q;\n\n if (mode !== 'mod') {\n q = new BN(null);\n q.length = m + 1;\n q.words = new Array(q.length);\n for (var i = 0; i < q.length; i++) {\n q.words[i] = 0;\n }\n }\n\n var diff = a.clone()._ishlnsubmul(b, 1, m);\n if (diff.negative === 0) {\n a = diff;\n if (q) {\n q.words[m] = 1;\n }\n }\n\n for (var j = m - 1; j >= 0; j--) {\n var qj = (a.words[b.length + j] | 0) * 0x4000000 +\n (a.words[b.length + j - 1] | 0);\n\n // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max\n // (0x7ffffff)\n qj = Math.min((qj / bhi) | 0, 0x3ffffff);\n\n a._ishlnsubmul(b, qj, j);\n while (a.negative !== 0) {\n qj--;\n a.negative = 0;\n a._ishlnsubmul(b, 1, j);\n if (!a.isZero()) {\n a.negative ^= 1;\n }\n }\n if (q) {\n q.words[j] = qj;\n }\n }\n if (q) {\n q.strip();\n }\n a.strip();\n\n // Denormalize\n if (mode !== 'div' && shift !== 0) {\n a.iushrn(shift);\n }\n\n return {\n div: q || null,\n mod: a\n };\n };\n\n // NOTE: 1) `mode` can be set to `mod` to request mod only,\n // to `div` to request div only, or be absent to\n // request both div & mod\n // 2) `positive` is true if unsigned mod is requested\n BN.prototype.divmod = function divmod (num, mode, positive) {\n assert(!num.isZero());\n\n if (this.isZero()) {\n return {\n div: new BN(0),\n mod: new BN(0)\n };\n }\n\n var div, mod, res;\n if (this.negative !== 0 && num.negative === 0) {\n res = this.neg().divmod(num, mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.iadd(num);\n }\n }\n\n return {\n div: div,\n mod: mod\n };\n }\n\n if (this.negative === 0 && num.negative !== 0) {\n res = this.divmod(num.neg(), mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n return {\n div: div,\n mod: res.mod\n };\n }\n\n if ((this.negative & num.negative) !== 0) {\n res = this.neg().divmod(num.neg(), mode);\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.isub(num);\n }\n }\n\n return {\n div: res.div,\n mod: mod\n };\n }\n\n // Both numbers are positive at this point\n\n // Strip both numbers to approximate shift value\n if (num.length > this.length || this.cmp(num) < 0) {\n return {\n div: new BN(0),\n mod: this\n };\n }\n\n // Very short reduction\n if (num.length === 1) {\n if (mode === 'div') {\n return {\n div: this.divn(num.words[0]),\n mod: null\n };\n }\n\n if (mode === 'mod') {\n return {\n div: null,\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return {\n div: this.divn(num.words[0]),\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return this._wordDiv(num, mode);\n };\n\n // Find `this` / `num`\n BN.prototype.div = function div (num) {\n return this.divmod(num, 'div', false).div;\n };\n\n // Find `this` % `num`\n BN.prototype.mod = function mod (num) {\n return this.divmod(num, 'mod', false).mod;\n };\n\n BN.prototype.umod = function umod (num) {\n return this.divmod(num, 'mod', true).mod;\n };\n\n // Find Round(`this` / `num`)\n BN.prototype.divRound = function divRound (num) {\n var dm = this.divmod(num);\n\n // Fast case - exact division\n if (dm.mod.isZero()) return dm.div;\n\n var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod;\n\n var half = num.ushrn(1);\n var r2 = num.andln(1);\n var cmp = mod.cmp(half);\n\n // Round down\n if (cmp < 0 || r2 === 1 && cmp === 0) return dm.div;\n\n // Round up\n return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1);\n };\n\n BN.prototype.modn = function modn (num) {\n assert(num <= 0x3ffffff);\n var p = (1 << 26) % num;\n\n var acc = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n acc = (p * acc + (this.words[i] | 0)) % num;\n }\n\n return acc;\n };\n\n // In-place division by number\n BN.prototype.idivn = function idivn (num) {\n assert(num <= 0x3ffffff);\n\n var carry = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var w = (this.words[i] | 0) + carry * 0x4000000;\n this.words[i] = (w / num) | 0;\n carry = w % num;\n }\n\n return this.strip();\n };\n\n BN.prototype.divn = function divn (num) {\n return this.clone().idivn(num);\n };\n\n BN.prototype.egcd = function egcd (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var x = this;\n var y = p.clone();\n\n if (x.negative !== 0) {\n x = x.umod(p);\n } else {\n x = x.clone();\n }\n\n // A * x + B * y = x\n var A = new BN(1);\n var B = new BN(0);\n\n // C * x + D * y = y\n var C = new BN(0);\n var D = new BN(1);\n\n var g = 0;\n\n while (x.isEven() && y.isEven()) {\n x.iushrn(1);\n y.iushrn(1);\n ++g;\n }\n\n var yp = y.clone();\n var xp = x.clone();\n\n while (!x.isZero()) {\n for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n x.iushrn(i);\n while (i-- > 0) {\n if (A.isOdd() || B.isOdd()) {\n A.iadd(yp);\n B.isub(xp);\n }\n\n A.iushrn(1);\n B.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n y.iushrn(j);\n while (j-- > 0) {\n if (C.isOdd() || D.isOdd()) {\n C.iadd(yp);\n D.isub(xp);\n }\n\n C.iushrn(1);\n D.iushrn(1);\n }\n }\n\n if (x.cmp(y) >= 0) {\n x.isub(y);\n A.isub(C);\n B.isub(D);\n } else {\n y.isub(x);\n C.isub(A);\n D.isub(B);\n }\n }\n\n return {\n a: C,\n b: D,\n gcd: y.iushln(g)\n };\n };\n\n // This is reduced incarnation of the binary EEA\n // above, designated to invert members of the\n // _prime_ fields F(p) at a maximal speed\n BN.prototype._invmp = function _invmp (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var a = this;\n var b = p.clone();\n\n if (a.negative !== 0) {\n a = a.umod(p);\n } else {\n a = a.clone();\n }\n\n var x1 = new BN(1);\n var x2 = new BN(0);\n\n var delta = b.clone();\n\n while (a.cmpn(1) > 0 && b.cmpn(1) > 0) {\n for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n a.iushrn(i);\n while (i-- > 0) {\n if (x1.isOdd()) {\n x1.iadd(delta);\n }\n\n x1.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n b.iushrn(j);\n while (j-- > 0) {\n if (x2.isOdd()) {\n x2.iadd(delta);\n }\n\n x2.iushrn(1);\n }\n }\n\n if (a.cmp(b) >= 0) {\n a.isub(b);\n x1.isub(x2);\n } else {\n b.isub(a);\n x2.isub(x1);\n }\n }\n\n var res;\n if (a.cmpn(1) === 0) {\n res = x1;\n } else {\n res = x2;\n }\n\n if (res.cmpn(0) < 0) {\n res.iadd(p);\n }\n\n return res;\n };\n\n BN.prototype.gcd = function gcd (num) {\n if (this.isZero()) return num.abs();\n if (num.isZero()) return this.abs();\n\n var a = this.clone();\n var b = num.clone();\n a.negative = 0;\n b.negative = 0;\n\n // Remove common factor of two\n for (var shift = 0; a.isEven() && b.isEven(); shift++) {\n a.iushrn(1);\n b.iushrn(1);\n }\n\n do {\n while (a.isEven()) {\n a.iushrn(1);\n }\n while (b.isEven()) {\n b.iushrn(1);\n }\n\n var r = a.cmp(b);\n if (r < 0) {\n // Swap `a` and `b` to make `a` always bigger than `b`\n var t = a;\n a = b;\n b = t;\n } else if (r === 0 || b.cmpn(1) === 0) {\n break;\n }\n\n a.isub(b);\n } while (true);\n\n return b.iushln(shift);\n };\n\n // Invert number in the field F(num)\n BN.prototype.invm = function invm (num) {\n return this.egcd(num).a.umod(num);\n };\n\n BN.prototype.isEven = function isEven () {\n return (this.words[0] & 1) === 0;\n };\n\n BN.prototype.isOdd = function isOdd () {\n return (this.words[0] & 1) === 1;\n };\n\n // And first word and num\n BN.prototype.andln = function andln (num) {\n return this.words[0] & num;\n };\n\n // Increment at the bit position in-line\n BN.prototype.bincn = function bincn (bit) {\n assert(typeof bit === 'number');\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) {\n this._expand(s + 1);\n this.words[s] |= q;\n return this;\n }\n\n // Add bit and propagate, if needed\n var carry = q;\n for (var i = s; carry !== 0 && i < this.length; i++) {\n var w = this.words[i] | 0;\n w += carry;\n carry = w >>> 26;\n w &= 0x3ffffff;\n this.words[i] = w;\n }\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n return this;\n };\n\n BN.prototype.isZero = function isZero () {\n return this.length === 1 && this.words[0] === 0;\n };\n\n BN.prototype.cmpn = function cmpn (num) {\n var negative = num < 0;\n\n if (this.negative !== 0 && !negative) return -1;\n if (this.negative === 0 && negative) return 1;\n\n this.strip();\n\n var res;\n if (this.length > 1) {\n res = 1;\n } else {\n if (negative) {\n num = -num;\n }\n\n assert(num <= 0x3ffffff, 'Number is too big');\n\n var w = this.words[0] | 0;\n res = w === num ? 0 : w < num ? -1 : 1;\n }\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Compare two numbers and return:\n // 1 - if `this` > `num`\n // 0 - if `this` == `num`\n // -1 - if `this` < `num`\n BN.prototype.cmp = function cmp (num) {\n if (this.negative !== 0 && num.negative === 0) return -1;\n if (this.negative === 0 && num.negative !== 0) return 1;\n\n var res = this.ucmp(num);\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Unsigned comparison\n BN.prototype.ucmp = function ucmp (num) {\n // At this point both numbers have the same sign\n if (this.length > num.length) return 1;\n if (this.length < num.length) return -1;\n\n var res = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var a = this.words[i] | 0;\n var b = num.words[i] | 0;\n\n if (a === b) continue;\n if (a < b) {\n res = -1;\n } else if (a > b) {\n res = 1;\n }\n break;\n }\n return res;\n };\n\n BN.prototype.gtn = function gtn (num) {\n return this.cmpn(num) === 1;\n };\n\n BN.prototype.gt = function gt (num) {\n return this.cmp(num) === 1;\n };\n\n BN.prototype.gten = function gten (num) {\n return this.cmpn(num) >= 0;\n };\n\n BN.prototype.gte = function gte (num) {\n return this.cmp(num) >= 0;\n };\n\n BN.prototype.ltn = function ltn (num) {\n return this.cmpn(num) === -1;\n };\n\n BN.prototype.lt = function lt (num) {\n return this.cmp(num) === -1;\n };\n\n BN.prototype.lten = function lten (num) {\n return this.cmpn(num) <= 0;\n };\n\n BN.prototype.lte = function lte (num) {\n return this.cmp(num) <= 0;\n };\n\n BN.prototype.eqn = function eqn (num) {\n return this.cmpn(num) === 0;\n };\n\n BN.prototype.eq = function eq (num) {\n return this.cmp(num) === 0;\n };\n\n //\n // A reduce context, could be using montgomery or something better, depending\n // on the `m` itself.\n //\n BN.red = function red (num) {\n return new Red(num);\n };\n\n BN.prototype.toRed = function toRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n assert(this.negative === 0, 'red works only with positives');\n return ctx.convertTo(this)._forceRed(ctx);\n };\n\n BN.prototype.fromRed = function fromRed () {\n assert(this.red, 'fromRed works only with numbers in reduction context');\n return this.red.convertFrom(this);\n };\n\n BN.prototype._forceRed = function _forceRed (ctx) {\n this.red = ctx;\n return this;\n };\n\n BN.prototype.forceRed = function forceRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n return this._forceRed(ctx);\n };\n\n BN.prototype.redAdd = function redAdd (num) {\n assert(this.red, 'redAdd works only with red numbers');\n return this.red.add(this, num);\n };\n\n BN.prototype.redIAdd = function redIAdd (num) {\n assert(this.red, 'redIAdd works only with red numbers');\n return this.red.iadd(this, num);\n };\n\n BN.prototype.redSub = function redSub (num) {\n assert(this.red, 'redSub works only with red numbers');\n return this.red.sub(this, num);\n };\n\n BN.prototype.redISub = function redISub (num) {\n assert(this.red, 'redISub works only with red numbers');\n return this.red.isub(this, num);\n };\n\n BN.prototype.redShl = function redShl (num) {\n assert(this.red, 'redShl works only with red numbers');\n return this.red.shl(this, num);\n };\n\n BN.prototype.redMul = function redMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.mul(this, num);\n };\n\n BN.prototype.redIMul = function redIMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.imul(this, num);\n };\n\n BN.prototype.redSqr = function redSqr () {\n assert(this.red, 'redSqr works only with red numbers');\n this.red._verify1(this);\n return this.red.sqr(this);\n };\n\n BN.prototype.redISqr = function redISqr () {\n assert(this.red, 'redISqr works only with red numbers');\n this.red._verify1(this);\n return this.red.isqr(this);\n };\n\n // Square root over p\n BN.prototype.redSqrt = function redSqrt () {\n assert(this.red, 'redSqrt works only with red numbers');\n this.red._verify1(this);\n return this.red.sqrt(this);\n };\n\n BN.prototype.redInvm = function redInvm () {\n assert(this.red, 'redInvm works only with red numbers');\n this.red._verify1(this);\n return this.red.invm(this);\n };\n\n // Return negative clone of `this` % `red modulo`\n BN.prototype.redNeg = function redNeg () {\n assert(this.red, 'redNeg works only with red numbers');\n this.red._verify1(this);\n return this.red.neg(this);\n };\n\n BN.prototype.redPow = function redPow (num) {\n assert(this.red && !num.red, 'redPow(normalNum)');\n this.red._verify1(this);\n return this.red.pow(this, num);\n };\n\n // Prime numbers with efficient reduction\n var primes = {\n k256: null,\n p224: null,\n p192: null,\n p25519: null\n };\n\n // Pseudo-Mersenne prime\n function MPrime (name, p) {\n // P = 2 ^ N - K\n this.name = name;\n this.p = new BN(p, 16);\n this.n = this.p.bitLength();\n this.k = new BN(1).iushln(this.n).isub(this.p);\n\n this.tmp = this._tmp();\n }\n\n MPrime.prototype._tmp = function _tmp () {\n var tmp = new BN(null);\n tmp.words = new Array(Math.ceil(this.n / 13));\n return tmp;\n };\n\n MPrime.prototype.ireduce = function ireduce (num) {\n // Assumes that `num` is less than `P^2`\n // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P)\n var r = num;\n var rlen;\n\n do {\n this.split(r, this.tmp);\n r = this.imulK(r);\n r = r.iadd(this.tmp);\n rlen = r.bitLength();\n } while (rlen > this.n);\n\n var cmp = rlen < this.n ? -1 : r.ucmp(this.p);\n if (cmp === 0) {\n r.words[0] = 0;\n r.length = 1;\n } else if (cmp > 0) {\n r.isub(this.p);\n } else {\n if (r.strip !== undefined) {\n // r is BN v4 instance\n r.strip();\n } else {\n // r is BN v5 instance\n r._strip();\n }\n }\n\n return r;\n };\n\n MPrime.prototype.split = function split (input, out) {\n input.iushrn(this.n, 0, out);\n };\n\n MPrime.prototype.imulK = function imulK (num) {\n return num.imul(this.k);\n };\n\n function K256 () {\n MPrime.call(\n this,\n 'k256',\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f');\n }\n inherits(K256, MPrime);\n\n K256.prototype.split = function split (input, output) {\n // 256 = 9 * 26 + 22\n var mask = 0x3fffff;\n\n var outLen = Math.min(input.length, 9);\n for (var i = 0; i < outLen; i++) {\n output.words[i] = input.words[i];\n }\n output.length = outLen;\n\n if (input.length <= 9) {\n input.words[0] = 0;\n input.length = 1;\n return;\n }\n\n // Shift by 9 limbs\n var prev = input.words[9];\n output.words[output.length++] = prev & mask;\n\n for (i = 10; i < input.length; i++) {\n var next = input.words[i] | 0;\n input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22);\n prev = next;\n }\n prev >>>= 22;\n input.words[i - 10] = prev;\n if (prev === 0 && input.length > 10) {\n input.length -= 10;\n } else {\n input.length -= 9;\n }\n };\n\n K256.prototype.imulK = function imulK (num) {\n // K = 0x1000003d1 = [ 0x40, 0x3d1 ]\n num.words[num.length] = 0;\n num.words[num.length + 1] = 0;\n num.length += 2;\n\n // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390\n var lo = 0;\n for (var i = 0; i < num.length; i++) {\n var w = num.words[i] | 0;\n lo += w * 0x3d1;\n num.words[i] = lo & 0x3ffffff;\n lo = w * 0x40 + ((lo / 0x4000000) | 0);\n }\n\n // Fast length reduction\n if (num.words[num.length - 1] === 0) {\n num.length--;\n if (num.words[num.length - 1] === 0) {\n num.length--;\n }\n }\n return num;\n };\n\n function P224 () {\n MPrime.call(\n this,\n 'p224',\n 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001');\n }\n inherits(P224, MPrime);\n\n function P192 () {\n MPrime.call(\n this,\n 'p192',\n 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff');\n }\n inherits(P192, MPrime);\n\n function P25519 () {\n // 2 ^ 255 - 19\n MPrime.call(\n this,\n '25519',\n '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed');\n }\n inherits(P25519, MPrime);\n\n P25519.prototype.imulK = function imulK (num) {\n // K = 0x13\n var carry = 0;\n for (var i = 0; i < num.length; i++) {\n var hi = (num.words[i] | 0) * 0x13 + carry;\n var lo = hi & 0x3ffffff;\n hi >>>= 26;\n\n num.words[i] = lo;\n carry = hi;\n }\n if (carry !== 0) {\n num.words[num.length++] = carry;\n }\n return num;\n };\n\n // Exported mostly for testing purposes, use plain name instead\n BN._prime = function prime (name) {\n // Cached version of prime\n if (primes[name]) return primes[name];\n\n var prime;\n if (name === 'k256') {\n prime = new K256();\n } else if (name === 'p224') {\n prime = new P224();\n } else if (name === 'p192') {\n prime = new P192();\n } else if (name === 'p25519') {\n prime = new P25519();\n } else {\n throw new Error('Unknown prime ' + name);\n }\n primes[name] = prime;\n\n return prime;\n };\n\n //\n // Base reduction engine\n //\n function Red (m) {\n if (typeof m === 'string') {\n var prime = BN._prime(m);\n this.m = prime.p;\n this.prime = prime;\n } else {\n assert(m.gtn(1), 'modulus must be greater than 1');\n this.m = m;\n this.prime = null;\n }\n }\n\n Red.prototype._verify1 = function _verify1 (a) {\n assert(a.negative === 0, 'red works only with positives');\n assert(a.red, 'red works only with red numbers');\n };\n\n Red.prototype._verify2 = function _verify2 (a, b) {\n assert((a.negative | b.negative) === 0, 'red works only with positives');\n assert(a.red && a.red === b.red,\n 'red works only with red numbers');\n };\n\n Red.prototype.imod = function imod (a) {\n if (this.prime) return this.prime.ireduce(a)._forceRed(this);\n return a.umod(this.m)._forceRed(this);\n };\n\n Red.prototype.neg = function neg (a) {\n if (a.isZero()) {\n return a.clone();\n }\n\n return this.m.sub(a)._forceRed(this);\n };\n\n Red.prototype.add = function add (a, b) {\n this._verify2(a, b);\n\n var res = a.add(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.iadd = function iadd (a, b) {\n this._verify2(a, b);\n\n var res = a.iadd(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res;\n };\n\n Red.prototype.sub = function sub (a, b) {\n this._verify2(a, b);\n\n var res = a.sub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.isub = function isub (a, b) {\n this._verify2(a, b);\n\n var res = a.isub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res;\n };\n\n Red.prototype.shl = function shl (a, num) {\n this._verify1(a);\n return this.imod(a.ushln(num));\n };\n\n Red.prototype.imul = function imul (a, b) {\n this._verify2(a, b);\n return this.imod(a.imul(b));\n };\n\n Red.prototype.mul = function mul (a, b) {\n this._verify2(a, b);\n return this.imod(a.mul(b));\n };\n\n Red.prototype.isqr = function isqr (a) {\n return this.imul(a, a.clone());\n };\n\n Red.prototype.sqr = function sqr (a) {\n return this.mul(a, a);\n };\n\n Red.prototype.sqrt = function sqrt (a) {\n if (a.isZero()) return a.clone();\n\n var mod3 = this.m.andln(3);\n assert(mod3 % 2 === 1);\n\n // Fast case\n if (mod3 === 3) {\n var pow = this.m.add(new BN(1)).iushrn(2);\n return this.pow(a, pow);\n }\n\n // Tonelli-Shanks algorithm (Totally unoptimized and slow)\n //\n // Find Q and S, that Q * 2 ^ S = (P - 1)\n var q = this.m.subn(1);\n var s = 0;\n while (!q.isZero() && q.andln(1) === 0) {\n s++;\n q.iushrn(1);\n }\n assert(!q.isZero());\n\n var one = new BN(1).toRed(this);\n var nOne = one.redNeg();\n\n // Find quadratic non-residue\n // NOTE: Max is such because of generalized Riemann hypothesis.\n var lpow = this.m.subn(1).iushrn(1);\n var z = this.m.bitLength();\n z = new BN(2 * z * z).toRed(this);\n\n while (this.pow(z, lpow).cmp(nOne) !== 0) {\n z.redIAdd(nOne);\n }\n\n var c = this.pow(z, q);\n var r = this.pow(a, q.addn(1).iushrn(1));\n var t = this.pow(a, q);\n var m = s;\n while (t.cmp(one) !== 0) {\n var tmp = t;\n for (var i = 0; tmp.cmp(one) !== 0; i++) {\n tmp = tmp.redSqr();\n }\n assert(i < m);\n var b = this.pow(c, new BN(1).iushln(m - i - 1));\n\n r = r.redMul(b);\n c = b.redSqr();\n t = t.redMul(c);\n m = i;\n }\n\n return r;\n };\n\n Red.prototype.invm = function invm (a) {\n var inv = a._invmp(this.m);\n if (inv.negative !== 0) {\n inv.negative = 0;\n return this.imod(inv).redNeg();\n } else {\n return this.imod(inv);\n }\n };\n\n Red.prototype.pow = function pow (a, num) {\n if (num.isZero()) return new BN(1).toRed(this);\n if (num.cmpn(1) === 0) return a.clone();\n\n var windowSize = 4;\n var wnd = new Array(1 << windowSize);\n wnd[0] = new BN(1).toRed(this);\n wnd[1] = a;\n for (var i = 2; i < wnd.length; i++) {\n wnd[i] = this.mul(wnd[i - 1], a);\n }\n\n var res = wnd[0];\n var current = 0;\n var currentLen = 0;\n var start = num.bitLength() % 26;\n if (start === 0) {\n start = 26;\n }\n\n for (i = num.length - 1; i >= 0; i--) {\n var word = num.words[i];\n for (var j = start - 1; j >= 0; j--) {\n var bit = (word >> j) & 1;\n if (res !== wnd[0]) {\n res = this.sqr(res);\n }\n\n if (bit === 0 && current === 0) {\n currentLen = 0;\n continue;\n }\n\n current <<= 1;\n current |= bit;\n currentLen++;\n if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue;\n\n res = this.mul(res, wnd[current]);\n currentLen = 0;\n current = 0;\n }\n start = 26;\n }\n\n return res;\n };\n\n Red.prototype.convertTo = function convertTo (num) {\n var r = num.umod(this.m);\n\n return r === num ? r.clone() : r;\n };\n\n Red.prototype.convertFrom = function convertFrom (num) {\n var res = num.clone();\n res.red = null;\n return res;\n };\n\n //\n // Montgomery method engine\n //\n\n BN.mont = function mont (num) {\n return new Mont(num);\n };\n\n function Mont (m) {\n Red.call(this, m);\n\n this.shift = this.m.bitLength();\n if (this.shift % 26 !== 0) {\n this.shift += 26 - (this.shift % 26);\n }\n\n this.r = new BN(1).iushln(this.shift);\n this.r2 = this.imod(this.r.sqr());\n this.rinv = this.r._invmp(this.m);\n\n this.minv = this.rinv.mul(this.r).isubn(1).div(this.m);\n this.minv = this.minv.umod(this.r);\n this.minv = this.r.sub(this.minv);\n }\n inherits(Mont, Red);\n\n Mont.prototype.convertTo = function convertTo (num) {\n return this.imod(num.ushln(this.shift));\n };\n\n Mont.prototype.convertFrom = function convertFrom (num) {\n var r = this.imod(num.mul(this.rinv));\n r.red = null;\n return r;\n };\n\n Mont.prototype.imul = function imul (a, b) {\n if (a.isZero() || b.isZero()) {\n a.words[0] = 0;\n a.length = 1;\n return a;\n }\n\n var t = a.imul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.mul = function mul (a, b) {\n if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this);\n\n var t = a.mul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.invm = function invm (a) {\n // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R\n var res = this.imod(a._invmp(this.m).mul(this.r2));\n return res._forceRed(this);\n };\n})(typeof module === 'undefined' || module, this);\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","/*!\n * cookie\n * Copyright(c) 2012-2014 Roman Shtylman\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module exports.\n * @public\n */\n\nexports.parse = parse;\nexports.serialize = serialize;\n\n/**\n * Module variables.\n * @private\n */\n\nvar decode = decodeURIComponent;\nvar encode = encodeURIComponent;\nvar pairSplitRegExp = /; */;\n\n/**\n * RegExp to match field-content in RFC 7230 sec 3.2\n *\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n * obs-text = %x80-FF\n */\n\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n *\n * @param {string} str\n * @param {object} [options]\n * @return {object}\n * @public\n */\n\nfunction parse(str, options) {\n if (typeof str !== 'string') {\n throw new TypeError('argument str must be a string');\n }\n\n var obj = {}\n var opt = options || {};\n var pairs = str.split(pairSplitRegExp);\n var dec = opt.decode || decode;\n\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i];\n var eq_idx = pair.indexOf('=');\n\n // skip things that don't look like key=value\n if (eq_idx < 0) {\n continue;\n }\n\n var key = pair.substr(0, eq_idx).trim()\n var val = pair.substr(++eq_idx, pair.length).trim();\n\n // quoted values\n if ('\"' == val[0]) {\n val = val.slice(1, -1);\n }\n\n // only assign once\n if (undefined == obj[key]) {\n obj[key] = tryDecode(val, dec);\n }\n }\n\n return obj;\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize the a name value pair into a cookie string suitable for\n * http headers. An optional options object specified cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n *\n * @param {string} name\n * @param {string} val\n * @param {object} [options]\n * @return {string}\n * @public\n */\n\nfunction serialize(name, val, options) {\n var opt = options || {};\n var enc = opt.encode || encode;\n\n if (typeof enc !== 'function') {\n throw new TypeError('option encode is invalid');\n }\n\n if (!fieldContentRegExp.test(name)) {\n throw new TypeError('argument name is invalid');\n }\n\n var value = enc(val);\n\n if (value && !fieldContentRegExp.test(value)) {\n throw new TypeError('argument val is invalid');\n }\n\n var str = name + '=' + value;\n\n if (null != opt.maxAge) {\n var maxAge = opt.maxAge - 0;\n\n if (isNaN(maxAge) || !isFinite(maxAge)) {\n throw new TypeError('option maxAge is invalid')\n }\n\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) {\n str += '; HttpOnly';\n }\n\n if (opt.secure) {\n str += '; Secure';\n }\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string'\n ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n}\n\n/**\n * Try decoding a string using a decoding function.\n *\n * @param {string} str\n * @param {function} decode\n * @private\n */\n\nfunction tryDecode(str, decode) {\n try {\n return decode(str);\n } catch (e) {\n return str;\n }\n}\n","'use strict';\n\n/******************************************************************************\n * Created 2008-08-19.\n *\n * Dijkstra path-finding functions. Adapted from the Dijkstar Python project.\n *\n * Copyright (C) 2008\n * Wyatt Baldwin \n * All rights reserved\n *\n * Licensed under the MIT license.\n *\n * http://www.opensource.org/licenses/mit-license.php\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n *****************************************************************************/\nvar dijkstra = {\n single_source_shortest_paths: function(graph, s, d) {\n // Predecessor map for each node that has been encountered.\n // node ID => predecessor node ID\n var predecessors = {};\n\n // Costs of shortest paths from s to all nodes encountered.\n // node ID => cost\n var costs = {};\n costs[s] = 0;\n\n // Costs of shortest paths from s to all nodes encountered; differs from\n // `costs` in that it provides easy access to the node that currently has\n // the known shortest path from s.\n // XXX: Do we actually need both `costs` and `open`?\n var open = dijkstra.PriorityQueue.make();\n open.push(s, 0);\n\n var closest,\n u, v,\n cost_of_s_to_u,\n adjacent_nodes,\n cost_of_e,\n cost_of_s_to_u_plus_cost_of_e,\n cost_of_s_to_v,\n first_visit;\n while (!open.empty()) {\n // In the nodes remaining in graph that have a known cost from s,\n // find the node, u, that currently has the shortest path from s.\n closest = open.pop();\n u = closest.value;\n cost_of_s_to_u = closest.cost;\n\n // Get nodes adjacent to u...\n adjacent_nodes = graph[u] || {};\n\n // ...and explore the edges that connect u to those nodes, updating\n // the cost of the shortest paths to any or all of those nodes as\n // necessary. v is the node across the current edge from u.\n for (v in adjacent_nodes) {\n if (adjacent_nodes.hasOwnProperty(v)) {\n // Get the cost of the edge running from u to v.\n cost_of_e = adjacent_nodes[v];\n\n // Cost of s to u plus the cost of u to v across e--this is *a*\n // cost from s to v that may or may not be less than the current\n // known cost to v.\n cost_of_s_to_u_plus_cost_of_e = cost_of_s_to_u + cost_of_e;\n\n // If we haven't visited v yet OR if the current known cost from s to\n // v is greater than the new cost we just found (cost of s to u plus\n // cost of u to v across e), update v's cost in the cost list and\n // update v's predecessor in the predecessor list (it's now u).\n cost_of_s_to_v = costs[v];\n first_visit = (typeof costs[v] === 'undefined');\n if (first_visit || cost_of_s_to_v > cost_of_s_to_u_plus_cost_of_e) {\n costs[v] = cost_of_s_to_u_plus_cost_of_e;\n open.push(v, cost_of_s_to_u_plus_cost_of_e);\n predecessors[v] = u;\n }\n }\n }\n }\n\n if (typeof d !== 'undefined' && typeof costs[d] === 'undefined') {\n var msg = ['Could not find a path from ', s, ' to ', d, '.'].join('');\n throw new Error(msg);\n }\n\n return predecessors;\n },\n\n extract_shortest_path_from_predecessor_list: function(predecessors, d) {\n var nodes = [];\n var u = d;\n var predecessor;\n while (u) {\n nodes.push(u);\n predecessor = predecessors[u];\n u = predecessors[u];\n }\n nodes.reverse();\n return nodes;\n },\n\n find_path: function(graph, s, d) {\n var predecessors = dijkstra.single_source_shortest_paths(graph, s, d);\n return dijkstra.extract_shortest_path_from_predecessor_list(\n predecessors, d);\n },\n\n /**\n * A very naive priority queue implementation.\n */\n PriorityQueue: {\n make: function (opts) {\n var T = dijkstra.PriorityQueue,\n t = {},\n key;\n opts = opts || {};\n for (key in T) {\n if (T.hasOwnProperty(key)) {\n t[key] = T[key];\n }\n }\n t.queue = [];\n t.sorter = opts.sorter || T.default_sorter;\n return t;\n },\n\n default_sorter: function (a, b) {\n return a.cost - b.cost;\n },\n\n /**\n * Add a new item to the queue and ensure the highest priority element\n * is at the front of the queue.\n */\n push: function (value, cost) {\n var item = {value: value, cost: cost};\n this.queue.push(item);\n this.queue.sort(this.sorter);\n },\n\n /**\n * Return the highest priority element in the queue.\n */\n pop: function () {\n return this.queue.shift();\n },\n\n empty: function () {\n return this.queue.length === 0;\n }\n }\n};\n\n\n// node.js module exports\nif (typeof module !== 'undefined') {\n module.exports = dijkstra;\n}\n","'use strict'\n\nmodule.exports = function encodeUtf8 (input) {\n var result = []\n var size = input.length\n\n for (var index = 0; index < size; index++) {\n var point = input.charCodeAt(index)\n\n if (point >= 0xD800 && point <= 0xDBFF && size > index + 1) {\n var second = input.charCodeAt(index + 1)\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n point = (point - 0xD800) * 0x400 + second - 0xDC00 + 0x10000\n index += 1\n }\n }\n\n // US-ASCII\n if (point < 0x80) {\n result.push(point)\n continue\n }\n\n // 2-byte UTF-8\n if (point < 0x800) {\n result.push((point >> 6) | 192)\n result.push((point & 63) | 128)\n continue\n }\n\n // 3-byte UTF-8\n if (point < 0xD800 || (point >= 0xE000 && point < 0x10000)) {\n result.push((point >> 12) | 224)\n result.push(((point >> 6) & 63) | 128)\n result.push((point & 63) | 128)\n continue\n }\n\n // 4-byte UTF-8\n if (point >= 0x10000 && point <= 0x10FFFF) {\n result.push((point >> 18) | 240)\n result.push(((point >> 12) & 63) | 128)\n result.push(((point >> 6) & 63) | 128)\n result.push((point & 63) | 128)\n continue\n }\n\n // Invalid character\n result.push(0xEF, 0xBF, 0xBD)\n }\n\n return new Uint8Array(result).buffer\n}\n","var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Fallback to standard globalThis if available\n\tif (typeof globalThis === \"object\" && globalThis) return globalThis;\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of updates to Object.prototype being restricted\n\t\t// via preventExtensions, seal or freeze\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ works, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n","module.exports = identity;\n\n/**\n * Set a mat4 to the identity matrix\n *\n * @param {mat4} out the receiving matrix\n * @returns {mat4} out\n */\nfunction identity(out) {\n out[0] = 1;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = 0;\n out[5] = 1;\n out[6] = 0;\n out[7] = 0;\n out[8] = 0;\n out[9] = 0;\n out[10] = 1;\n out[11] = 0;\n out[12] = 0;\n out[13] = 0;\n out[14] = 0;\n out[15] = 1;\n return out;\n};","module.exports = invert;\n\n/**\n * Inverts a mat4\n *\n * @param {mat4} out the receiving matrix\n * @param {mat4} a the source matrix\n * @returns {mat4} out\n */\nfunction invert(out, a) {\n var a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3],\n a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7],\n a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11],\n a30 = a[12], a31 = a[13], a32 = a[14], a33 = a[15],\n\n b00 = a00 * a11 - a01 * a10,\n b01 = a00 * a12 - a02 * a10,\n b02 = a00 * a13 - a03 * a10,\n b03 = a01 * a12 - a02 * a11,\n b04 = a01 * a13 - a03 * a11,\n b05 = a02 * a13 - a03 * a12,\n b06 = a20 * a31 - a21 * a30,\n b07 = a20 * a32 - a22 * a30,\n b08 = a20 * a33 - a23 * a30,\n b09 = a21 * a32 - a22 * a31,\n b10 = a21 * a33 - a23 * a31,\n b11 = a22 * a33 - a23 * a32,\n\n // Calculate the determinant\n det = b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06;\n\n if (!det) { \n return null; \n }\n det = 1.0 / det;\n\n out[0] = (a11 * b11 - a12 * b10 + a13 * b09) * det;\n out[1] = (a02 * b10 - a01 * b11 - a03 * b09) * det;\n out[2] = (a31 * b05 - a32 * b04 + a33 * b03) * det;\n out[3] = (a22 * b04 - a21 * b05 - a23 * b03) * det;\n out[4] = (a12 * b08 - a10 * b11 - a13 * b07) * det;\n out[5] = (a00 * b11 - a02 * b08 + a03 * b07) * det;\n out[6] = (a32 * b02 - a30 * b05 - a33 * b01) * det;\n out[7] = (a20 * b05 - a22 * b02 + a23 * b01) * det;\n out[8] = (a10 * b10 - a11 * b08 + a13 * b06) * det;\n out[9] = (a01 * b08 - a00 * b10 - a03 * b06) * det;\n out[10] = (a30 * b04 - a31 * b02 + a33 * b00) * det;\n out[11] = (a21 * b02 - a20 * b04 - a23 * b00) * det;\n out[12] = (a11 * b07 - a10 * b09 - a12 * b06) * det;\n out[13] = (a00 * b09 - a01 * b07 + a02 * b06) * det;\n out[14] = (a31 * b01 - a30 * b03 - a32 * b00) * det;\n out[15] = (a20 * b03 - a21 * b01 + a22 * b00) * det;\n\n return out;\n};","var identity = require('./identity');\n\nmodule.exports = lookAt;\n\n/**\n * Generates a look-at matrix with the given eye position, focal point, and up axis\n *\n * @param {mat4} out mat4 frustum matrix will be written into\n * @param {vec3} eye Position of the viewer\n * @param {vec3} center Point the viewer is looking at\n * @param {vec3} up vec3 pointing up\n * @returns {mat4} out\n */\nfunction lookAt(out, eye, center, up) {\n var x0, x1, x2, y0, y1, y2, z0, z1, z2, len,\n eyex = eye[0],\n eyey = eye[1],\n eyez = eye[2],\n upx = up[0],\n upy = up[1],\n upz = up[2],\n centerx = center[0],\n centery = center[1],\n centerz = center[2];\n\n if (Math.abs(eyex - centerx) < 0.000001 &&\n Math.abs(eyey - centery) < 0.000001 &&\n Math.abs(eyez - centerz) < 0.000001) {\n return identity(out);\n }\n\n z0 = eyex - centerx;\n z1 = eyey - centery;\n z2 = eyez - centerz;\n\n len = 1 / Math.sqrt(z0 * z0 + z1 * z1 + z2 * z2);\n z0 *= len;\n z1 *= len;\n z2 *= len;\n\n x0 = upy * z2 - upz * z1;\n x1 = upz * z0 - upx * z2;\n x2 = upx * z1 - upy * z0;\n len = Math.sqrt(x0 * x0 + x1 * x1 + x2 * x2);\n if (!len) {\n x0 = 0;\n x1 = 0;\n x2 = 0;\n } else {\n len = 1 / len;\n x0 *= len;\n x1 *= len;\n x2 *= len;\n }\n\n y0 = z1 * x2 - z2 * x1;\n y1 = z2 * x0 - z0 * x2;\n y2 = z0 * x1 - z1 * x0;\n\n len = Math.sqrt(y0 * y0 + y1 * y1 + y2 * y2);\n if (!len) {\n y0 = 0;\n y1 = 0;\n y2 = 0;\n } else {\n len = 1 / len;\n y0 *= len;\n y1 *= len;\n y2 *= len;\n }\n\n out[0] = x0;\n out[1] = y0;\n out[2] = z0;\n out[3] = 0;\n out[4] = x1;\n out[5] = y1;\n out[6] = z1;\n out[7] = 0;\n out[8] = x2;\n out[9] = y2;\n out[10] = z2;\n out[11] = 0;\n out[12] = -(x0 * eyex + x1 * eyey + x2 * eyez);\n out[13] = -(y0 * eyex + y1 * eyey + y2 * eyez);\n out[14] = -(z0 * eyex + z1 * eyey + z2 * eyez);\n out[15] = 1;\n\n return out;\n};","module.exports = multiply;\n\n/**\n * Multiplies two mat4's\n *\n * @param {mat4} out the receiving matrix\n * @param {mat4} a the first operand\n * @param {mat4} b the second operand\n * @returns {mat4} out\n */\nfunction multiply(out, a, b) {\n var a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3],\n a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7],\n a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11],\n a30 = a[12], a31 = a[13], a32 = a[14], a33 = a[15];\n\n // Cache only the current line of the second matrix\n var b0 = b[0], b1 = b[1], b2 = b[2], b3 = b[3]; \n out[0] = b0*a00 + b1*a10 + b2*a20 + b3*a30;\n out[1] = b0*a01 + b1*a11 + b2*a21 + b3*a31;\n out[2] = b0*a02 + b1*a12 + b2*a22 + b3*a32;\n out[3] = b0*a03 + b1*a13 + b2*a23 + b3*a33;\n\n b0 = b[4]; b1 = b[5]; b2 = b[6]; b3 = b[7];\n out[4] = b0*a00 + b1*a10 + b2*a20 + b3*a30;\n out[5] = b0*a01 + b1*a11 + b2*a21 + b3*a31;\n out[6] = b0*a02 + b1*a12 + b2*a22 + b3*a32;\n out[7] = b0*a03 + b1*a13 + b2*a23 + b3*a33;\n\n b0 = b[8]; b1 = b[9]; b2 = b[10]; b3 = b[11];\n out[8] = b0*a00 + b1*a10 + b2*a20 + b3*a30;\n out[9] = b0*a01 + b1*a11 + b2*a21 + b3*a31;\n out[10] = b0*a02 + b1*a12 + b2*a22 + b3*a32;\n out[11] = b0*a03 + b1*a13 + b2*a23 + b3*a33;\n\n b0 = b[12]; b1 = b[13]; b2 = b[14]; b3 = b[15];\n out[12] = b0*a00 + b1*a10 + b2*a20 + b3*a30;\n out[13] = b0*a01 + b1*a11 + b2*a21 + b3*a31;\n out[14] = b0*a02 + b1*a12 + b2*a22 + b3*a32;\n out[15] = b0*a03 + b1*a13 + b2*a23 + b3*a33;\n return out;\n};","module.exports = perspective;\n\n/**\n * Generates a perspective projection matrix with the given bounds\n *\n * @param {mat4} out mat4 frustum matrix will be written into\n * @param {number} fovy Vertical field of view in radians\n * @param {number} aspect Aspect ratio. typically viewport width/height\n * @param {number} near Near bound of the frustum\n * @param {number} far Far bound of the frustum\n * @returns {mat4} out\n */\nfunction perspective(out, fovy, aspect, near, far) {\n var f = 1.0 / Math.tan(fovy / 2),\n nf = 1 / (near - far);\n out[0] = f / aspect;\n out[1] = 0;\n out[2] = 0;\n out[3] = 0;\n out[4] = 0;\n out[5] = f;\n out[6] = 0;\n out[7] = 0;\n out[8] = 0;\n out[9] = 0;\n out[10] = (far + near) * nf;\n out[11] = -1;\n out[12] = 0;\n out[13] = 0;\n out[14] = (2 * far * near) * nf;\n out[15] = 0;\n return out;\n};","module.exports = rotate;\n\n/**\n * Rotates a mat4 by the given angle\n *\n * @param {mat4} out the receiving matrix\n * @param {mat4} a the matrix to rotate\n * @param {Number} rad the angle to rotate the matrix by\n * @param {vec3} axis the axis to rotate around\n * @returns {mat4} out\n */\nfunction rotate(out, a, rad, axis) {\n var x = axis[0], y = axis[1], z = axis[2],\n len = Math.sqrt(x * x + y * y + z * z),\n s, c, t,\n a00, a01, a02, a03,\n a10, a11, a12, a13,\n a20, a21, a22, a23,\n b00, b01, b02,\n b10, b11, b12,\n b20, b21, b22;\n\n if (Math.abs(len) < 0.000001) { return null; }\n \n len = 1 / len;\n x *= len;\n y *= len;\n z *= len;\n\n s = Math.sin(rad);\n c = Math.cos(rad);\n t = 1 - c;\n\n a00 = a[0]; a01 = a[1]; a02 = a[2]; a03 = a[3];\n a10 = a[4]; a11 = a[5]; a12 = a[6]; a13 = a[7];\n a20 = a[8]; a21 = a[9]; a22 = a[10]; a23 = a[11];\n\n // Construct the elements of the rotation matrix\n b00 = x * x * t + c; b01 = y * x * t + z * s; b02 = z * x * t - y * s;\n b10 = x * y * t - z * s; b11 = y * y * t + c; b12 = z * y * t + x * s;\n b20 = x * z * t + y * s; b21 = y * z * t - x * s; b22 = z * z * t + c;\n\n // Perform rotation-specific matrix multiplication\n out[0] = a00 * b00 + a10 * b01 + a20 * b02;\n out[1] = a01 * b00 + a11 * b01 + a21 * b02;\n out[2] = a02 * b00 + a12 * b01 + a22 * b02;\n out[3] = a03 * b00 + a13 * b01 + a23 * b02;\n out[4] = a00 * b10 + a10 * b11 + a20 * b12;\n out[5] = a01 * b10 + a11 * b11 + a21 * b12;\n out[6] = a02 * b10 + a12 * b11 + a22 * b12;\n out[7] = a03 * b10 + a13 * b11 + a23 * b12;\n out[8] = a00 * b20 + a10 * b21 + a20 * b22;\n out[9] = a01 * b20 + a11 * b21 + a21 * b22;\n out[10] = a02 * b20 + a12 * b21 + a22 * b22;\n out[11] = a03 * b20 + a13 * b21 + a23 * b22;\n\n if (a !== out) { // If the source and destination differ, copy the unchanged last row\n out[12] = a[12];\n out[13] = a[13];\n out[14] = a[14];\n out[15] = a[15];\n }\n return out;\n};","module.exports = transformMat4;\n\n/**\n * Transforms the vec3 with a mat4.\n * 4th vector component is implicitly '1'\n *\n * @param {vec3} out the receiving vector\n * @param {vec3} a the vector to transform\n * @param {mat4} m matrix to transform with\n * @returns {vec3} out\n */\nfunction transformMat4(out, a, m) {\n var x = a[0], y = a[1], z = a[2],\n w = m[3] * x + m[7] * y + m[11] * z + m[15]\n w = w || 1.0\n out[0] = (m[0] * x + m[4] * y + m[8] * z + m[12]) / w\n out[1] = (m[1] * x + m[5] * y + m[9] * z + m[13]) / w\n out[2] = (m[2] * x + m[6] * y + m[10] * z + m[14]) / w\n return out\n}","var hash = exports;\n\nhash.utils = require('./hash/utils');\nhash.common = require('./hash/common');\nhash.sha = require('./hash/sha');\nhash.ripemd = require('./hash/ripemd');\nhash.hmac = require('./hash/hmac');\n\n// Proxy hash functions to the main object\nhash.sha1 = hash.sha.sha1;\nhash.sha256 = hash.sha.sha256;\nhash.sha224 = hash.sha.sha224;\nhash.sha384 = hash.sha.sha384;\nhash.sha512 = hash.sha.sha512;\nhash.ripemd160 = hash.ripemd.ripemd160;\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction BlockHash() {\n this.pending = null;\n this.pendingTotal = 0;\n this.blockSize = this.constructor.blockSize;\n this.outSize = this.constructor.outSize;\n this.hmacStrength = this.constructor.hmacStrength;\n this.padLength = this.constructor.padLength / 8;\n this.endian = 'big';\n\n this._delta8 = this.blockSize / 8;\n this._delta32 = this.blockSize / 32;\n}\nexports.BlockHash = BlockHash;\n\nBlockHash.prototype.update = function update(msg, enc) {\n // Convert message to array, pad it, and join into 32bit blocks\n msg = utils.toArray(msg, enc);\n if (!this.pending)\n this.pending = msg;\n else\n this.pending = this.pending.concat(msg);\n this.pendingTotal += msg.length;\n\n // Enough data, try updating\n if (this.pending.length >= this._delta8) {\n msg = this.pending;\n\n // Process pending data in blocks\n var r = msg.length % this._delta8;\n this.pending = msg.slice(msg.length - r, msg.length);\n if (this.pending.length === 0)\n this.pending = null;\n\n msg = utils.join32(msg, 0, msg.length - r, this.endian);\n for (var i = 0; i < msg.length; i += this._delta32)\n this._update(msg, i, i + this._delta32);\n }\n\n return this;\n};\n\nBlockHash.prototype.digest = function digest(enc) {\n this.update(this._pad());\n assert(this.pending === null);\n\n return this._digest(enc);\n};\n\nBlockHash.prototype._pad = function pad() {\n var len = this.pendingTotal;\n var bytes = this._delta8;\n var k = bytes - ((len + this.padLength) % bytes);\n var res = new Array(k + this.padLength);\n res[0] = 0x80;\n for (var i = 1; i < k; i++)\n res[i] = 0;\n\n // Append length\n len <<= 3;\n if (this.endian === 'big') {\n for (var t = 8; t < this.padLength; t++)\n res[i++] = 0;\n\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = len & 0xff;\n } else {\n res[i++] = len & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n\n for (t = 8; t < this.padLength; t++)\n res[i++] = 0;\n }\n\n return res;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction Hmac(hash, key, enc) {\n if (!(this instanceof Hmac))\n return new Hmac(hash, key, enc);\n this.Hash = hash;\n this.blockSize = hash.blockSize / 8;\n this.outSize = hash.outSize / 8;\n this.inner = null;\n this.outer = null;\n\n this._init(utils.toArray(key, enc));\n}\nmodule.exports = Hmac;\n\nHmac.prototype._init = function init(key) {\n // Shorten key, if needed\n if (key.length > this.blockSize)\n key = new this.Hash().update(key).digest();\n assert(key.length <= this.blockSize);\n\n // Add padding to key\n for (var i = key.length; i < this.blockSize; i++)\n key.push(0);\n\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x36;\n this.inner = new this.Hash().update(key);\n\n // 0x36 ^ 0x5c = 0x6a\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x6a;\n this.outer = new this.Hash().update(key);\n};\n\nHmac.prototype.update = function update(msg, enc) {\n this.inner.update(msg, enc);\n return this;\n};\n\nHmac.prototype.digest = function digest(enc) {\n this.outer.update(this.inner.digest());\n return this.outer.digest(enc);\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar common = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_3 = utils.sum32_3;\nvar sum32_4 = utils.sum32_4;\nvar BlockHash = common.BlockHash;\n\nfunction RIPEMD160() {\n if (!(this instanceof RIPEMD160))\n return new RIPEMD160();\n\n BlockHash.call(this);\n\n this.h = [ 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0 ];\n this.endian = 'little';\n}\nutils.inherits(RIPEMD160, BlockHash);\nexports.ripemd160 = RIPEMD160;\n\nRIPEMD160.blockSize = 512;\nRIPEMD160.outSize = 160;\nRIPEMD160.hmacStrength = 192;\nRIPEMD160.padLength = 64;\n\nRIPEMD160.prototype._update = function update(msg, start) {\n var A = this.h[0];\n var B = this.h[1];\n var C = this.h[2];\n var D = this.h[3];\n var E = this.h[4];\n var Ah = A;\n var Bh = B;\n var Ch = C;\n var Dh = D;\n var Eh = E;\n for (var j = 0; j < 80; j++) {\n var T = sum32(\n rotl32(\n sum32_4(A, f(j, B, C, D), msg[r[j] + start], K(j)),\n s[j]),\n E);\n A = E;\n E = D;\n D = rotl32(C, 10);\n C = B;\n B = T;\n T = sum32(\n rotl32(\n sum32_4(Ah, f(79 - j, Bh, Ch, Dh), msg[rh[j] + start], Kh(j)),\n sh[j]),\n Eh);\n Ah = Eh;\n Eh = Dh;\n Dh = rotl32(Ch, 10);\n Ch = Bh;\n Bh = T;\n }\n T = sum32_3(this.h[1], C, Dh);\n this.h[1] = sum32_3(this.h[2], D, Eh);\n this.h[2] = sum32_3(this.h[3], E, Ah);\n this.h[3] = sum32_3(this.h[4], A, Bh);\n this.h[4] = sum32_3(this.h[0], B, Ch);\n this.h[0] = T;\n};\n\nRIPEMD160.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'little');\n else\n return utils.split32(this.h, 'little');\n};\n\nfunction f(j, x, y, z) {\n if (j <= 15)\n return x ^ y ^ z;\n else if (j <= 31)\n return (x & y) | ((~x) & z);\n else if (j <= 47)\n return (x | (~y)) ^ z;\n else if (j <= 63)\n return (x & z) | (y & (~z));\n else\n return x ^ (y | (~z));\n}\n\nfunction K(j) {\n if (j <= 15)\n return 0x00000000;\n else if (j <= 31)\n return 0x5a827999;\n else if (j <= 47)\n return 0x6ed9eba1;\n else if (j <= 63)\n return 0x8f1bbcdc;\n else\n return 0xa953fd4e;\n}\n\nfunction Kh(j) {\n if (j <= 15)\n return 0x50a28be6;\n else if (j <= 31)\n return 0x5c4dd124;\n else if (j <= 47)\n return 0x6d703ef3;\n else if (j <= 63)\n return 0x7a6d76e9;\n else\n return 0x00000000;\n}\n\nvar r = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13\n];\n\nvar rh = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11\n];\n\nvar s = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6\n];\n\nvar sh = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11\n];\n","'use strict';\n\nexports.sha1 = require('./sha/1');\nexports.sha224 = require('./sha/224');\nexports.sha256 = require('./sha/256');\nexports.sha384 = require('./sha/384');\nexports.sha512 = require('./sha/512');\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_5 = utils.sum32_5;\nvar ft_1 = shaCommon.ft_1;\nvar BlockHash = common.BlockHash;\n\nvar sha1_K = [\n 0x5A827999, 0x6ED9EBA1,\n 0x8F1BBCDC, 0xCA62C1D6\n];\n\nfunction SHA1() {\n if (!(this instanceof SHA1))\n return new SHA1();\n\n BlockHash.call(this);\n this.h = [\n 0x67452301, 0xefcdab89, 0x98badcfe,\n 0x10325476, 0xc3d2e1f0 ];\n this.W = new Array(80);\n}\n\nutils.inherits(SHA1, BlockHash);\nmodule.exports = SHA1;\n\nSHA1.blockSize = 512;\nSHA1.outSize = 160;\nSHA1.hmacStrength = 80;\nSHA1.padLength = 64;\n\nSHA1.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n\n for(; i < W.length; i++)\n W[i] = rotl32(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16], 1);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n\n for (i = 0; i < W.length; i++) {\n var s = ~~(i / 20);\n var t = sum32_5(rotl32(a, 5), ft_1(s, b, c, d), e, W[i], sha1_K[s]);\n e = d;\n d = c;\n c = rotl32(b, 30);\n b = a;\n a = t;\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n};\n\nSHA1.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar SHA256 = require('./256');\n\nfunction SHA224() {\n if (!(this instanceof SHA224))\n return new SHA224();\n\n SHA256.call(this);\n this.h = [\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939,\n 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 ];\n}\nutils.inherits(SHA224, SHA256);\nmodule.exports = SHA224;\n\nSHA224.blockSize = 512;\nSHA224.outSize = 224;\nSHA224.hmacStrength = 192;\nSHA224.padLength = 64;\n\nSHA224.prototype._digest = function digest(enc) {\n // Just truncate output\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 7), 'big');\n else\n return utils.split32(this.h.slice(0, 7), 'big');\n};\n\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\nvar assert = require('minimalistic-assert');\n\nvar sum32 = utils.sum32;\nvar sum32_4 = utils.sum32_4;\nvar sum32_5 = utils.sum32_5;\nvar ch32 = shaCommon.ch32;\nvar maj32 = shaCommon.maj32;\nvar s0_256 = shaCommon.s0_256;\nvar s1_256 = shaCommon.s1_256;\nvar g0_256 = shaCommon.g0_256;\nvar g1_256 = shaCommon.g1_256;\n\nvar BlockHash = common.BlockHash;\n\nvar sha256_K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,\n 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,\n 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,\n 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,\n 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,\n 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,\n 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,\n 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,\n 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n];\n\nfunction SHA256() {\n if (!(this instanceof SHA256))\n return new SHA256();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,\n 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n ];\n this.k = sha256_K;\n this.W = new Array(64);\n}\nutils.inherits(SHA256, BlockHash);\nmodule.exports = SHA256;\n\nSHA256.blockSize = 512;\nSHA256.outSize = 256;\nSHA256.hmacStrength = 192;\nSHA256.padLength = 64;\n\nSHA256.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i++)\n W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n var f = this.h[5];\n var g = this.h[6];\n var h = this.h[7];\n\n assert(this.k.length === W.length);\n for (i = 0; i < W.length; i++) {\n var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]);\n var T2 = sum32(s0_256(a), maj32(a, b, c));\n h = g;\n g = f;\n f = e;\n e = sum32(d, T1);\n d = c;\n c = b;\n b = a;\n a = sum32(T1, T2);\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n this.h[5] = sum32(this.h[5], f);\n this.h[6] = sum32(this.h[6], g);\n this.h[7] = sum32(this.h[7], h);\n};\n\nSHA256.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nvar SHA512 = require('./512');\n\nfunction SHA384() {\n if (!(this instanceof SHA384))\n return new SHA384();\n\n SHA512.call(this);\n this.h = [\n 0xcbbb9d5d, 0xc1059ed8,\n 0x629a292a, 0x367cd507,\n 0x9159015a, 0x3070dd17,\n 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31,\n 0x8eb44a87, 0x68581511,\n 0xdb0c2e0d, 0x64f98fa7,\n 0x47b5481d, 0xbefa4fa4 ];\n}\nutils.inherits(SHA384, SHA512);\nmodule.exports = SHA384;\n\nSHA384.blockSize = 1024;\nSHA384.outSize = 384;\nSHA384.hmacStrength = 192;\nSHA384.padLength = 128;\n\nSHA384.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 12), 'big');\n else\n return utils.split32(this.h.slice(0, 12), 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar assert = require('minimalistic-assert');\n\nvar rotr64_hi = utils.rotr64_hi;\nvar rotr64_lo = utils.rotr64_lo;\nvar shr64_hi = utils.shr64_hi;\nvar shr64_lo = utils.shr64_lo;\nvar sum64 = utils.sum64;\nvar sum64_hi = utils.sum64_hi;\nvar sum64_lo = utils.sum64_lo;\nvar sum64_4_hi = utils.sum64_4_hi;\nvar sum64_4_lo = utils.sum64_4_lo;\nvar sum64_5_hi = utils.sum64_5_hi;\nvar sum64_5_lo = utils.sum64_5_lo;\n\nvar BlockHash = common.BlockHash;\n\nvar sha512_K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction SHA512() {\n if (!(this instanceof SHA512))\n return new SHA512();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xf3bcc908,\n 0xbb67ae85, 0x84caa73b,\n 0x3c6ef372, 0xfe94f82b,\n 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1,\n 0x9b05688c, 0x2b3e6c1f,\n 0x1f83d9ab, 0xfb41bd6b,\n 0x5be0cd19, 0x137e2179 ];\n this.k = sha512_K;\n this.W = new Array(160);\n}\nutils.inherits(SHA512, BlockHash);\nmodule.exports = SHA512;\n\nSHA512.blockSize = 1024;\nSHA512.outSize = 512;\nSHA512.hmacStrength = 192;\nSHA512.padLength = 128;\n\nSHA512.prototype._prepareBlock = function _prepareBlock(msg, start) {\n var W = this.W;\n\n // 32 x 32bit words\n for (var i = 0; i < 32; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i += 2) {\n var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2\n var c0_lo = g1_512_lo(W[i - 4], W[i - 3]);\n var c1_hi = W[i - 14]; // i - 7\n var c1_lo = W[i - 13];\n var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15\n var c2_lo = g0_512_lo(W[i - 30], W[i - 29]);\n var c3_hi = W[i - 32]; // i - 16\n var c3_lo = W[i - 31];\n\n W[i] = sum64_4_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n W[i + 1] = sum64_4_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n }\n};\n\nSHA512.prototype._update = function _update(msg, start) {\n this._prepareBlock(msg, start);\n\n var W = this.W;\n\n var ah = this.h[0];\n var al = this.h[1];\n var bh = this.h[2];\n var bl = this.h[3];\n var ch = this.h[4];\n var cl = this.h[5];\n var dh = this.h[6];\n var dl = this.h[7];\n var eh = this.h[8];\n var el = this.h[9];\n var fh = this.h[10];\n var fl = this.h[11];\n var gh = this.h[12];\n var gl = this.h[13];\n var hh = this.h[14];\n var hl = this.h[15];\n\n assert(this.k.length === W.length);\n for (var i = 0; i < W.length; i += 2) {\n var c0_hi = hh;\n var c0_lo = hl;\n var c1_hi = s1_512_hi(eh, el);\n var c1_lo = s1_512_lo(eh, el);\n var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl);\n var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl);\n var c3_hi = this.k[i];\n var c3_lo = this.k[i + 1];\n var c4_hi = W[i];\n var c4_lo = W[i + 1];\n\n var T1_hi = sum64_5_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n var T1_lo = sum64_5_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n\n c0_hi = s0_512_hi(ah, al);\n c0_lo = s0_512_lo(ah, al);\n c1_hi = maj64_hi(ah, al, bh, bl, ch, cl);\n c1_lo = maj64_lo(ah, al, bh, bl, ch, cl);\n\n var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo);\n var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo);\n\n hh = gh;\n hl = gl;\n\n gh = fh;\n gl = fl;\n\n fh = eh;\n fl = el;\n\n eh = sum64_hi(dh, dl, T1_hi, T1_lo);\n el = sum64_lo(dl, dl, T1_hi, T1_lo);\n\n dh = ch;\n dl = cl;\n\n ch = bh;\n cl = bl;\n\n bh = ah;\n bl = al;\n\n ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo);\n al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo);\n }\n\n sum64(this.h, 0, ah, al);\n sum64(this.h, 2, bh, bl);\n sum64(this.h, 4, ch, cl);\n sum64(this.h, 6, dh, dl);\n sum64(this.h, 8, eh, el);\n sum64(this.h, 10, fh, fl);\n sum64(this.h, 12, gh, gl);\n sum64(this.h, 14, hh, hl);\n};\n\nSHA512.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n\nfunction ch64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ ((~xh) & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction ch64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ ((~xl) & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ (xh & zh) ^ (yh & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ (xl & zl) ^ (yl & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 28);\n var c1_hi = rotr64_hi(xl, xh, 2); // 34\n var c2_hi = rotr64_hi(xl, xh, 7); // 39\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 28);\n var c1_lo = rotr64_lo(xl, xh, 2); // 34\n var c2_lo = rotr64_lo(xl, xh, 7); // 39\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 14);\n var c1_hi = rotr64_hi(xh, xl, 18);\n var c2_hi = rotr64_hi(xl, xh, 9); // 41\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 14);\n var c1_lo = rotr64_lo(xh, xl, 18);\n var c2_lo = rotr64_lo(xl, xh, 9); // 41\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 1);\n var c1_hi = rotr64_hi(xh, xl, 8);\n var c2_hi = shr64_hi(xh, xl, 7);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 1);\n var c1_lo = rotr64_lo(xh, xl, 8);\n var c2_lo = shr64_lo(xh, xl, 7);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 19);\n var c1_hi = rotr64_hi(xl, xh, 29); // 61\n var c2_hi = shr64_hi(xh, xl, 6);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 19);\n var c1_lo = rotr64_lo(xl, xh, 29); // 61\n var c2_lo = shr64_lo(xh, xl, 6);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n","'use strict';\n\nvar utils = require('../utils');\nvar rotr32 = utils.rotr32;\n\nfunction ft_1(s, x, y, z) {\n if (s === 0)\n return ch32(x, y, z);\n if (s === 1 || s === 3)\n return p32(x, y, z);\n if (s === 2)\n return maj32(x, y, z);\n}\nexports.ft_1 = ft_1;\n\nfunction ch32(x, y, z) {\n return (x & y) ^ ((~x) & z);\n}\nexports.ch32 = ch32;\n\nfunction maj32(x, y, z) {\n return (x & y) ^ (x & z) ^ (y & z);\n}\nexports.maj32 = maj32;\n\nfunction p32(x, y, z) {\n return x ^ y ^ z;\n}\nexports.p32 = p32;\n\nfunction s0_256(x) {\n return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22);\n}\nexports.s0_256 = s0_256;\n\nfunction s1_256(x) {\n return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25);\n}\nexports.s1_256 = s1_256;\n\nfunction g0_256(x) {\n return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3);\n}\nexports.g0_256 = g0_256;\n\nfunction g1_256(x) {\n return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10);\n}\nexports.g1_256 = g1_256;\n","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nexports.inherits = inherits;\n\nfunction isSurrogatePair(msg, i) {\n if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) {\n return false;\n }\n if (i < 0 || i + 1 >= msg.length) {\n return false;\n }\n return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00;\n}\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg === 'string') {\n if (!enc) {\n // Inspired by stringToUtf8ByteArray() in closure-library by Google\n // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143\n // Apache License 2.0\n // https://github.com/google/closure-library/blob/master/LICENSE\n var p = 0;\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n if (c < 128) {\n res[p++] = c;\n } else if (c < 2048) {\n res[p++] = (c >> 6) | 192;\n res[p++] = (c & 63) | 128;\n } else if (isSurrogatePair(msg, i)) {\n c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF);\n res[p++] = (c >> 18) | 240;\n res[p++] = ((c >> 12) & 63) | 128;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n } else {\n res[p++] = (c >> 12) | 224;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n }\n }\n } else if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n }\n } else {\n for (i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n }\n return res;\n}\nexports.toArray = toArray;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nexports.toHex = toHex;\n\nfunction htonl(w) {\n var res = (w >>> 24) |\n ((w >>> 8) & 0xff00) |\n ((w << 8) & 0xff0000) |\n ((w & 0xff) << 24);\n return res >>> 0;\n}\nexports.htonl = htonl;\n\nfunction toHex32(msg, endian) {\n var res = '';\n for (var i = 0; i < msg.length; i++) {\n var w = msg[i];\n if (endian === 'little')\n w = htonl(w);\n res += zero8(w.toString(16));\n }\n return res;\n}\nexports.toHex32 = toHex32;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nexports.zero2 = zero2;\n\nfunction zero8(word) {\n if (word.length === 7)\n return '0' + word;\n else if (word.length === 6)\n return '00' + word;\n else if (word.length === 5)\n return '000' + word;\n else if (word.length === 4)\n return '0000' + word;\n else if (word.length === 3)\n return '00000' + word;\n else if (word.length === 2)\n return '000000' + word;\n else if (word.length === 1)\n return '0000000' + word;\n else\n return word;\n}\nexports.zero8 = zero8;\n\nfunction join32(msg, start, end, endian) {\n var len = end - start;\n assert(len % 4 === 0);\n var res = new Array(len / 4);\n for (var i = 0, k = start; i < res.length; i++, k += 4) {\n var w;\n if (endian === 'big')\n w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3];\n else\n w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k];\n res[i] = w >>> 0;\n }\n return res;\n}\nexports.join32 = join32;\n\nfunction split32(msg, endian) {\n var res = new Array(msg.length * 4);\n for (var i = 0, k = 0; i < msg.length; i++, k += 4) {\n var m = msg[i];\n if (endian === 'big') {\n res[k] = m >>> 24;\n res[k + 1] = (m >>> 16) & 0xff;\n res[k + 2] = (m >>> 8) & 0xff;\n res[k + 3] = m & 0xff;\n } else {\n res[k + 3] = m >>> 24;\n res[k + 2] = (m >>> 16) & 0xff;\n res[k + 1] = (m >>> 8) & 0xff;\n res[k] = m & 0xff;\n }\n }\n return res;\n}\nexports.split32 = split32;\n\nfunction rotr32(w, b) {\n return (w >>> b) | (w << (32 - b));\n}\nexports.rotr32 = rotr32;\n\nfunction rotl32(w, b) {\n return (w << b) | (w >>> (32 - b));\n}\nexports.rotl32 = rotl32;\n\nfunction sum32(a, b) {\n return (a + b) >>> 0;\n}\nexports.sum32 = sum32;\n\nfunction sum32_3(a, b, c) {\n return (a + b + c) >>> 0;\n}\nexports.sum32_3 = sum32_3;\n\nfunction sum32_4(a, b, c, d) {\n return (a + b + c + d) >>> 0;\n}\nexports.sum32_4 = sum32_4;\n\nfunction sum32_5(a, b, c, d, e) {\n return (a + b + c + d + e) >>> 0;\n}\nexports.sum32_5 = sum32_5;\n\nfunction sum64(buf, pos, ah, al) {\n var bh = buf[pos];\n var bl = buf[pos + 1];\n\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n buf[pos] = hi >>> 0;\n buf[pos + 1] = lo;\n}\nexports.sum64 = sum64;\n\nfunction sum64_hi(ah, al, bh, bl) {\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n return hi >>> 0;\n}\nexports.sum64_hi = sum64_hi;\n\nfunction sum64_lo(ah, al, bh, bl) {\n var lo = al + bl;\n return lo >>> 0;\n}\nexports.sum64_lo = sum64_lo;\n\nfunction sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n\n var hi = ah + bh + ch + dh + carry;\n return hi >>> 0;\n}\nexports.sum64_4_hi = sum64_4_hi;\n\nfunction sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) {\n var lo = al + bl + cl + dl;\n return lo >>> 0;\n}\nexports.sum64_4_lo = sum64_4_lo;\n\nfunction sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n lo = (lo + el) >>> 0;\n carry += lo < el ? 1 : 0;\n\n var hi = ah + bh + ch + dh + eh + carry;\n return hi >>> 0;\n}\nexports.sum64_5_hi = sum64_5_hi;\n\nfunction sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var lo = al + bl + cl + dl + el;\n\n return lo >>> 0;\n}\nexports.sum64_5_lo = sum64_5_lo;\n\nfunction rotr64_hi(ah, al, num) {\n var r = (al << (32 - num)) | (ah >>> num);\n return r >>> 0;\n}\nexports.rotr64_hi = rotr64_hi;\n\nfunction rotr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.rotr64_lo = rotr64_lo;\n\nfunction shr64_hi(ah, al, num) {\n return ah >>> num;\n}\nexports.shr64_hi = shr64_hi;\n\nfunction shr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.shr64_lo = shr64_lo;\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","/*!\n * jQuery JavaScript Library v3.6.0\n * https://jquery.com/\n *\n * Includes Sizzle.js\n * https://sizzlejs.com/\n *\n * Copyright OpenJS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: 2021-03-02T17:08Z\n */\n( function( global, factory ) {\n\n\t\"use strict\";\n\n\tif ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\n\t\t// For CommonJS and CommonJS-like environments where a proper `window`\n\t\t// is present, execute the factory and get jQuery.\n\t\t// For environments that do not have a `window` with a `document`\n\t\t// (such as Node.js), expose a factory as module.exports.\n\t\t// This accentuates the need for the creation of a real `window`.\n\t\t// e.g. var jQuery = require(\"jquery\")(window);\n\t\t// See ticket #14549 for more info.\n\t\tmodule.exports = global.document ?\n\t\t\tfactory( global, true ) :\n\t\t\tfunction( w ) {\n\t\t\t\tif ( !w.document ) {\n\t\t\t\t\tthrow new Error( \"jQuery requires a window with a document\" );\n\t\t\t\t}\n\t\t\t\treturn factory( w );\n\t\t\t};\n\t} else {\n\t\tfactory( global );\n\t}\n\n// Pass this if window is not defined yet\n} )( typeof window !== \"undefined\" ? window : this, function( window, noGlobal ) {\n\n// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1\n// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode\n// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common\n// enough that all such attempts are guarded in a try block.\n\"use strict\";\n\nvar arr = [];\n\nvar getProto = Object.getPrototypeOf;\n\nvar slice = arr.slice;\n\nvar flat = arr.flat ? function( array ) {\n\treturn arr.flat.call( array );\n} : function( array ) {\n\treturn arr.concat.apply( [], array );\n};\n\n\nvar push = arr.push;\n\nvar indexOf = arr.indexOf;\n\nvar class2type = {};\n\nvar toString = class2type.toString;\n\nvar hasOwn = class2type.hasOwnProperty;\n\nvar fnToString = hasOwn.toString;\n\nvar ObjectFunctionString = fnToString.call( Object );\n\nvar support = {};\n\nvar isFunction = function isFunction( obj ) {\n\n\t\t// Support: Chrome <=57, Firefox <=52\n\t\t// In some browsers, typeof returns \"function\" for HTML elements\n\t\t// (i.e., `typeof document.createElement( \"object\" ) === \"function\"`).\n\t\t// We don't want to classify *any* DOM node as a function.\n\t\t// Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5\n\t\t// Plus for old WebKit, typeof returns \"function\" for HTML collections\n\t\t// (e.g., `typeof document.getElementsByTagName(\"div\") === \"function\"`). (gh-4756)\n\t\treturn typeof obj === \"function\" && typeof obj.nodeType !== \"number\" &&\n\t\t\ttypeof obj.item !== \"function\";\n\t};\n\n\nvar isWindow = function isWindow( obj ) {\n\t\treturn obj != null && obj === obj.window;\n\t};\n\n\nvar document = window.document;\n\n\n\n\tvar preservedScriptAttributes = {\n\t\ttype: true,\n\t\tsrc: true,\n\t\tnonce: true,\n\t\tnoModule: true\n\t};\n\n\tfunction DOMEval( code, node, doc ) {\n\t\tdoc = doc || document;\n\n\t\tvar i, val,\n\t\t\tscript = doc.createElement( \"script\" );\n\n\t\tscript.text = code;\n\t\tif ( node ) {\n\t\t\tfor ( i in preservedScriptAttributes ) {\n\n\t\t\t\t// Support: Firefox 64+, Edge 18+\n\t\t\t\t// Some browsers don't support the \"nonce\" property on scripts.\n\t\t\t\t// On the other hand, just using `getAttribute` is not enough as\n\t\t\t\t// the `nonce` attribute is reset to an empty string whenever it\n\t\t\t\t// becomes browsing-context connected.\n\t\t\t\t// See https://github.com/whatwg/html/issues/2369\n\t\t\t\t// See https://html.spec.whatwg.org/#nonce-attributes\n\t\t\t\t// The `node.getAttribute` check was added for the sake of\n\t\t\t\t// `jQuery.globalEval` so that it can fake a nonce-containing node\n\t\t\t\t// via an object.\n\t\t\t\tval = node[ i ] || node.getAttribute && node.getAttribute( i );\n\t\t\t\tif ( val ) {\n\t\t\t\t\tscript.setAttribute( i, val );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tdoc.head.appendChild( script ).parentNode.removeChild( script );\n\t}\n\n\nfunction toType( obj ) {\n\tif ( obj == null ) {\n\t\treturn obj + \"\";\n\t}\n\n\t// Support: Android <=2.3 only (functionish RegExp)\n\treturn typeof obj === \"object\" || typeof obj === \"function\" ?\n\t\tclass2type[ toString.call( obj ) ] || \"object\" :\n\t\ttypeof obj;\n}\n/* global Symbol */\n// Defining this global in .eslintrc.json would create a danger of using the global\n// unguarded in another place, it seems safer to define global only for this module\n\n\n\nvar\n\tversion = \"3.6.0\",\n\n\t// Define a local copy of jQuery\n\tjQuery = function( selector, context ) {\n\n\t\t// The jQuery object is actually just the init constructor 'enhanced'\n\t\t// Need init if jQuery is called (just allow error to be thrown if not included)\n\t\treturn new jQuery.fn.init( selector, context );\n\t};\n\njQuery.fn = jQuery.prototype = {\n\n\t// The current version of jQuery being used\n\tjquery: version,\n\n\tconstructor: jQuery,\n\n\t// The default length of a jQuery object is 0\n\tlength: 0,\n\n\ttoArray: function() {\n\t\treturn slice.call( this );\n\t},\n\n\t// Get the Nth element in the matched element set OR\n\t// Get the whole matched element set as a clean array\n\tget: function( num ) {\n\n\t\t// Return all the elements in a clean array\n\t\tif ( num == null ) {\n\t\t\treturn slice.call( this );\n\t\t}\n\n\t\t// Return just the one element from the set\n\t\treturn num < 0 ? this[ num + this.length ] : this[ num ];\n\t},\n\n\t// Take an array of elements and push it onto the stack\n\t// (returning the new matched element set)\n\tpushStack: function( elems ) {\n\n\t\t// Build a new jQuery matched element set\n\t\tvar ret = jQuery.merge( this.constructor(), elems );\n\n\t\t// Add the old object onto the stack (as a reference)\n\t\tret.prevObject = this;\n\n\t\t// Return the newly-formed element set\n\t\treturn ret;\n\t},\n\n\t// Execute a callback for every element in the matched set.\n\teach: function( callback ) {\n\t\treturn jQuery.each( this, callback );\n\t},\n\n\tmap: function( callback ) {\n\t\treturn this.pushStack( jQuery.map( this, function( elem, i ) {\n\t\t\treturn callback.call( elem, i, elem );\n\t\t} ) );\n\t},\n\n\tslice: function() {\n\t\treturn this.pushStack( slice.apply( this, arguments ) );\n\t},\n\n\tfirst: function() {\n\t\treturn this.eq( 0 );\n\t},\n\n\tlast: function() {\n\t\treturn this.eq( -1 );\n\t},\n\n\teven: function() {\n\t\treturn this.pushStack( jQuery.grep( this, function( _elem, i ) {\n\t\t\treturn ( i + 1 ) % 2;\n\t\t} ) );\n\t},\n\n\todd: function() {\n\t\treturn this.pushStack( jQuery.grep( this, function( _elem, i ) {\n\t\t\treturn i % 2;\n\t\t} ) );\n\t},\n\n\teq: function( i ) {\n\t\tvar len = this.length,\n\t\t\tj = +i + ( i < 0 ? len : 0 );\n\t\treturn this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );\n\t},\n\n\tend: function() {\n\t\treturn this.prevObject || this.constructor();\n\t},\n\n\t// For internal use only.\n\t// Behaves like an Array's method, not like a jQuery method.\n\tpush: push,\n\tsort: arr.sort,\n\tsplice: arr.splice\n};\n\njQuery.extend = jQuery.fn.extend = function() {\n\tvar options, name, src, copy, copyIsArray, clone,\n\t\ttarget = arguments[ 0 ] || {},\n\t\ti = 1,\n\t\tlength = arguments.length,\n\t\tdeep = false;\n\n\t// Handle a deep copy situation\n\tif ( typeof target === \"boolean\" ) {\n\t\tdeep = target;\n\n\t\t// Skip the boolean and the target\n\t\ttarget = arguments[ i ] || {};\n\t\ti++;\n\t}\n\n\t// Handle case when target is a string or something (possible in deep copy)\n\tif ( typeof target !== \"object\" && !isFunction( target ) ) {\n\t\ttarget = {};\n\t}\n\n\t// Extend jQuery itself if only one argument is passed\n\tif ( i === length ) {\n\t\ttarget = this;\n\t\ti--;\n\t}\n\n\tfor ( ; i < length; i++ ) {\n\n\t\t// Only deal with non-null/undefined values\n\t\tif ( ( options = arguments[ i ] ) != null ) {\n\n\t\t\t// Extend the base object\n\t\t\tfor ( name in options ) {\n\t\t\t\tcopy = options[ name ];\n\n\t\t\t\t// Prevent Object.prototype pollution\n\t\t\t\t// Prevent never-ending loop\n\t\t\t\tif ( name === \"__proto__\" || target === copy ) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Recurse if we're merging plain objects or arrays\n\t\t\t\tif ( deep && copy && ( jQuery.isPlainObject( copy ) ||\n\t\t\t\t\t( copyIsArray = Array.isArray( copy ) ) ) ) {\n\t\t\t\t\tsrc = target[ name ];\n\n\t\t\t\t\t// Ensure proper type for the source value\n\t\t\t\t\tif ( copyIsArray && !Array.isArray( src ) ) {\n\t\t\t\t\t\tclone = [];\n\t\t\t\t\t} else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) {\n\t\t\t\t\t\tclone = {};\n\t\t\t\t\t} else {\n\t\t\t\t\t\tclone = src;\n\t\t\t\t\t}\n\t\t\t\t\tcopyIsArray = false;\n\n\t\t\t\t\t// Never move original objects, clone them\n\t\t\t\t\ttarget[ name ] = jQuery.extend( deep, clone, copy );\n\n\t\t\t\t// Don't bring in undefined values\n\t\t\t\t} else if ( copy !== undefined ) {\n\t\t\t\t\ttarget[ name ] = copy;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Return the modified object\n\treturn target;\n};\n\njQuery.extend( {\n\n\t// Unique for each copy of jQuery on the page\n\texpando: \"jQuery\" + ( version + Math.random() ).replace( /\\D/g, \"\" ),\n\n\t// Assume jQuery is ready without the ready module\n\tisReady: true,\n\n\terror: function( msg ) {\n\t\tthrow new Error( msg );\n\t},\n\n\tnoop: function() {},\n\n\tisPlainObject: function( obj ) {\n\t\tvar proto, Ctor;\n\n\t\t// Detect obvious negatives\n\t\t// Use toString instead of jQuery.type to catch host objects\n\t\tif ( !obj || toString.call( obj ) !== \"[object Object]\" ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tproto = getProto( obj );\n\n\t\t// Objects with no prototype (e.g., `Object.create( null )`) are plain\n\t\tif ( !proto ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// Objects with prototype are plain iff they were constructed by a global Object function\n\t\tCtor = hasOwn.call( proto, \"constructor\" ) && proto.constructor;\n\t\treturn typeof Ctor === \"function\" && fnToString.call( Ctor ) === ObjectFunctionString;\n\t},\n\n\tisEmptyObject: function( obj ) {\n\t\tvar name;\n\n\t\tfor ( name in obj ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t},\n\n\t// Evaluates a script in a provided context; falls back to the global one\n\t// if not specified.\n\tglobalEval: function( code, options, doc ) {\n\t\tDOMEval( code, { nonce: options && options.nonce }, doc );\n\t},\n\n\teach: function( obj, callback ) {\n\t\tvar length, i = 0;\n\n\t\tif ( isArrayLike( obj ) ) {\n\t\t\tlength = obj.length;\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tif ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor ( i in obj ) {\n\t\t\t\tif ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn obj;\n\t},\n\n\t// results is for internal usage only\n\tmakeArray: function( arr, results ) {\n\t\tvar ret = results || [];\n\n\t\tif ( arr != null ) {\n\t\t\tif ( isArrayLike( Object( arr ) ) ) {\n\t\t\t\tjQuery.merge( ret,\n\t\t\t\t\ttypeof arr === \"string\" ?\n\t\t\t\t\t\t[ arr ] : arr\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tpush.call( ret, arr );\n\t\t\t}\n\t\t}\n\n\t\treturn ret;\n\t},\n\n\tinArray: function( elem, arr, i ) {\n\t\treturn arr == null ? -1 : indexOf.call( arr, elem, i );\n\t},\n\n\t// Support: Android <=4.0 only, PhantomJS 1 only\n\t// push.apply(_, arraylike) throws on ancient WebKit\n\tmerge: function( first, second ) {\n\t\tvar len = +second.length,\n\t\t\tj = 0,\n\t\t\ti = first.length;\n\n\t\tfor ( ; j < len; j++ ) {\n\t\t\tfirst[ i++ ] = second[ j ];\n\t\t}\n\n\t\tfirst.length = i;\n\n\t\treturn first;\n\t},\n\n\tgrep: function( elems, callback, invert ) {\n\t\tvar callbackInverse,\n\t\t\tmatches = [],\n\t\t\ti = 0,\n\t\t\tlength = elems.length,\n\t\t\tcallbackExpect = !invert;\n\n\t\t// Go through the array, only saving the items\n\t\t// that pass the validator function\n\t\tfor ( ; i < length; i++ ) {\n\t\t\tcallbackInverse = !callback( elems[ i ], i );\n\t\t\tif ( callbackInverse !== callbackExpect ) {\n\t\t\t\tmatches.push( elems[ i ] );\n\t\t\t}\n\t\t}\n\n\t\treturn matches;\n\t},\n\n\t// arg is for internal usage only\n\tmap: function( elems, callback, arg ) {\n\t\tvar length, value,\n\t\t\ti = 0,\n\t\t\tret = [];\n\n\t\t// Go through the array, translating each of the items to their new values\n\t\tif ( isArrayLike( elems ) ) {\n\t\t\tlength = elems.length;\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\n\n\t\t\t\tif ( value != null ) {\n\t\t\t\t\tret.push( value );\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Go through every key on the object,\n\t\t} else {\n\t\t\tfor ( i in elems ) {\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\n\n\t\t\t\tif ( value != null ) {\n\t\t\t\t\tret.push( value );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Flatten any nested arrays\n\t\treturn flat( ret );\n\t},\n\n\t// A global GUID counter for objects\n\tguid: 1,\n\n\t// jQuery.support is not used in Core but other projects attach their\n\t// properties to it so it needs to exist.\n\tsupport: support\n} );\n\nif ( typeof Symbol === \"function\" ) {\n\tjQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];\n}\n\n// Populate the class2type map\njQuery.each( \"Boolean Number String Function Array Date RegExp Object Error Symbol\".split( \" \" ),\n\tfunction( _i, name ) {\n\t\tclass2type[ \"[object \" + name + \"]\" ] = name.toLowerCase();\n\t} );\n\nfunction isArrayLike( obj ) {\n\n\t// Support: real iOS 8.2 only (not reproducible in simulator)\n\t// `in` check used to prevent JIT error (gh-2145)\n\t// hasOwn isn't used here due to false negatives\n\t// regarding Nodelist length in IE\n\tvar length = !!obj && \"length\" in obj && obj.length,\n\t\ttype = toType( obj );\n\n\tif ( isFunction( obj ) || isWindow( obj ) ) {\n\t\treturn false;\n\t}\n\n\treturn type === \"array\" || length === 0 ||\n\t\ttypeof length === \"number\" && length > 0 && ( length - 1 ) in obj;\n}\nvar Sizzle =\n/*!\n * Sizzle CSS Selector Engine v2.3.6\n * https://sizzlejs.com/\n *\n * Copyright JS Foundation and other contributors\n * Released under the MIT license\n * https://js.foundation/\n *\n * Date: 2021-02-16\n */\n( function( window ) {\nvar i,\n\tsupport,\n\tExpr,\n\tgetText,\n\tisXML,\n\ttokenize,\n\tcompile,\n\tselect,\n\toutermostContext,\n\tsortInput,\n\thasDuplicate,\n\n\t// Local document vars\n\tsetDocument,\n\tdocument,\n\tdocElem,\n\tdocumentIsHTML,\n\trbuggyQSA,\n\trbuggyMatches,\n\tmatches,\n\tcontains,\n\n\t// Instance-specific data\n\texpando = \"sizzle\" + 1 * new Date(),\n\tpreferredDoc = window.document,\n\tdirruns = 0,\n\tdone = 0,\n\tclassCache = createCache(),\n\ttokenCache = createCache(),\n\tcompilerCache = createCache(),\n\tnonnativeSelectorCache = createCache(),\n\tsortOrder = function( a, b ) {\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t}\n\t\treturn 0;\n\t},\n\n\t// Instance methods\n\thasOwn = ( {} ).hasOwnProperty,\n\tarr = [],\n\tpop = arr.pop,\n\tpushNative = arr.push,\n\tpush = arr.push,\n\tslice = arr.slice,\n\n\t// Use a stripped-down indexOf as it's faster than native\n\t// https://jsperf.com/thor-indexof-vs-for/5\n\tindexOf = function( list, elem ) {\n\t\tvar i = 0,\n\t\t\tlen = list.length;\n\t\tfor ( ; i < len; i++ ) {\n\t\t\tif ( list[ i ] === elem ) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t},\n\n\tbooleans = \"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|\" +\n\t\t\"ismap|loop|multiple|open|readonly|required|scoped\",\n\n\t// Regular expressions\n\n\t// http://www.w3.org/TR/css3-selectors/#whitespace\n\twhitespace = \"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",\n\n\t// https://www.w3.org/TR/css-syntax-3/#ident-token-diagram\n\tidentifier = \"(?:\\\\\\\\[\\\\da-fA-F]{1,6}\" + whitespace +\n\t\t\"?|\\\\\\\\[^\\\\r\\\\n\\\\f]|[\\\\w-]|[^\\0-\\\\x7f])+\",\n\n\t// Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors\n\tattributes = \"\\\\[\" + whitespace + \"*(\" + identifier + \")(?:\" + whitespace +\n\n\t\t// Operator (capture 2)\n\t\t\"*([*^$|!~]?=)\" + whitespace +\n\n\t\t// \"Attribute values must be CSS identifiers [capture 5]\n\t\t// or strings [capture 3 or capture 4]\"\n\t\t\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\" + identifier + \"))|)\" +\n\t\twhitespace + \"*\\\\]\",\n\n\tpseudos = \":(\" + identifier + \")(?:\\\\((\" +\n\n\t\t// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:\n\t\t// 1. quoted (capture 3; capture 4 or capture 5)\n\t\t\"('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|\" +\n\n\t\t// 2. simple (capture 6)\n\t\t\"((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\" + attributes + \")*)|\" +\n\n\t\t// 3. anything else (capture 2)\n\t\t\".*\" +\n\t\t\")\\\\)|)\",\n\n\t// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter\n\trwhitespace = new RegExp( whitespace + \"+\", \"g\" ),\n\trtrim = new RegExp( \"^\" + whitespace + \"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\" +\n\t\twhitespace + \"+$\", \"g\" ),\n\n\trcomma = new RegExp( \"^\" + whitespace + \"*,\" + whitespace + \"*\" ),\n\trcombinators = new RegExp( \"^\" + whitespace + \"*([>+~]|\" + whitespace + \")\" + whitespace +\n\t\t\"*\" ),\n\trdescend = new RegExp( whitespace + \"|>\" ),\n\n\trpseudo = new RegExp( pseudos ),\n\tridentifier = new RegExp( \"^\" + identifier + \"$\" ),\n\n\tmatchExpr = {\n\t\t\"ID\": new RegExp( \"^#(\" + identifier + \")\" ),\n\t\t\"CLASS\": new RegExp( \"^\\\\.(\" + identifier + \")\" ),\n\t\t\"TAG\": new RegExp( \"^(\" + identifier + \"|[*])\" ),\n\t\t\"ATTR\": new RegExp( \"^\" + attributes ),\n\t\t\"PSEUDO\": new RegExp( \"^\" + pseudos ),\n\t\t\"CHILD\": new RegExp( \"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\" +\n\t\t\twhitespace + \"*(even|odd|(([+-]|)(\\\\d*)n|)\" + whitespace + \"*(?:([+-]|)\" +\n\t\t\twhitespace + \"*(\\\\d+)|))\" + whitespace + \"*\\\\)|)\", \"i\" ),\n\t\t\"bool\": new RegExp( \"^(?:\" + booleans + \")$\", \"i\" ),\n\n\t\t// For use in libraries implementing .is()\n\t\t// We use this for POS matching in `select`\n\t\t\"needsContext\": new RegExp( \"^\" + whitespace +\n\t\t\t\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\" + whitespace +\n\t\t\t\"*((?:-\\\\d)?\\\\d*)\" + whitespace + \"*\\\\)|)(?=[^-]|$)\", \"i\" )\n\t},\n\n\trhtml = /HTML$/i,\n\trinputs = /^(?:input|select|textarea|button)$/i,\n\trheader = /^h\\d$/i,\n\n\trnative = /^[^{]+\\{\\s*\\[native \\w/,\n\n\t// Easily-parseable/retrievable ID or TAG or CLASS selectors\n\trquickExpr = /^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,\n\n\trsibling = /[+~]/,\n\n\t// CSS escapes\n\t// http://www.w3.org/TR/CSS21/syndata.html#escaped-characters\n\trunescape = new RegExp( \"\\\\\\\\[\\\\da-fA-F]{1,6}\" + whitespace + \"?|\\\\\\\\([^\\\\r\\\\n\\\\f])\", \"g\" ),\n\tfunescape = function( escape, nonHex ) {\n\t\tvar high = \"0x\" + escape.slice( 1 ) - 0x10000;\n\n\t\treturn nonHex ?\n\n\t\t\t// Strip the backslash prefix from a non-hex escape sequence\n\t\t\tnonHex :\n\n\t\t\t// Replace a hexadecimal escape sequence with the encoded Unicode code point\n\t\t\t// Support: IE <=11+\n\t\t\t// For values outside the Basic Multilingual Plane (BMP), manually construct a\n\t\t\t// surrogate pair\n\t\t\thigh < 0 ?\n\t\t\t\tString.fromCharCode( high + 0x10000 ) :\n\t\t\t\tString.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );\n\t},\n\n\t// CSS string/identifier serialization\n\t// https://drafts.csswg.org/cssom/#common-serializing-idioms\n\trcssescape = /([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,\n\tfcssescape = function( ch, asCodePoint ) {\n\t\tif ( asCodePoint ) {\n\n\t\t\t// U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER\n\t\t\tif ( ch === \"\\0\" ) {\n\t\t\t\treturn \"\\uFFFD\";\n\t\t\t}\n\n\t\t\t// Control characters and (dependent upon position) numbers get escaped as code points\n\t\t\treturn ch.slice( 0, -1 ) + \"\\\\\" +\n\t\t\t\tch.charCodeAt( ch.length - 1 ).toString( 16 ) + \" \";\n\t\t}\n\n\t\t// Other potentially-special ASCII characters get backslash-escaped\n\t\treturn \"\\\\\" + ch;\n\t},\n\n\t// Used for iframes\n\t// See setDocument()\n\t// Removing the function wrapper causes a \"Permission Denied\"\n\t// error in IE\n\tunloadHandler = function() {\n\t\tsetDocument();\n\t},\n\n\tinDisabledFieldset = addCombinator(\n\t\tfunction( elem ) {\n\t\t\treturn elem.disabled === true && elem.nodeName.toLowerCase() === \"fieldset\";\n\t\t},\n\t\t{ dir: \"parentNode\", next: \"legend\" }\n\t);\n\n// Optimize for push.apply( _, NodeList )\ntry {\n\tpush.apply(\n\t\t( arr = slice.call( preferredDoc.childNodes ) ),\n\t\tpreferredDoc.childNodes\n\t);\n\n\t// Support: Android<4.0\n\t// Detect silently failing push.apply\n\t// eslint-disable-next-line no-unused-expressions\n\tarr[ preferredDoc.childNodes.length ].nodeType;\n} catch ( e ) {\n\tpush = { apply: arr.length ?\n\n\t\t// Leverage slice if possible\n\t\tfunction( target, els ) {\n\t\t\tpushNative.apply( target, slice.call( els ) );\n\t\t} :\n\n\t\t// Support: IE<9\n\t\t// Otherwise append directly\n\t\tfunction( target, els ) {\n\t\t\tvar j = target.length,\n\t\t\t\ti = 0;\n\n\t\t\t// Can't trust NodeList.length\n\t\t\twhile ( ( target[ j++ ] = els[ i++ ] ) ) {}\n\t\t\ttarget.length = j - 1;\n\t\t}\n\t};\n}\n\nfunction Sizzle( selector, context, results, seed ) {\n\tvar m, i, elem, nid, match, groups, newSelector,\n\t\tnewContext = context && context.ownerDocument,\n\n\t\t// nodeType defaults to 9, since context defaults to document\n\t\tnodeType = context ? context.nodeType : 9;\n\n\tresults = results || [];\n\n\t// Return early from calls with invalid selector or context\n\tif ( typeof selector !== \"string\" || !selector ||\n\t\tnodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {\n\n\t\treturn results;\n\t}\n\n\t// Try to shortcut find operations (as opposed to filters) in HTML documents\n\tif ( !seed ) {\n\t\tsetDocument( context );\n\t\tcontext = context || document;\n\n\t\tif ( documentIsHTML ) {\n\n\t\t\t// If the selector is sufficiently simple, try using a \"get*By*\" DOM method\n\t\t\t// (excepting DocumentFragment context, where the methods don't exist)\n\t\t\tif ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) {\n\n\t\t\t\t// ID selector\n\t\t\t\tif ( ( m = match[ 1 ] ) ) {\n\n\t\t\t\t\t// Document context\n\t\t\t\t\tif ( nodeType === 9 ) {\n\t\t\t\t\t\tif ( ( elem = context.getElementById( m ) ) ) {\n\n\t\t\t\t\t\t\t// Support: IE, Opera, Webkit\n\t\t\t\t\t\t\t// TODO: identify versions\n\t\t\t\t\t\t\t// getElementById can match elements by name instead of ID\n\t\t\t\t\t\t\tif ( elem.id === m ) {\n\t\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t// Element context\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\t// Support: IE, Opera, Webkit\n\t\t\t\t\t\t// TODO: identify versions\n\t\t\t\t\t\t// getElementById can match elements by name instead of ID\n\t\t\t\t\t\tif ( newContext && ( elem = newContext.getElementById( m ) ) &&\n\t\t\t\t\t\t\tcontains( context, elem ) &&\n\t\t\t\t\t\t\telem.id === m ) {\n\n\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t// Type selector\n\t\t\t\t} else if ( match[ 2 ] ) {\n\t\t\t\t\tpush.apply( results, context.getElementsByTagName( selector ) );\n\t\t\t\t\treturn results;\n\n\t\t\t\t// Class selector\n\t\t\t\t} else if ( ( m = match[ 3 ] ) && support.getElementsByClassName &&\n\t\t\t\t\tcontext.getElementsByClassName ) {\n\n\t\t\t\t\tpush.apply( results, context.getElementsByClassName( m ) );\n\t\t\t\t\treturn results;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Take advantage of querySelectorAll\n\t\t\tif ( support.qsa &&\n\t\t\t\t!nonnativeSelectorCache[ selector + \" \" ] &&\n\t\t\t\t( !rbuggyQSA || !rbuggyQSA.test( selector ) ) &&\n\n\t\t\t\t// Support: IE 8 only\n\t\t\t\t// Exclude object elements\n\t\t\t\t( nodeType !== 1 || context.nodeName.toLowerCase() !== \"object\" ) ) {\n\n\t\t\t\tnewSelector = selector;\n\t\t\t\tnewContext = context;\n\n\t\t\t\t// qSA considers elements outside a scoping root when evaluating child or\n\t\t\t\t// descendant combinators, which is not what we want.\n\t\t\t\t// In such cases, we work around the behavior by prefixing every selector in the\n\t\t\t\t// list with an ID selector referencing the scope context.\n\t\t\t\t// The technique has to be used as well when a leading combinator is used\n\t\t\t\t// as such selectors are not recognized by querySelectorAll.\n\t\t\t\t// Thanks to Andrew Dupont for this technique.\n\t\t\t\tif ( nodeType === 1 &&\n\t\t\t\t\t( rdescend.test( selector ) || rcombinators.test( selector ) ) ) {\n\n\t\t\t\t\t// Expand context for sibling selectors\n\t\t\t\t\tnewContext = rsibling.test( selector ) && testContext( context.parentNode ) ||\n\t\t\t\t\t\tcontext;\n\n\t\t\t\t\t// We can use :scope instead of the ID hack if the browser\n\t\t\t\t\t// supports it & if we're not changing the context.\n\t\t\t\t\tif ( newContext !== context || !support.scope ) {\n\n\t\t\t\t\t\t// Capture the context ID, setting it first if necessary\n\t\t\t\t\t\tif ( ( nid = context.getAttribute( \"id\" ) ) ) {\n\t\t\t\t\t\t\tnid = nid.replace( rcssescape, fcssescape );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tcontext.setAttribute( \"id\", ( nid = expando ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Prefix every selector in the list\n\t\t\t\t\tgroups = tokenize( selector );\n\t\t\t\t\ti = groups.length;\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tgroups[ i ] = ( nid ? \"#\" + nid : \":scope\" ) + \" \" +\n\t\t\t\t\t\t\ttoSelector( groups[ i ] );\n\t\t\t\t\t}\n\t\t\t\t\tnewSelector = groups.join( \",\" );\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tpush.apply( results,\n\t\t\t\t\t\tnewContext.querySelectorAll( newSelector )\n\t\t\t\t\t);\n\t\t\t\t\treturn results;\n\t\t\t\t} catch ( qsaError ) {\n\t\t\t\t\tnonnativeSelectorCache( selector, true );\n\t\t\t\t} finally {\n\t\t\t\t\tif ( nid === expando ) {\n\t\t\t\t\t\tcontext.removeAttribute( \"id\" );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// All others\n\treturn select( selector.replace( rtrim, \"$1\" ), context, results, seed );\n}\n\n/**\n * Create key-value caches of limited size\n * @returns {function(string, object)} Returns the Object data after storing it on itself with\n *\tproperty name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)\n *\tdeleting the oldest entry\n */\nfunction createCache() {\n\tvar keys = [];\n\n\tfunction cache( key, value ) {\n\n\t\t// Use (key + \" \") to avoid collision with native prototype properties (see Issue #157)\n\t\tif ( keys.push( key + \" \" ) > Expr.cacheLength ) {\n\n\t\t\t// Only keep the most recent entries\n\t\t\tdelete cache[ keys.shift() ];\n\t\t}\n\t\treturn ( cache[ key + \" \" ] = value );\n\t}\n\treturn cache;\n}\n\n/**\n * Mark a function for special use by Sizzle\n * @param {Function} fn The function to mark\n */\nfunction markFunction( fn ) {\n\tfn[ expando ] = true;\n\treturn fn;\n}\n\n/**\n * Support testing using an element\n * @param {Function} fn Passed the created element and returns a boolean result\n */\nfunction assert( fn ) {\n\tvar el = document.createElement( \"fieldset\" );\n\n\ttry {\n\t\treturn !!fn( el );\n\t} catch ( e ) {\n\t\treturn false;\n\t} finally {\n\n\t\t// Remove from its parent by default\n\t\tif ( el.parentNode ) {\n\t\t\tel.parentNode.removeChild( el );\n\t\t}\n\n\t\t// release memory in IE\n\t\tel = null;\n\t}\n}\n\n/**\n * Adds the same handler for all of the specified attrs\n * @param {String} attrs Pipe-separated list of attributes\n * @param {Function} handler The method that will be applied\n */\nfunction addHandle( attrs, handler ) {\n\tvar arr = attrs.split( \"|\" ),\n\t\ti = arr.length;\n\n\twhile ( i-- ) {\n\t\tExpr.attrHandle[ arr[ i ] ] = handler;\n\t}\n}\n\n/**\n * Checks document order of two siblings\n * @param {Element} a\n * @param {Element} b\n * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b\n */\nfunction siblingCheck( a, b ) {\n\tvar cur = b && a,\n\t\tdiff = cur && a.nodeType === 1 && b.nodeType === 1 &&\n\t\t\ta.sourceIndex - b.sourceIndex;\n\n\t// Use IE sourceIndex if available on both nodes\n\tif ( diff ) {\n\t\treturn diff;\n\t}\n\n\t// Check if b follows a\n\tif ( cur ) {\n\t\twhile ( ( cur = cur.nextSibling ) ) {\n\t\t\tif ( cur === b ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn a ? 1 : -1;\n}\n\n/**\n * Returns a function to use in pseudos for input types\n * @param {String} type\n */\nfunction createInputPseudo( type ) {\n\treturn function( elem ) {\n\t\tvar name = elem.nodeName.toLowerCase();\n\t\treturn name === \"input\" && elem.type === type;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for buttons\n * @param {String} type\n */\nfunction createButtonPseudo( type ) {\n\treturn function( elem ) {\n\t\tvar name = elem.nodeName.toLowerCase();\n\t\treturn ( name === \"input\" || name === \"button\" ) && elem.type === type;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for :enabled/:disabled\n * @param {Boolean} disabled true for :disabled; false for :enabled\n */\nfunction createDisabledPseudo( disabled ) {\n\n\t// Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable\n\treturn function( elem ) {\n\n\t\t// Only certain elements can match :enabled or :disabled\n\t\t// https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled\n\t\t// https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled\n\t\tif ( \"form\" in elem ) {\n\n\t\t\t// Check for inherited disabledness on relevant non-disabled elements:\n\t\t\t// * listed form-associated elements in a disabled fieldset\n\t\t\t// https://html.spec.whatwg.org/multipage/forms.html#category-listed\n\t\t\t// https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled\n\t\t\t// * option elements in a disabled optgroup\n\t\t\t// https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled\n\t\t\t// All such elements have a \"form\" property.\n\t\t\tif ( elem.parentNode && elem.disabled === false ) {\n\n\t\t\t\t// Option elements defer to a parent optgroup if present\n\t\t\t\tif ( \"label\" in elem ) {\n\t\t\t\t\tif ( \"label\" in elem.parentNode ) {\n\t\t\t\t\t\treturn elem.parentNode.disabled === disabled;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn elem.disabled === disabled;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Support: IE 6 - 11\n\t\t\t\t// Use the isDisabled shortcut property to check for disabled fieldset ancestors\n\t\t\t\treturn elem.isDisabled === disabled ||\n\n\t\t\t\t\t// Where there is no isDisabled, check manually\n\t\t\t\t\t/* jshint -W018 */\n\t\t\t\t\telem.isDisabled !== !disabled &&\n\t\t\t\t\tinDisabledFieldset( elem ) === disabled;\n\t\t\t}\n\n\t\t\treturn elem.disabled === disabled;\n\n\t\t// Try to winnow out elements that can't be disabled before trusting the disabled property.\n\t\t// Some victims get caught in our net (label, legend, menu, track), but it shouldn't\n\t\t// even exist on them, let alone have a boolean value.\n\t\t} else if ( \"label\" in elem ) {\n\t\t\treturn elem.disabled === disabled;\n\t\t}\n\n\t\t// Remaining elements are neither :enabled nor :disabled\n\t\treturn false;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for positionals\n * @param {Function} fn\n */\nfunction createPositionalPseudo( fn ) {\n\treturn markFunction( function( argument ) {\n\t\targument = +argument;\n\t\treturn markFunction( function( seed, matches ) {\n\t\t\tvar j,\n\t\t\t\tmatchIndexes = fn( [], seed.length, argument ),\n\t\t\t\ti = matchIndexes.length;\n\n\t\t\t// Match elements found at the specified indexes\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( seed[ ( j = matchIndexes[ i ] ) ] ) {\n\t\t\t\t\tseed[ j ] = !( matches[ j ] = seed[ j ] );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t} );\n}\n\n/**\n * Checks a node for validity as a Sizzle context\n * @param {Element|Object=} context\n * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value\n */\nfunction testContext( context ) {\n\treturn context && typeof context.getElementsByTagName !== \"undefined\" && context;\n}\n\n// Expose support vars for convenience\nsupport = Sizzle.support = {};\n\n/**\n * Detects XML nodes\n * @param {Element|Object} elem An element or a document\n * @returns {Boolean} True iff elem is a non-HTML XML node\n */\nisXML = Sizzle.isXML = function( elem ) {\n\tvar namespace = elem && elem.namespaceURI,\n\t\tdocElem = elem && ( elem.ownerDocument || elem ).documentElement;\n\n\t// Support: IE <=8\n\t// Assume HTML when documentElement doesn't yet exist, such as inside loading iframes\n\t// https://bugs.jquery.com/ticket/4833\n\treturn !rhtml.test( namespace || docElem && docElem.nodeName || \"HTML\" );\n};\n\n/**\n * Sets document-related variables once based on the current document\n * @param {Element|Object} [doc] An element or document object to use to set the document\n * @returns {Object} Returns the current document\n */\nsetDocument = Sizzle.setDocument = function( node ) {\n\tvar hasCompare, subWindow,\n\t\tdoc = node ? node.ownerDocument || node : preferredDoc;\n\n\t// Return early if doc is invalid or already selected\n\t// Support: IE 11+, Edge 17 - 18+\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t// two documents; shallow comparisons work.\n\t// eslint-disable-next-line eqeqeq\n\tif ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) {\n\t\treturn document;\n\t}\n\n\t// Update global variables\n\tdocument = doc;\n\tdocElem = document.documentElement;\n\tdocumentIsHTML = !isXML( document );\n\n\t// Support: IE 9 - 11+, Edge 12 - 18+\n\t// Accessing iframe documents after unload throws \"permission denied\" errors (jQuery #13936)\n\t// Support: IE 11+, Edge 17 - 18+\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t// two documents; shallow comparisons work.\n\t// eslint-disable-next-line eqeqeq\n\tif ( preferredDoc != document &&\n\t\t( subWindow = document.defaultView ) && subWindow.top !== subWindow ) {\n\n\t\t// Support: IE 11, Edge\n\t\tif ( subWindow.addEventListener ) {\n\t\t\tsubWindow.addEventListener( \"unload\", unloadHandler, false );\n\n\t\t// Support: IE 9 - 10 only\n\t\t} else if ( subWindow.attachEvent ) {\n\t\t\tsubWindow.attachEvent( \"onunload\", unloadHandler );\n\t\t}\n\t}\n\n\t// Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only,\n\t// Safari 4 - 5 only, Opera <=11.6 - 12.x only\n\t// IE/Edge & older browsers don't support the :scope pseudo-class.\n\t// Support: Safari 6.0 only\n\t// Safari 6.0 supports :scope but it's an alias of :root there.\n\tsupport.scope = assert( function( el ) {\n\t\tdocElem.appendChild( el ).appendChild( document.createElement( \"div\" ) );\n\t\treturn typeof el.querySelectorAll !== \"undefined\" &&\n\t\t\t!el.querySelectorAll( \":scope fieldset div\" ).length;\n\t} );\n\n\t/* Attributes\n\t---------------------------------------------------------------------- */\n\n\t// Support: IE<8\n\t// Verify that getAttribute really returns attributes and not properties\n\t// (excepting IE8 booleans)\n\tsupport.attributes = assert( function( el ) {\n\t\tel.className = \"i\";\n\t\treturn !el.getAttribute( \"className\" );\n\t} );\n\n\t/* getElement(s)By*\n\t---------------------------------------------------------------------- */\n\n\t// Check if getElementsByTagName(\"*\") returns only elements\n\tsupport.getElementsByTagName = assert( function( el ) {\n\t\tel.appendChild( document.createComment( \"\" ) );\n\t\treturn !el.getElementsByTagName( \"*\" ).length;\n\t} );\n\n\t// Support: IE<9\n\tsupport.getElementsByClassName = rnative.test( document.getElementsByClassName );\n\n\t// Support: IE<10\n\t// Check if getElementById returns elements by name\n\t// The broken getElementById methods don't pick up programmatically-set names,\n\t// so use a roundabout getElementsByName test\n\tsupport.getById = assert( function( el ) {\n\t\tdocElem.appendChild( el ).id = expando;\n\t\treturn !document.getElementsByName || !document.getElementsByName( expando ).length;\n\t} );\n\n\t// ID filter and find\n\tif ( support.getById ) {\n\t\tExpr.filter[ \"ID\" ] = function( id ) {\n\t\t\tvar attrId = id.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\treturn elem.getAttribute( \"id\" ) === attrId;\n\t\t\t};\n\t\t};\n\t\tExpr.find[ \"ID\" ] = function( id, context ) {\n\t\t\tif ( typeof context.getElementById !== \"undefined\" && documentIsHTML ) {\n\t\t\t\tvar elem = context.getElementById( id );\n\t\t\t\treturn elem ? [ elem ] : [];\n\t\t\t}\n\t\t};\n\t} else {\n\t\tExpr.filter[ \"ID\" ] = function( id ) {\n\t\t\tvar attrId = id.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\tvar node = typeof elem.getAttributeNode !== \"undefined\" &&\n\t\t\t\t\telem.getAttributeNode( \"id\" );\n\t\t\t\treturn node && node.value === attrId;\n\t\t\t};\n\t\t};\n\n\t\t// Support: IE 6 - 7 only\n\t\t// getElementById is not reliable as a find shortcut\n\t\tExpr.find[ \"ID\" ] = function( id, context ) {\n\t\t\tif ( typeof context.getElementById !== \"undefined\" && documentIsHTML ) {\n\t\t\t\tvar node, i, elems,\n\t\t\t\t\telem = context.getElementById( id );\n\n\t\t\t\tif ( elem ) {\n\n\t\t\t\t\t// Verify the id attribute\n\t\t\t\t\tnode = elem.getAttributeNode( \"id\" );\n\t\t\t\t\tif ( node && node.value === id ) {\n\t\t\t\t\t\treturn [ elem ];\n\t\t\t\t\t}\n\n\t\t\t\t\t// Fall back on getElementsByName\n\t\t\t\t\telems = context.getElementsByName( id );\n\t\t\t\t\ti = 0;\n\t\t\t\t\twhile ( ( elem = elems[ i++ ] ) ) {\n\t\t\t\t\t\tnode = elem.getAttributeNode( \"id\" );\n\t\t\t\t\t\tif ( node && node.value === id ) {\n\t\t\t\t\t\t\treturn [ elem ];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn [];\n\t\t\t}\n\t\t};\n\t}\n\n\t// Tag\n\tExpr.find[ \"TAG\" ] = support.getElementsByTagName ?\n\t\tfunction( tag, context ) {\n\t\t\tif ( typeof context.getElementsByTagName !== \"undefined\" ) {\n\t\t\t\treturn context.getElementsByTagName( tag );\n\n\t\t\t// DocumentFragment nodes don't have gEBTN\n\t\t\t} else if ( support.qsa ) {\n\t\t\t\treturn context.querySelectorAll( tag );\n\t\t\t}\n\t\t} :\n\n\t\tfunction( tag, context ) {\n\t\t\tvar elem,\n\t\t\t\ttmp = [],\n\t\t\t\ti = 0,\n\n\t\t\t\t// By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too\n\t\t\t\tresults = context.getElementsByTagName( tag );\n\n\t\t\t// Filter out possible comments\n\t\t\tif ( tag === \"*\" ) {\n\t\t\t\twhile ( ( elem = results[ i++ ] ) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\t\t\ttmp.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn tmp;\n\t\t\t}\n\t\t\treturn results;\n\t\t};\n\n\t// Class\n\tExpr.find[ \"CLASS\" ] = support.getElementsByClassName && function( className, context ) {\n\t\tif ( typeof context.getElementsByClassName !== \"undefined\" && documentIsHTML ) {\n\t\t\treturn context.getElementsByClassName( className );\n\t\t}\n\t};\n\n\t/* QSA/matchesSelector\n\t---------------------------------------------------------------------- */\n\n\t// QSA and matchesSelector support\n\n\t// matchesSelector(:active) reports false when true (IE9/Opera 11.5)\n\trbuggyMatches = [];\n\n\t// qSa(:focus) reports false when true (Chrome 21)\n\t// We allow this because of a bug in IE8/9 that throws an error\n\t// whenever `document.activeElement` is accessed on an iframe\n\t// So, we allow :focus to pass through QSA all the time to avoid the IE error\n\t// See https://bugs.jquery.com/ticket/13378\n\trbuggyQSA = [];\n\n\tif ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) {\n\n\t\t// Build QSA regex\n\t\t// Regex strategy adopted from Diego Perini\n\t\tassert( function( el ) {\n\n\t\t\tvar input;\n\n\t\t\t// Select is set to empty string on purpose\n\t\t\t// This is to test IE's treatment of not explicitly\n\t\t\t// setting a boolean content attribute,\n\t\t\t// since its presence should be enough\n\t\t\t// https://bugs.jquery.com/ticket/12359\n\t\t\tdocElem.appendChild( el ).innerHTML = \"\" +\n\t\t\t\t\"\";\n\n\t\t\t// Support: IE8, Opera 11-12.16\n\t\t\t// Nothing should be selected when empty strings follow ^= or $= or *=\n\t\t\t// The test attribute must be unknown in Opera but \"safe\" for WinRT\n\t\t\t// https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section\n\t\t\tif ( el.querySelectorAll( \"[msallowcapture^='']\" ).length ) {\n\t\t\t\trbuggyQSA.push( \"[*^$]=\" + whitespace + \"*(?:''|\\\"\\\")\" );\n\t\t\t}\n\n\t\t\t// Support: IE8\n\t\t\t// Boolean attributes and \"value\" are not treated correctly\n\t\t\tif ( !el.querySelectorAll( \"[selected]\" ).length ) {\n\t\t\t\trbuggyQSA.push( \"\\\\[\" + whitespace + \"*(?:value|\" + booleans + \")\" );\n\t\t\t}\n\n\t\t\t// Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+\n\t\t\tif ( !el.querySelectorAll( \"[id~=\" + expando + \"-]\" ).length ) {\n\t\t\t\trbuggyQSA.push( \"~=\" );\n\t\t\t}\n\n\t\t\t// Support: IE 11+, Edge 15 - 18+\n\t\t\t// IE 11/Edge don't find elements on a `[name='']` query in some cases.\n\t\t\t// Adding a temporary attribute to the document before the selection works\n\t\t\t// around the issue.\n\t\t\t// Interestingly, IE 10 & older don't seem to have the issue.\n\t\t\tinput = document.createElement( \"input\" );\n\t\t\tinput.setAttribute( \"name\", \"\" );\n\t\t\tel.appendChild( input );\n\t\t\tif ( !el.querySelectorAll( \"[name='']\" ).length ) {\n\t\t\t\trbuggyQSA.push( \"\\\\[\" + whitespace + \"*name\" + whitespace + \"*=\" +\n\t\t\t\t\twhitespace + \"*(?:''|\\\"\\\")\" );\n\t\t\t}\n\n\t\t\t// Webkit/Opera - :checked should return selected option elements\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\n\t\t\t// IE8 throws error here and will not see later tests\n\t\t\tif ( !el.querySelectorAll( \":checked\" ).length ) {\n\t\t\t\trbuggyQSA.push( \":checked\" );\n\t\t\t}\n\n\t\t\t// Support: Safari 8+, iOS 8+\n\t\t\t// https://bugs.webkit.org/show_bug.cgi?id=136851\n\t\t\t// In-page `selector#id sibling-combinator selector` fails\n\t\t\tif ( !el.querySelectorAll( \"a#\" + expando + \"+*\" ).length ) {\n\t\t\t\trbuggyQSA.push( \".#.+[+~]\" );\n\t\t\t}\n\n\t\t\t// Support: Firefox <=3.6 - 5 only\n\t\t\t// Old Firefox doesn't throw on a badly-escaped identifier.\n\t\t\tel.querySelectorAll( \"\\\\\\f\" );\n\t\t\trbuggyQSA.push( \"[\\\\r\\\\n\\\\f]\" );\n\t\t} );\n\n\t\tassert( function( el ) {\n\t\t\tel.innerHTML = \"\" +\n\t\t\t\t\"\";\n\n\t\t\t// Support: Windows 8 Native Apps\n\t\t\t// The type and name attributes are restricted during .innerHTML assignment\n\t\t\tvar input = document.createElement( \"input\" );\n\t\t\tinput.setAttribute( \"type\", \"hidden\" );\n\t\t\tel.appendChild( input ).setAttribute( \"name\", \"D\" );\n\n\t\t\t// Support: IE8\n\t\t\t// Enforce case-sensitivity of name attribute\n\t\t\tif ( el.querySelectorAll( \"[name=d]\" ).length ) {\n\t\t\t\trbuggyQSA.push( \"name\" + whitespace + \"*[*^$|!~]?=\" );\n\t\t\t}\n\n\t\t\t// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)\n\t\t\t// IE8 throws error here and will not see later tests\n\t\t\tif ( el.querySelectorAll( \":enabled\" ).length !== 2 ) {\n\t\t\t\trbuggyQSA.push( \":enabled\", \":disabled\" );\n\t\t\t}\n\n\t\t\t// Support: IE9-11+\n\t\t\t// IE's :disabled selector does not pick up the children of disabled fieldsets\n\t\t\tdocElem.appendChild( el ).disabled = true;\n\t\t\tif ( el.querySelectorAll( \":disabled\" ).length !== 2 ) {\n\t\t\t\trbuggyQSA.push( \":enabled\", \":disabled\" );\n\t\t\t}\n\n\t\t\t// Support: Opera 10 - 11 only\n\t\t\t// Opera 10-11 does not throw on post-comma invalid pseudos\n\t\t\tel.querySelectorAll( \"*,:x\" );\n\t\t\trbuggyQSA.push( \",.*:\" );\n\t\t} );\n\t}\n\n\tif ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches ||\n\t\tdocElem.webkitMatchesSelector ||\n\t\tdocElem.mozMatchesSelector ||\n\t\tdocElem.oMatchesSelector ||\n\t\tdocElem.msMatchesSelector ) ) ) ) {\n\n\t\tassert( function( el ) {\n\n\t\t\t// Check to see if it's possible to do matchesSelector\n\t\t\t// on a disconnected node (IE 9)\n\t\t\tsupport.disconnectedMatch = matches.call( el, \"*\" );\n\n\t\t\t// This should fail with an exception\n\t\t\t// Gecko does not error, returns false instead\n\t\t\tmatches.call( el, \"[s!='']:x\" );\n\t\t\trbuggyMatches.push( \"!=\", pseudos );\n\t\t} );\n\t}\n\n\trbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( \"|\" ) );\n\trbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( \"|\" ) );\n\n\t/* Contains\n\t---------------------------------------------------------------------- */\n\thasCompare = rnative.test( docElem.compareDocumentPosition );\n\n\t// Element contains another\n\t// Purposefully self-exclusive\n\t// As in, an element does not contain itself\n\tcontains = hasCompare || rnative.test( docElem.contains ) ?\n\t\tfunction( a, b ) {\n\t\t\tvar adown = a.nodeType === 9 ? a.documentElement : a,\n\t\t\t\tbup = b && b.parentNode;\n\t\t\treturn a === bup || !!( bup && bup.nodeType === 1 && (\n\t\t\t\tadown.contains ?\n\t\t\t\t\tadown.contains( bup ) :\n\t\t\t\t\ta.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16\n\t\t\t) );\n\t\t} :\n\t\tfunction( a, b ) {\n\t\t\tif ( b ) {\n\t\t\t\twhile ( ( b = b.parentNode ) ) {\n\t\t\t\t\tif ( b === a ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t};\n\n\t/* Sorting\n\t---------------------------------------------------------------------- */\n\n\t// Document order sorting\n\tsortOrder = hasCompare ?\n\tfunction( a, b ) {\n\n\t\t// Flag for duplicate removal\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t\treturn 0;\n\t\t}\n\n\t\t// Sort on method existence if only one input has compareDocumentPosition\n\t\tvar compare = !a.compareDocumentPosition - !b.compareDocumentPosition;\n\t\tif ( compare ) {\n\t\t\treturn compare;\n\t\t}\n\n\t\t// Calculate position if both inputs belong to the same document\n\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t// two documents; shallow comparisons work.\n\t\t// eslint-disable-next-line eqeqeq\n\t\tcompare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ?\n\t\t\ta.compareDocumentPosition( b ) :\n\n\t\t\t// Otherwise we know they are disconnected\n\t\t\t1;\n\n\t\t// Disconnected nodes\n\t\tif ( compare & 1 ||\n\t\t\t( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) {\n\n\t\t\t// Choose the first element that is related to our preferred document\n\t\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t\t// two documents; shallow comparisons work.\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\tif ( a == document || a.ownerDocument == preferredDoc &&\n\t\t\t\tcontains( preferredDoc, a ) ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\n\t\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t\t// two documents; shallow comparisons work.\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\tif ( b == document || b.ownerDocument == preferredDoc &&\n\t\t\t\tcontains( preferredDoc, b ) ) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\t// Maintain original order\n\t\t\treturn sortInput ?\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\n\t\t\t\t0;\n\t\t}\n\n\t\treturn compare & 4 ? -1 : 1;\n\t} :\n\tfunction( a, b ) {\n\n\t\t// Exit early if the nodes are identical\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t\treturn 0;\n\t\t}\n\n\t\tvar cur,\n\t\t\ti = 0,\n\t\t\taup = a.parentNode,\n\t\t\tbup = b.parentNode,\n\t\t\tap = [ a ],\n\t\t\tbp = [ b ];\n\n\t\t// Parentless nodes are either documents or disconnected\n\t\tif ( !aup || !bup ) {\n\n\t\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t\t// two documents; shallow comparisons work.\n\t\t\t/* eslint-disable eqeqeq */\n\t\t\treturn a == document ? -1 :\n\t\t\t\tb == document ? 1 :\n\t\t\t\t/* eslint-enable eqeqeq */\n\t\t\t\taup ? -1 :\n\t\t\t\tbup ? 1 :\n\t\t\t\tsortInput ?\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\n\t\t\t\t0;\n\n\t\t// If the nodes are siblings, we can do a quick check\n\t\t} else if ( aup === bup ) {\n\t\t\treturn siblingCheck( a, b );\n\t\t}\n\n\t\t// Otherwise we need full lists of their ancestors for comparison\n\t\tcur = a;\n\t\twhile ( ( cur = cur.parentNode ) ) {\n\t\t\tap.unshift( cur );\n\t\t}\n\t\tcur = b;\n\t\twhile ( ( cur = cur.parentNode ) ) {\n\t\t\tbp.unshift( cur );\n\t\t}\n\n\t\t// Walk down the tree looking for a discrepancy\n\t\twhile ( ap[ i ] === bp[ i ] ) {\n\t\t\ti++;\n\t\t}\n\n\t\treturn i ?\n\n\t\t\t// Do a sibling check if the nodes have a common ancestor\n\t\t\tsiblingCheck( ap[ i ], bp[ i ] ) :\n\n\t\t\t// Otherwise nodes in our document sort first\n\t\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t\t// two documents; shallow comparisons work.\n\t\t\t/* eslint-disable eqeqeq */\n\t\t\tap[ i ] == preferredDoc ? -1 :\n\t\t\tbp[ i ] == preferredDoc ? 1 :\n\t\t\t/* eslint-enable eqeqeq */\n\t\t\t0;\n\t};\n\n\treturn document;\n};\n\nSizzle.matches = function( expr, elements ) {\n\treturn Sizzle( expr, null, null, elements );\n};\n\nSizzle.matchesSelector = function( elem, expr ) {\n\tsetDocument( elem );\n\n\tif ( support.matchesSelector && documentIsHTML &&\n\t\t!nonnativeSelectorCache[ expr + \" \" ] &&\n\t\t( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&\n\t\t( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) {\n\n\t\ttry {\n\t\t\tvar ret = matches.call( elem, expr );\n\n\t\t\t// IE 9's matchesSelector returns false on disconnected nodes\n\t\t\tif ( ret || support.disconnectedMatch ||\n\n\t\t\t\t// As well, disconnected nodes are said to be in a document\n\t\t\t\t// fragment in IE 9\n\t\t\t\telem.document && elem.document.nodeType !== 11 ) {\n\t\t\t\treturn ret;\n\t\t\t}\n\t\t} catch ( e ) {\n\t\t\tnonnativeSelectorCache( expr, true );\n\t\t}\n\t}\n\n\treturn Sizzle( expr, document, null, [ elem ] ).length > 0;\n};\n\nSizzle.contains = function( context, elem ) {\n\n\t// Set document vars if needed\n\t// Support: IE 11+, Edge 17 - 18+\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t// two documents; shallow comparisons work.\n\t// eslint-disable-next-line eqeqeq\n\tif ( ( context.ownerDocument || context ) != document ) {\n\t\tsetDocument( context );\n\t}\n\treturn contains( context, elem );\n};\n\nSizzle.attr = function( elem, name ) {\n\n\t// Set document vars if needed\n\t// Support: IE 11+, Edge 17 - 18+\n\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t// two documents; shallow comparisons work.\n\t// eslint-disable-next-line eqeqeq\n\tif ( ( elem.ownerDocument || elem ) != document ) {\n\t\tsetDocument( elem );\n\t}\n\n\tvar fn = Expr.attrHandle[ name.toLowerCase() ],\n\n\t\t// Don't get fooled by Object.prototype properties (jQuery #13807)\n\t\tval = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?\n\t\t\tfn( elem, name, !documentIsHTML ) :\n\t\t\tundefined;\n\n\treturn val !== undefined ?\n\t\tval :\n\t\tsupport.attributes || !documentIsHTML ?\n\t\t\telem.getAttribute( name ) :\n\t\t\t( val = elem.getAttributeNode( name ) ) && val.specified ?\n\t\t\t\tval.value :\n\t\t\t\tnull;\n};\n\nSizzle.escape = function( sel ) {\n\treturn ( sel + \"\" ).replace( rcssescape, fcssescape );\n};\n\nSizzle.error = function( msg ) {\n\tthrow new Error( \"Syntax error, unrecognized expression: \" + msg );\n};\n\n/**\n * Document sorting and removing duplicates\n * @param {ArrayLike} results\n */\nSizzle.uniqueSort = function( results ) {\n\tvar elem,\n\t\tduplicates = [],\n\t\tj = 0,\n\t\ti = 0;\n\n\t// Unless we *know* we can detect duplicates, assume their presence\n\thasDuplicate = !support.detectDuplicates;\n\tsortInput = !support.sortStable && results.slice( 0 );\n\tresults.sort( sortOrder );\n\n\tif ( hasDuplicate ) {\n\t\twhile ( ( elem = results[ i++ ] ) ) {\n\t\t\tif ( elem === results[ i ] ) {\n\t\t\t\tj = duplicates.push( i );\n\t\t\t}\n\t\t}\n\t\twhile ( j-- ) {\n\t\t\tresults.splice( duplicates[ j ], 1 );\n\t\t}\n\t}\n\n\t// Clear input after sorting to release objects\n\t// See https://github.com/jquery/sizzle/pull/225\n\tsortInput = null;\n\n\treturn results;\n};\n\n/**\n * Utility function for retrieving the text value of an array of DOM nodes\n * @param {Array|Element} elem\n */\ngetText = Sizzle.getText = function( elem ) {\n\tvar node,\n\t\tret = \"\",\n\t\ti = 0,\n\t\tnodeType = elem.nodeType;\n\n\tif ( !nodeType ) {\n\n\t\t// If no nodeType, this is expected to be an array\n\t\twhile ( ( node = elem[ i++ ] ) ) {\n\n\t\t\t// Do not traverse comment nodes\n\t\t\tret += getText( node );\n\t\t}\n\t} else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {\n\n\t\t// Use textContent for elements\n\t\t// innerText usage removed for consistency of new lines (jQuery #11153)\n\t\tif ( typeof elem.textContent === \"string\" ) {\n\t\t\treturn elem.textContent;\n\t\t} else {\n\n\t\t\t// Traverse its children\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\n\t\t\t\tret += getText( elem );\n\t\t\t}\n\t\t}\n\t} else if ( nodeType === 3 || nodeType === 4 ) {\n\t\treturn elem.nodeValue;\n\t}\n\n\t// Do not include comment or processing instruction nodes\n\n\treturn ret;\n};\n\nExpr = Sizzle.selectors = {\n\n\t// Can be adjusted by the user\n\tcacheLength: 50,\n\n\tcreatePseudo: markFunction,\n\n\tmatch: matchExpr,\n\n\tattrHandle: {},\n\n\tfind: {},\n\n\trelative: {\n\t\t\">\": { dir: \"parentNode\", first: true },\n\t\t\" \": { dir: \"parentNode\" },\n\t\t\"+\": { dir: \"previousSibling\", first: true },\n\t\t\"~\": { dir: \"previousSibling\" }\n\t},\n\n\tpreFilter: {\n\t\t\"ATTR\": function( match ) {\n\t\t\tmatch[ 1 ] = match[ 1 ].replace( runescape, funescape );\n\n\t\t\t// Move the given value to match[3] whether quoted or unquoted\n\t\t\tmatch[ 3 ] = ( match[ 3 ] || match[ 4 ] ||\n\t\t\t\tmatch[ 5 ] || \"\" ).replace( runescape, funescape );\n\n\t\t\tif ( match[ 2 ] === \"~=\" ) {\n\t\t\t\tmatch[ 3 ] = \" \" + match[ 3 ] + \" \";\n\t\t\t}\n\n\t\t\treturn match.slice( 0, 4 );\n\t\t},\n\n\t\t\"CHILD\": function( match ) {\n\n\t\t\t/* matches from matchExpr[\"CHILD\"]\n\t\t\t\t1 type (only|nth|...)\n\t\t\t\t2 what (child|of-type)\n\t\t\t\t3 argument (even|odd|\\d*|\\d*n([+-]\\d+)?|...)\n\t\t\t\t4 xn-component of xn+y argument ([+-]?\\d*n|)\n\t\t\t\t5 sign of xn-component\n\t\t\t\t6 x of xn-component\n\t\t\t\t7 sign of y-component\n\t\t\t\t8 y of y-component\n\t\t\t*/\n\t\t\tmatch[ 1 ] = match[ 1 ].toLowerCase();\n\n\t\t\tif ( match[ 1 ].slice( 0, 3 ) === \"nth\" ) {\n\n\t\t\t\t// nth-* requires argument\n\t\t\t\tif ( !match[ 3 ] ) {\n\t\t\t\t\tSizzle.error( match[ 0 ] );\n\t\t\t\t}\n\n\t\t\t\t// numeric x and y parameters for Expr.filter.CHILD\n\t\t\t\t// remember that false/true cast respectively to 0/1\n\t\t\t\tmatch[ 4 ] = +( match[ 4 ] ?\n\t\t\t\t\tmatch[ 5 ] + ( match[ 6 ] || 1 ) :\n\t\t\t\t\t2 * ( match[ 3 ] === \"even\" || match[ 3 ] === \"odd\" ) );\n\t\t\t\tmatch[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === \"odd\" );\n\n\t\t\t\t// other types prohibit arguments\n\t\t\t} else if ( match[ 3 ] ) {\n\t\t\t\tSizzle.error( match[ 0 ] );\n\t\t\t}\n\n\t\t\treturn match;\n\t\t},\n\n\t\t\"PSEUDO\": function( match ) {\n\t\t\tvar excess,\n\t\t\t\tunquoted = !match[ 6 ] && match[ 2 ];\n\n\t\t\tif ( matchExpr[ \"CHILD\" ].test( match[ 0 ] ) ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\t// Accept quoted arguments as-is\n\t\t\tif ( match[ 3 ] ) {\n\t\t\t\tmatch[ 2 ] = match[ 4 ] || match[ 5 ] || \"\";\n\n\t\t\t// Strip excess characters from unquoted arguments\n\t\t\t} else if ( unquoted && rpseudo.test( unquoted ) &&\n\n\t\t\t\t// Get excess from tokenize (recursively)\n\t\t\t\t( excess = tokenize( unquoted, true ) ) &&\n\n\t\t\t\t// advance to the next closing parenthesis\n\t\t\t\t( excess = unquoted.indexOf( \")\", unquoted.length - excess ) - unquoted.length ) ) {\n\n\t\t\t\t// excess is a negative index\n\t\t\t\tmatch[ 0 ] = match[ 0 ].slice( 0, excess );\n\t\t\t\tmatch[ 2 ] = unquoted.slice( 0, excess );\n\t\t\t}\n\n\t\t\t// Return only captures needed by the pseudo filter method (type and argument)\n\t\t\treturn match.slice( 0, 3 );\n\t\t}\n\t},\n\n\tfilter: {\n\n\t\t\"TAG\": function( nodeNameSelector ) {\n\t\t\tvar nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();\n\t\t\treturn nodeNameSelector === \"*\" ?\n\t\t\t\tfunction() {\n\t\t\t\t\treturn true;\n\t\t\t\t} :\n\t\t\t\tfunction( elem ) {\n\t\t\t\t\treturn elem.nodeName && elem.nodeName.toLowerCase() === nodeName;\n\t\t\t\t};\n\t\t},\n\n\t\t\"CLASS\": function( className ) {\n\t\t\tvar pattern = classCache[ className + \" \" ];\n\n\t\t\treturn pattern ||\n\t\t\t\t( pattern = new RegExp( \"(^|\" + whitespace +\n\t\t\t\t\t\")\" + className + \"(\" + whitespace + \"|$)\" ) ) && classCache(\n\t\t\t\t\t\tclassName, function( elem ) {\n\t\t\t\t\t\t\treturn pattern.test(\n\t\t\t\t\t\t\t\ttypeof elem.className === \"string\" && elem.className ||\n\t\t\t\t\t\t\t\ttypeof elem.getAttribute !== \"undefined\" &&\n\t\t\t\t\t\t\t\t\telem.getAttribute( \"class\" ) ||\n\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t);\n\t\t\t\t} );\n\t\t},\n\n\t\t\"ATTR\": function( name, operator, check ) {\n\t\t\treturn function( elem ) {\n\t\t\t\tvar result = Sizzle.attr( elem, name );\n\n\t\t\t\tif ( result == null ) {\n\t\t\t\t\treturn operator === \"!=\";\n\t\t\t\t}\n\t\t\t\tif ( !operator ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tresult += \"\";\n\n\t\t\t\t/* eslint-disable max-len */\n\n\t\t\t\treturn operator === \"=\" ? result === check :\n\t\t\t\t\toperator === \"!=\" ? result !== check :\n\t\t\t\t\toperator === \"^=\" ? check && result.indexOf( check ) === 0 :\n\t\t\t\t\toperator === \"*=\" ? check && result.indexOf( check ) > -1 :\n\t\t\t\t\toperator === \"$=\" ? check && result.slice( -check.length ) === check :\n\t\t\t\t\toperator === \"~=\" ? ( \" \" + result.replace( rwhitespace, \" \" ) + \" \" ).indexOf( check ) > -1 :\n\t\t\t\t\toperator === \"|=\" ? result === check || result.slice( 0, check.length + 1 ) === check + \"-\" :\n\t\t\t\t\tfalse;\n\t\t\t\t/* eslint-enable max-len */\n\n\t\t\t};\n\t\t},\n\n\t\t\"CHILD\": function( type, what, _argument, first, last ) {\n\t\t\tvar simple = type.slice( 0, 3 ) !== \"nth\",\n\t\t\t\tforward = type.slice( -4 ) !== \"last\",\n\t\t\t\tofType = what === \"of-type\";\n\n\t\t\treturn first === 1 && last === 0 ?\n\n\t\t\t\t// Shortcut for :nth-*(n)\n\t\t\t\tfunction( elem ) {\n\t\t\t\t\treturn !!elem.parentNode;\n\t\t\t\t} :\n\n\t\t\t\tfunction( elem, _context, xml ) {\n\t\t\t\t\tvar cache, uniqueCache, outerCache, node, nodeIndex, start,\n\t\t\t\t\t\tdir = simple !== forward ? \"nextSibling\" : \"previousSibling\",\n\t\t\t\t\t\tparent = elem.parentNode,\n\t\t\t\t\t\tname = ofType && elem.nodeName.toLowerCase(),\n\t\t\t\t\t\tuseCache = !xml && !ofType,\n\t\t\t\t\t\tdiff = false;\n\n\t\t\t\t\tif ( parent ) {\n\n\t\t\t\t\t\t// :(first|last|only)-(child|of-type)\n\t\t\t\t\t\tif ( simple ) {\n\t\t\t\t\t\t\twhile ( dir ) {\n\t\t\t\t\t\t\t\tnode = elem;\n\t\t\t\t\t\t\t\twhile ( ( node = node[ dir ] ) ) {\n\t\t\t\t\t\t\t\t\tif ( ofType ?\n\t\t\t\t\t\t\t\t\t\tnode.nodeName.toLowerCase() === name :\n\t\t\t\t\t\t\t\t\t\tnode.nodeType === 1 ) {\n\n\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t// Reverse direction for :only-* (if we haven't yet done so)\n\t\t\t\t\t\t\t\tstart = dir = type === \"only\" && !start && \"nextSibling\";\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tstart = [ forward ? parent.firstChild : parent.lastChild ];\n\n\t\t\t\t\t\t// non-xml :nth-child(...) stores cache data on `parent`\n\t\t\t\t\t\tif ( forward && useCache ) {\n\n\t\t\t\t\t\t\t// Seek `elem` from a previously-cached index\n\n\t\t\t\t\t\t\t// ...in a gzip-friendly way\n\t\t\t\t\t\t\tnode = parent;\n\t\t\t\t\t\t\touterCache = node[ expando ] || ( node[ expando ] = {} );\n\n\t\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\n\t\t\t\t\t\t\t\t( outerCache[ node.uniqueID ] = {} );\n\n\t\t\t\t\t\t\tcache = uniqueCache[ type ] || [];\n\t\t\t\t\t\t\tnodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];\n\t\t\t\t\t\t\tdiff = nodeIndex && cache[ 2 ];\n\t\t\t\t\t\t\tnode = nodeIndex && parent.childNodes[ nodeIndex ];\n\n\t\t\t\t\t\t\twhile ( ( node = ++nodeIndex && node && node[ dir ] ||\n\n\t\t\t\t\t\t\t\t// Fallback to seeking `elem` from the start\n\t\t\t\t\t\t\t\t( diff = nodeIndex = 0 ) || start.pop() ) ) {\n\n\t\t\t\t\t\t\t\t// When found, cache indexes on `parent` and break\n\t\t\t\t\t\t\t\tif ( node.nodeType === 1 && ++diff && node === elem ) {\n\t\t\t\t\t\t\t\t\tuniqueCache[ type ] = [ dirruns, nodeIndex, diff ];\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\t// Use previously-cached element index if available\n\t\t\t\t\t\t\tif ( useCache ) {\n\n\t\t\t\t\t\t\t\t// ...in a gzip-friendly way\n\t\t\t\t\t\t\t\tnode = elem;\n\t\t\t\t\t\t\t\touterCache = node[ expando ] || ( node[ expando ] = {} );\n\n\t\t\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\n\t\t\t\t\t\t\t\t\t( outerCache[ node.uniqueID ] = {} );\n\n\t\t\t\t\t\t\t\tcache = uniqueCache[ type ] || [];\n\t\t\t\t\t\t\t\tnodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];\n\t\t\t\t\t\t\t\tdiff = nodeIndex;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t// xml :nth-child(...)\n\t\t\t\t\t\t\t// or :nth-last-child(...) or :nth(-last)?-of-type(...)\n\t\t\t\t\t\t\tif ( diff === false ) {\n\n\t\t\t\t\t\t\t\t// Use the same loop as above to seek `elem` from the start\n\t\t\t\t\t\t\t\twhile ( ( node = ++nodeIndex && node && node[ dir ] ||\n\t\t\t\t\t\t\t\t\t( diff = nodeIndex = 0 ) || start.pop() ) ) {\n\n\t\t\t\t\t\t\t\t\tif ( ( ofType ?\n\t\t\t\t\t\t\t\t\t\tnode.nodeName.toLowerCase() === name :\n\t\t\t\t\t\t\t\t\t\tnode.nodeType === 1 ) &&\n\t\t\t\t\t\t\t\t\t\t++diff ) {\n\n\t\t\t\t\t\t\t\t\t\t// Cache the index of each encountered element\n\t\t\t\t\t\t\t\t\t\tif ( useCache ) {\n\t\t\t\t\t\t\t\t\t\t\touterCache = node[ expando ] ||\n\t\t\t\t\t\t\t\t\t\t\t\t( node[ expando ] = {} );\n\n\t\t\t\t\t\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\n\t\t\t\t\t\t\t\t\t\t\t\t( outerCache[ node.uniqueID ] = {} );\n\n\t\t\t\t\t\t\t\t\t\t\tuniqueCache[ type ] = [ dirruns, diff ];\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tif ( node === elem ) {\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Incorporate the offset, then check against cycle size\n\t\t\t\t\t\tdiff -= last;\n\t\t\t\t\t\treturn diff === first || ( diff % first === 0 && diff / first >= 0 );\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t},\n\n\t\t\"PSEUDO\": function( pseudo, argument ) {\n\n\t\t\t// pseudo-class names are case-insensitive\n\t\t\t// http://www.w3.org/TR/selectors/#pseudo-classes\n\t\t\t// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters\n\t\t\t// Remember that setFilters inherits from pseudos\n\t\t\tvar args,\n\t\t\t\tfn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||\n\t\t\t\t\tSizzle.error( \"unsupported pseudo: \" + pseudo );\n\n\t\t\t// The user may use createPseudo to indicate that\n\t\t\t// arguments are needed to create the filter function\n\t\t\t// just as Sizzle does\n\t\t\tif ( fn[ expando ] ) {\n\t\t\t\treturn fn( argument );\n\t\t\t}\n\n\t\t\t// But maintain support for old signatures\n\t\t\tif ( fn.length > 1 ) {\n\t\t\t\targs = [ pseudo, pseudo, \"\", argument ];\n\t\t\t\treturn Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?\n\t\t\t\t\tmarkFunction( function( seed, matches ) {\n\t\t\t\t\t\tvar idx,\n\t\t\t\t\t\t\tmatched = fn( seed, argument ),\n\t\t\t\t\t\t\ti = matched.length;\n\t\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\t\tidx = indexOf( seed, matched[ i ] );\n\t\t\t\t\t\t\tseed[ idx ] = !( matches[ idx ] = matched[ i ] );\n\t\t\t\t\t\t}\n\t\t\t\t\t} ) :\n\t\t\t\t\tfunction( elem ) {\n\t\t\t\t\t\treturn fn( elem, 0, args );\n\t\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn fn;\n\t\t}\n\t},\n\n\tpseudos: {\n\n\t\t// Potentially complex pseudos\n\t\t\"not\": markFunction( function( selector ) {\n\n\t\t\t// Trim the selector passed to compile\n\t\t\t// to avoid treating leading and trailing\n\t\t\t// spaces as combinators\n\t\t\tvar input = [],\n\t\t\t\tresults = [],\n\t\t\t\tmatcher = compile( selector.replace( rtrim, \"$1\" ) );\n\n\t\t\treturn matcher[ expando ] ?\n\t\t\t\tmarkFunction( function( seed, matches, _context, xml ) {\n\t\t\t\t\tvar elem,\n\t\t\t\t\t\tunmatched = matcher( seed, null, xml, [] ),\n\t\t\t\t\t\ti = seed.length;\n\n\t\t\t\t\t// Match elements unmatched by `matcher`\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tif ( ( elem = unmatched[ i ] ) ) {\n\t\t\t\t\t\t\tseed[ i ] = !( matches[ i ] = elem );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} ) :\n\t\t\t\tfunction( elem, _context, xml ) {\n\t\t\t\t\tinput[ 0 ] = elem;\n\t\t\t\t\tmatcher( input, null, xml, results );\n\n\t\t\t\t\t// Don't keep the element (issue #299)\n\t\t\t\t\tinput[ 0 ] = null;\n\t\t\t\t\treturn !results.pop();\n\t\t\t\t};\n\t\t} ),\n\n\t\t\"has\": markFunction( function( selector ) {\n\t\t\treturn function( elem ) {\n\t\t\t\treturn Sizzle( selector, elem ).length > 0;\n\t\t\t};\n\t\t} ),\n\n\t\t\"contains\": markFunction( function( text ) {\n\t\t\ttext = text.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\treturn ( elem.textContent || getText( elem ) ).indexOf( text ) > -1;\n\t\t\t};\n\t\t} ),\n\n\t\t// \"Whether an element is represented by a :lang() selector\n\t\t// is based solely on the element's language value\n\t\t// being equal to the identifier C,\n\t\t// or beginning with the identifier C immediately followed by \"-\".\n\t\t// The matching of C against the element's language value is performed case-insensitively.\n\t\t// The identifier C does not have to be a valid language name.\"\n\t\t// http://www.w3.org/TR/selectors/#lang-pseudo\n\t\t\"lang\": markFunction( function( lang ) {\n\n\t\t\t// lang value must be a valid identifier\n\t\t\tif ( !ridentifier.test( lang || \"\" ) ) {\n\t\t\t\tSizzle.error( \"unsupported lang: \" + lang );\n\t\t\t}\n\t\t\tlang = lang.replace( runescape, funescape ).toLowerCase();\n\t\t\treturn function( elem ) {\n\t\t\t\tvar elemLang;\n\t\t\t\tdo {\n\t\t\t\t\tif ( ( elemLang = documentIsHTML ?\n\t\t\t\t\t\telem.lang :\n\t\t\t\t\t\telem.getAttribute( \"xml:lang\" ) || elem.getAttribute( \"lang\" ) ) ) {\n\n\t\t\t\t\t\telemLang = elemLang.toLowerCase();\n\t\t\t\t\t\treturn elemLang === lang || elemLang.indexOf( lang + \"-\" ) === 0;\n\t\t\t\t\t}\n\t\t\t\t} while ( ( elem = elem.parentNode ) && elem.nodeType === 1 );\n\t\t\t\treturn false;\n\t\t\t};\n\t\t} ),\n\n\t\t// Miscellaneous\n\t\t\"target\": function( elem ) {\n\t\t\tvar hash = window.location && window.location.hash;\n\t\t\treturn hash && hash.slice( 1 ) === elem.id;\n\t\t},\n\n\t\t\"root\": function( elem ) {\n\t\t\treturn elem === docElem;\n\t\t},\n\n\t\t\"focus\": function( elem ) {\n\t\t\treturn elem === document.activeElement &&\n\t\t\t\t( !document.hasFocus || document.hasFocus() ) &&\n\t\t\t\t!!( elem.type || elem.href || ~elem.tabIndex );\n\t\t},\n\n\t\t// Boolean properties\n\t\t\"enabled\": createDisabledPseudo( false ),\n\t\t\"disabled\": createDisabledPseudo( true ),\n\n\t\t\"checked\": function( elem ) {\n\n\t\t\t// In CSS3, :checked should return both checked and selected elements\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\n\t\t\tvar nodeName = elem.nodeName.toLowerCase();\n\t\t\treturn ( nodeName === \"input\" && !!elem.checked ) ||\n\t\t\t\t( nodeName === \"option\" && !!elem.selected );\n\t\t},\n\n\t\t\"selected\": function( elem ) {\n\n\t\t\t// Accessing this property makes selected-by-default\n\t\t\t// options in Safari work properly\n\t\t\tif ( elem.parentNode ) {\n\t\t\t\t// eslint-disable-next-line no-unused-expressions\n\t\t\t\telem.parentNode.selectedIndex;\n\t\t\t}\n\n\t\t\treturn elem.selected === true;\n\t\t},\n\n\t\t// Contents\n\t\t\"empty\": function( elem ) {\n\n\t\t\t// http://www.w3.org/TR/selectors/#empty-pseudo\n\t\t\t// :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),\n\t\t\t// but not by others (comment: 8; processing instruction: 7; etc.)\n\t\t\t// nodeType < 6 works because attributes (2) do not appear as children\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\n\t\t\t\tif ( elem.nodeType < 6 ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\n\t\t\"parent\": function( elem ) {\n\t\t\treturn !Expr.pseudos[ \"empty\" ]( elem );\n\t\t},\n\n\t\t// Element/input types\n\t\t\"header\": function( elem ) {\n\t\t\treturn rheader.test( elem.nodeName );\n\t\t},\n\n\t\t\"input\": function( elem ) {\n\t\t\treturn rinputs.test( elem.nodeName );\n\t\t},\n\n\t\t\"button\": function( elem ) {\n\t\t\tvar name = elem.nodeName.toLowerCase();\n\t\t\treturn name === \"input\" && elem.type === \"button\" || name === \"button\";\n\t\t},\n\n\t\t\"text\": function( elem ) {\n\t\t\tvar attr;\n\t\t\treturn elem.nodeName.toLowerCase() === \"input\" &&\n\t\t\t\telem.type === \"text\" &&\n\n\t\t\t\t// Support: IE<8\n\t\t\t\t// New HTML5 attribute values (e.g., \"search\") appear with elem.type === \"text\"\n\t\t\t\t( ( attr = elem.getAttribute( \"type\" ) ) == null ||\n\t\t\t\t\tattr.toLowerCase() === \"text\" );\n\t\t},\n\n\t\t// Position-in-collection\n\t\t\"first\": createPositionalPseudo( function() {\n\t\t\treturn [ 0 ];\n\t\t} ),\n\n\t\t\"last\": createPositionalPseudo( function( _matchIndexes, length ) {\n\t\t\treturn [ length - 1 ];\n\t\t} ),\n\n\t\t\"eq\": createPositionalPseudo( function( _matchIndexes, length, argument ) {\n\t\t\treturn [ argument < 0 ? argument + length : argument ];\n\t\t} ),\n\n\t\t\"even\": createPositionalPseudo( function( matchIndexes, length ) {\n\t\t\tvar i = 0;\n\t\t\tfor ( ; i < length; i += 2 ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t} ),\n\n\t\t\"odd\": createPositionalPseudo( function( matchIndexes, length ) {\n\t\t\tvar i = 1;\n\t\t\tfor ( ; i < length; i += 2 ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t} ),\n\n\t\t\"lt\": createPositionalPseudo( function( matchIndexes, length, argument ) {\n\t\t\tvar i = argument < 0 ?\n\t\t\t\targument + length :\n\t\t\t\targument > length ?\n\t\t\t\t\tlength :\n\t\t\t\t\targument;\n\t\t\tfor ( ; --i >= 0; ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t} ),\n\n\t\t\"gt\": createPositionalPseudo( function( matchIndexes, length, argument ) {\n\t\t\tvar i = argument < 0 ? argument + length : argument;\n\t\t\tfor ( ; ++i < length; ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t} )\n\t}\n};\n\nExpr.pseudos[ \"nth\" ] = Expr.pseudos[ \"eq\" ];\n\n// Add button/input type pseudos\nfor ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {\n\tExpr.pseudos[ i ] = createInputPseudo( i );\n}\nfor ( i in { submit: true, reset: true } ) {\n\tExpr.pseudos[ i ] = createButtonPseudo( i );\n}\n\n// Easy API for creating new setFilters\nfunction setFilters() {}\nsetFilters.prototype = Expr.filters = Expr.pseudos;\nExpr.setFilters = new setFilters();\n\ntokenize = Sizzle.tokenize = function( selector, parseOnly ) {\n\tvar matched, match, tokens, type,\n\t\tsoFar, groups, preFilters,\n\t\tcached = tokenCache[ selector + \" \" ];\n\n\tif ( cached ) {\n\t\treturn parseOnly ? 0 : cached.slice( 0 );\n\t}\n\n\tsoFar = selector;\n\tgroups = [];\n\tpreFilters = Expr.preFilter;\n\n\twhile ( soFar ) {\n\n\t\t// Comma and first run\n\t\tif ( !matched || ( match = rcomma.exec( soFar ) ) ) {\n\t\t\tif ( match ) {\n\n\t\t\t\t// Don't consume trailing commas as valid\n\t\t\t\tsoFar = soFar.slice( match[ 0 ].length ) || soFar;\n\t\t\t}\n\t\t\tgroups.push( ( tokens = [] ) );\n\t\t}\n\n\t\tmatched = false;\n\n\t\t// Combinators\n\t\tif ( ( match = rcombinators.exec( soFar ) ) ) {\n\t\t\tmatched = match.shift();\n\t\t\ttokens.push( {\n\t\t\t\tvalue: matched,\n\n\t\t\t\t// Cast descendant combinators to space\n\t\t\t\ttype: match[ 0 ].replace( rtrim, \" \" )\n\t\t\t} );\n\t\t\tsoFar = soFar.slice( matched.length );\n\t\t}\n\n\t\t// Filters\n\t\tfor ( type in Expr.filter ) {\n\t\t\tif ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] ||\n\t\t\t\t( match = preFilters[ type ]( match ) ) ) ) {\n\t\t\t\tmatched = match.shift();\n\t\t\t\ttokens.push( {\n\t\t\t\t\tvalue: matched,\n\t\t\t\t\ttype: type,\n\t\t\t\t\tmatches: match\n\t\t\t\t} );\n\t\t\t\tsoFar = soFar.slice( matched.length );\n\t\t\t}\n\t\t}\n\n\t\tif ( !matched ) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\t// Return the length of the invalid excess\n\t// if we're just parsing\n\t// Otherwise, throw an error or return tokens\n\treturn parseOnly ?\n\t\tsoFar.length :\n\t\tsoFar ?\n\t\t\tSizzle.error( selector ) :\n\n\t\t\t// Cache the tokens\n\t\t\ttokenCache( selector, groups ).slice( 0 );\n};\n\nfunction toSelector( tokens ) {\n\tvar i = 0,\n\t\tlen = tokens.length,\n\t\tselector = \"\";\n\tfor ( ; i < len; i++ ) {\n\t\tselector += tokens[ i ].value;\n\t}\n\treturn selector;\n}\n\nfunction addCombinator( matcher, combinator, base ) {\n\tvar dir = combinator.dir,\n\t\tskip = combinator.next,\n\t\tkey = skip || dir,\n\t\tcheckNonElements = base && key === \"parentNode\",\n\t\tdoneName = done++;\n\n\treturn combinator.first ?\n\n\t\t// Check against closest ancestor/preceding element\n\t\tfunction( elem, context, xml ) {\n\t\t\twhile ( ( elem = elem[ dir ] ) ) {\n\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\treturn matcher( elem, context, xml );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t} :\n\n\t\t// Check against all ancestor/preceding elements\n\t\tfunction( elem, context, xml ) {\n\t\t\tvar oldCache, uniqueCache, outerCache,\n\t\t\t\tnewCache = [ dirruns, doneName ];\n\n\t\t\t// We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching\n\t\t\tif ( xml ) {\n\t\t\t\twhile ( ( elem = elem[ dir ] ) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\t\tif ( matcher( elem, context, xml ) ) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\twhile ( ( elem = elem[ dir ] ) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\t\touterCache = elem[ expando ] || ( elem[ expando ] = {} );\n\n\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\tuniqueCache = outerCache[ elem.uniqueID ] ||\n\t\t\t\t\t\t\t( outerCache[ elem.uniqueID ] = {} );\n\n\t\t\t\t\t\tif ( skip && skip === elem.nodeName.toLowerCase() ) {\n\t\t\t\t\t\t\telem = elem[ dir ] || elem;\n\t\t\t\t\t\t} else if ( ( oldCache = uniqueCache[ key ] ) &&\n\t\t\t\t\t\t\toldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {\n\n\t\t\t\t\t\t\t// Assign to newCache so results back-propagate to previous elements\n\t\t\t\t\t\t\treturn ( newCache[ 2 ] = oldCache[ 2 ] );\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\t// Reuse newcache so results back-propagate to previous elements\n\t\t\t\t\t\t\tuniqueCache[ key ] = newCache;\n\n\t\t\t\t\t\t\t// A match means we're done; a fail means we have to keep checking\n\t\t\t\t\t\t\tif ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) {\n\t\t\t\t\t\t\t\treturn true;\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}\n\t\t\t}\n\t\t\treturn false;\n\t\t};\n}\n\nfunction elementMatcher( matchers ) {\n\treturn matchers.length > 1 ?\n\t\tfunction( elem, context, xml ) {\n\t\t\tvar i = matchers.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( !matchers[ i ]( elem, context, xml ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t} :\n\t\tmatchers[ 0 ];\n}\n\nfunction multipleContexts( selector, contexts, results ) {\n\tvar i = 0,\n\t\tlen = contexts.length;\n\tfor ( ; i < len; i++ ) {\n\t\tSizzle( selector, contexts[ i ], results );\n\t}\n\treturn results;\n}\n\nfunction condense( unmatched, map, filter, context, xml ) {\n\tvar elem,\n\t\tnewUnmatched = [],\n\t\ti = 0,\n\t\tlen = unmatched.length,\n\t\tmapped = map != null;\n\n\tfor ( ; i < len; i++ ) {\n\t\tif ( ( elem = unmatched[ i ] ) ) {\n\t\t\tif ( !filter || filter( elem, context, xml ) ) {\n\t\t\t\tnewUnmatched.push( elem );\n\t\t\t\tif ( mapped ) {\n\t\t\t\t\tmap.push( i );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn newUnmatched;\n}\n\nfunction setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {\n\tif ( postFilter && !postFilter[ expando ] ) {\n\t\tpostFilter = setMatcher( postFilter );\n\t}\n\tif ( postFinder && !postFinder[ expando ] ) {\n\t\tpostFinder = setMatcher( postFinder, postSelector );\n\t}\n\treturn markFunction( function( seed, results, context, xml ) {\n\t\tvar temp, i, elem,\n\t\t\tpreMap = [],\n\t\t\tpostMap = [],\n\t\t\tpreexisting = results.length,\n\n\t\t\t// Get initial elements from seed or context\n\t\t\telems = seed || multipleContexts(\n\t\t\t\tselector || \"*\",\n\t\t\t\tcontext.nodeType ? [ context ] : context,\n\t\t\t\t[]\n\t\t\t),\n\n\t\t\t// Prefilter to get matcher input, preserving a map for seed-results synchronization\n\t\t\tmatcherIn = preFilter && ( seed || !selector ) ?\n\t\t\t\tcondense( elems, preMap, preFilter, context, xml ) :\n\t\t\t\telems,\n\n\t\t\tmatcherOut = matcher ?\n\n\t\t\t\t// If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,\n\t\t\t\tpostFinder || ( seed ? preFilter : preexisting || postFilter ) ?\n\n\t\t\t\t\t// ...intermediate processing is necessary\n\t\t\t\t\t[] :\n\n\t\t\t\t\t// ...otherwise use results directly\n\t\t\t\t\tresults :\n\t\t\t\tmatcherIn;\n\n\t\t// Find primary matches\n\t\tif ( matcher ) {\n\t\t\tmatcher( matcherIn, matcherOut, context, xml );\n\t\t}\n\n\t\t// Apply postFilter\n\t\tif ( postFilter ) {\n\t\t\ttemp = condense( matcherOut, postMap );\n\t\t\tpostFilter( temp, [], context, xml );\n\n\t\t\t// Un-match failing elements by moving them back to matcherIn\n\t\t\ti = temp.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( ( elem = temp[ i ] ) ) {\n\t\t\t\t\tmatcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif ( seed ) {\n\t\t\tif ( postFinder || preFilter ) {\n\t\t\t\tif ( postFinder ) {\n\n\t\t\t\t\t// Get the final matcherOut by condensing this intermediate into postFinder contexts\n\t\t\t\t\ttemp = [];\n\t\t\t\t\ti = matcherOut.length;\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tif ( ( elem = matcherOut[ i ] ) ) {\n\n\t\t\t\t\t\t\t// Restore matcherIn since elem is not yet a final match\n\t\t\t\t\t\t\ttemp.push( ( matcherIn[ i ] = elem ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tpostFinder( null, ( matcherOut = [] ), temp, xml );\n\t\t\t\t}\n\n\t\t\t\t// Move matched elements from seed to results to keep them synchronized\n\t\t\t\ti = matcherOut.length;\n\t\t\t\twhile ( i-- ) {\n\t\t\t\t\tif ( ( elem = matcherOut[ i ] ) &&\n\t\t\t\t\t\t( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) {\n\n\t\t\t\t\t\tseed[ temp ] = !( results[ temp ] = elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Add elements to results, through postFinder if defined\n\t\t} else {\n\t\t\tmatcherOut = condense(\n\t\t\t\tmatcherOut === results ?\n\t\t\t\t\tmatcherOut.splice( preexisting, matcherOut.length ) :\n\t\t\t\t\tmatcherOut\n\t\t\t);\n\t\t\tif ( postFinder ) {\n\t\t\t\tpostFinder( null, results, matcherOut, xml );\n\t\t\t} else {\n\t\t\t\tpush.apply( results, matcherOut );\n\t\t\t}\n\t\t}\n\t} );\n}\n\nfunction matcherFromTokens( tokens ) {\n\tvar checkContext, matcher, j,\n\t\tlen = tokens.length,\n\t\tleadingRelative = Expr.relative[ tokens[ 0 ].type ],\n\t\timplicitRelative = leadingRelative || Expr.relative[ \" \" ],\n\t\ti = leadingRelative ? 1 : 0,\n\n\t\t// The foundational matcher ensures that elements are reachable from top-level context(s)\n\t\tmatchContext = addCombinator( function( elem ) {\n\t\t\treturn elem === checkContext;\n\t\t}, implicitRelative, true ),\n\t\tmatchAnyContext = addCombinator( function( elem ) {\n\t\t\treturn indexOf( checkContext, elem ) > -1;\n\t\t}, implicitRelative, true ),\n\t\tmatchers = [ function( elem, context, xml ) {\n\t\t\tvar ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (\n\t\t\t\t( checkContext = context ).nodeType ?\n\t\t\t\t\tmatchContext( elem, context, xml ) :\n\t\t\t\t\tmatchAnyContext( elem, context, xml ) );\n\n\t\t\t// Avoid hanging onto element (issue #299)\n\t\t\tcheckContext = null;\n\t\t\treturn ret;\n\t\t} ];\n\n\tfor ( ; i < len; i++ ) {\n\t\tif ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) {\n\t\t\tmatchers = [ addCombinator( elementMatcher( matchers ), matcher ) ];\n\t\t} else {\n\t\t\tmatcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches );\n\n\t\t\t// Return special upon seeing a positional matcher\n\t\t\tif ( matcher[ expando ] ) {\n\n\t\t\t\t// Find the next relative operator (if any) for proper handling\n\t\t\t\tj = ++i;\n\t\t\t\tfor ( ; j < len; j++ ) {\n\t\t\t\t\tif ( Expr.relative[ tokens[ j ].type ] ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn setMatcher(\n\t\t\t\t\ti > 1 && elementMatcher( matchers ),\n\t\t\t\t\ti > 1 && toSelector(\n\n\t\t\t\t\t// If the preceding token was a descendant combinator, insert an implicit any-element `*`\n\t\t\t\t\ttokens\n\t\t\t\t\t\t.slice( 0, i - 1 )\n\t\t\t\t\t\t.concat( { value: tokens[ i - 2 ].type === \" \" ? \"*\" : \"\" } )\n\t\t\t\t\t).replace( rtrim, \"$1\" ),\n\t\t\t\t\tmatcher,\n\t\t\t\t\ti < j && matcherFromTokens( tokens.slice( i, j ) ),\n\t\t\t\t\tj < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ),\n\t\t\t\t\tj < len && toSelector( tokens )\n\t\t\t\t);\n\t\t\t}\n\t\t\tmatchers.push( matcher );\n\t\t}\n\t}\n\n\treturn elementMatcher( matchers );\n}\n\nfunction matcherFromGroupMatchers( elementMatchers, setMatchers ) {\n\tvar bySet = setMatchers.length > 0,\n\t\tbyElement = elementMatchers.length > 0,\n\t\tsuperMatcher = function( seed, context, xml, results, outermost ) {\n\t\t\tvar elem, j, matcher,\n\t\t\t\tmatchedCount = 0,\n\t\t\t\ti = \"0\",\n\t\t\t\tunmatched = seed && [],\n\t\t\t\tsetMatched = [],\n\t\t\t\tcontextBackup = outermostContext,\n\n\t\t\t\t// We must always have either seed elements or outermost context\n\t\t\t\telems = seed || byElement && Expr.find[ \"TAG\" ]( \"*\", outermost ),\n\n\t\t\t\t// Use integer dirruns iff this is the outermost matcher\n\t\t\t\tdirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ),\n\t\t\t\tlen = elems.length;\n\n\t\t\tif ( outermost ) {\n\n\t\t\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t\t\t// two documents; shallow comparisons work.\n\t\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\t\toutermostContext = context == document || context || outermost;\n\t\t\t}\n\n\t\t\t// Add elements passing elementMatchers directly to results\n\t\t\t// Support: IE<9, Safari\n\t\t\t// Tolerate NodeList properties (IE: \"length\"; Safari: ) matching elements by id\n\t\t\tfor ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) {\n\t\t\t\tif ( byElement && elem ) {\n\t\t\t\t\tj = 0;\n\n\t\t\t\t\t// Support: IE 11+, Edge 17 - 18+\n\t\t\t\t\t// IE/Edge sometimes throw a \"Permission denied\" error when strict-comparing\n\t\t\t\t\t// two documents; shallow comparisons work.\n\t\t\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\t\t\tif ( !context && elem.ownerDocument != document ) {\n\t\t\t\t\t\tsetDocument( elem );\n\t\t\t\t\t\txml = !documentIsHTML;\n\t\t\t\t\t}\n\t\t\t\t\twhile ( ( matcher = elementMatchers[ j++ ] ) ) {\n\t\t\t\t\t\tif ( matcher( elem, context || document, xml ) ) {\n\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( outermost ) {\n\t\t\t\t\t\tdirruns = dirrunsUnique;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Track unmatched elements for set filters\n\t\t\t\tif ( bySet ) {\n\n\t\t\t\t\t// They will have gone through all possible matchers\n\t\t\t\t\tif ( ( elem = !matcher && elem ) ) {\n\t\t\t\t\t\tmatchedCount--;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Lengthen the array for every element, matched or not\n\t\t\t\t\tif ( seed ) {\n\t\t\t\t\t\tunmatched.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// `i` is now the count of elements visited above, and adding it to `matchedCount`\n\t\t\t// makes the latter nonnegative.\n\t\t\tmatchedCount += i;\n\n\t\t\t// Apply set filters to unmatched elements\n\t\t\t// NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`\n\t\t\t// equals `i`), unless we didn't visit _any_ elements in the above loop because we have\n\t\t\t// no element matchers and no seed.\n\t\t\t// Incrementing an initially-string \"0\" `i` allows `i` to remain a string only in that\n\t\t\t// case, which will result in a \"00\" `matchedCount` that differs from `i` but is also\n\t\t\t// numerically zero.\n\t\t\tif ( bySet && i !== matchedCount ) {\n\t\t\t\tj = 0;\n\t\t\t\twhile ( ( matcher = setMatchers[ j++ ] ) ) {\n\t\t\t\t\tmatcher( unmatched, setMatched, context, xml );\n\t\t\t\t}\n\n\t\t\t\tif ( seed ) {\n\n\t\t\t\t\t// Reintegrate element matches to eliminate the need for sorting\n\t\t\t\t\tif ( matchedCount > 0 ) {\n\t\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\t\tif ( !( unmatched[ i ] || setMatched[ i ] ) ) {\n\t\t\t\t\t\t\t\tsetMatched[ i ] = pop.call( results );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Discard index placeholder values to get only actual matches\n\t\t\t\t\tsetMatched = condense( setMatched );\n\t\t\t\t}\n\n\t\t\t\t// Add matches to results\n\t\t\t\tpush.apply( results, setMatched );\n\n\t\t\t\t// Seedless set matches succeeding multiple successful matchers stipulate sorting\n\t\t\t\tif ( outermost && !seed && setMatched.length > 0 &&\n\t\t\t\t\t( matchedCount + setMatchers.length ) > 1 ) {\n\n\t\t\t\t\tSizzle.uniqueSort( results );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Override manipulation of globals by nested matchers\n\t\t\tif ( outermost ) {\n\t\t\t\tdirruns = dirrunsUnique;\n\t\t\t\toutermostContext = contextBackup;\n\t\t\t}\n\n\t\t\treturn unmatched;\n\t\t};\n\n\treturn bySet ?\n\t\tmarkFunction( superMatcher ) :\n\t\tsuperMatcher;\n}\n\ncompile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {\n\tvar i,\n\t\tsetMatchers = [],\n\t\telementMatchers = [],\n\t\tcached = compilerCache[ selector + \" \" ];\n\n\tif ( !cached ) {\n\n\t\t// Generate a function of recursive functions that can be used to check each element\n\t\tif ( !match ) {\n\t\t\tmatch = tokenize( selector );\n\t\t}\n\t\ti = match.length;\n\t\twhile ( i-- ) {\n\t\t\tcached = matcherFromTokens( match[ i ] );\n\t\t\tif ( cached[ expando ] ) {\n\t\t\t\tsetMatchers.push( cached );\n\t\t\t} else {\n\t\t\t\telementMatchers.push( cached );\n\t\t\t}\n\t\t}\n\n\t\t// Cache the compiled function\n\t\tcached = compilerCache(\n\t\t\tselector,\n\t\t\tmatcherFromGroupMatchers( elementMatchers, setMatchers )\n\t\t);\n\n\t\t// Save selector and tokenization\n\t\tcached.selector = selector;\n\t}\n\treturn cached;\n};\n\n/**\n * A low-level selection function that works with Sizzle's compiled\n * selector functions\n * @param {String|Function} selector A selector or a pre-compiled\n * selector function built with Sizzle.compile\n * @param {Element} context\n * @param {Array} [results]\n * @param {Array} [seed] A set of elements to match against\n */\nselect = Sizzle.select = function( selector, context, results, seed ) {\n\tvar i, tokens, token, type, find,\n\t\tcompiled = typeof selector === \"function\" && selector,\n\t\tmatch = !seed && tokenize( ( selector = compiled.selector || selector ) );\n\n\tresults = results || [];\n\n\t// Try to minimize operations if there is only one selector in the list and no seed\n\t// (the latter of which guarantees us context)\n\tif ( match.length === 1 ) {\n\n\t\t// Reduce context if the leading compound selector is an ID\n\t\ttokens = match[ 0 ] = match[ 0 ].slice( 0 );\n\t\tif ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === \"ID\" &&\n\t\t\tcontext.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) {\n\n\t\t\tcontext = ( Expr.find[ \"ID\" ]( token.matches[ 0 ]\n\t\t\t\t.replace( runescape, funescape ), context ) || [] )[ 0 ];\n\t\t\tif ( !context ) {\n\t\t\t\treturn results;\n\n\t\t\t// Precompiled matchers will still verify ancestry, so step up a level\n\t\t\t} else if ( compiled ) {\n\t\t\t\tcontext = context.parentNode;\n\t\t\t}\n\n\t\t\tselector = selector.slice( tokens.shift().value.length );\n\t\t}\n\n\t\t// Fetch a seed set for right-to-left matching\n\t\ti = matchExpr[ \"needsContext\" ].test( selector ) ? 0 : tokens.length;\n\t\twhile ( i-- ) {\n\t\t\ttoken = tokens[ i ];\n\n\t\t\t// Abort if we hit a combinator\n\t\t\tif ( Expr.relative[ ( type = token.type ) ] ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( ( find = Expr.find[ type ] ) ) {\n\n\t\t\t\t// Search, expanding context for leading sibling combinators\n\t\t\t\tif ( ( seed = find(\n\t\t\t\t\ttoken.matches[ 0 ].replace( runescape, funescape ),\n\t\t\t\t\trsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) ||\n\t\t\t\t\t\tcontext\n\t\t\t\t) ) ) {\n\n\t\t\t\t\t// If seed is empty or no tokens remain, we can return early\n\t\t\t\t\ttokens.splice( i, 1 );\n\t\t\t\t\tselector = seed.length && toSelector( tokens );\n\t\t\t\t\tif ( !selector ) {\n\t\t\t\t\t\tpush.apply( results, seed );\n\t\t\t\t\t\treturn results;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Compile and execute a filtering function if one is not provided\n\t// Provide `match` to avoid retokenization if we modified the selector above\n\t( compiled || compile( selector, match ) )(\n\t\tseed,\n\t\tcontext,\n\t\t!documentIsHTML,\n\t\tresults,\n\t\t!context || rsibling.test( selector ) && testContext( context.parentNode ) || context\n\t);\n\treturn results;\n};\n\n// One-time assignments\n\n// Sort stability\nsupport.sortStable = expando.split( \"\" ).sort( sortOrder ).join( \"\" ) === expando;\n\n// Support: Chrome 14-35+\n// Always assume duplicates if they aren't passed to the comparison function\nsupport.detectDuplicates = !!hasDuplicate;\n\n// Initialize against the default document\nsetDocument();\n\n// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)\n// Detached nodes confoundingly follow *each other*\nsupport.sortDetached = assert( function( el ) {\n\n\t// Should return 1, but returns 4 (following)\n\treturn el.compareDocumentPosition( document.createElement( \"fieldset\" ) ) & 1;\n} );\n\n// Support: IE<8\n// Prevent attribute/property \"interpolation\"\n// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx\nif ( !assert( function( el ) {\n\tel.innerHTML = \"\";\n\treturn el.firstChild.getAttribute( \"href\" ) === \"#\";\n} ) ) {\n\taddHandle( \"type|href|height|width\", function( elem, name, isXML ) {\n\t\tif ( !isXML ) {\n\t\t\treturn elem.getAttribute( name, name.toLowerCase() === \"type\" ? 1 : 2 );\n\t\t}\n\t} );\n}\n\n// Support: IE<9\n// Use defaultValue in place of getAttribute(\"value\")\nif ( !support.attributes || !assert( function( el ) {\n\tel.innerHTML = \"\";\n\tel.firstChild.setAttribute( \"value\", \"\" );\n\treturn el.firstChild.getAttribute( \"value\" ) === \"\";\n} ) ) {\n\taddHandle( \"value\", function( elem, _name, isXML ) {\n\t\tif ( !isXML && elem.nodeName.toLowerCase() === \"input\" ) {\n\t\t\treturn elem.defaultValue;\n\t\t}\n\t} );\n}\n\n// Support: IE<9\n// Use getAttributeNode to fetch booleans when getAttribute lies\nif ( !assert( function( el ) {\n\treturn el.getAttribute( \"disabled\" ) == null;\n} ) ) {\n\taddHandle( booleans, function( elem, name, isXML ) {\n\t\tvar val;\n\t\tif ( !isXML ) {\n\t\t\treturn elem[ name ] === true ? name.toLowerCase() :\n\t\t\t\t( val = elem.getAttributeNode( name ) ) && val.specified ?\n\t\t\t\t\tval.value :\n\t\t\t\t\tnull;\n\t\t}\n\t} );\n}\n\nreturn Sizzle;\n\n} )( window );\n\n\n\njQuery.find = Sizzle;\njQuery.expr = Sizzle.selectors;\n\n// Deprecated\njQuery.expr[ \":\" ] = jQuery.expr.pseudos;\njQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;\njQuery.text = Sizzle.getText;\njQuery.isXMLDoc = Sizzle.isXML;\njQuery.contains = Sizzle.contains;\njQuery.escapeSelector = Sizzle.escape;\n\n\n\n\nvar dir = function( elem, dir, until ) {\n\tvar matched = [],\n\t\ttruncate = until !== undefined;\n\n\twhile ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {\n\t\tif ( elem.nodeType === 1 ) {\n\t\t\tif ( truncate && jQuery( elem ).is( until ) ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tmatched.push( elem );\n\t\t}\n\t}\n\treturn matched;\n};\n\n\nvar siblings = function( n, elem ) {\n\tvar matched = [];\n\n\tfor ( ; n; n = n.nextSibling ) {\n\t\tif ( n.nodeType === 1 && n !== elem ) {\n\t\t\tmatched.push( n );\n\t\t}\n\t}\n\n\treturn matched;\n};\n\n\nvar rneedsContext = jQuery.expr.match.needsContext;\n\n\n\nfunction nodeName( elem, name ) {\n\n\treturn elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();\n\n}\nvar rsingleTag = ( /^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i );\n\n\n\n// Implement the identical functionality for filter and not\nfunction winnow( elements, qualifier, not ) {\n\tif ( isFunction( qualifier ) ) {\n\t\treturn jQuery.grep( elements, function( elem, i ) {\n\t\t\treturn !!qualifier.call( elem, i, elem ) !== not;\n\t\t} );\n\t}\n\n\t// Single element\n\tif ( qualifier.nodeType ) {\n\t\treturn jQuery.grep( elements, function( elem ) {\n\t\t\treturn ( elem === qualifier ) !== not;\n\t\t} );\n\t}\n\n\t// Arraylike of elements (jQuery, arguments, Array)\n\tif ( typeof qualifier !== \"string\" ) {\n\t\treturn jQuery.grep( elements, function( elem ) {\n\t\t\treturn ( indexOf.call( qualifier, elem ) > -1 ) !== not;\n\t\t} );\n\t}\n\n\t// Filtered directly for both simple and complex selectors\n\treturn jQuery.filter( qualifier, elements, not );\n}\n\njQuery.filter = function( expr, elems, not ) {\n\tvar elem = elems[ 0 ];\n\n\tif ( not ) {\n\t\texpr = \":not(\" + expr + \")\";\n\t}\n\n\tif ( elems.length === 1 && elem.nodeType === 1 ) {\n\t\treturn jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [];\n\t}\n\n\treturn jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {\n\t\treturn elem.nodeType === 1;\n\t} ) );\n};\n\njQuery.fn.extend( {\n\tfind: function( selector ) {\n\t\tvar i, ret,\n\t\t\tlen = this.length,\n\t\t\tself = this;\n\n\t\tif ( typeof selector !== \"string\" ) {\n\t\t\treturn this.pushStack( jQuery( selector ).filter( function() {\n\t\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\t\tif ( jQuery.contains( self[ i ], this ) ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} ) );\n\t\t}\n\n\t\tret = this.pushStack( [] );\n\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tjQuery.find( selector, self[ i ], ret );\n\t\t}\n\n\t\treturn len > 1 ? jQuery.uniqueSort( ret ) : ret;\n\t},\n\tfilter: function( selector ) {\n\t\treturn this.pushStack( winnow( this, selector || [], false ) );\n\t},\n\tnot: function( selector ) {\n\t\treturn this.pushStack( winnow( this, selector || [], true ) );\n\t},\n\tis: function( selector ) {\n\t\treturn !!winnow(\n\t\t\tthis,\n\n\t\t\t// If this is a positional/relative selector, check membership in the returned set\n\t\t\t// so $(\"p:first\").is(\"p:last\") won't return true for a doc with two \"p\".\n\t\t\ttypeof selector === \"string\" && rneedsContext.test( selector ) ?\n\t\t\t\tjQuery( selector ) :\n\t\t\t\tselector || [],\n\t\t\tfalse\n\t\t).length;\n\t}\n} );\n\n\n// Initialize a jQuery object\n\n\n// A central reference to the root jQuery(document)\nvar rootjQuery,\n\n\t// A simple way to check for HTML strings\n\t// Prioritize #id over to avoid XSS via location.hash (#9521)\n\t// Strict HTML recognition (#11290: must start with <)\n\t// Shortcut simple #id case for speed\n\trquickExpr = /^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/,\n\n\tinit = jQuery.fn.init = function( selector, context, root ) {\n\t\tvar match, elem;\n\n\t\t// HANDLE: $(\"\"), $(null), $(undefined), $(false)\n\t\tif ( !selector ) {\n\t\t\treturn this;\n\t\t}\n\n\t\t// Method init() accepts an alternate rootjQuery\n\t\t// so migrate can support jQuery.sub (gh-2101)\n\t\troot = root || rootjQuery;\n\n\t\t// Handle HTML strings\n\t\tif ( typeof selector === \"string\" ) {\n\t\t\tif ( selector[ 0 ] === \"<\" &&\n\t\t\t\tselector[ selector.length - 1 ] === \">\" &&\n\t\t\t\tselector.length >= 3 ) {\n\n\t\t\t\t// Assume that strings that start and end with <> are HTML and skip the regex check\n\t\t\t\tmatch = [ null, selector, null ];\n\n\t\t\t} else {\n\t\t\t\tmatch = rquickExpr.exec( selector );\n\t\t\t}\n\n\t\t\t// Match html or make sure no context is specified for #id\n\t\t\tif ( match && ( match[ 1 ] || !context ) ) {\n\n\t\t\t\t// HANDLE: $(html) -> $(array)\n\t\t\t\tif ( match[ 1 ] ) {\n\t\t\t\t\tcontext = context instanceof jQuery ? context[ 0 ] : context;\n\n\t\t\t\t\t// Option to run scripts is true for back-compat\n\t\t\t\t\t// Intentionally let the error be thrown if parseHTML is not present\n\t\t\t\t\tjQuery.merge( this, jQuery.parseHTML(\n\t\t\t\t\t\tmatch[ 1 ],\n\t\t\t\t\t\tcontext && context.nodeType ? context.ownerDocument || context : document,\n\t\t\t\t\t\ttrue\n\t\t\t\t\t) );\n\n\t\t\t\t\t// HANDLE: $(html, props)\n\t\t\t\t\tif ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {\n\t\t\t\t\t\tfor ( match in context ) {\n\n\t\t\t\t\t\t\t// Properties of context are called as methods if possible\n\t\t\t\t\t\t\tif ( isFunction( this[ match ] ) ) {\n\t\t\t\t\t\t\t\tthis[ match ]( context[ match ] );\n\n\t\t\t\t\t\t\t// ...and otherwise set as attributes\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis.attr( match, context[ match ] );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this;\n\n\t\t\t\t// HANDLE: $(#id)\n\t\t\t\t} else {\n\t\t\t\t\telem = document.getElementById( match[ 2 ] );\n\n\t\t\t\t\tif ( elem ) {\n\n\t\t\t\t\t\t// Inject the element directly into the jQuery object\n\t\t\t\t\t\tthis[ 0 ] = elem;\n\t\t\t\t\t\tthis.length = 1;\n\t\t\t\t\t}\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t// HANDLE: $(expr, $(...))\n\t\t\t} else if ( !context || context.jquery ) {\n\t\t\t\treturn ( context || root ).find( selector );\n\n\t\t\t// HANDLE: $(expr, context)\n\t\t\t// (which is just equivalent to: $(context).find(expr)\n\t\t\t} else {\n\t\t\t\treturn this.constructor( context ).find( selector );\n\t\t\t}\n\n\t\t// HANDLE: $(DOMElement)\n\t\t} else if ( selector.nodeType ) {\n\t\t\tthis[ 0 ] = selector;\n\t\t\tthis.length = 1;\n\t\t\treturn this;\n\n\t\t// HANDLE: $(function)\n\t\t// Shortcut for document ready\n\t\t} else if ( isFunction( selector ) ) {\n\t\t\treturn root.ready !== undefined ?\n\t\t\t\troot.ready( selector ) :\n\n\t\t\t\t// Execute immediately if ready is not present\n\t\t\t\tselector( jQuery );\n\t\t}\n\n\t\treturn jQuery.makeArray( selector, this );\n\t};\n\n// Give the init function the jQuery prototype for later instantiation\ninit.prototype = jQuery.fn;\n\n// Initialize central reference\nrootjQuery = jQuery( document );\n\n\nvar rparentsprev = /^(?:parents|prev(?:Until|All))/,\n\n\t// Methods guaranteed to produce a unique set when starting from a unique set\n\tguaranteedUnique = {\n\t\tchildren: true,\n\t\tcontents: true,\n\t\tnext: true,\n\t\tprev: true\n\t};\n\njQuery.fn.extend( {\n\thas: function( target ) {\n\t\tvar targets = jQuery( target, this ),\n\t\t\tl = targets.length;\n\n\t\treturn this.filter( function() {\n\t\t\tvar i = 0;\n\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\tif ( jQuery.contains( this, targets[ i ] ) ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t},\n\n\tclosest: function( selectors, context ) {\n\t\tvar cur,\n\t\t\ti = 0,\n\t\t\tl = this.length,\n\t\t\tmatched = [],\n\t\t\ttargets = typeof selectors !== \"string\" && jQuery( selectors );\n\n\t\t// Positional selectors never match, since there's no _selection_ context\n\t\tif ( !rneedsContext.test( selectors ) ) {\n\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\tfor ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {\n\n\t\t\t\t\t// Always skip document fragments\n\t\t\t\t\tif ( cur.nodeType < 11 && ( targets ?\n\t\t\t\t\t\ttargets.index( cur ) > -1 :\n\n\t\t\t\t\t\t// Don't pass non-elements to Sizzle\n\t\t\t\t\t\tcur.nodeType === 1 &&\n\t\t\t\t\t\t\tjQuery.find.matchesSelector( cur, selectors ) ) ) {\n\n\t\t\t\t\t\tmatched.push( cur );\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );\n\t},\n\n\t// Determine the position of an element within the set\n\tindex: function( elem ) {\n\n\t\t// No argument, return index in parent\n\t\tif ( !elem ) {\n\t\t\treturn ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;\n\t\t}\n\n\t\t// Index in selector\n\t\tif ( typeof elem === \"string\" ) {\n\t\t\treturn indexOf.call( jQuery( elem ), this[ 0 ] );\n\t\t}\n\n\t\t// Locate the position of the desired element\n\t\treturn indexOf.call( this,\n\n\t\t\t// If it receives a jQuery object, the first element is used\n\t\t\telem.jquery ? elem[ 0 ] : elem\n\t\t);\n\t},\n\n\tadd: function( selector, context ) {\n\t\treturn this.pushStack(\n\t\t\tjQuery.uniqueSort(\n\t\t\t\tjQuery.merge( this.get(), jQuery( selector, context ) )\n\t\t\t)\n\t\t);\n\t},\n\n\taddBack: function( selector ) {\n\t\treturn this.add( selector == null ?\n\t\t\tthis.prevObject : this.prevObject.filter( selector )\n\t\t);\n\t}\n} );\n\nfunction sibling( cur, dir ) {\n\twhile ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}\n\treturn cur;\n}\n\njQuery.each( {\n\tparent: function( elem ) {\n\t\tvar parent = elem.parentNode;\n\t\treturn parent && parent.nodeType !== 11 ? parent : null;\n\t},\n\tparents: function( elem ) {\n\t\treturn dir( elem, \"parentNode\" );\n\t},\n\tparentsUntil: function( elem, _i, until ) {\n\t\treturn dir( elem, \"parentNode\", until );\n\t},\n\tnext: function( elem ) {\n\t\treturn sibling( elem, \"nextSibling\" );\n\t},\n\tprev: function( elem ) {\n\t\treturn sibling( elem, \"previousSibling\" );\n\t},\n\tnextAll: function( elem ) {\n\t\treturn dir( elem, \"nextSibling\" );\n\t},\n\tprevAll: function( elem ) {\n\t\treturn dir( elem, \"previousSibling\" );\n\t},\n\tnextUntil: function( elem, _i, until ) {\n\t\treturn dir( elem, \"nextSibling\", until );\n\t},\n\tprevUntil: function( elem, _i, until ) {\n\t\treturn dir( elem, \"previousSibling\", until );\n\t},\n\tsiblings: function( elem ) {\n\t\treturn siblings( ( elem.parentNode || {} ).firstChild, elem );\n\t},\n\tchildren: function( elem ) {\n\t\treturn siblings( elem.firstChild );\n\t},\n\tcontents: function( elem ) {\n\t\tif ( elem.contentDocument != null &&\n\n\t\t\t// Support: IE 11+\n\t\t\t// elements with no `data` attribute has an object\n\t\t\t// `contentDocument` with a `null` prototype.\n\t\t\tgetProto( elem.contentDocument ) ) {\n\n\t\t\treturn elem.contentDocument;\n\t\t}\n\n\t\t// Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only\n\t\t// Treat the template element as a regular one in browsers that\n\t\t// don't support it.\n\t\tif ( nodeName( elem, \"template\" ) ) {\n\t\t\telem = elem.content || elem;\n\t\t}\n\n\t\treturn jQuery.merge( [], elem.childNodes );\n\t}\n}, function( name, fn ) {\n\tjQuery.fn[ name ] = function( until, selector ) {\n\t\tvar matched = jQuery.map( this, fn, until );\n\n\t\tif ( name.slice( -5 ) !== \"Until\" ) {\n\t\t\tselector = until;\n\t\t}\n\n\t\tif ( selector && typeof selector === \"string\" ) {\n\t\t\tmatched = jQuery.filter( selector, matched );\n\t\t}\n\n\t\tif ( this.length > 1 ) {\n\n\t\t\t// Remove duplicates\n\t\t\tif ( !guaranteedUnique[ name ] ) {\n\t\t\t\tjQuery.uniqueSort( matched );\n\t\t\t}\n\n\t\t\t// Reverse order for parents* and prev-derivatives\n\t\t\tif ( rparentsprev.test( name ) ) {\n\t\t\t\tmatched.reverse();\n\t\t\t}\n\t\t}\n\n\t\treturn this.pushStack( matched );\n\t};\n} );\nvar rnothtmlwhite = ( /[^\\x20\\t\\r\\n\\f]+/g );\n\n\n\n// Convert String-formatted options into Object-formatted ones\nfunction createOptions( options ) {\n\tvar object = {};\n\tjQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) {\n\t\tobject[ flag ] = true;\n\t} );\n\treturn object;\n}\n\n/*\n * Create a callback list using the following parameters:\n *\n *\toptions: an optional list of space-separated options that will change how\n *\t\t\tthe callback list behaves or a more traditional option object\n *\n * By default a callback list will act like an event callback list and can be\n * \"fired\" multiple times.\n *\n * Possible options:\n *\n *\tonce:\t\t\twill ensure the callback list can only be fired once (like a Deferred)\n *\n *\tmemory:\t\t\twill keep track of previous values and will call any callback added\n *\t\t\t\t\tafter the list has been fired right away with the latest \"memorized\"\n *\t\t\t\t\tvalues (like a Deferred)\n *\n *\tunique:\t\t\twill ensure a callback can only be added once (no duplicate in the list)\n *\n *\tstopOnFalse:\tinterrupt callings when a callback returns false\n *\n */\njQuery.Callbacks = function( options ) {\n\n\t// Convert options from String-formatted to Object-formatted if needed\n\t// (we check in cache first)\n\toptions = typeof options === \"string\" ?\n\t\tcreateOptions( options ) :\n\t\tjQuery.extend( {}, options );\n\n\tvar // Flag to know if list is currently firing\n\t\tfiring,\n\n\t\t// Last fire value for non-forgettable lists\n\t\tmemory,\n\n\t\t// Flag to know if list was already fired\n\t\tfired,\n\n\t\t// Flag to prevent firing\n\t\tlocked,\n\n\t\t// Actual callback list\n\t\tlist = [],\n\n\t\t// Queue of execution data for repeatable lists\n\t\tqueue = [],\n\n\t\t// Index of currently firing callback (modified by add/remove as needed)\n\t\tfiringIndex = -1,\n\n\t\t// Fire callbacks\n\t\tfire = function() {\n\n\t\t\t// Enforce single-firing\n\t\t\tlocked = locked || options.once;\n\n\t\t\t// Execute callbacks for all pending executions,\n\t\t\t// respecting firingIndex overrides and runtime changes\n\t\t\tfired = firing = true;\n\t\t\tfor ( ; queue.length; firingIndex = -1 ) {\n\t\t\t\tmemory = queue.shift();\n\t\t\t\twhile ( ++firingIndex < list.length ) {\n\n\t\t\t\t\t// Run callback and check for early termination\n\t\t\t\t\tif ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&\n\t\t\t\t\t\toptions.stopOnFalse ) {\n\n\t\t\t\t\t\t// Jump to end and forget the data so .add doesn't re-fire\n\t\t\t\t\t\tfiringIndex = list.length;\n\t\t\t\t\t\tmemory = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Forget the data if we're done with it\n\t\t\tif ( !options.memory ) {\n\t\t\t\tmemory = false;\n\t\t\t}\n\n\t\t\tfiring = false;\n\n\t\t\t// Clean up if we're done firing for good\n\t\t\tif ( locked ) {\n\n\t\t\t\t// Keep an empty list if we have data for future add calls\n\t\t\t\tif ( memory ) {\n\t\t\t\t\tlist = [];\n\n\t\t\t\t// Otherwise, this object is spent\n\t\t\t\t} else {\n\t\t\t\t\tlist = \"\";\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t// Actual Callbacks object\n\t\tself = {\n\n\t\t\t// Add a callback or a collection of callbacks to the list\n\t\t\tadd: function() {\n\t\t\t\tif ( list ) {\n\n\t\t\t\t\t// If we have memory from a past run, we should fire after adding\n\t\t\t\t\tif ( memory && !firing ) {\n\t\t\t\t\t\tfiringIndex = list.length - 1;\n\t\t\t\t\t\tqueue.push( memory );\n\t\t\t\t\t}\n\n\t\t\t\t\t( function add( args ) {\n\t\t\t\t\t\tjQuery.each( args, function( _, arg ) {\n\t\t\t\t\t\t\tif ( isFunction( arg ) ) {\n\t\t\t\t\t\t\t\tif ( !options.unique || !self.has( arg ) ) {\n\t\t\t\t\t\t\t\t\tlist.push( arg );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else if ( arg && arg.length && toType( arg ) !== \"string\" ) {\n\n\t\t\t\t\t\t\t\t// Inspect recursively\n\t\t\t\t\t\t\t\tadd( arg );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} );\n\t\t\t\t\t} )( arguments );\n\n\t\t\t\t\tif ( memory && !firing ) {\n\t\t\t\t\t\tfire();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Remove a callback from the list\n\t\t\tremove: function() {\n\t\t\t\tjQuery.each( arguments, function( _, arg ) {\n\t\t\t\t\tvar index;\n\t\t\t\t\twhile ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {\n\t\t\t\t\t\tlist.splice( index, 1 );\n\n\t\t\t\t\t\t// Handle firing indexes\n\t\t\t\t\t\tif ( index <= firingIndex ) {\n\t\t\t\t\t\t\tfiringIndex--;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Check if a given callback is in the list.\n\t\t\t// If no argument is given, return whether or not list has callbacks attached.\n\t\t\thas: function( fn ) {\n\t\t\t\treturn fn ?\n\t\t\t\t\tjQuery.inArray( fn, list ) > -1 :\n\t\t\t\t\tlist.length > 0;\n\t\t\t},\n\n\t\t\t// Remove all callbacks from the list\n\t\t\tempty: function() {\n\t\t\t\tif ( list ) {\n\t\t\t\t\tlist = [];\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Disable .fire and .add\n\t\t\t// Abort any current/pending executions\n\t\t\t// Clear all callbacks and values\n\t\t\tdisable: function() {\n\t\t\t\tlocked = queue = [];\n\t\t\t\tlist = memory = \"\";\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tdisabled: function() {\n\t\t\t\treturn !list;\n\t\t\t},\n\n\t\t\t// Disable .fire\n\t\t\t// Also disable .add unless we have memory (since it would have no effect)\n\t\t\t// Abort any pending executions\n\t\t\tlock: function() {\n\t\t\t\tlocked = queue = [];\n\t\t\t\tif ( !memory && !firing ) {\n\t\t\t\t\tlist = memory = \"\";\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tlocked: function() {\n\t\t\t\treturn !!locked;\n\t\t\t},\n\n\t\t\t// Call all callbacks with the given context and arguments\n\t\t\tfireWith: function( context, args ) {\n\t\t\t\tif ( !locked ) {\n\t\t\t\t\targs = args || [];\n\t\t\t\t\targs = [ context, args.slice ? args.slice() : args ];\n\t\t\t\t\tqueue.push( args );\n\t\t\t\t\tif ( !firing ) {\n\t\t\t\t\t\tfire();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Call all the callbacks with the given arguments\n\t\t\tfire: function() {\n\t\t\t\tself.fireWith( this, arguments );\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// To know if the callbacks have already been called at least once\n\t\t\tfired: function() {\n\t\t\t\treturn !!fired;\n\t\t\t}\n\t\t};\n\n\treturn self;\n};\n\n\nfunction Identity( v ) {\n\treturn v;\n}\nfunction Thrower( ex ) {\n\tthrow ex;\n}\n\nfunction adoptValue( value, resolve, reject, noValue ) {\n\tvar method;\n\n\ttry {\n\n\t\t// Check for promise aspect first to privilege synchronous behavior\n\t\tif ( value && isFunction( ( method = value.promise ) ) ) {\n\t\t\tmethod.call( value ).done( resolve ).fail( reject );\n\n\t\t// Other thenables\n\t\t} else if ( value && isFunction( ( method = value.then ) ) ) {\n\t\t\tmethod.call( value, resolve, reject );\n\n\t\t// Other non-thenables\n\t\t} else {\n\n\t\t\t// Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer:\n\t\t\t// * false: [ value ].slice( 0 ) => resolve( value )\n\t\t\t// * true: [ value ].slice( 1 ) => resolve()\n\t\t\tresolve.apply( undefined, [ value ].slice( noValue ) );\n\t\t}\n\n\t// For Promises/A+, convert exceptions into rejections\n\t// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in\n\t// Deferred#then to conditionally suppress rejection.\n\t} catch ( value ) {\n\n\t\t// Support: Android 4.0 only\n\t\t// Strict mode functions invoked without .call/.apply get global-object context\n\t\treject.apply( undefined, [ value ] );\n\t}\n}\n\njQuery.extend( {\n\n\tDeferred: function( func ) {\n\t\tvar tuples = [\n\n\t\t\t\t// action, add listener, callbacks,\n\t\t\t\t// ... .then handlers, argument index, [final state]\n\t\t\t\t[ \"notify\", \"progress\", jQuery.Callbacks( \"memory\" ),\n\t\t\t\t\tjQuery.Callbacks( \"memory\" ), 2 ],\n\t\t\t\t[ \"resolve\", \"done\", jQuery.Callbacks( \"once memory\" ),\n\t\t\t\t\tjQuery.Callbacks( \"once memory\" ), 0, \"resolved\" ],\n\t\t\t\t[ \"reject\", \"fail\", jQuery.Callbacks( \"once memory\" ),\n\t\t\t\t\tjQuery.Callbacks( \"once memory\" ), 1, \"rejected\" ]\n\t\t\t],\n\t\t\tstate = \"pending\",\n\t\t\tpromise = {\n\t\t\t\tstate: function() {\n\t\t\t\t\treturn state;\n\t\t\t\t},\n\t\t\t\talways: function() {\n\t\t\t\t\tdeferred.done( arguments ).fail( arguments );\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\t\t\t\t\"catch\": function( fn ) {\n\t\t\t\t\treturn promise.then( null, fn );\n\t\t\t\t},\n\n\t\t\t\t// Keep pipe for back-compat\n\t\t\t\tpipe: function( /* fnDone, fnFail, fnProgress */ ) {\n\t\t\t\t\tvar fns = arguments;\n\n\t\t\t\t\treturn jQuery.Deferred( function( newDefer ) {\n\t\t\t\t\t\tjQuery.each( tuples, function( _i, tuple ) {\n\n\t\t\t\t\t\t\t// Map tuples (progress, done, fail) to arguments (done, fail, progress)\n\t\t\t\t\t\t\tvar fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ];\n\n\t\t\t\t\t\t\t// deferred.progress(function() { bind to newDefer or newDefer.notify })\n\t\t\t\t\t\t\t// deferred.done(function() { bind to newDefer or newDefer.resolve })\n\t\t\t\t\t\t\t// deferred.fail(function() { bind to newDefer or newDefer.reject })\n\t\t\t\t\t\t\tdeferred[ tuple[ 1 ] ]( function() {\n\t\t\t\t\t\t\t\tvar returned = fn && fn.apply( this, arguments );\n\t\t\t\t\t\t\t\tif ( returned && isFunction( returned.promise ) ) {\n\t\t\t\t\t\t\t\t\treturned.promise()\n\t\t\t\t\t\t\t\t\t\t.progress( newDefer.notify )\n\t\t\t\t\t\t\t\t\t\t.done( newDefer.resolve )\n\t\t\t\t\t\t\t\t\t\t.fail( newDefer.reject );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tnewDefer[ tuple[ 0 ] + \"With\" ](\n\t\t\t\t\t\t\t\t\t\tthis,\n\t\t\t\t\t\t\t\t\t\tfn ? [ returned ] : arguments\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} );\n\t\t\t\t\t\tfns = null;\n\t\t\t\t\t} ).promise();\n\t\t\t\t},\n\t\t\t\tthen: function( onFulfilled, onRejected, onProgress ) {\n\t\t\t\t\tvar maxDepth = 0;\n\t\t\t\t\tfunction resolve( depth, deferred, handler, special ) {\n\t\t\t\t\t\treturn function() {\n\t\t\t\t\t\t\tvar that = this,\n\t\t\t\t\t\t\t\targs = arguments,\n\t\t\t\t\t\t\t\tmightThrow = function() {\n\t\t\t\t\t\t\t\t\tvar returned, then;\n\n\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.3.3.3\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-59\n\t\t\t\t\t\t\t\t\t// Ignore double-resolution attempts\n\t\t\t\t\t\t\t\t\tif ( depth < maxDepth ) {\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\treturned = handler.apply( that, args );\n\n\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.1\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-48\n\t\t\t\t\t\t\t\t\tif ( returned === deferred.promise() ) {\n\t\t\t\t\t\t\t\t\t\tthrow new TypeError( \"Thenable self-resolution\" );\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t// Support: Promises/A+ sections 2.3.3.1, 3.5\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-54\n\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-75\n\t\t\t\t\t\t\t\t\t// Retrieve `then` only once\n\t\t\t\t\t\t\t\t\tthen = returned &&\n\n\t\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.4\n\t\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-64\n\t\t\t\t\t\t\t\t\t\t// Only check objects and functions for thenability\n\t\t\t\t\t\t\t\t\t\t( typeof returned === \"object\" ||\n\t\t\t\t\t\t\t\t\t\t\ttypeof returned === \"function\" ) &&\n\t\t\t\t\t\t\t\t\t\treturned.then;\n\n\t\t\t\t\t\t\t\t\t// Handle a returned thenable\n\t\t\t\t\t\t\t\t\tif ( isFunction( then ) ) {\n\n\t\t\t\t\t\t\t\t\t\t// Special processors (notify) just wait for resolution\n\t\t\t\t\t\t\t\t\t\tif ( special ) {\n\t\t\t\t\t\t\t\t\t\t\tthen.call(\n\t\t\t\t\t\t\t\t\t\t\t\treturned,\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Identity, special ),\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Thrower, special )\n\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t// Normal processors (resolve) also hook into progress\n\t\t\t\t\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\t\t\t\t\t// ...and disregard older resolution values\n\t\t\t\t\t\t\t\t\t\t\tmaxDepth++;\n\n\t\t\t\t\t\t\t\t\t\t\tthen.call(\n\t\t\t\t\t\t\t\t\t\t\t\treturned,\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Identity, special ),\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Thrower, special ),\n\t\t\t\t\t\t\t\t\t\t\t\tresolve( maxDepth, deferred, Identity,\n\t\t\t\t\t\t\t\t\t\t\t\t\tdeferred.notifyWith )\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t// Handle all other returned values\n\t\t\t\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\t\t\t\t// Only substitute handlers pass on context\n\t\t\t\t\t\t\t\t\t\t// and multiple values (non-spec behavior)\n\t\t\t\t\t\t\t\t\t\tif ( handler !== Identity ) {\n\t\t\t\t\t\t\t\t\t\t\tthat = undefined;\n\t\t\t\t\t\t\t\t\t\t\targs = [ returned ];\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t// Process the value(s)\n\t\t\t\t\t\t\t\t\t\t// Default process is resolve\n\t\t\t\t\t\t\t\t\t\t( special || deferred.resolveWith )( that, args );\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\n\t\t\t\t\t\t\t\t// Only normal processors (resolve) catch and reject exceptions\n\t\t\t\t\t\t\t\tprocess = special ?\n\t\t\t\t\t\t\t\t\tmightThrow :\n\t\t\t\t\t\t\t\t\tfunction() {\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\tmightThrow();\n\t\t\t\t\t\t\t\t\t\t} catch ( e ) {\n\n\t\t\t\t\t\t\t\t\t\t\tif ( jQuery.Deferred.exceptionHook ) {\n\t\t\t\t\t\t\t\t\t\t\t\tjQuery.Deferred.exceptionHook( e,\n\t\t\t\t\t\t\t\t\t\t\t\t\tprocess.stackTrace );\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.3.3.4.1\n\t\t\t\t\t\t\t\t\t\t\t// https://promisesaplus.com/#point-61\n\t\t\t\t\t\t\t\t\t\t\t// Ignore post-resolution exceptions\n\t\t\t\t\t\t\t\t\t\t\tif ( depth + 1 >= maxDepth ) {\n\n\t\t\t\t\t\t\t\t\t\t\t\t// Only substitute handlers pass on context\n\t\t\t\t\t\t\t\t\t\t\t\t// and multiple values (non-spec behavior)\n\t\t\t\t\t\t\t\t\t\t\t\tif ( handler !== Thrower ) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tthat = undefined;\n\t\t\t\t\t\t\t\t\t\t\t\t\targs = [ e ];\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\tdeferred.rejectWith( that, args );\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t// Support: Promises/A+ section 2.3.3.3.1\n\t\t\t\t\t\t\t// https://promisesaplus.com/#point-57\n\t\t\t\t\t\t\t// Re-resolve promises immediately to dodge false rejection from\n\t\t\t\t\t\t\t// subsequent errors\n\t\t\t\t\t\t\tif ( depth ) {\n\t\t\t\t\t\t\t\tprocess();\n\t\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\t\t// Call an optional hook to record the stack, in case of exception\n\t\t\t\t\t\t\t\t// since it's otherwise lost when execution goes async\n\t\t\t\t\t\t\t\tif ( jQuery.Deferred.getStackHook ) {\n\t\t\t\t\t\t\t\t\tprocess.stackTrace = jQuery.Deferred.getStackHook();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\twindow.setTimeout( process );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\treturn jQuery.Deferred( function( newDefer ) {\n\n\t\t\t\t\t\t// progress_handlers.add( ... )\n\t\t\t\t\t\ttuples[ 0 ][ 3 ].add(\n\t\t\t\t\t\t\tresolve(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tnewDefer,\n\t\t\t\t\t\t\t\tisFunction( onProgress ) ?\n\t\t\t\t\t\t\t\t\tonProgress :\n\t\t\t\t\t\t\t\t\tIdentity,\n\t\t\t\t\t\t\t\tnewDefer.notifyWith\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// fulfilled_handlers.add( ... )\n\t\t\t\t\t\ttuples[ 1 ][ 3 ].add(\n\t\t\t\t\t\t\tresolve(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tnewDefer,\n\t\t\t\t\t\t\t\tisFunction( onFulfilled ) ?\n\t\t\t\t\t\t\t\t\tonFulfilled :\n\t\t\t\t\t\t\t\t\tIdentity\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// rejected_handlers.add( ... )\n\t\t\t\t\t\ttuples[ 2 ][ 3 ].add(\n\t\t\t\t\t\t\tresolve(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tnewDefer,\n\t\t\t\t\t\t\t\tisFunction( onRejected ) ?\n\t\t\t\t\t\t\t\t\tonRejected :\n\t\t\t\t\t\t\t\t\tThrower\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t\t} ).promise();\n\t\t\t\t},\n\n\t\t\t\t// Get a promise for this deferred\n\t\t\t\t// If obj is provided, the promise aspect is added to the object\n\t\t\t\tpromise: function( obj ) {\n\t\t\t\t\treturn obj != null ? jQuery.extend( obj, promise ) : promise;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdeferred = {};\n\n\t\t// Add list-specific methods\n\t\tjQuery.each( tuples, function( i, tuple ) {\n\t\t\tvar list = tuple[ 2 ],\n\t\t\t\tstateString = tuple[ 5 ];\n\n\t\t\t// promise.progress = list.add\n\t\t\t// promise.done = list.add\n\t\t\t// promise.fail = list.add\n\t\t\tpromise[ tuple[ 1 ] ] = list.add;\n\n\t\t\t// Handle state\n\t\t\tif ( stateString ) {\n\t\t\t\tlist.add(\n\t\t\t\t\tfunction() {\n\n\t\t\t\t\t\t// state = \"resolved\" (i.e., fulfilled)\n\t\t\t\t\t\t// state = \"rejected\"\n\t\t\t\t\t\tstate = stateString;\n\t\t\t\t\t},\n\n\t\t\t\t\t// rejected_callbacks.disable\n\t\t\t\t\t// fulfilled_callbacks.disable\n\t\t\t\t\ttuples[ 3 - i ][ 2 ].disable,\n\n\t\t\t\t\t// rejected_handlers.disable\n\t\t\t\t\t// fulfilled_handlers.disable\n\t\t\t\t\ttuples[ 3 - i ][ 3 ].disable,\n\n\t\t\t\t\t// progress_callbacks.lock\n\t\t\t\t\ttuples[ 0 ][ 2 ].lock,\n\n\t\t\t\t\t// progress_handlers.lock\n\t\t\t\t\ttuples[ 0 ][ 3 ].lock\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// progress_handlers.fire\n\t\t\t// fulfilled_handlers.fire\n\t\t\t// rejected_handlers.fire\n\t\t\tlist.add( tuple[ 3 ].fire );\n\n\t\t\t// deferred.notify = function() { deferred.notifyWith(...) }\n\t\t\t// deferred.resolve = function() { deferred.resolveWith(...) }\n\t\t\t// deferred.reject = function() { deferred.rejectWith(...) }\n\t\t\tdeferred[ tuple[ 0 ] ] = function() {\n\t\t\t\tdeferred[ tuple[ 0 ] + \"With\" ]( this === deferred ? undefined : this, arguments );\n\t\t\t\treturn this;\n\t\t\t};\n\n\t\t\t// deferred.notifyWith = list.fireWith\n\t\t\t// deferred.resolveWith = list.fireWith\n\t\t\t// deferred.rejectWith = list.fireWith\n\t\t\tdeferred[ tuple[ 0 ] + \"With\" ] = list.fireWith;\n\t\t} );\n\n\t\t// Make the deferred a promise\n\t\tpromise.promise( deferred );\n\n\t\t// Call given func if any\n\t\tif ( func ) {\n\t\t\tfunc.call( deferred, deferred );\n\t\t}\n\n\t\t// All done!\n\t\treturn deferred;\n\t},\n\n\t// Deferred helper\n\twhen: function( singleValue ) {\n\t\tvar\n\n\t\t\t// count of uncompleted subordinates\n\t\t\tremaining = arguments.length,\n\n\t\t\t// count of unprocessed arguments\n\t\t\ti = remaining,\n\n\t\t\t// subordinate fulfillment data\n\t\t\tresolveContexts = Array( i ),\n\t\t\tresolveValues = slice.call( arguments ),\n\n\t\t\t// the primary Deferred\n\t\t\tprimary = jQuery.Deferred(),\n\n\t\t\t// subordinate callback factory\n\t\t\tupdateFunc = function( i ) {\n\t\t\t\treturn function( value ) {\n\t\t\t\t\tresolveContexts[ i ] = this;\n\t\t\t\t\tresolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;\n\t\t\t\t\tif ( !( --remaining ) ) {\n\t\t\t\t\t\tprimary.resolveWith( resolveContexts, resolveValues );\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t};\n\n\t\t// Single- and empty arguments are adopted like Promise.resolve\n\t\tif ( remaining <= 1 ) {\n\t\t\tadoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject,\n\t\t\t\t!remaining );\n\n\t\t\t// Use .then() to unwrap secondary thenables (cf. gh-3000)\n\t\t\tif ( primary.state() === \"pending\" ||\n\t\t\t\tisFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {\n\n\t\t\t\treturn primary.then();\n\t\t\t}\n\t\t}\n\n\t\t// Multiple arguments are aggregated like Promise.all array elements\n\t\twhile ( i-- ) {\n\t\t\tadoptValue( resolveValues[ i ], updateFunc( i ), primary.reject );\n\t\t}\n\n\t\treturn primary.promise();\n\t}\n} );\n\n\n// These usually indicate a programmer mistake during development,\n// warn about them ASAP rather than swallowing them by default.\nvar rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;\n\njQuery.Deferred.exceptionHook = function( error, stack ) {\n\n\t// Support: IE 8 - 9 only\n\t// Console exists when dev tools are open, which can happen at any time\n\tif ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) {\n\t\twindow.console.warn( \"jQuery.Deferred exception: \" + error.message, error.stack, stack );\n\t}\n};\n\n\n\n\njQuery.readyException = function( error ) {\n\twindow.setTimeout( function() {\n\t\tthrow error;\n\t} );\n};\n\n\n\n\n// The deferred used on DOM ready\nvar readyList = jQuery.Deferred();\n\njQuery.fn.ready = function( fn ) {\n\n\treadyList\n\t\t.then( fn )\n\n\t\t// Wrap jQuery.readyException in a function so that the lookup\n\t\t// happens at the time of error handling instead of callback\n\t\t// registration.\n\t\t.catch( function( error ) {\n\t\t\tjQuery.readyException( error );\n\t\t} );\n\n\treturn this;\n};\n\njQuery.extend( {\n\n\t// Is the DOM ready to be used? Set to true once it occurs.\n\tisReady: false,\n\n\t// A counter to track how many items to wait for before\n\t// the ready event fires. See #6781\n\treadyWait: 1,\n\n\t// Handle when the DOM is ready\n\tready: function( wait ) {\n\n\t\t// Abort if there are pending holds or we're already ready\n\t\tif ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Remember that the DOM is ready\n\t\tjQuery.isReady = true;\n\n\t\t// If a normal DOM Ready event fired, decrement, and wait if need be\n\t\tif ( wait !== true && --jQuery.readyWait > 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there are functions bound, to execute\n\t\treadyList.resolveWith( document, [ jQuery ] );\n\t}\n} );\n\njQuery.ready.then = readyList.then;\n\n// The ready event handler and self cleanup method\nfunction completed() {\n\tdocument.removeEventListener( \"DOMContentLoaded\", completed );\n\twindow.removeEventListener( \"load\", completed );\n\tjQuery.ready();\n}\n\n// Catch cases where $(document).ready() is called\n// after the browser event has already occurred.\n// Support: IE <=9 - 10 only\n// Older IE sometimes signals \"interactive\" too soon\nif ( document.readyState === \"complete\" ||\n\t( document.readyState !== \"loading\" && !document.documentElement.doScroll ) ) {\n\n\t// Handle it asynchronously to allow scripts the opportunity to delay ready\n\twindow.setTimeout( jQuery.ready );\n\n} else {\n\n\t// Use the handy event callback\n\tdocument.addEventListener( \"DOMContentLoaded\", completed );\n\n\t// A fallback to window.onload, that will always work\n\twindow.addEventListener( \"load\", completed );\n}\n\n\n\n\n// Multifunctional method to get and set values of a collection\n// The value/s can optionally be executed if it's a function\nvar access = function( elems, fn, key, value, chainable, emptyGet, raw ) {\n\tvar i = 0,\n\t\tlen = elems.length,\n\t\tbulk = key == null;\n\n\t// Sets many values\n\tif ( toType( key ) === \"object\" ) {\n\t\tchainable = true;\n\t\tfor ( i in key ) {\n\t\t\taccess( elems, fn, i, key[ i ], true, emptyGet, raw );\n\t\t}\n\n\t// Sets one value\n\t} else if ( value !== undefined ) {\n\t\tchainable = true;\n\n\t\tif ( !isFunction( value ) ) {\n\t\t\traw = true;\n\t\t}\n\n\t\tif ( bulk ) {\n\n\t\t\t// Bulk operations run against the entire set\n\t\t\tif ( raw ) {\n\t\t\t\tfn.call( elems, value );\n\t\t\t\tfn = null;\n\n\t\t\t// ...except when executing function values\n\t\t\t} else {\n\t\t\t\tbulk = fn;\n\t\t\t\tfn = function( elem, _key, value ) {\n\t\t\t\t\treturn bulk.call( jQuery( elem ), value );\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( fn ) {\n\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\tfn(\n\t\t\t\t\telems[ i ], key, raw ?\n\t\t\t\t\t\tvalue :\n\t\t\t\t\t\tvalue.call( elems[ i ], i, fn( elems[ i ], key ) )\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( chainable ) {\n\t\treturn elems;\n\t}\n\n\t// Gets\n\tif ( bulk ) {\n\t\treturn fn.call( elems );\n\t}\n\n\treturn len ? fn( elems[ 0 ], key ) : emptyGet;\n};\n\n\n// Matches dashed string for camelizing\nvar rmsPrefix = /^-ms-/,\n\trdashAlpha = /-([a-z])/g;\n\n// Used by camelCase as callback to replace()\nfunction fcamelCase( _all, letter ) {\n\treturn letter.toUpperCase();\n}\n\n// Convert dashed to camelCase; used by the css and data modules\n// Support: IE <=9 - 11, Edge 12 - 15\n// Microsoft forgot to hump their vendor prefix (#9572)\nfunction camelCase( string ) {\n\treturn string.replace( rmsPrefix, \"ms-\" ).replace( rdashAlpha, fcamelCase );\n}\nvar acceptData = function( owner ) {\n\n\t// Accepts only:\n\t// - Node\n\t// - Node.ELEMENT_NODE\n\t// - Node.DOCUMENT_NODE\n\t// - Object\n\t// - Any\n\treturn owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );\n};\n\n\n\n\nfunction Data() {\n\tthis.expando = jQuery.expando + Data.uid++;\n}\n\nData.uid = 1;\n\nData.prototype = {\n\n\tcache: function( owner ) {\n\n\t\t// Check if the owner object already has a cache\n\t\tvar value = owner[ this.expando ];\n\n\t\t// If not, create one\n\t\tif ( !value ) {\n\t\t\tvalue = {};\n\n\t\t\t// We can accept data for non-element nodes in modern browsers,\n\t\t\t// but we should not, see #8335.\n\t\t\t// Always return an empty object.\n\t\t\tif ( acceptData( owner ) ) {\n\n\t\t\t\t// If it is a node unlikely to be stringify-ed or looped over\n\t\t\t\t// use plain assignment\n\t\t\t\tif ( owner.nodeType ) {\n\t\t\t\t\towner[ this.expando ] = value;\n\n\t\t\t\t// Otherwise secure it in a non-enumerable property\n\t\t\t\t// configurable must be true to allow the property to be\n\t\t\t\t// deleted when data is removed\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty( owner, this.expando, {\n\t\t\t\t\t\tvalue: value,\n\t\t\t\t\t\tconfigurable: true\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn value;\n\t},\n\tset: function( owner, data, value ) {\n\t\tvar prop,\n\t\t\tcache = this.cache( owner );\n\n\t\t// Handle: [ owner, key, value ] args\n\t\t// Always use camelCase key (gh-2257)\n\t\tif ( typeof data === \"string\" ) {\n\t\t\tcache[ camelCase( data ) ] = value;\n\n\t\t// Handle: [ owner, { properties } ] args\n\t\t} else {\n\n\t\t\t// Copy the properties one-by-one to the cache object\n\t\t\tfor ( prop in data ) {\n\t\t\t\tcache[ camelCase( prop ) ] = data[ prop ];\n\t\t\t}\n\t\t}\n\t\treturn cache;\n\t},\n\tget: function( owner, key ) {\n\t\treturn key === undefined ?\n\t\t\tthis.cache( owner ) :\n\n\t\t\t// Always use camelCase key (gh-2257)\n\t\t\towner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ];\n\t},\n\taccess: function( owner, key, value ) {\n\n\t\t// In cases where either:\n\t\t//\n\t\t// 1. No key was specified\n\t\t// 2. A string key was specified, but no value provided\n\t\t//\n\t\t// Take the \"read\" path and allow the get method to determine\n\t\t// which value to return, respectively either:\n\t\t//\n\t\t// 1. The entire cache object\n\t\t// 2. The data stored at the key\n\t\t//\n\t\tif ( key === undefined ||\n\t\t\t\t( ( key && typeof key === \"string\" ) && value === undefined ) ) {\n\n\t\t\treturn this.get( owner, key );\n\t\t}\n\n\t\t// When the key is not a string, or both a key and value\n\t\t// are specified, set or extend (existing objects) with either:\n\t\t//\n\t\t// 1. An object of properties\n\t\t// 2. A key and value\n\t\t//\n\t\tthis.set( owner, key, value );\n\n\t\t// Since the \"set\" path can have two possible entry points\n\t\t// return the expected data based on which path was taken[*]\n\t\treturn value !== undefined ? value : key;\n\t},\n\tremove: function( owner, key ) {\n\t\tvar i,\n\t\t\tcache = owner[ this.expando ];\n\n\t\tif ( cache === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( key !== undefined ) {\n\n\t\t\t// Support array or space separated string of keys\n\t\t\tif ( Array.isArray( key ) ) {\n\n\t\t\t\t// If key is an array of keys...\n\t\t\t\t// We always set camelCase keys, so remove that.\n\t\t\t\tkey = key.map( camelCase );\n\t\t\t} else {\n\t\t\t\tkey = camelCase( key );\n\n\t\t\t\t// If a key with the spaces exists, use it.\n\t\t\t\t// Otherwise, create an array by matching non-whitespace\n\t\t\t\tkey = key in cache ?\n\t\t\t\t\t[ key ] :\n\t\t\t\t\t( key.match( rnothtmlwhite ) || [] );\n\t\t\t}\n\n\t\t\ti = key.length;\n\n\t\t\twhile ( i-- ) {\n\t\t\t\tdelete cache[ key[ i ] ];\n\t\t\t}\n\t\t}\n\n\t\t// Remove the expando if there's no more data\n\t\tif ( key === undefined || jQuery.isEmptyObject( cache ) ) {\n\n\t\t\t// Support: Chrome <=35 - 45\n\t\t\t// Webkit & Blink performance suffers when deleting properties\n\t\t\t// from DOM nodes, so set to undefined instead\n\t\t\t// https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted)\n\t\t\tif ( owner.nodeType ) {\n\t\t\t\towner[ this.expando ] = undefined;\n\t\t\t} else {\n\t\t\t\tdelete owner[ this.expando ];\n\t\t\t}\n\t\t}\n\t},\n\thasData: function( owner ) {\n\t\tvar cache = owner[ this.expando ];\n\t\treturn cache !== undefined && !jQuery.isEmptyObject( cache );\n\t}\n};\nvar dataPriv = new Data();\n\nvar dataUser = new Data();\n\n\n\n//\tImplementation Summary\n//\n//\t1. Enforce API surface and semantic compatibility with 1.9.x branch\n//\t2. Improve the module's maintainability by reducing the storage\n//\t\tpaths to a single mechanism.\n//\t3. Use the same single mechanism to support \"private\" and \"user\" data.\n//\t4. _Never_ expose \"private\" data to user code (TODO: Drop _data, _removeData)\n//\t5. Avoid exposing implementation details on user objects (eg. expando properties)\n//\t6. Provide a clear path for implementation upgrade to WeakMap in 2014\n\nvar rbrace = /^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,\n\trmultiDash = /[A-Z]/g;\n\nfunction getData( data ) {\n\tif ( data === \"true\" ) {\n\t\treturn true;\n\t}\n\n\tif ( data === \"false\" ) {\n\t\treturn false;\n\t}\n\n\tif ( data === \"null\" ) {\n\t\treturn null;\n\t}\n\n\t// Only convert to a number if it doesn't change the string\n\tif ( data === +data + \"\" ) {\n\t\treturn +data;\n\t}\n\n\tif ( rbrace.test( data ) ) {\n\t\treturn JSON.parse( data );\n\t}\n\n\treturn data;\n}\n\nfunction dataAttr( elem, key, data ) {\n\tvar name;\n\n\t// If nothing was found internally, try to fetch any\n\t// data from the HTML5 data-* attribute\n\tif ( data === undefined && elem.nodeType === 1 ) {\n\t\tname = \"data-\" + key.replace( rmultiDash, \"-$&\" ).toLowerCase();\n\t\tdata = elem.getAttribute( name );\n\n\t\tif ( typeof data === \"string\" ) {\n\t\t\ttry {\n\t\t\t\tdata = getData( data );\n\t\t\t} catch ( e ) {}\n\n\t\t\t// Make sure we set the data so it isn't changed later\n\t\t\tdataUser.set( elem, key, data );\n\t\t} else {\n\t\t\tdata = undefined;\n\t\t}\n\t}\n\treturn data;\n}\n\njQuery.extend( {\n\thasData: function( elem ) {\n\t\treturn dataUser.hasData( elem ) || dataPriv.hasData( elem );\n\t},\n\n\tdata: function( elem, name, data ) {\n\t\treturn dataUser.access( elem, name, data );\n\t},\n\n\tremoveData: function( elem, name ) {\n\t\tdataUser.remove( elem, name );\n\t},\n\n\t// TODO: Now that all calls to _data and _removeData have been replaced\n\t// with direct calls to dataPriv methods, these can be deprecated.\n\t_data: function( elem, name, data ) {\n\t\treturn dataPriv.access( elem, name, data );\n\t},\n\n\t_removeData: function( elem, name ) {\n\t\tdataPriv.remove( elem, name );\n\t}\n} );\n\njQuery.fn.extend( {\n\tdata: function( key, value ) {\n\t\tvar i, name, data,\n\t\t\telem = this[ 0 ],\n\t\t\tattrs = elem && elem.attributes;\n\n\t\t// Gets all values\n\t\tif ( key === undefined ) {\n\t\t\tif ( this.length ) {\n\t\t\t\tdata = dataUser.get( elem );\n\n\t\t\t\tif ( elem.nodeType === 1 && !dataPriv.get( elem, \"hasDataAttrs\" ) ) {\n\t\t\t\t\ti = attrs.length;\n\t\t\t\t\twhile ( i-- ) {\n\n\t\t\t\t\t\t// Support: IE 11 only\n\t\t\t\t\t\t// The attrs elements can be null (#14894)\n\t\t\t\t\t\tif ( attrs[ i ] ) {\n\t\t\t\t\t\t\tname = attrs[ i ].name;\n\t\t\t\t\t\t\tif ( name.indexOf( \"data-\" ) === 0 ) {\n\t\t\t\t\t\t\t\tname = camelCase( name.slice( 5 ) );\n\t\t\t\t\t\t\t\tdataAttr( elem, name, data[ name ] );\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\tdataPriv.set( elem, \"hasDataAttrs\", true );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn data;\n\t\t}\n\n\t\t// Sets multiple values\n\t\tif ( typeof key === \"object\" ) {\n\t\t\treturn this.each( function() {\n\t\t\t\tdataUser.set( this, key );\n\t\t\t} );\n\t\t}\n\n\t\treturn access( this, function( value ) {\n\t\t\tvar data;\n\n\t\t\t// The calling jQuery object (element matches) is not empty\n\t\t\t// (and therefore has an element appears at this[ 0 ]) and the\n\t\t\t// `value` parameter was not undefined. An empty jQuery object\n\t\t\t// will result in `undefined` for elem = this[ 0 ] which will\n\t\t\t// throw an exception if an attempt to read a data cache is made.\n\t\t\tif ( elem && value === undefined ) {\n\n\t\t\t\t// Attempt to get data from the cache\n\t\t\t\t// The key will always be camelCased in Data\n\t\t\t\tdata = dataUser.get( elem, key );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// Attempt to \"discover\" the data in\n\t\t\t\t// HTML5 custom data-* attrs\n\t\t\t\tdata = dataAttr( elem, key );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// We tried really hard, but the data doesn't exist.\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Set the data...\n\t\t\tthis.each( function() {\n\n\t\t\t\t// We always store the camelCased key\n\t\t\t\tdataUser.set( this, key, value );\n\t\t\t} );\n\t\t}, null, value, arguments.length > 1, null, true );\n\t},\n\n\tremoveData: function( key ) {\n\t\treturn this.each( function() {\n\t\t\tdataUser.remove( this, key );\n\t\t} );\n\t}\n} );\n\n\njQuery.extend( {\n\tqueue: function( elem, type, data ) {\n\t\tvar queue;\n\n\t\tif ( elem ) {\n\t\t\ttype = ( type || \"fx\" ) + \"queue\";\n\t\t\tqueue = dataPriv.get( elem, type );\n\n\t\t\t// Speed up dequeue by getting out quickly if this is just a lookup\n\t\t\tif ( data ) {\n\t\t\t\tif ( !queue || Array.isArray( data ) ) {\n\t\t\t\t\tqueue = dataPriv.access( elem, type, jQuery.makeArray( data ) );\n\t\t\t\t} else {\n\t\t\t\t\tqueue.push( data );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn queue || [];\n\t\t}\n\t},\n\n\tdequeue: function( elem, type ) {\n\t\ttype = type || \"fx\";\n\n\t\tvar queue = jQuery.queue( elem, type ),\n\t\t\tstartLength = queue.length,\n\t\t\tfn = queue.shift(),\n\t\t\thooks = jQuery._queueHooks( elem, type ),\n\t\t\tnext = function() {\n\t\t\t\tjQuery.dequeue( elem, type );\n\t\t\t};\n\n\t\t// If the fx queue is dequeued, always remove the progress sentinel\n\t\tif ( fn === \"inprogress\" ) {\n\t\t\tfn = queue.shift();\n\t\t\tstartLength--;\n\t\t}\n\n\t\tif ( fn ) {\n\n\t\t\t// Add a progress sentinel to prevent the fx queue from being\n\t\t\t// automatically dequeued\n\t\t\tif ( type === \"fx\" ) {\n\t\t\t\tqueue.unshift( \"inprogress\" );\n\t\t\t}\n\n\t\t\t// Clear up the last queue stop function\n\t\t\tdelete hooks.stop;\n\t\t\tfn.call( elem, next, hooks );\n\t\t}\n\n\t\tif ( !startLength && hooks ) {\n\t\t\thooks.empty.fire();\n\t\t}\n\t},\n\n\t// Not public - generate a queueHooks object, or return the current one\n\t_queueHooks: function( elem, type ) {\n\t\tvar key = type + \"queueHooks\";\n\t\treturn dataPriv.get( elem, key ) || dataPriv.access( elem, key, {\n\t\t\tempty: jQuery.Callbacks( \"once memory\" ).add( function() {\n\t\t\t\tdataPriv.remove( elem, [ type + \"queue\", key ] );\n\t\t\t} )\n\t\t} );\n\t}\n} );\n\njQuery.fn.extend( {\n\tqueue: function( type, data ) {\n\t\tvar setter = 2;\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tdata = type;\n\t\t\ttype = \"fx\";\n\t\t\tsetter--;\n\t\t}\n\n\t\tif ( arguments.length < setter ) {\n\t\t\treturn jQuery.queue( this[ 0 ], type );\n\t\t}\n\n\t\treturn data === undefined ?\n\t\t\tthis :\n\t\t\tthis.each( function() {\n\t\t\t\tvar queue = jQuery.queue( this, type, data );\n\n\t\t\t\t// Ensure a hooks for this queue\n\t\t\t\tjQuery._queueHooks( this, type );\n\n\t\t\t\tif ( type === \"fx\" && queue[ 0 ] !== \"inprogress\" ) {\n\t\t\t\t\tjQuery.dequeue( this, type );\n\t\t\t\t}\n\t\t\t} );\n\t},\n\tdequeue: function( type ) {\n\t\treturn this.each( function() {\n\t\t\tjQuery.dequeue( this, type );\n\t\t} );\n\t},\n\tclearQueue: function( type ) {\n\t\treturn this.queue( type || \"fx\", [] );\n\t},\n\n\t// Get a promise resolved when queues of a certain type\n\t// are emptied (fx is the type by default)\n\tpromise: function( type, obj ) {\n\t\tvar tmp,\n\t\t\tcount = 1,\n\t\t\tdefer = jQuery.Deferred(),\n\t\t\telements = this,\n\t\t\ti = this.length,\n\t\t\tresolve = function() {\n\t\t\t\tif ( !( --count ) ) {\n\t\t\t\t\tdefer.resolveWith( elements, [ elements ] );\n\t\t\t\t}\n\t\t\t};\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tobj = type;\n\t\t\ttype = undefined;\n\t\t}\n\t\ttype = type || \"fx\";\n\n\t\twhile ( i-- ) {\n\t\t\ttmp = dataPriv.get( elements[ i ], type + \"queueHooks\" );\n\t\t\tif ( tmp && tmp.empty ) {\n\t\t\t\tcount++;\n\t\t\t\ttmp.empty.add( resolve );\n\t\t\t}\n\t\t}\n\t\tresolve();\n\t\treturn defer.promise( obj );\n\t}\n} );\nvar pnum = ( /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/ ).source;\n\nvar rcssNum = new RegExp( \"^(?:([+-])=|)(\" + pnum + \")([a-z%]*)$\", \"i\" );\n\n\nvar cssExpand = [ \"Top\", \"Right\", \"Bottom\", \"Left\" ];\n\nvar documentElement = document.documentElement;\n\n\n\n\tvar isAttached = function( elem ) {\n\t\t\treturn jQuery.contains( elem.ownerDocument, elem );\n\t\t},\n\t\tcomposed = { composed: true };\n\n\t// Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only\n\t// Check attachment across shadow DOM boundaries when possible (gh-3504)\n\t// Support: iOS 10.0-10.2 only\n\t// Early iOS 10 versions support `attachShadow` but not `getRootNode`,\n\t// leading to errors. We need to check for `getRootNode`.\n\tif ( documentElement.getRootNode ) {\n\t\tisAttached = function( elem ) {\n\t\t\treturn jQuery.contains( elem.ownerDocument, elem ) ||\n\t\t\t\telem.getRootNode( composed ) === elem.ownerDocument;\n\t\t};\n\t}\nvar isHiddenWithinTree = function( elem, el ) {\n\n\t\t// isHiddenWithinTree might be called from jQuery#filter function;\n\t\t// in that case, element will be second argument\n\t\telem = el || elem;\n\n\t\t// Inline style trumps all\n\t\treturn elem.style.display === \"none\" ||\n\t\t\telem.style.display === \"\" &&\n\n\t\t\t// Otherwise, check computed style\n\t\t\t// Support: Firefox <=43 - 45\n\t\t\t// Disconnected elements can have computed display: none, so first confirm that elem is\n\t\t\t// in the document.\n\t\t\tisAttached( elem ) &&\n\n\t\t\tjQuery.css( elem, \"display\" ) === \"none\";\n\t};\n\n\n\nfunction adjustCSS( elem, prop, valueParts, tween ) {\n\tvar adjusted, scale,\n\t\tmaxIterations = 20,\n\t\tcurrentValue = tween ?\n\t\t\tfunction() {\n\t\t\t\treturn tween.cur();\n\t\t\t} :\n\t\t\tfunction() {\n\t\t\t\treturn jQuery.css( elem, prop, \"\" );\n\t\t\t},\n\t\tinitial = currentValue(),\n\t\tunit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" ),\n\n\t\t// Starting value computation is required for potential unit mismatches\n\t\tinitialInUnit = elem.nodeType &&\n\t\t\t( jQuery.cssNumber[ prop ] || unit !== \"px\" && +initial ) &&\n\t\t\trcssNum.exec( jQuery.css( elem, prop ) );\n\n\tif ( initialInUnit && initialInUnit[ 3 ] !== unit ) {\n\n\t\t// Support: Firefox <=54\n\t\t// Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144)\n\t\tinitial = initial / 2;\n\n\t\t// Trust units reported by jQuery.css\n\t\tunit = unit || initialInUnit[ 3 ];\n\n\t\t// Iteratively approximate from a nonzero starting point\n\t\tinitialInUnit = +initial || 1;\n\n\t\twhile ( maxIterations-- ) {\n\n\t\t\t// Evaluate and update our best guess (doubling guesses that zero out).\n\t\t\t// Finish if the scale equals or crosses 1 (making the old*new product non-positive).\n\t\t\tjQuery.style( elem, prop, initialInUnit + unit );\n\t\t\tif ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) {\n\t\t\t\tmaxIterations = 0;\n\t\t\t}\n\t\t\tinitialInUnit = initialInUnit / scale;\n\n\t\t}\n\n\t\tinitialInUnit = initialInUnit * 2;\n\t\tjQuery.style( elem, prop, initialInUnit + unit );\n\n\t\t// Make sure we update the tween properties later on\n\t\tvalueParts = valueParts || [];\n\t}\n\n\tif ( valueParts ) {\n\t\tinitialInUnit = +initialInUnit || +initial || 0;\n\n\t\t// Apply relative offset (+=/-=) if specified\n\t\tadjusted = valueParts[ 1 ] ?\n\t\t\tinitialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :\n\t\t\t+valueParts[ 2 ];\n\t\tif ( tween ) {\n\t\t\ttween.unit = unit;\n\t\t\ttween.start = initialInUnit;\n\t\t\ttween.end = adjusted;\n\t\t}\n\t}\n\treturn adjusted;\n}\n\n\nvar defaultDisplayMap = {};\n\nfunction getDefaultDisplay( elem ) {\n\tvar temp,\n\t\tdoc = elem.ownerDocument,\n\t\tnodeName = elem.nodeName,\n\t\tdisplay = defaultDisplayMap[ nodeName ];\n\n\tif ( display ) {\n\t\treturn display;\n\t}\n\n\ttemp = doc.body.appendChild( doc.createElement( nodeName ) );\n\tdisplay = jQuery.css( temp, \"display\" );\n\n\ttemp.parentNode.removeChild( temp );\n\n\tif ( display === \"none\" ) {\n\t\tdisplay = \"block\";\n\t}\n\tdefaultDisplayMap[ nodeName ] = display;\n\n\treturn display;\n}\n\nfunction showHide( elements, show ) {\n\tvar display, elem,\n\t\tvalues = [],\n\t\tindex = 0,\n\t\tlength = elements.length;\n\n\t// Determine new display value for elements that need to change\n\tfor ( ; index < length; index++ ) {\n\t\telem = elements[ index ];\n\t\tif ( !elem.style ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tdisplay = elem.style.display;\n\t\tif ( show ) {\n\n\t\t\t// Since we force visibility upon cascade-hidden elements, an immediate (and slow)\n\t\t\t// check is required in this first loop unless we have a nonempty display value (either\n\t\t\t// inline or about-to-be-restored)\n\t\t\tif ( display === \"none\" ) {\n\t\t\t\tvalues[ index ] = dataPriv.get( elem, \"display\" ) || null;\n\t\t\t\tif ( !values[ index ] ) {\n\t\t\t\t\telem.style.display = \"\";\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( elem.style.display === \"\" && isHiddenWithinTree( elem ) ) {\n\t\t\t\tvalues[ index ] = getDefaultDisplay( elem );\n\t\t\t}\n\t\t} else {\n\t\t\tif ( display !== \"none\" ) {\n\t\t\t\tvalues[ index ] = \"none\";\n\n\t\t\t\t// Remember what we're overwriting\n\t\t\t\tdataPriv.set( elem, \"display\", display );\n\t\t\t}\n\t\t}\n\t}\n\n\t// Set the display of the elements in a second loop to avoid constant reflow\n\tfor ( index = 0; index < length; index++ ) {\n\t\tif ( values[ index ] != null ) {\n\t\t\telements[ index ].style.display = values[ index ];\n\t\t}\n\t}\n\n\treturn elements;\n}\n\njQuery.fn.extend( {\n\tshow: function() {\n\t\treturn showHide( this, true );\n\t},\n\thide: function() {\n\t\treturn showHide( this );\n\t},\n\ttoggle: function( state ) {\n\t\tif ( typeof state === \"boolean\" ) {\n\t\t\treturn state ? this.show() : this.hide();\n\t\t}\n\n\t\treturn this.each( function() {\n\t\t\tif ( isHiddenWithinTree( this ) ) {\n\t\t\t\tjQuery( this ).show();\n\t\t\t} else {\n\t\t\t\tjQuery( this ).hide();\n\t\t\t}\n\t\t} );\n\t}\n} );\nvar rcheckableType = ( /^(?:checkbox|radio)$/i );\n\nvar rtagName = ( /<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i );\n\nvar rscriptType = ( /^$|^module$|\\/(?:java|ecma)script/i );\n\n\n\n( function() {\n\tvar fragment = document.createDocumentFragment(),\n\t\tdiv = fragment.appendChild( document.createElement( \"div\" ) ),\n\t\tinput = document.createElement( \"input\" );\n\n\t// Support: Android 4.0 - 4.3 only\n\t// Check state lost if the name is set (#11217)\n\t// Support: Windows Web Apps (WWA)\n\t// `name` and `type` must use .setAttribute for WWA (#14901)\n\tinput.setAttribute( \"type\", \"radio\" );\n\tinput.setAttribute( \"checked\", \"checked\" );\n\tinput.setAttribute( \"name\", \"t\" );\n\n\tdiv.appendChild( input );\n\n\t// Support: Android <=4.1 only\n\t// Older WebKit doesn't clone checked state correctly in fragments\n\tsupport.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;\n\n\t// Support: IE <=11 only\n\t// Make sure textarea (and checkbox) defaultValue is properly cloned\n\tdiv.innerHTML = \"\";\n\tsupport.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;\n\n\t// Support: IE <=9 only\n\t// IE <=9 replaces \";\n\tsupport.option = !!div.lastChild;\n} )();\n\n\n// We have to close these tags to support XHTML (#13200)\nvar wrapMap = {\n\n\t// XHTML parsers do not magically insert elements in the\n\t// same way that tag soup parsers do. So we cannot shorten\n\t// this by omitting or other required elements.\n\tthead: [ 1, \"\", \"
\" ],\n\tcol: [ 2, \"\", \"
\" ],\n\ttr: [ 2, \"\", \"
\" ],\n\ttd: [ 3, \"\", \"
\" ],\n\n\t_default: [ 0, \"\", \"\" ]\n};\n\nwrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;\nwrapMap.th = wrapMap.td;\n\n// Support: IE <=9 only\nif ( !support.option ) {\n\twrapMap.optgroup = wrapMap.option = [ 1, \"\" ];\n}\n\n\nfunction getAll( context, tag ) {\n\n\t// Support: IE <=9 - 11 only\n\t// Use typeof to avoid zero-argument method invocation on host objects (#15151)\n\tvar ret;\n\n\tif ( typeof context.getElementsByTagName !== \"undefined\" ) {\n\t\tret = context.getElementsByTagName( tag || \"*\" );\n\n\t} else if ( typeof context.querySelectorAll !== \"undefined\" ) {\n\t\tret = context.querySelectorAll( tag || \"*\" );\n\n\t} else {\n\t\tret = [];\n\t}\n\n\tif ( tag === undefined || tag && nodeName( context, tag ) ) {\n\t\treturn jQuery.merge( [ context ], ret );\n\t}\n\n\treturn ret;\n}\n\n\n// Mark scripts as having already been evaluated\nfunction setGlobalEval( elems, refElements ) {\n\tvar i = 0,\n\t\tl = elems.length;\n\n\tfor ( ; i < l; i++ ) {\n\t\tdataPriv.set(\n\t\t\telems[ i ],\n\t\t\t\"globalEval\",\n\t\t\t!refElements || dataPriv.get( refElements[ i ], \"globalEval\" )\n\t\t);\n\t}\n}\n\n\nvar rhtml = /<|&#?\\w+;/;\n\nfunction buildFragment( elems, context, scripts, selection, ignored ) {\n\tvar elem, tmp, tag, wrap, attached, j,\n\t\tfragment = context.createDocumentFragment(),\n\t\tnodes = [],\n\t\ti = 0,\n\t\tl = elems.length;\n\n\tfor ( ; i < l; i++ ) {\n\t\telem = elems[ i ];\n\n\t\tif ( elem || elem === 0 ) {\n\n\t\t\t// Add nodes directly\n\t\t\tif ( toType( elem ) === \"object\" ) {\n\n\t\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\n\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\tjQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );\n\n\t\t\t// Convert non-html into a text node\n\t\t\t} else if ( !rhtml.test( elem ) ) {\n\t\t\t\tnodes.push( context.createTextNode( elem ) );\n\n\t\t\t// Convert html into DOM nodes\n\t\t\t} else {\n\t\t\t\ttmp = tmp || fragment.appendChild( context.createElement( \"div\" ) );\n\n\t\t\t\t// Deserialize a standard representation\n\t\t\t\ttag = ( rtagName.exec( elem ) || [ \"\", \"\" ] )[ 1 ].toLowerCase();\n\t\t\t\twrap = wrapMap[ tag ] || wrapMap._default;\n\t\t\t\ttmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];\n\n\t\t\t\t// Descend through wrappers to the right content\n\t\t\t\tj = wrap[ 0 ];\n\t\t\t\twhile ( j-- ) {\n\t\t\t\t\ttmp = tmp.lastChild;\n\t\t\t\t}\n\n\t\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\n\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\tjQuery.merge( nodes, tmp.childNodes );\n\n\t\t\t\t// Remember the top-level container\n\t\t\t\ttmp = fragment.firstChild;\n\n\t\t\t\t// Ensure the created nodes are orphaned (#12392)\n\t\t\t\ttmp.textContent = \"\";\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove wrapper from fragment\n\tfragment.textContent = \"\";\n\n\ti = 0;\n\twhile ( ( elem = nodes[ i++ ] ) ) {\n\n\t\t// Skip elements already in the context collection (trac-4087)\n\t\tif ( selection && jQuery.inArray( elem, selection ) > -1 ) {\n\t\t\tif ( ignored ) {\n\t\t\t\tignored.push( elem );\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tattached = isAttached( elem );\n\n\t\t// Append to fragment\n\t\ttmp = getAll( fragment.appendChild( elem ), \"script\" );\n\n\t\t// Preserve script evaluation history\n\t\tif ( attached ) {\n\t\t\tsetGlobalEval( tmp );\n\t\t}\n\n\t\t// Capture executables\n\t\tif ( scripts ) {\n\t\t\tj = 0;\n\t\t\twhile ( ( elem = tmp[ j++ ] ) ) {\n\t\t\t\tif ( rscriptType.test( elem.type || \"\" ) ) {\n\t\t\t\t\tscripts.push( elem );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn fragment;\n}\n\n\nvar rtypenamespace = /^([^.]*)(?:\\.(.+)|)/;\n\nfunction returnTrue() {\n\treturn true;\n}\n\nfunction returnFalse() {\n\treturn false;\n}\n\n// Support: IE <=9 - 11+\n// focus() and blur() are asynchronous, except when they are no-op.\n// So expect focus to be synchronous when the element is already active,\n// and blur to be synchronous when the element is not already active.\n// (focus and blur are always synchronous in other supported browsers,\n// this just defines when we can count on it).\nfunction expectSync( elem, type ) {\n\treturn ( elem === safeActiveElement() ) === ( type === \"focus\" );\n}\n\n// Support: IE <=9 only\n// Accessing document.activeElement can throw unexpectedly\n// https://bugs.jquery.com/ticket/13393\nfunction safeActiveElement() {\n\ttry {\n\t\treturn document.activeElement;\n\t} catch ( err ) { }\n}\n\nfunction on( elem, types, selector, data, fn, one ) {\n\tvar origFn, type;\n\n\t// Types can be a map of types/handlers\n\tif ( typeof types === \"object\" ) {\n\n\t\t// ( types-Object, selector, data )\n\t\tif ( typeof selector !== \"string\" ) {\n\n\t\t\t// ( types-Object, data )\n\t\t\tdata = data || selector;\n\t\t\tselector = undefined;\n\t\t}\n\t\tfor ( type in types ) {\n\t\t\ton( elem, type, selector, data, types[ type ], one );\n\t\t}\n\t\treturn elem;\n\t}\n\n\tif ( data == null && fn == null ) {\n\n\t\t// ( types, fn )\n\t\tfn = selector;\n\t\tdata = selector = undefined;\n\t} else if ( fn == null ) {\n\t\tif ( typeof selector === \"string\" ) {\n\n\t\t\t// ( types, selector, fn )\n\t\t\tfn = data;\n\t\t\tdata = undefined;\n\t\t} else {\n\n\t\t\t// ( types, data, fn )\n\t\t\tfn = data;\n\t\t\tdata = selector;\n\t\t\tselector = undefined;\n\t\t}\n\t}\n\tif ( fn === false ) {\n\t\tfn = returnFalse;\n\t} else if ( !fn ) {\n\t\treturn elem;\n\t}\n\n\tif ( one === 1 ) {\n\t\torigFn = fn;\n\t\tfn = function( event ) {\n\n\t\t\t// Can use an empty set, since event contains the info\n\t\t\tjQuery().off( event );\n\t\t\treturn origFn.apply( this, arguments );\n\t\t};\n\n\t\t// Use same guid so caller can remove using origFn\n\t\tfn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );\n\t}\n\treturn elem.each( function() {\n\t\tjQuery.event.add( this, types, fn, data, selector );\n\t} );\n}\n\n/*\n * Helper functions for managing events -- not part of the public interface.\n * Props to Dean Edwards' addEvent library for many of the ideas.\n */\njQuery.event = {\n\n\tglobal: {},\n\n\tadd: function( elem, types, handler, data, selector ) {\n\n\t\tvar handleObjIn, eventHandle, tmp,\n\t\t\tevents, t, handleObj,\n\t\t\tspecial, handlers, type, namespaces, origType,\n\t\t\telemData = dataPriv.get( elem );\n\n\t\t// Only attach events to objects that accept data\n\t\tif ( !acceptData( elem ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Caller can pass in an object of custom data in lieu of the handler\n\t\tif ( handler.handler ) {\n\t\t\thandleObjIn = handler;\n\t\t\thandler = handleObjIn.handler;\n\t\t\tselector = handleObjIn.selector;\n\t\t}\n\n\t\t// Ensure that invalid selectors throw exceptions at attach time\n\t\t// Evaluate against documentElement in case elem is a non-element node (e.g., document)\n\t\tif ( selector ) {\n\t\t\tjQuery.find.matchesSelector( documentElement, selector );\n\t\t}\n\n\t\t// Make sure that the handler has a unique ID, used to find/remove it later\n\t\tif ( !handler.guid ) {\n\t\t\thandler.guid = jQuery.guid++;\n\t\t}\n\n\t\t// Init the element's event structure and main handler, if this is the first\n\t\tif ( !( events = elemData.events ) ) {\n\t\t\tevents = elemData.events = Object.create( null );\n\t\t}\n\t\tif ( !( eventHandle = elemData.handle ) ) {\n\t\t\teventHandle = elemData.handle = function( e ) {\n\n\t\t\t\t// Discard the second event of a jQuery.event.trigger() and\n\t\t\t\t// when an event is called after a page has unloaded\n\t\t\t\treturn typeof jQuery !== \"undefined\" && jQuery.event.triggered !== e.type ?\n\t\t\t\t\tjQuery.event.dispatch.apply( elem, arguments ) : undefined;\n\t\t\t};\n\t\t}\n\n\t\t// Handle multiple events separated by a space\n\t\ttypes = ( types || \"\" ).match( rnothtmlwhite ) || [ \"\" ];\n\t\tt = types.length;\n\t\twhile ( t-- ) {\n\t\t\ttmp = rtypenamespace.exec( types[ t ] ) || [];\n\t\t\ttype = origType = tmp[ 1 ];\n\t\t\tnamespaces = ( tmp[ 2 ] || \"\" ).split( \".\" ).sort();\n\n\t\t\t// There *must* be a type, no attaching namespace-only handlers\n\t\t\tif ( !type ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If event changes its type, use the special event handlers for the changed type\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\n\t\t\t// If selector defined, determine special event api type, otherwise given type\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\n\n\t\t\t// Update special based on newly reset type\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\n\t\t\t// handleObj is passed to all event handlers\n\t\t\thandleObj = jQuery.extend( {\n\t\t\t\ttype: type,\n\t\t\t\torigType: origType,\n\t\t\t\tdata: data,\n\t\t\t\thandler: handler,\n\t\t\t\tguid: handler.guid,\n\t\t\t\tselector: selector,\n\t\t\t\tneedsContext: selector && jQuery.expr.match.needsContext.test( selector ),\n\t\t\t\tnamespace: namespaces.join( \".\" )\n\t\t\t}, handleObjIn );\n\n\t\t\t// Init the event handler queue if we're the first\n\t\t\tif ( !( handlers = events[ type ] ) ) {\n\t\t\t\thandlers = events[ type ] = [];\n\t\t\t\thandlers.delegateCount = 0;\n\n\t\t\t\t// Only use addEventListener if the special events handler returns false\n\t\t\t\tif ( !special.setup ||\n\t\t\t\t\tspecial.setup.call( elem, data, namespaces, eventHandle ) === false ) {\n\n\t\t\t\t\tif ( elem.addEventListener ) {\n\t\t\t\t\t\telem.addEventListener( type, eventHandle );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( special.add ) {\n\t\t\t\tspecial.add.call( elem, handleObj );\n\n\t\t\t\tif ( !handleObj.handler.guid ) {\n\t\t\t\t\thandleObj.handler.guid = handler.guid;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add to the element's handler list, delegates in front\n\t\t\tif ( selector ) {\n\t\t\t\thandlers.splice( handlers.delegateCount++, 0, handleObj );\n\t\t\t} else {\n\t\t\t\thandlers.push( handleObj );\n\t\t\t}\n\n\t\t\t// Keep track of which events have ever been used, for event optimization\n\t\t\tjQuery.event.global[ type ] = true;\n\t\t}\n\n\t},\n\n\t// Detach an event or set of events from an element\n\tremove: function( elem, types, handler, selector, mappedTypes ) {\n\n\t\tvar j, origCount, tmp,\n\t\t\tevents, t, handleObj,\n\t\t\tspecial, handlers, type, namespaces, origType,\n\t\t\telemData = dataPriv.hasData( elem ) && dataPriv.get( elem );\n\n\t\tif ( !elemData || !( events = elemData.events ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Once for each type.namespace in types; type may be omitted\n\t\ttypes = ( types || \"\" ).match( rnothtmlwhite ) || [ \"\" ];\n\t\tt = types.length;\n\t\twhile ( t-- ) {\n\t\t\ttmp = rtypenamespace.exec( types[ t ] ) || [];\n\t\t\ttype = origType = tmp[ 1 ];\n\t\t\tnamespaces = ( tmp[ 2 ] || \"\" ).split( \".\" ).sort();\n\n\t\t\t// Unbind all events (on this namespace, if provided) for the element\n\t\t\tif ( !type ) {\n\t\t\t\tfor ( type in events ) {\n\t\t\t\t\tjQuery.event.remove( elem, type + types[ t ], handler, selector, true );\n\t\t\t\t}\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\n\t\t\thandlers = events[ type ] || [];\n\t\t\ttmp = tmp[ 2 ] &&\n\t\t\t\tnew RegExp( \"(^|\\\\.)\" + namespaces.join( \"\\\\.(?:.*\\\\.|)\" ) + \"(\\\\.|$)\" );\n\n\t\t\t// Remove matching events\n\t\t\torigCount = j = handlers.length;\n\t\t\twhile ( j-- ) {\n\t\t\t\thandleObj = handlers[ j ];\n\n\t\t\t\tif ( ( mappedTypes || origType === handleObj.origType ) &&\n\t\t\t\t\t( !handler || handler.guid === handleObj.guid ) &&\n\t\t\t\t\t( !tmp || tmp.test( handleObj.namespace ) ) &&\n\t\t\t\t\t( !selector || selector === handleObj.selector ||\n\t\t\t\t\t\tselector === \"**\" && handleObj.selector ) ) {\n\t\t\t\t\thandlers.splice( j, 1 );\n\n\t\t\t\t\tif ( handleObj.selector ) {\n\t\t\t\t\t\thandlers.delegateCount--;\n\t\t\t\t\t}\n\t\t\t\t\tif ( special.remove ) {\n\t\t\t\t\t\tspecial.remove.call( elem, handleObj );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Remove generic event handler if we removed something and no more handlers exist\n\t\t\t// (avoids potential for endless recursion during removal of special event handlers)\n\t\t\tif ( origCount && !handlers.length ) {\n\t\t\t\tif ( !special.teardown ||\n\t\t\t\t\tspecial.teardown.call( elem, namespaces, elemData.handle ) === false ) {\n\n\t\t\t\t\tjQuery.removeEvent( elem, type, elemData.handle );\n\t\t\t\t}\n\n\t\t\t\tdelete events[ type ];\n\t\t\t}\n\t\t}\n\n\t\t// Remove data and the expando if it's no longer used\n\t\tif ( jQuery.isEmptyObject( events ) ) {\n\t\t\tdataPriv.remove( elem, \"handle events\" );\n\t\t}\n\t},\n\n\tdispatch: function( nativeEvent ) {\n\n\t\tvar i, j, ret, matched, handleObj, handlerQueue,\n\t\t\targs = new Array( arguments.length ),\n\n\t\t\t// Make a writable jQuery.Event from the native event object\n\t\t\tevent = jQuery.event.fix( nativeEvent ),\n\n\t\t\thandlers = (\n\t\t\t\tdataPriv.get( this, \"events\" ) || Object.create( null )\n\t\t\t)[ event.type ] || [],\n\t\t\tspecial = jQuery.event.special[ event.type ] || {};\n\n\t\t// Use the fix-ed jQuery.Event rather than the (read-only) native event\n\t\targs[ 0 ] = event;\n\n\t\tfor ( i = 1; i < arguments.length; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tevent.delegateTarget = this;\n\n\t\t// Call the preDispatch hook for the mapped type, and let it bail if desired\n\t\tif ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Determine handlers\n\t\thandlerQueue = jQuery.event.handlers.call( this, event, handlers );\n\n\t\t// Run delegates first; they may want to stop propagation beneath us\n\t\ti = 0;\n\t\twhile ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {\n\t\t\tevent.currentTarget = matched.elem;\n\n\t\t\tj = 0;\n\t\t\twhile ( ( handleObj = matched.handlers[ j++ ] ) &&\n\t\t\t\t!event.isImmediatePropagationStopped() ) {\n\n\t\t\t\t// If the event is namespaced, then each handler is only invoked if it is\n\t\t\t\t// specially universal or its namespaces are a superset of the event's.\n\t\t\t\tif ( !event.rnamespace || handleObj.namespace === false ||\n\t\t\t\t\tevent.rnamespace.test( handleObj.namespace ) ) {\n\n\t\t\t\t\tevent.handleObj = handleObj;\n\t\t\t\t\tevent.data = handleObj.data;\n\n\t\t\t\t\tret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||\n\t\t\t\t\t\thandleObj.handler ).apply( matched.elem, args );\n\n\t\t\t\t\tif ( ret !== undefined ) {\n\t\t\t\t\t\tif ( ( event.result = ret ) === false ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Call the postDispatch hook for the mapped type\n\t\tif ( special.postDispatch ) {\n\t\t\tspecial.postDispatch.call( this, event );\n\t\t}\n\n\t\treturn event.result;\n\t},\n\n\thandlers: function( event, handlers ) {\n\t\tvar i, handleObj, sel, matchedHandlers, matchedSelectors,\n\t\t\thandlerQueue = [],\n\t\t\tdelegateCount = handlers.delegateCount,\n\t\t\tcur = event.target;\n\n\t\t// Find delegate handlers\n\t\tif ( delegateCount &&\n\n\t\t\t// Support: IE <=9\n\t\t\t// Black-hole SVG instance trees (trac-13180)\n\t\t\tcur.nodeType &&\n\n\t\t\t// Support: Firefox <=42\n\t\t\t// Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861)\n\t\t\t// https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click\n\t\t\t// Support: IE 11 only\n\t\t\t// ...but not arrow key \"clicks\" of radio inputs, which can have `button` -1 (gh-2343)\n\t\t\t!( event.type === \"click\" && event.button >= 1 ) ) {\n\n\t\t\tfor ( ; cur !== this; cur = cur.parentNode || this ) {\n\n\t\t\t\t// Don't check non-elements (#13208)\n\t\t\t\t// Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)\n\t\t\t\tif ( cur.nodeType === 1 && !( event.type === \"click\" && cur.disabled === true ) ) {\n\t\t\t\t\tmatchedHandlers = [];\n\t\t\t\t\tmatchedSelectors = {};\n\t\t\t\t\tfor ( i = 0; i < delegateCount; i++ ) {\n\t\t\t\t\t\thandleObj = handlers[ i ];\n\n\t\t\t\t\t\t// Don't conflict with Object.prototype properties (#13203)\n\t\t\t\t\t\tsel = handleObj.selector + \" \";\n\n\t\t\t\t\t\tif ( matchedSelectors[ sel ] === undefined ) {\n\t\t\t\t\t\t\tmatchedSelectors[ sel ] = handleObj.needsContext ?\n\t\t\t\t\t\t\t\tjQuery( sel, this ).index( cur ) > -1 :\n\t\t\t\t\t\t\t\tjQuery.find( sel, this, null, [ cur ] ).length;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( matchedSelectors[ sel ] ) {\n\t\t\t\t\t\t\tmatchedHandlers.push( handleObj );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( matchedHandlers.length ) {\n\t\t\t\t\t\thandlerQueue.push( { elem: cur, handlers: matchedHandlers } );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Add the remaining (directly-bound) handlers\n\t\tcur = this;\n\t\tif ( delegateCount < handlers.length ) {\n\t\t\thandlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } );\n\t\t}\n\n\t\treturn handlerQueue;\n\t},\n\n\taddProp: function( name, hook ) {\n\t\tObject.defineProperty( jQuery.Event.prototype, name, {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\n\t\t\tget: isFunction( hook ) ?\n\t\t\t\tfunction() {\n\t\t\t\t\tif ( this.originalEvent ) {\n\t\t\t\t\t\treturn hook( this.originalEvent );\n\t\t\t\t\t}\n\t\t\t\t} :\n\t\t\t\tfunction() {\n\t\t\t\t\tif ( this.originalEvent ) {\n\t\t\t\t\t\treturn this.originalEvent[ name ];\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\tset: function( value ) {\n\t\t\t\tObject.defineProperty( this, name, {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true,\n\t\t\t\t\twritable: true,\n\t\t\t\t\tvalue: value\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t},\n\n\tfix: function( originalEvent ) {\n\t\treturn originalEvent[ jQuery.expando ] ?\n\t\t\toriginalEvent :\n\t\t\tnew jQuery.Event( originalEvent );\n\t},\n\n\tspecial: {\n\t\tload: {\n\n\t\t\t// Prevent triggered image.load events from bubbling to window.load\n\t\t\tnoBubble: true\n\t\t},\n\t\tclick: {\n\n\t\t\t// Utilize native event to ensure correct state for checkable inputs\n\t\t\tsetup: function( data ) {\n\n\t\t\t\t// For mutual compressibility with _default, replace `this` access with a local var.\n\t\t\t\t// `|| data` is dead code meant only to preserve the variable through minification.\n\t\t\t\tvar el = this || data;\n\n\t\t\t\t// Claim the first handler\n\t\t\t\tif ( rcheckableType.test( el.type ) &&\n\t\t\t\t\tel.click && nodeName( el, \"input\" ) ) {\n\n\t\t\t\t\t// dataPriv.set( el, \"click\", ... )\n\t\t\t\t\tleverageNative( el, \"click\", returnTrue );\n\t\t\t\t}\n\n\t\t\t\t// Return false to allow normal processing in the caller\n\t\t\t\treturn false;\n\t\t\t},\n\t\t\ttrigger: function( data ) {\n\n\t\t\t\t// For mutual compressibility with _default, replace `this` access with a local var.\n\t\t\t\t// `|| data` is dead code meant only to preserve the variable through minification.\n\t\t\t\tvar el = this || data;\n\n\t\t\t\t// Force setup before triggering a click\n\t\t\t\tif ( rcheckableType.test( el.type ) &&\n\t\t\t\t\tel.click && nodeName( el, \"input\" ) ) {\n\n\t\t\t\t\tleverageNative( el, \"click\" );\n\t\t\t\t}\n\n\t\t\t\t// Return non-false to allow normal event-path propagation\n\t\t\t\treturn true;\n\t\t\t},\n\n\t\t\t// For cross-browser consistency, suppress native .click() on links\n\t\t\t// Also prevent it if we're currently inside a leveraged native-event stack\n\t\t\t_default: function( event ) {\n\t\t\t\tvar target = event.target;\n\t\t\t\treturn rcheckableType.test( target.type ) &&\n\t\t\t\t\ttarget.click && nodeName( target, \"input\" ) &&\n\t\t\t\t\tdataPriv.get( target, \"click\" ) ||\n\t\t\t\t\tnodeName( target, \"a\" );\n\t\t\t}\n\t\t},\n\n\t\tbeforeunload: {\n\t\t\tpostDispatch: function( event ) {\n\n\t\t\t\t// Support: Firefox 20+\n\t\t\t\t// Firefox doesn't alert if the returnValue field is not set.\n\t\t\t\tif ( event.result !== undefined && event.originalEvent ) {\n\t\t\t\t\tevent.originalEvent.returnValue = event.result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\n// Ensure the presence of an event listener that handles manually-triggered\n// synthetic events by interrupting progress until reinvoked in response to\n// *native* events that it fires directly, ensuring that state changes have\n// already occurred before other listeners are invoked.\nfunction leverageNative( el, type, expectSync ) {\n\n\t// Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add\n\tif ( !expectSync ) {\n\t\tif ( dataPriv.get( el, type ) === undefined ) {\n\t\t\tjQuery.event.add( el, type, returnTrue );\n\t\t}\n\t\treturn;\n\t}\n\n\t// Register the controller as a special universal handler for all event namespaces\n\tdataPriv.set( el, type, false );\n\tjQuery.event.add( el, type, {\n\t\tnamespace: false,\n\t\thandler: function( event ) {\n\t\t\tvar notAsync, result,\n\t\t\t\tsaved = dataPriv.get( this, type );\n\n\t\t\tif ( ( event.isTrigger & 1 ) && this[ type ] ) {\n\n\t\t\t\t// Interrupt processing of the outer synthetic .trigger()ed event\n\t\t\t\t// Saved data should be false in such cases, but might be a leftover capture object\n\t\t\t\t// from an async native handler (gh-4350)\n\t\t\t\tif ( !saved.length ) {\n\n\t\t\t\t\t// Store arguments for use when handling the inner native event\n\t\t\t\t\t// There will always be at least one argument (an event object), so this array\n\t\t\t\t\t// will not be confused with a leftover capture object.\n\t\t\t\t\tsaved = slice.call( arguments );\n\t\t\t\t\tdataPriv.set( this, type, saved );\n\n\t\t\t\t\t// Trigger the native event and capture its result\n\t\t\t\t\t// Support: IE <=9 - 11+\n\t\t\t\t\t// focus() and blur() are asynchronous\n\t\t\t\t\tnotAsync = expectSync( this, type );\n\t\t\t\t\tthis[ type ]();\n\t\t\t\t\tresult = dataPriv.get( this, type );\n\t\t\t\t\tif ( saved !== result || notAsync ) {\n\t\t\t\t\t\tdataPriv.set( this, type, false );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = {};\n\t\t\t\t\t}\n\t\t\t\t\tif ( saved !== result ) {\n\n\t\t\t\t\t\t// Cancel the outer synthetic event\n\t\t\t\t\t\tevent.stopImmediatePropagation();\n\t\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t\t// Support: Chrome 86+\n\t\t\t\t\t\t// In Chrome, if an element having a focusout handler is blurred by\n\t\t\t\t\t\t// clicking outside of it, it invokes the handler synchronously. If\n\t\t\t\t\t\t// that handler calls `.remove()` on the element, the data is cleared,\n\t\t\t\t\t\t// leaving `result` undefined. We need to guard against this.\n\t\t\t\t\t\treturn result && result.value;\n\t\t\t\t\t}\n\n\t\t\t\t// If this is an inner synthetic event for an event with a bubbling surrogate\n\t\t\t\t// (focus or blur), assume that the surrogate already propagated from triggering the\n\t\t\t\t// native event and prevent that from happening again here.\n\t\t\t\t// This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the\n\t\t\t\t// bubbling surrogate propagates *after* the non-bubbling base), but that seems\n\t\t\t\t// less bad than duplication.\n\t\t\t\t} else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) {\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t}\n\n\t\t\t// If this is a native event triggered above, everything is now in order\n\t\t\t// Fire an inner synthetic event with the original arguments\n\t\t\t} else if ( saved.length ) {\n\n\t\t\t\t// ...and capture the result\n\t\t\t\tdataPriv.set( this, type, {\n\t\t\t\t\tvalue: jQuery.event.trigger(\n\n\t\t\t\t\t\t// Support: IE <=9 - 11+\n\t\t\t\t\t\t// Extend with the prototype to reset the above stopImmediatePropagation()\n\t\t\t\t\t\tjQuery.extend( saved[ 0 ], jQuery.Event.prototype ),\n\t\t\t\t\t\tsaved.slice( 1 ),\n\t\t\t\t\t\tthis\n\t\t\t\t\t)\n\t\t\t\t} );\n\n\t\t\t\t// Abort handling of the native event\n\t\t\t\tevent.stopImmediatePropagation();\n\t\t\t}\n\t\t}\n\t} );\n}\n\njQuery.removeEvent = function( elem, type, handle ) {\n\n\t// This \"if\" is needed for plain objects\n\tif ( elem.removeEventListener ) {\n\t\telem.removeEventListener( type, handle );\n\t}\n};\n\njQuery.Event = function( src, props ) {\n\n\t// Allow instantiation without the 'new' keyword\n\tif ( !( this instanceof jQuery.Event ) ) {\n\t\treturn new jQuery.Event( src, props );\n\t}\n\n\t// Event object\n\tif ( src && src.type ) {\n\t\tthis.originalEvent = src;\n\t\tthis.type = src.type;\n\n\t\t// Events bubbling up the document may have been marked as prevented\n\t\t// by a handler lower down the tree; reflect the correct value.\n\t\tthis.isDefaultPrevented = src.defaultPrevented ||\n\t\t\t\tsrc.defaultPrevented === undefined &&\n\n\t\t\t\t// Support: Android <=2.3 only\n\t\t\t\tsrc.returnValue === false ?\n\t\t\treturnTrue :\n\t\t\treturnFalse;\n\n\t\t// Create target properties\n\t\t// Support: Safari <=6 - 7 only\n\t\t// Target should not be a text node (#504, #13143)\n\t\tthis.target = ( src.target && src.target.nodeType === 3 ) ?\n\t\t\tsrc.target.parentNode :\n\t\t\tsrc.target;\n\n\t\tthis.currentTarget = src.currentTarget;\n\t\tthis.relatedTarget = src.relatedTarget;\n\n\t// Event type\n\t} else {\n\t\tthis.type = src;\n\t}\n\n\t// Put explicitly provided properties onto the event object\n\tif ( props ) {\n\t\tjQuery.extend( this, props );\n\t}\n\n\t// Create a timestamp if incoming event doesn't have one\n\tthis.timeStamp = src && src.timeStamp || Date.now();\n\n\t// Mark it as fixed\n\tthis[ jQuery.expando ] = true;\n};\n\n// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding\n// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html\njQuery.Event.prototype = {\n\tconstructor: jQuery.Event,\n\tisDefaultPrevented: returnFalse,\n\tisPropagationStopped: returnFalse,\n\tisImmediatePropagationStopped: returnFalse,\n\tisSimulated: false,\n\n\tpreventDefault: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isDefaultPrevented = returnTrue;\n\n\t\tif ( e && !this.isSimulated ) {\n\t\t\te.preventDefault();\n\t\t}\n\t},\n\tstopPropagation: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isPropagationStopped = returnTrue;\n\n\t\tif ( e && !this.isSimulated ) {\n\t\t\te.stopPropagation();\n\t\t}\n\t},\n\tstopImmediatePropagation: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isImmediatePropagationStopped = returnTrue;\n\n\t\tif ( e && !this.isSimulated ) {\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.stopPropagation();\n\t}\n};\n\n// Includes all common event props including KeyEvent and MouseEvent specific props\njQuery.each( {\n\taltKey: true,\n\tbubbles: true,\n\tcancelable: true,\n\tchangedTouches: true,\n\tctrlKey: true,\n\tdetail: true,\n\teventPhase: true,\n\tmetaKey: true,\n\tpageX: true,\n\tpageY: true,\n\tshiftKey: true,\n\tview: true,\n\t\"char\": true,\n\tcode: true,\n\tcharCode: true,\n\tkey: true,\n\tkeyCode: true,\n\tbutton: true,\n\tbuttons: true,\n\tclientX: true,\n\tclientY: true,\n\toffsetX: true,\n\toffsetY: true,\n\tpointerId: true,\n\tpointerType: true,\n\tscreenX: true,\n\tscreenY: true,\n\ttargetTouches: true,\n\ttoElement: true,\n\ttouches: true,\n\twhich: true\n}, jQuery.event.addProp );\n\njQuery.each( { focus: \"focusin\", blur: \"focusout\" }, function( type, delegateType ) {\n\tjQuery.event.special[ type ] = {\n\n\t\t// Utilize native event if possible so blur/focus sequence is correct\n\t\tsetup: function() {\n\n\t\t\t// Claim the first handler\n\t\t\t// dataPriv.set( this, \"focus\", ... )\n\t\t\t// dataPriv.set( this, \"blur\", ... )\n\t\t\tleverageNative( this, type, expectSync );\n\n\t\t\t// Return false to allow normal processing in the caller\n\t\t\treturn false;\n\t\t},\n\t\ttrigger: function() {\n\n\t\t\t// Force setup before trigger\n\t\t\tleverageNative( this, type );\n\n\t\t\t// Return non-false to allow normal event-path propagation\n\t\t\treturn true;\n\t\t},\n\n\t\t// Suppress native focus or blur as it's already being fired\n\t\t// in leverageNative.\n\t\t_default: function() {\n\t\t\treturn true;\n\t\t},\n\n\t\tdelegateType: delegateType\n\t};\n} );\n\n// Create mouseenter/leave events using mouseover/out and event-time checks\n// so that event delegation works in jQuery.\n// Do the same for pointerenter/pointerleave and pointerover/pointerout\n//\n// Support: Safari 7 only\n// Safari sends mouseenter too often; see:\n// https://bugs.chromium.org/p/chromium/issues/detail?id=470258\n// for the description of the bug (it existed in older Chrome versions as well).\njQuery.each( {\n\tmouseenter: \"mouseover\",\n\tmouseleave: \"mouseout\",\n\tpointerenter: \"pointerover\",\n\tpointerleave: \"pointerout\"\n}, function( orig, fix ) {\n\tjQuery.event.special[ orig ] = {\n\t\tdelegateType: fix,\n\t\tbindType: fix,\n\n\t\thandle: function( event ) {\n\t\t\tvar ret,\n\t\t\t\ttarget = this,\n\t\t\t\trelated = event.relatedTarget,\n\t\t\t\thandleObj = event.handleObj;\n\n\t\t\t// For mouseenter/leave call the handler if related is outside the target.\n\t\t\t// NB: No relatedTarget if the mouse left/entered the browser window\n\t\t\tif ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {\n\t\t\t\tevent.type = handleObj.origType;\n\t\t\t\tret = handleObj.handler.apply( this, arguments );\n\t\t\t\tevent.type = fix;\n\t\t\t}\n\t\t\treturn ret;\n\t\t}\n\t};\n} );\n\njQuery.fn.extend( {\n\n\ton: function( types, selector, data, fn ) {\n\t\treturn on( this, types, selector, data, fn );\n\t},\n\tone: function( types, selector, data, fn ) {\n\t\treturn on( this, types, selector, data, fn, 1 );\n\t},\n\toff: function( types, selector, fn ) {\n\t\tvar handleObj, type;\n\t\tif ( types && types.preventDefault && types.handleObj ) {\n\n\t\t\t// ( event ) dispatched jQuery.Event\n\t\t\thandleObj = types.handleObj;\n\t\t\tjQuery( types.delegateTarget ).off(\n\t\t\t\thandleObj.namespace ?\n\t\t\t\t\thandleObj.origType + \".\" + handleObj.namespace :\n\t\t\t\t\thandleObj.origType,\n\t\t\t\thandleObj.selector,\n\t\t\t\thandleObj.handler\n\t\t\t);\n\t\t\treturn this;\n\t\t}\n\t\tif ( typeof types === \"object\" ) {\n\n\t\t\t// ( types-object [, selector] )\n\t\t\tfor ( type in types ) {\n\t\t\t\tthis.off( type, selector, types[ type ] );\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\t\tif ( selector === false || typeof selector === \"function\" ) {\n\n\t\t\t// ( types [, fn] )\n\t\t\tfn = selector;\n\t\t\tselector = undefined;\n\t\t}\n\t\tif ( fn === false ) {\n\t\t\tfn = returnFalse;\n\t\t}\n\t\treturn this.each( function() {\n\t\t\tjQuery.event.remove( this, types, fn, selector );\n\t\t} );\n\t}\n} );\n\n\nvar\n\n\t// Support: IE <=10 - 11, Edge 12 - 13 only\n\t// In IE/Edge using regex groups here causes severe slowdowns.\n\t// See https://connect.microsoft.com/IE/feedback/details/1736512/\n\trnoInnerhtml = /\\s*$/g;\n\n// Prefer a tbody over its parent table for containing new rows\nfunction manipulationTarget( elem, content ) {\n\tif ( nodeName( elem, \"table\" ) &&\n\t\tnodeName( content.nodeType !== 11 ? content : content.firstChild, \"tr\" ) ) {\n\n\t\treturn jQuery( elem ).children( \"tbody\" )[ 0 ] || elem;\n\t}\n\n\treturn elem;\n}\n\n// Replace/restore the type attribute of script elements for safe DOM manipulation\nfunction disableScript( elem ) {\n\telem.type = ( elem.getAttribute( \"type\" ) !== null ) + \"/\" + elem.type;\n\treturn elem;\n}\nfunction restoreScript( elem ) {\n\tif ( ( elem.type || \"\" ).slice( 0, 5 ) === \"true/\" ) {\n\t\telem.type = elem.type.slice( 5 );\n\t} else {\n\t\telem.removeAttribute( \"type\" );\n\t}\n\n\treturn elem;\n}\n\nfunction cloneCopyEvent( src, dest ) {\n\tvar i, l, type, pdataOld, udataOld, udataCur, events;\n\n\tif ( dest.nodeType !== 1 ) {\n\t\treturn;\n\t}\n\n\t// 1. Copy private data: events, handlers, etc.\n\tif ( dataPriv.hasData( src ) ) {\n\t\tpdataOld = dataPriv.get( src );\n\t\tevents = pdataOld.events;\n\n\t\tif ( events ) {\n\t\t\tdataPriv.remove( dest, \"handle events\" );\n\n\t\t\tfor ( type in events ) {\n\t\t\t\tfor ( i = 0, l = events[ type ].length; i < l; i++ ) {\n\t\t\t\t\tjQuery.event.add( dest, type, events[ type ][ i ] );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// 2. Copy user data\n\tif ( dataUser.hasData( src ) ) {\n\t\tudataOld = dataUser.access( src );\n\t\tudataCur = jQuery.extend( {}, udataOld );\n\n\t\tdataUser.set( dest, udataCur );\n\t}\n}\n\n// Fix IE bugs, see support tests\nfunction fixInput( src, dest ) {\n\tvar nodeName = dest.nodeName.toLowerCase();\n\n\t// Fails to persist the checked state of a cloned checkbox or radio button.\n\tif ( nodeName === \"input\" && rcheckableType.test( src.type ) ) {\n\t\tdest.checked = src.checked;\n\n\t// Fails to return the selected option to the default selected state when cloning options\n\t} else if ( nodeName === \"input\" || nodeName === \"textarea\" ) {\n\t\tdest.defaultValue = src.defaultValue;\n\t}\n}\n\nfunction domManip( collection, args, callback, ignored ) {\n\n\t// Flatten any nested arrays\n\targs = flat( args );\n\n\tvar fragment, first, scripts, hasScripts, node, doc,\n\t\ti = 0,\n\t\tl = collection.length,\n\t\tiNoClone = l - 1,\n\t\tvalue = args[ 0 ],\n\t\tvalueIsFunction = isFunction( value );\n\n\t// We can't cloneNode fragments that contain checked, in WebKit\n\tif ( valueIsFunction ||\n\t\t\t( l > 1 && typeof value === \"string\" &&\n\t\t\t\t!support.checkClone && rchecked.test( value ) ) ) {\n\t\treturn collection.each( function( index ) {\n\t\t\tvar self = collection.eq( index );\n\t\t\tif ( valueIsFunction ) {\n\t\t\t\targs[ 0 ] = value.call( this, index, self.html() );\n\t\t\t}\n\t\t\tdomManip( self, args, callback, ignored );\n\t\t} );\n\t}\n\n\tif ( l ) {\n\t\tfragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored );\n\t\tfirst = fragment.firstChild;\n\n\t\tif ( fragment.childNodes.length === 1 ) {\n\t\t\tfragment = first;\n\t\t}\n\n\t\t// Require either new content or an interest in ignored elements to invoke the callback\n\t\tif ( first || ignored ) {\n\t\t\tscripts = jQuery.map( getAll( fragment, \"script\" ), disableScript );\n\t\t\thasScripts = scripts.length;\n\n\t\t\t// Use the original fragment for the last item\n\t\t\t// instead of the first because it can end up\n\t\t\t// being emptied incorrectly in certain situations (#8070).\n\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\tnode = fragment;\n\n\t\t\t\tif ( i !== iNoClone ) {\n\t\t\t\t\tnode = jQuery.clone( node, true, true );\n\n\t\t\t\t\t// Keep references to cloned scripts for later restoration\n\t\t\t\t\tif ( hasScripts ) {\n\n\t\t\t\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\n\t\t\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\t\t\tjQuery.merge( scripts, getAll( node, \"script\" ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tcallback.call( collection[ i ], node, i );\n\t\t\t}\n\n\t\t\tif ( hasScripts ) {\n\t\t\t\tdoc = scripts[ scripts.length - 1 ].ownerDocument;\n\n\t\t\t\t// Reenable scripts\n\t\t\t\tjQuery.map( scripts, restoreScript );\n\n\t\t\t\t// Evaluate executable scripts on first document insertion\n\t\t\t\tfor ( i = 0; i < hasScripts; i++ ) {\n\t\t\t\t\tnode = scripts[ i ];\n\t\t\t\t\tif ( rscriptType.test( node.type || \"\" ) &&\n\t\t\t\t\t\t!dataPriv.access( node, \"globalEval\" ) &&\n\t\t\t\t\t\tjQuery.contains( doc, node ) ) {\n\n\t\t\t\t\t\tif ( node.src && ( node.type || \"\" ).toLowerCase() !== \"module\" ) {\n\n\t\t\t\t\t\t\t// Optional AJAX dependency, but won't run scripts if not present\n\t\t\t\t\t\t\tif ( jQuery._evalUrl && !node.noModule ) {\n\t\t\t\t\t\t\t\tjQuery._evalUrl( node.src, {\n\t\t\t\t\t\t\t\t\tnonce: node.nonce || node.getAttribute( \"nonce\" )\n\t\t\t\t\t\t\t\t}, doc );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tDOMEval( node.textContent.replace( rcleanScript, \"\" ), node, doc );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn collection;\n}\n\nfunction remove( elem, selector, keepData ) {\n\tvar node,\n\t\tnodes = selector ? jQuery.filter( selector, elem ) : elem,\n\t\ti = 0;\n\n\tfor ( ; ( node = nodes[ i ] ) != null; i++ ) {\n\t\tif ( !keepData && node.nodeType === 1 ) {\n\t\t\tjQuery.cleanData( getAll( node ) );\n\t\t}\n\n\t\tif ( node.parentNode ) {\n\t\t\tif ( keepData && isAttached( node ) ) {\n\t\t\t\tsetGlobalEval( getAll( node, \"script\" ) );\n\t\t\t}\n\t\t\tnode.parentNode.removeChild( node );\n\t\t}\n\t}\n\n\treturn elem;\n}\n\njQuery.extend( {\n\thtmlPrefilter: function( html ) {\n\t\treturn html;\n\t},\n\n\tclone: function( elem, dataAndEvents, deepDataAndEvents ) {\n\t\tvar i, l, srcElements, destElements,\n\t\t\tclone = elem.cloneNode( true ),\n\t\t\tinPage = isAttached( elem );\n\n\t\t// Fix IE cloning issues\n\t\tif ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&\n\t\t\t\t!jQuery.isXMLDoc( elem ) ) {\n\n\t\t\t// We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2\n\t\t\tdestElements = getAll( clone );\n\t\t\tsrcElements = getAll( elem );\n\n\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\n\t\t\t\tfixInput( srcElements[ i ], destElements[ i ] );\n\t\t\t}\n\t\t}\n\n\t\t// Copy the events from the original to the clone\n\t\tif ( dataAndEvents ) {\n\t\t\tif ( deepDataAndEvents ) {\n\t\t\t\tsrcElements = srcElements || getAll( elem );\n\t\t\t\tdestElements = destElements || getAll( clone );\n\n\t\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\n\t\t\t\t\tcloneCopyEvent( srcElements[ i ], destElements[ i ] );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcloneCopyEvent( elem, clone );\n\t\t\t}\n\t\t}\n\n\t\t// Preserve script evaluation history\n\t\tdestElements = getAll( clone, \"script\" );\n\t\tif ( destElements.length > 0 ) {\n\t\t\tsetGlobalEval( destElements, !inPage && getAll( elem, \"script\" ) );\n\t\t}\n\n\t\t// Return the cloned set\n\t\treturn clone;\n\t},\n\n\tcleanData: function( elems ) {\n\t\tvar data, elem, type,\n\t\t\tspecial = jQuery.event.special,\n\t\t\ti = 0;\n\n\t\tfor ( ; ( elem = elems[ i ] ) !== undefined; i++ ) {\n\t\t\tif ( acceptData( elem ) ) {\n\t\t\t\tif ( ( data = elem[ dataPriv.expando ] ) ) {\n\t\t\t\t\tif ( data.events ) {\n\t\t\t\t\t\tfor ( type in data.events ) {\n\t\t\t\t\t\t\tif ( special[ type ] ) {\n\t\t\t\t\t\t\t\tjQuery.event.remove( elem, type );\n\n\t\t\t\t\t\t\t// This is a shortcut to avoid jQuery.event.remove's overhead\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tjQuery.removeEvent( elem, type, data.handle );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Support: Chrome <=35 - 45+\n\t\t\t\t\t// Assign undefined instead of using delete, see Data#remove\n\t\t\t\t\telem[ dataPriv.expando ] = undefined;\n\t\t\t\t}\n\t\t\t\tif ( elem[ dataUser.expando ] ) {\n\n\t\t\t\t\t// Support: Chrome <=35 - 45+\n\t\t\t\t\t// Assign undefined instead of using delete, see Data#remove\n\t\t\t\t\telem[ dataUser.expando ] = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n} );\n\njQuery.fn.extend( {\n\tdetach: function( selector ) {\n\t\treturn remove( this, selector, true );\n\t},\n\n\tremove: function( selector ) {\n\t\treturn remove( this, selector );\n\t},\n\n\ttext: function( value ) {\n\t\treturn access( this, function( value ) {\n\t\t\treturn value === undefined ?\n\t\t\t\tjQuery.text( this ) :\n\t\t\t\tthis.empty().each( function() {\n\t\t\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\t\t\tthis.textContent = value;\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t}, null, value, arguments.length );\n\t},\n\n\tappend: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\tvar target = manipulationTarget( this, elem );\n\t\t\t\ttarget.appendChild( elem );\n\t\t\t}\n\t\t} );\n\t},\n\n\tprepend: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\tvar target = manipulationTarget( this, elem );\n\t\t\t\ttarget.insertBefore( elem, target.firstChild );\n\t\t\t}\n\t\t} );\n\t},\n\n\tbefore: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.parentNode ) {\n\t\t\t\tthis.parentNode.insertBefore( elem, this );\n\t\t\t}\n\t\t} );\n\t},\n\n\tafter: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.parentNode ) {\n\t\t\t\tthis.parentNode.insertBefore( elem, this.nextSibling );\n\t\t\t}\n\t\t} );\n\t},\n\n\tempty: function() {\n\t\tvar elem,\n\t\t\ti = 0;\n\n\t\tfor ( ; ( elem = this[ i ] ) != null; i++ ) {\n\t\t\tif ( elem.nodeType === 1 ) {\n\n\t\t\t\t// Prevent memory leaks\n\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\n\n\t\t\t\t// Remove any remaining nodes\n\t\t\t\telem.textContent = \"\";\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\tclone: function( dataAndEvents, deepDataAndEvents ) {\n\t\tdataAndEvents = dataAndEvents == null ? false : dataAndEvents;\n\t\tdeepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;\n\n\t\treturn this.map( function() {\n\t\t\treturn jQuery.clone( this, dataAndEvents, deepDataAndEvents );\n\t\t} );\n\t},\n\n\thtml: function( value ) {\n\t\treturn access( this, function( value ) {\n\t\t\tvar elem = this[ 0 ] || {},\n\t\t\t\ti = 0,\n\t\t\t\tl = this.length;\n\n\t\t\tif ( value === undefined && elem.nodeType === 1 ) {\n\t\t\t\treturn elem.innerHTML;\n\t\t\t}\n\n\t\t\t// See if we can take a shortcut and just use innerHTML\n\t\t\tif ( typeof value === \"string\" && !rnoInnerhtml.test( value ) &&\n\t\t\t\t!wrapMap[ ( rtagName.exec( value ) || [ \"\", \"\" ] )[ 1 ].toLowerCase() ] ) {\n\n\t\t\t\tvalue = jQuery.htmlPrefilter( value );\n\n\t\t\t\ttry {\n\t\t\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\t\t\telem = this[ i ] || {};\n\n\t\t\t\t\t\t// Remove element nodes and prevent memory leaks\n\t\t\t\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\n\t\t\t\t\t\t\telem.innerHTML = value;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\telem = 0;\n\n\t\t\t\t// If using innerHTML throws an exception, use the fallback method\n\t\t\t\t} catch ( e ) {}\n\t\t\t}\n\n\t\t\tif ( elem ) {\n\t\t\t\tthis.empty().append( value );\n\t\t\t}\n\t\t}, null, value, arguments.length );\n\t},\n\n\treplaceWith: function() {\n\t\tvar ignored = [];\n\n\t\t// Make the changes, replacing each non-ignored context element with the new content\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tvar parent = this.parentNode;\n\n\t\t\tif ( jQuery.inArray( this, ignored ) < 0 ) {\n\t\t\t\tjQuery.cleanData( getAll( this ) );\n\t\t\t\tif ( parent ) {\n\t\t\t\t\tparent.replaceChild( elem, this );\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Force callback invocation\n\t\t}, ignored );\n\t}\n} );\n\njQuery.each( {\n\tappendTo: \"append\",\n\tprependTo: \"prepend\",\n\tinsertBefore: \"before\",\n\tinsertAfter: \"after\",\n\treplaceAll: \"replaceWith\"\n}, function( name, original ) {\n\tjQuery.fn[ name ] = function( selector ) {\n\t\tvar elems,\n\t\t\tret = [],\n\t\t\tinsert = jQuery( selector ),\n\t\t\tlast = insert.length - 1,\n\t\t\ti = 0;\n\n\t\tfor ( ; i <= last; i++ ) {\n\t\t\telems = i === last ? this : this.clone( true );\n\t\t\tjQuery( insert[ i ] )[ original ]( elems );\n\n\t\t\t// Support: Android <=4.0 only, PhantomJS 1 only\n\t\t\t// .get() because push.apply(_, arraylike) throws on ancient WebKit\n\t\t\tpush.apply( ret, elems.get() );\n\t\t}\n\n\t\treturn this.pushStack( ret );\n\t};\n} );\nvar rnumnonpx = new RegExp( \"^(\" + pnum + \")(?!px)[a-z%]+$\", \"i\" );\n\nvar getStyles = function( elem ) {\n\n\t\t// Support: IE <=11 only, Firefox <=30 (#15098, #14150)\n\t\t// IE throws on elements created in popups\n\t\t// FF meanwhile throws on frame elements through \"defaultView.getComputedStyle\"\n\t\tvar view = elem.ownerDocument.defaultView;\n\n\t\tif ( !view || !view.opener ) {\n\t\t\tview = window;\n\t\t}\n\n\t\treturn view.getComputedStyle( elem );\n\t};\n\nvar swap = function( elem, options, callback ) {\n\tvar ret, name,\n\t\told = {};\n\n\t// Remember the old values, and insert the new ones\n\tfor ( name in options ) {\n\t\told[ name ] = elem.style[ name ];\n\t\telem.style[ name ] = options[ name ];\n\t}\n\n\tret = callback.call( elem );\n\n\t// Revert the old values\n\tfor ( name in options ) {\n\t\telem.style[ name ] = old[ name ];\n\t}\n\n\treturn ret;\n};\n\n\nvar rboxStyle = new RegExp( cssExpand.join( \"|\" ), \"i\" );\n\n\n\n( function() {\n\n\t// Executing both pixelPosition & boxSizingReliable tests require only one layout\n\t// so they're executed at the same time to save the second computation.\n\tfunction computeStyleTests() {\n\n\t\t// This is a singleton, we need to execute it only once\n\t\tif ( !div ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcontainer.style.cssText = \"position:absolute;left:-11111px;width:60px;\" +\n\t\t\t\"margin-top:1px;padding:0;border:0\";\n\t\tdiv.style.cssText =\n\t\t\t\"position:relative;display:block;box-sizing:border-box;overflow:scroll;\" +\n\t\t\t\"margin:auto;border:1px;padding:1px;\" +\n\t\t\t\"width:60%;top:1%\";\n\t\tdocumentElement.appendChild( container ).appendChild( div );\n\n\t\tvar divStyle = window.getComputedStyle( div );\n\t\tpixelPositionVal = divStyle.top !== \"1%\";\n\n\t\t// Support: Android 4.0 - 4.3 only, Firefox <=3 - 44\n\t\treliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12;\n\n\t\t// Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3\n\t\t// Some styles come back with percentage values, even though they shouldn't\n\t\tdiv.style.right = \"60%\";\n\t\tpixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36;\n\n\t\t// Support: IE 9 - 11 only\n\t\t// Detect misreporting of content dimensions for box-sizing:border-box elements\n\t\tboxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36;\n\n\t\t// Support: IE 9 only\n\t\t// Detect overflow:scroll screwiness (gh-3699)\n\t\t// Support: Chrome <=64\n\t\t// Don't get tricked when zoom affects offsetWidth (gh-4029)\n\t\tdiv.style.position = \"absolute\";\n\t\tscrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12;\n\n\t\tdocumentElement.removeChild( container );\n\n\t\t// Nullify the div so it wouldn't be stored in the memory and\n\t\t// it will also be a sign that checks already performed\n\t\tdiv = null;\n\t}\n\n\tfunction roundPixelMeasures( measure ) {\n\t\treturn Math.round( parseFloat( measure ) );\n\t}\n\n\tvar pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal,\n\t\treliableTrDimensionsVal, reliableMarginLeftVal,\n\t\tcontainer = document.createElement( \"div\" ),\n\t\tdiv = document.createElement( \"div\" );\n\n\t// Finish early in limited (non-browser) environments\n\tif ( !div.style ) {\n\t\treturn;\n\t}\n\n\t// Support: IE <=9 - 11 only\n\t// Style of cloned element affects source element cloned (#8908)\n\tdiv.style.backgroundClip = \"content-box\";\n\tdiv.cloneNode( true ).style.backgroundClip = \"\";\n\tsupport.clearCloneStyle = div.style.backgroundClip === \"content-box\";\n\n\tjQuery.extend( support, {\n\t\tboxSizingReliable: function() {\n\t\t\tcomputeStyleTests();\n\t\t\treturn boxSizingReliableVal;\n\t\t},\n\t\tpixelBoxStyles: function() {\n\t\t\tcomputeStyleTests();\n\t\t\treturn pixelBoxStylesVal;\n\t\t},\n\t\tpixelPosition: function() {\n\t\t\tcomputeStyleTests();\n\t\t\treturn pixelPositionVal;\n\t\t},\n\t\treliableMarginLeft: function() {\n\t\t\tcomputeStyleTests();\n\t\t\treturn reliableMarginLeftVal;\n\t\t},\n\t\tscrollboxSize: function() {\n\t\t\tcomputeStyleTests();\n\t\t\treturn scrollboxSizeVal;\n\t\t},\n\n\t\t// Support: IE 9 - 11+, Edge 15 - 18+\n\t\t// IE/Edge misreport `getComputedStyle` of table rows with width/height\n\t\t// set in CSS while `offset*` properties report correct values.\n\t\t// Behavior in IE 9 is more subtle than in newer versions & it passes\n\t\t// some versions of this test; make sure not to make it pass there!\n\t\t//\n\t\t// Support: Firefox 70+\n\t\t// Only Firefox includes border widths\n\t\t// in computed dimensions. (gh-4529)\n\t\treliableTrDimensions: function() {\n\t\t\tvar table, tr, trChild, trStyle;\n\t\t\tif ( reliableTrDimensionsVal == null ) {\n\t\t\t\ttable = document.createElement( \"table\" );\n\t\t\t\ttr = document.createElement( \"tr\" );\n\t\t\t\ttrChild = document.createElement( \"div\" );\n\n\t\t\t\ttable.style.cssText = \"position:absolute;left:-11111px;border-collapse:separate\";\n\t\t\t\ttr.style.cssText = \"border:1px solid\";\n\n\t\t\t\t// Support: Chrome 86+\n\t\t\t\t// Height set through cssText does not get applied.\n\t\t\t\t// Computed height then comes back as 0.\n\t\t\t\ttr.style.height = \"1px\";\n\t\t\t\ttrChild.style.height = \"9px\";\n\n\t\t\t\t// Support: Android 8 Chrome 86+\n\t\t\t\t// In our bodyBackground.html iframe,\n\t\t\t\t// display for all div elements is set to \"inline\",\n\t\t\t\t// which causes a problem only in Android 8 Chrome 86.\n\t\t\t\t// Ensuring the div is display: block\n\t\t\t\t// gets around this issue.\n\t\t\t\ttrChild.style.display = \"block\";\n\n\t\t\t\tdocumentElement\n\t\t\t\t\t.appendChild( table )\n\t\t\t\t\t.appendChild( tr )\n\t\t\t\t\t.appendChild( trChild );\n\n\t\t\t\ttrStyle = window.getComputedStyle( tr );\n\t\t\t\treliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) +\n\t\t\t\t\tparseInt( trStyle.borderTopWidth, 10 ) +\n\t\t\t\t\tparseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight;\n\n\t\t\t\tdocumentElement.removeChild( table );\n\t\t\t}\n\t\t\treturn reliableTrDimensionsVal;\n\t\t}\n\t} );\n} )();\n\n\nfunction curCSS( elem, name, computed ) {\n\tvar width, minWidth, maxWidth, ret,\n\n\t\t// Support: Firefox 51+\n\t\t// Retrieving style before computed somehow\n\t\t// fixes an issue with getting wrong values\n\t\t// on detached elements\n\t\tstyle = elem.style;\n\n\tcomputed = computed || getStyles( elem );\n\n\t// getPropertyValue is needed for:\n\t// .css('filter') (IE 9 only, #12537)\n\t// .css('--customProperty) (#3144)\n\tif ( computed ) {\n\t\tret = computed.getPropertyValue( name ) || computed[ name ];\n\n\t\tif ( ret === \"\" && !isAttached( elem ) ) {\n\t\t\tret = jQuery.style( elem, name );\n\t\t}\n\n\t\t// A tribute to the \"awesome hack by Dean Edwards\"\n\t\t// Android Browser returns percentage for some values,\n\t\t// but width seems to be reliably pixels.\n\t\t// This is against the CSSOM draft spec:\n\t\t// https://drafts.csswg.org/cssom/#resolved-values\n\t\tif ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) {\n\n\t\t\t// Remember the original values\n\t\t\twidth = style.width;\n\t\t\tminWidth = style.minWidth;\n\t\t\tmaxWidth = style.maxWidth;\n\n\t\t\t// Put in the new values to get a computed value out\n\t\t\tstyle.minWidth = style.maxWidth = style.width = ret;\n\t\t\tret = computed.width;\n\n\t\t\t// Revert the changed values\n\t\t\tstyle.width = width;\n\t\t\tstyle.minWidth = minWidth;\n\t\t\tstyle.maxWidth = maxWidth;\n\t\t}\n\t}\n\n\treturn ret !== undefined ?\n\n\t\t// Support: IE <=9 - 11 only\n\t\t// IE returns zIndex value as an integer.\n\t\tret + \"\" :\n\t\tret;\n}\n\n\nfunction addGetHookIf( conditionFn, hookFn ) {\n\n\t// Define the hook, we'll check on the first run if it's really needed.\n\treturn {\n\t\tget: function() {\n\t\t\tif ( conditionFn() ) {\n\n\t\t\t\t// Hook not needed (or it's not possible to use it due\n\t\t\t\t// to missing dependency), remove it.\n\t\t\t\tdelete this.get;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Hook needed; redefine it so that the support test is not executed again.\n\t\t\treturn ( this.get = hookFn ).apply( this, arguments );\n\t\t}\n\t};\n}\n\n\nvar cssPrefixes = [ \"Webkit\", \"Moz\", \"ms\" ],\n\temptyStyle = document.createElement( \"div\" ).style,\n\tvendorProps = {};\n\n// Return a vendor-prefixed property or undefined\nfunction vendorPropName( name ) {\n\n\t// Check for vendor prefixed names\n\tvar capName = name[ 0 ].toUpperCase() + name.slice( 1 ),\n\t\ti = cssPrefixes.length;\n\n\twhile ( i-- ) {\n\t\tname = cssPrefixes[ i ] + capName;\n\t\tif ( name in emptyStyle ) {\n\t\t\treturn name;\n\t\t}\n\t}\n}\n\n// Return a potentially-mapped jQuery.cssProps or vendor prefixed property\nfunction finalPropName( name ) {\n\tvar final = jQuery.cssProps[ name ] || vendorProps[ name ];\n\n\tif ( final ) {\n\t\treturn final;\n\t}\n\tif ( name in emptyStyle ) {\n\t\treturn name;\n\t}\n\treturn vendorProps[ name ] = vendorPropName( name ) || name;\n}\n\n\nvar\n\n\t// Swappable if display is none or starts with table\n\t// except \"table\", \"table-cell\", or \"table-caption\"\n\t// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display\n\trdisplayswap = /^(none|table(?!-c[ea]).+)/,\n\trcustomProp = /^--/,\n\tcssShow = { position: \"absolute\", visibility: \"hidden\", display: \"block\" },\n\tcssNormalTransform = {\n\t\tletterSpacing: \"0\",\n\t\tfontWeight: \"400\"\n\t};\n\nfunction setPositiveNumber( _elem, value, subtract ) {\n\n\t// Any relative (+/-) values have already been\n\t// normalized at this point\n\tvar matches = rcssNum.exec( value );\n\treturn matches ?\n\n\t\t// Guard against undefined \"subtract\", e.g., when used as in cssHooks\n\t\tMath.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || \"px\" ) :\n\t\tvalue;\n}\n\nfunction boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) {\n\tvar i = dimension === \"width\" ? 1 : 0,\n\t\textra = 0,\n\t\tdelta = 0;\n\n\t// Adjustment may not be necessary\n\tif ( box === ( isBorderBox ? \"border\" : \"content\" ) ) {\n\t\treturn 0;\n\t}\n\n\tfor ( ; i < 4; i += 2 ) {\n\n\t\t// Both box models exclude margin\n\t\tif ( box === \"margin\" ) {\n\t\t\tdelta += jQuery.css( elem, box + cssExpand[ i ], true, styles );\n\t\t}\n\n\t\t// If we get here with a content-box, we're seeking \"padding\" or \"border\" or \"margin\"\n\t\tif ( !isBorderBox ) {\n\n\t\t\t// Add padding\n\t\t\tdelta += jQuery.css( elem, \"padding\" + cssExpand[ i ], true, styles );\n\n\t\t\t// For \"border\" or \"margin\", add border\n\t\t\tif ( box !== \"padding\" ) {\n\t\t\t\tdelta += jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\n\n\t\t\t// But still keep track of it otherwise\n\t\t\t} else {\n\t\t\t\textra += jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\n\t\t\t}\n\n\t\t// If we get here with a border-box (content + padding + border), we're seeking \"content\" or\n\t\t// \"padding\" or \"margin\"\n\t\t} else {\n\n\t\t\t// For \"content\", subtract padding\n\t\t\tif ( box === \"content\" ) {\n\t\t\t\tdelta -= jQuery.css( elem, \"padding\" + cssExpand[ i ], true, styles );\n\t\t\t}\n\n\t\t\t// For \"content\" or \"padding\", subtract border\n\t\t\tif ( box !== \"margin\" ) {\n\t\t\t\tdelta -= jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\n\t\t\t}\n\t\t}\n\t}\n\n\t// Account for positive content-box scroll gutter when requested by providing computedVal\n\tif ( !isBorderBox && computedVal >= 0 ) {\n\n\t\t// offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border\n\t\t// Assuming integer scroll gutter, subtract the rest and round down\n\t\tdelta += Math.max( 0, Math.ceil(\n\t\t\telem[ \"offset\" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -\n\t\t\tcomputedVal -\n\t\t\tdelta -\n\t\t\textra -\n\t\t\t0.5\n\n\t\t// If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter\n\t\t// Use an explicit zero to avoid NaN (gh-3964)\n\t\t) ) || 0;\n\t}\n\n\treturn delta;\n}\n\nfunction getWidthOrHeight( elem, dimension, extra ) {\n\n\t// Start with computed style\n\tvar styles = getStyles( elem ),\n\n\t\t// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322).\n\t\t// Fake content-box until we know it's needed to know the true value.\n\t\tboxSizingNeeded = !support.boxSizingReliable() || extra,\n\t\tisBorderBox = boxSizingNeeded &&\n\t\t\tjQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\",\n\t\tvalueIsBorderBox = isBorderBox,\n\n\t\tval = curCSS( elem, dimension, styles ),\n\t\toffsetProp = \"offset\" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 );\n\n\t// Support: Firefox <=54\n\t// Return a confounding non-pixel value or feign ignorance, as appropriate.\n\tif ( rnumnonpx.test( val ) ) {\n\t\tif ( !extra ) {\n\t\t\treturn val;\n\t\t}\n\t\tval = \"auto\";\n\t}\n\n\n\t// Support: IE 9 - 11 only\n\t// Use offsetWidth/offsetHeight for when box sizing is unreliable.\n\t// In those cases, the computed value can be trusted to be border-box.\n\tif ( ( !support.boxSizingReliable() && isBorderBox ||\n\n\t\t// Support: IE 10 - 11+, Edge 15 - 18+\n\t\t// IE/Edge misreport `getComputedStyle` of table rows with width/height\n\t\t// set in CSS while `offset*` properties report correct values.\n\t\t// Interestingly, in some cases IE 9 doesn't suffer from this issue.\n\t\t!support.reliableTrDimensions() && nodeName( elem, \"tr\" ) ||\n\n\t\t// Fall back to offsetWidth/offsetHeight when value is \"auto\"\n\t\t// This happens for inline elements with no explicit setting (gh-3571)\n\t\tval === \"auto\" ||\n\n\t\t// Support: Android <=4.1 - 4.3 only\n\t\t// Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602)\n\t\t!parseFloat( val ) && jQuery.css( elem, \"display\", false, styles ) === \"inline\" ) &&\n\n\t\t// Make sure the element is visible & connected\n\t\telem.getClientRects().length ) {\n\n\t\tisBorderBox = jQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\";\n\n\t\t// Where available, offsetWidth/offsetHeight approximate border box dimensions.\n\t\t// Where not available (e.g., SVG), assume unreliable box-sizing and interpret the\n\t\t// retrieved value as a content box dimension.\n\t\tvalueIsBorderBox = offsetProp in elem;\n\t\tif ( valueIsBorderBox ) {\n\t\t\tval = elem[ offsetProp ];\n\t\t}\n\t}\n\n\t// Normalize \"\" and auto\n\tval = parseFloat( val ) || 0;\n\n\t// Adjust for the element's box model\n\treturn ( val +\n\t\tboxModelAdjustment(\n\t\t\telem,\n\t\t\tdimension,\n\t\t\textra || ( isBorderBox ? \"border\" : \"content\" ),\n\t\t\tvalueIsBorderBox,\n\t\t\tstyles,\n\n\t\t\t// Provide the current computed size to request scroll gutter calculation (gh-3589)\n\t\t\tval\n\t\t)\n\t) + \"px\";\n}\n\njQuery.extend( {\n\n\t// Add in style property hooks for overriding the default\n\t// behavior of getting and setting a style property\n\tcssHooks: {\n\t\topacity: {\n\t\t\tget: function( elem, computed ) {\n\t\t\t\tif ( computed ) {\n\n\t\t\t\t\t// We should always get a number back from opacity\n\t\t\t\t\tvar ret = curCSS( elem, \"opacity\" );\n\t\t\t\t\treturn ret === \"\" ? \"1\" : ret;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\t// Don't automatically add \"px\" to these possibly-unitless properties\n\tcssNumber: {\n\t\t\"animationIterationCount\": true,\n\t\t\"columnCount\": true,\n\t\t\"fillOpacity\": true,\n\t\t\"flexGrow\": true,\n\t\t\"flexShrink\": true,\n\t\t\"fontWeight\": true,\n\t\t\"gridArea\": true,\n\t\t\"gridColumn\": true,\n\t\t\"gridColumnEnd\": true,\n\t\t\"gridColumnStart\": true,\n\t\t\"gridRow\": true,\n\t\t\"gridRowEnd\": true,\n\t\t\"gridRowStart\": true,\n\t\t\"lineHeight\": true,\n\t\t\"opacity\": true,\n\t\t\"order\": true,\n\t\t\"orphans\": true,\n\t\t\"widows\": true,\n\t\t\"zIndex\": true,\n\t\t\"zoom\": true\n\t},\n\n\t// Add in properties whose names you wish to fix before\n\t// setting or getting the value\n\tcssProps: {},\n\n\t// Get and set the style property on a DOM Node\n\tstyle: function( elem, name, value, extra ) {\n\n\t\t// Don't set styles on text and comment nodes\n\t\tif ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make sure that we're working with the right name\n\t\tvar ret, type, hooks,\n\t\t\torigName = camelCase( name ),\n\t\t\tisCustomProp = rcustomProp.test( name ),\n\t\t\tstyle = elem.style;\n\n\t\t// Make sure that we're working with the right name. We don't\n\t\t// want to query the value if it is a CSS custom property\n\t\t// since they are user-defined.\n\t\tif ( !isCustomProp ) {\n\t\t\tname = finalPropName( origName );\n\t\t}\n\n\t\t// Gets hook for the prefixed version, then unprefixed version\n\t\thooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];\n\n\t\t// Check if we're setting a value\n\t\tif ( value !== undefined ) {\n\t\t\ttype = typeof value;\n\n\t\t\t// Convert \"+=\" or \"-=\" to relative numbers (#7345)\n\t\t\tif ( type === \"string\" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) {\n\t\t\t\tvalue = adjustCSS( elem, name, ret );\n\n\t\t\t\t// Fixes bug #9237\n\t\t\t\ttype = \"number\";\n\t\t\t}\n\n\t\t\t// Make sure that null and NaN values aren't set (#7116)\n\t\t\tif ( value == null || value !== value ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If a number was passed in, add the unit (except for certain CSS properties)\n\t\t\t// The isCustomProp check can be removed in jQuery 4.0 when we only auto-append\n\t\t\t// \"px\" to a few hardcoded values.\n\t\t\tif ( type === \"number\" && !isCustomProp ) {\n\t\t\t\tvalue += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? \"\" : \"px\" );\n\t\t\t}\n\n\t\t\t// background-* props affect original clone's values\n\t\t\tif ( !support.clearCloneStyle && value === \"\" && name.indexOf( \"background\" ) === 0 ) {\n\t\t\t\tstyle[ name ] = \"inherit\";\n\t\t\t}\n\n\t\t\t// If a hook was provided, use that value, otherwise just set the specified value\n\t\t\tif ( !hooks || !( \"set\" in hooks ) ||\n\t\t\t\t( value = hooks.set( elem, value, extra ) ) !== undefined ) {\n\n\t\t\t\tif ( isCustomProp ) {\n\t\t\t\t\tstyle.setProperty( name, value );\n\t\t\t\t} else {\n\t\t\t\t\tstyle[ name ] = value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t} else {\n\n\t\t\t// If a hook was provided get the non-computed value from there\n\t\t\tif ( hooks && \"get\" in hooks &&\n\t\t\t\t( ret = hooks.get( elem, false, extra ) ) !== undefined ) {\n\n\t\t\t\treturn ret;\n\t\t\t}\n\n\t\t\t// Otherwise just get the value from the style object\n\t\t\treturn style[ name ];\n\t\t}\n\t},\n\n\tcss: function( elem, name, extra, styles ) {\n\t\tvar val, num, hooks,\n\t\t\torigName = camelCase( name ),\n\t\t\tisCustomProp = rcustomProp.test( name );\n\n\t\t// Make sure that we're working with the right name. We don't\n\t\t// want to modify the value if it is a CSS custom property\n\t\t// since they are user-defined.\n\t\tif ( !isCustomProp ) {\n\t\t\tname = finalPropName( origName );\n\t\t}\n\n\t\t// Try prefixed name followed by the unprefixed name\n\t\thooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];\n\n\t\t// If a hook was provided get the computed value from there\n\t\tif ( hooks && \"get\" in hooks ) {\n\t\t\tval = hooks.get( elem, true, extra );\n\t\t}\n\n\t\t// Otherwise, if a way to get the computed value exists, use that\n\t\tif ( val === undefined ) {\n\t\t\tval = curCSS( elem, name, styles );\n\t\t}\n\n\t\t// Convert \"normal\" to computed value\n\t\tif ( val === \"normal\" && name in cssNormalTransform ) {\n\t\t\tval = cssNormalTransform[ name ];\n\t\t}\n\n\t\t// Make numeric if forced or a qualifier was provided and val looks numeric\n\t\tif ( extra === \"\" || extra ) {\n\t\t\tnum = parseFloat( val );\n\t\t\treturn extra === true || isFinite( num ) ? num || 0 : val;\n\t\t}\n\n\t\treturn val;\n\t}\n} );\n\njQuery.each( [ \"height\", \"width\" ], function( _i, dimension ) {\n\tjQuery.cssHooks[ dimension ] = {\n\t\tget: function( elem, computed, extra ) {\n\t\t\tif ( computed ) {\n\n\t\t\t\t// Certain elements can have dimension info if we invisibly show them\n\t\t\t\t// but it must have a current display style that would benefit\n\t\t\t\treturn rdisplayswap.test( jQuery.css( elem, \"display\" ) ) &&\n\n\t\t\t\t\t// Support: Safari 8+\n\t\t\t\t\t// Table columns in Safari have non-zero offsetWidth & zero\n\t\t\t\t\t// getBoundingClientRect().width unless display is changed.\n\t\t\t\t\t// Support: IE <=11 only\n\t\t\t\t\t// Running getBoundingClientRect on a disconnected node\n\t\t\t\t\t// in IE throws an error.\n\t\t\t\t\t( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ?\n\t\t\t\t\tswap( elem, cssShow, function() {\n\t\t\t\t\t\treturn getWidthOrHeight( elem, dimension, extra );\n\t\t\t\t\t} ) :\n\t\t\t\t\tgetWidthOrHeight( elem, dimension, extra );\n\t\t\t}\n\t\t},\n\n\t\tset: function( elem, value, extra ) {\n\t\t\tvar matches,\n\t\t\t\tstyles = getStyles( elem ),\n\n\t\t\t\t// Only read styles.position if the test has a chance to fail\n\t\t\t\t// to avoid forcing a reflow.\n\t\t\t\tscrollboxSizeBuggy = !support.scrollboxSize() &&\n\t\t\t\t\tstyles.position === \"absolute\",\n\n\t\t\t\t// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991)\n\t\t\t\tboxSizingNeeded = scrollboxSizeBuggy || extra,\n\t\t\t\tisBorderBox = boxSizingNeeded &&\n\t\t\t\t\tjQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\",\n\t\t\t\tsubtract = extra ?\n\t\t\t\t\tboxModelAdjustment(\n\t\t\t\t\t\telem,\n\t\t\t\t\t\tdimension,\n\t\t\t\t\t\textra,\n\t\t\t\t\t\tisBorderBox,\n\t\t\t\t\t\tstyles\n\t\t\t\t\t) :\n\t\t\t\t\t0;\n\n\t\t\t// Account for unreliable border-box dimensions by comparing offset* to computed and\n\t\t\t// faking a content-box to get border and padding (gh-3699)\n\t\t\tif ( isBorderBox && scrollboxSizeBuggy ) {\n\t\t\t\tsubtract -= Math.ceil(\n\t\t\t\t\telem[ \"offset\" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -\n\t\t\t\t\tparseFloat( styles[ dimension ] ) -\n\t\t\t\t\tboxModelAdjustment( elem, dimension, \"border\", false, styles ) -\n\t\t\t\t\t0.5\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Convert to pixels if value adjustment is needed\n\t\t\tif ( subtract && ( matches = rcssNum.exec( value ) ) &&\n\t\t\t\t( matches[ 3 ] || \"px\" ) !== \"px\" ) {\n\n\t\t\t\telem.style[ dimension ] = value;\n\t\t\t\tvalue = jQuery.css( elem, dimension );\n\t\t\t}\n\n\t\t\treturn setPositiveNumber( elem, value, subtract );\n\t\t}\n\t};\n} );\n\njQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft,\n\tfunction( elem, computed ) {\n\t\tif ( computed ) {\n\t\t\treturn ( parseFloat( curCSS( elem, \"marginLeft\" ) ) ||\n\t\t\t\telem.getBoundingClientRect().left -\n\t\t\t\t\tswap( elem, { marginLeft: 0 }, function() {\n\t\t\t\t\t\treturn elem.getBoundingClientRect().left;\n\t\t\t\t\t} )\n\t\t\t) + \"px\";\n\t\t}\n\t}\n);\n\n// These hooks are used by animate to expand properties\njQuery.each( {\n\tmargin: \"\",\n\tpadding: \"\",\n\tborder: \"Width\"\n}, function( prefix, suffix ) {\n\tjQuery.cssHooks[ prefix + suffix ] = {\n\t\texpand: function( value ) {\n\t\t\tvar i = 0,\n\t\t\t\texpanded = {},\n\n\t\t\t\t// Assumes a single number if not a string\n\t\t\t\tparts = typeof value === \"string\" ? value.split( \" \" ) : [ value ];\n\n\t\t\tfor ( ; i < 4; i++ ) {\n\t\t\t\texpanded[ prefix + cssExpand[ i ] + suffix ] =\n\t\t\t\t\tparts[ i ] || parts[ i - 2 ] || parts[ 0 ];\n\t\t\t}\n\n\t\t\treturn expanded;\n\t\t}\n\t};\n\n\tif ( prefix !== \"margin\" ) {\n\t\tjQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;\n\t}\n} );\n\njQuery.fn.extend( {\n\tcss: function( name, value ) {\n\t\treturn access( this, function( elem, name, value ) {\n\t\t\tvar styles, len,\n\t\t\t\tmap = {},\n\t\t\t\ti = 0;\n\n\t\t\tif ( Array.isArray( name ) ) {\n\t\t\t\tstyles = getStyles( elem );\n\t\t\t\tlen = name.length;\n\n\t\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\t\tmap[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );\n\t\t\t\t}\n\n\t\t\t\treturn map;\n\t\t\t}\n\n\t\t\treturn value !== undefined ?\n\t\t\t\tjQuery.style( elem, name, value ) :\n\t\t\t\tjQuery.css( elem, name );\n\t\t}, name, value, arguments.length > 1 );\n\t}\n} );\n\n\nfunction Tween( elem, options, prop, end, easing ) {\n\treturn new Tween.prototype.init( elem, options, prop, end, easing );\n}\njQuery.Tween = Tween;\n\nTween.prototype = {\n\tconstructor: Tween,\n\tinit: function( elem, options, prop, end, easing, unit ) {\n\t\tthis.elem = elem;\n\t\tthis.prop = prop;\n\t\tthis.easing = easing || jQuery.easing._default;\n\t\tthis.options = options;\n\t\tthis.start = this.now = this.cur();\n\t\tthis.end = end;\n\t\tthis.unit = unit || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" );\n\t},\n\tcur: function() {\n\t\tvar hooks = Tween.propHooks[ this.prop ];\n\n\t\treturn hooks && hooks.get ?\n\t\t\thooks.get( this ) :\n\t\t\tTween.propHooks._default.get( this );\n\t},\n\trun: function( percent ) {\n\t\tvar eased,\n\t\t\thooks = Tween.propHooks[ this.prop ];\n\n\t\tif ( this.options.duration ) {\n\t\t\tthis.pos = eased = jQuery.easing[ this.easing ](\n\t\t\t\tpercent, this.options.duration * percent, 0, 1, this.options.duration\n\t\t\t);\n\t\t} else {\n\t\t\tthis.pos = eased = percent;\n\t\t}\n\t\tthis.now = ( this.end - this.start ) * eased + this.start;\n\n\t\tif ( this.options.step ) {\n\t\t\tthis.options.step.call( this.elem, this.now, this );\n\t\t}\n\n\t\tif ( hooks && hooks.set ) {\n\t\t\thooks.set( this );\n\t\t} else {\n\t\t\tTween.propHooks._default.set( this );\n\t\t}\n\t\treturn this;\n\t}\n};\n\nTween.prototype.init.prototype = Tween.prototype;\n\nTween.propHooks = {\n\t_default: {\n\t\tget: function( tween ) {\n\t\t\tvar result;\n\n\t\t\t// Use a property on the element directly when it is not a DOM element,\n\t\t\t// or when there is no matching style property that exists.\n\t\t\tif ( tween.elem.nodeType !== 1 ||\n\t\t\t\ttween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) {\n\t\t\t\treturn tween.elem[ tween.prop ];\n\t\t\t}\n\n\t\t\t// Passing an empty string as a 3rd parameter to .css will automatically\n\t\t\t// attempt a parseFloat and fallback to a string if the parse fails.\n\t\t\t// Simple values such as \"10px\" are parsed to Float;\n\t\t\t// complex values such as \"rotate(1rad)\" are returned as-is.\n\t\t\tresult = jQuery.css( tween.elem, tween.prop, \"\" );\n\n\t\t\t// Empty strings, null, undefined and \"auto\" are converted to 0.\n\t\t\treturn !result || result === \"auto\" ? 0 : result;\n\t\t},\n\t\tset: function( tween ) {\n\n\t\t\t// Use step hook for back compat.\n\t\t\t// Use cssHook if its there.\n\t\t\t// Use .style if available and use plain properties where available.\n\t\t\tif ( jQuery.fx.step[ tween.prop ] ) {\n\t\t\t\tjQuery.fx.step[ tween.prop ]( tween );\n\t\t\t} else if ( tween.elem.nodeType === 1 && (\n\t\t\t\tjQuery.cssHooks[ tween.prop ] ||\n\t\t\t\t\ttween.elem.style[ finalPropName( tween.prop ) ] != null ) ) {\n\t\t\t\tjQuery.style( tween.elem, tween.prop, tween.now + tween.unit );\n\t\t\t} else {\n\t\t\t\ttween.elem[ tween.prop ] = tween.now;\n\t\t\t}\n\t\t}\n\t}\n};\n\n// Support: IE <=9 only\n// Panic based approach to setting things on disconnected nodes\nTween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {\n\tset: function( tween ) {\n\t\tif ( tween.elem.nodeType && tween.elem.parentNode ) {\n\t\t\ttween.elem[ tween.prop ] = tween.now;\n\t\t}\n\t}\n};\n\njQuery.easing = {\n\tlinear: function( p ) {\n\t\treturn p;\n\t},\n\tswing: function( p ) {\n\t\treturn 0.5 - Math.cos( p * Math.PI ) / 2;\n\t},\n\t_default: \"swing\"\n};\n\njQuery.fx = Tween.prototype.init;\n\n// Back compat <1.8 extension point\njQuery.fx.step = {};\n\n\n\n\nvar\n\tfxNow, inProgress,\n\trfxtypes = /^(?:toggle|show|hide)$/,\n\trrun = /queueHooks$/;\n\nfunction schedule() {\n\tif ( inProgress ) {\n\t\tif ( document.hidden === false && window.requestAnimationFrame ) {\n\t\t\twindow.requestAnimationFrame( schedule );\n\t\t} else {\n\t\t\twindow.setTimeout( schedule, jQuery.fx.interval );\n\t\t}\n\n\t\tjQuery.fx.tick();\n\t}\n}\n\n// Animations created synchronously will run synchronously\nfunction createFxNow() {\n\twindow.setTimeout( function() {\n\t\tfxNow = undefined;\n\t} );\n\treturn ( fxNow = Date.now() );\n}\n\n// Generate parameters to create a standard animation\nfunction genFx( type, includeWidth ) {\n\tvar which,\n\t\ti = 0,\n\t\tattrs = { height: type };\n\n\t// If we include width, step value is 1 to do all cssExpand values,\n\t// otherwise step value is 2 to skip over Left and Right\n\tincludeWidth = includeWidth ? 1 : 0;\n\tfor ( ; i < 4; i += 2 - includeWidth ) {\n\t\twhich = cssExpand[ i ];\n\t\tattrs[ \"margin\" + which ] = attrs[ \"padding\" + which ] = type;\n\t}\n\n\tif ( includeWidth ) {\n\t\tattrs.opacity = attrs.width = type;\n\t}\n\n\treturn attrs;\n}\n\nfunction createTween( value, prop, animation ) {\n\tvar tween,\n\t\tcollection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ \"*\" ] ),\n\t\tindex = 0,\n\t\tlength = collection.length;\n\tfor ( ; index < length; index++ ) {\n\t\tif ( ( tween = collection[ index ].call( animation, prop, value ) ) ) {\n\n\t\t\t// We're done with this property\n\t\t\treturn tween;\n\t\t}\n\t}\n}\n\nfunction defaultPrefilter( elem, props, opts ) {\n\tvar prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,\n\t\tisBox = \"width\" in props || \"height\" in props,\n\t\tanim = this,\n\t\torig = {},\n\t\tstyle = elem.style,\n\t\thidden = elem.nodeType && isHiddenWithinTree( elem ),\n\t\tdataShow = dataPriv.get( elem, \"fxshow\" );\n\n\t// Queue-skipping animations hijack the fx hooks\n\tif ( !opts.queue ) {\n\t\thooks = jQuery._queueHooks( elem, \"fx\" );\n\t\tif ( hooks.unqueued == null ) {\n\t\t\thooks.unqueued = 0;\n\t\t\toldfire = hooks.empty.fire;\n\t\t\thooks.empty.fire = function() {\n\t\t\t\tif ( !hooks.unqueued ) {\n\t\t\t\t\toldfire();\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t\thooks.unqueued++;\n\n\t\tanim.always( function() {\n\n\t\t\t// Ensure the complete handler is called before this completes\n\t\t\tanim.always( function() {\n\t\t\t\thooks.unqueued--;\n\t\t\t\tif ( !jQuery.queue( elem, \"fx\" ).length ) {\n\t\t\t\t\thooks.empty.fire();\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\t}\n\n\t// Detect show/hide animations\n\tfor ( prop in props ) {\n\t\tvalue = props[ prop ];\n\t\tif ( rfxtypes.test( value ) ) {\n\t\t\tdelete props[ prop ];\n\t\t\ttoggle = toggle || value === \"toggle\";\n\t\t\tif ( value === ( hidden ? \"hide\" : \"show\" ) ) {\n\n\t\t\t\t// Pretend to be hidden if this is a \"show\" and\n\t\t\t\t// there is still data from a stopped show/hide\n\t\t\t\tif ( value === \"show\" && dataShow && dataShow[ prop ] !== undefined ) {\n\t\t\t\t\thidden = true;\n\n\t\t\t\t// Ignore all other no-op show/hide data\n\t\t\t\t} else {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\torig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );\n\t\t}\n\t}\n\n\t// Bail out if this is a no-op like .hide().hide()\n\tpropTween = !jQuery.isEmptyObject( props );\n\tif ( !propTween && jQuery.isEmptyObject( orig ) ) {\n\t\treturn;\n\t}\n\n\t// Restrict \"overflow\" and \"display\" styles during box animations\n\tif ( isBox && elem.nodeType === 1 ) {\n\n\t\t// Support: IE <=9 - 11, Edge 12 - 15\n\t\t// Record all 3 overflow attributes because IE does not infer the shorthand\n\t\t// from identically-valued overflowX and overflowY and Edge just mirrors\n\t\t// the overflowX value there.\n\t\topts.overflow = [ style.overflow, style.overflowX, style.overflowY ];\n\n\t\t// Identify a display type, preferring old show/hide data over the CSS cascade\n\t\trestoreDisplay = dataShow && dataShow.display;\n\t\tif ( restoreDisplay == null ) {\n\t\t\trestoreDisplay = dataPriv.get( elem, \"display\" );\n\t\t}\n\t\tdisplay = jQuery.css( elem, \"display\" );\n\t\tif ( display === \"none\" ) {\n\t\t\tif ( restoreDisplay ) {\n\t\t\t\tdisplay = restoreDisplay;\n\t\t\t} else {\n\n\t\t\t\t// Get nonempty value(s) by temporarily forcing visibility\n\t\t\t\tshowHide( [ elem ], true );\n\t\t\t\trestoreDisplay = elem.style.display || restoreDisplay;\n\t\t\t\tdisplay = jQuery.css( elem, \"display\" );\n\t\t\t\tshowHide( [ elem ] );\n\t\t\t}\n\t\t}\n\n\t\t// Animate inline elements as inline-block\n\t\tif ( display === \"inline\" || display === \"inline-block\" && restoreDisplay != null ) {\n\t\t\tif ( jQuery.css( elem, \"float\" ) === \"none\" ) {\n\n\t\t\t\t// Restore the original display value at the end of pure show/hide animations\n\t\t\t\tif ( !propTween ) {\n\t\t\t\t\tanim.done( function() {\n\t\t\t\t\t\tstyle.display = restoreDisplay;\n\t\t\t\t\t} );\n\t\t\t\t\tif ( restoreDisplay == null ) {\n\t\t\t\t\t\tdisplay = style.display;\n\t\t\t\t\t\trestoreDisplay = display === \"none\" ? \"\" : display;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tstyle.display = \"inline-block\";\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( opts.overflow ) {\n\t\tstyle.overflow = \"hidden\";\n\t\tanim.always( function() {\n\t\t\tstyle.overflow = opts.overflow[ 0 ];\n\t\t\tstyle.overflowX = opts.overflow[ 1 ];\n\t\t\tstyle.overflowY = opts.overflow[ 2 ];\n\t\t} );\n\t}\n\n\t// Implement show/hide animations\n\tpropTween = false;\n\tfor ( prop in orig ) {\n\n\t\t// General show/hide setup for this element animation\n\t\tif ( !propTween ) {\n\t\t\tif ( dataShow ) {\n\t\t\t\tif ( \"hidden\" in dataShow ) {\n\t\t\t\t\thidden = dataShow.hidden;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdataShow = dataPriv.access( elem, \"fxshow\", { display: restoreDisplay } );\n\t\t\t}\n\n\t\t\t// Store hidden/visible for toggle so `.stop().toggle()` \"reverses\"\n\t\t\tif ( toggle ) {\n\t\t\t\tdataShow.hidden = !hidden;\n\t\t\t}\n\n\t\t\t// Show elements before animating them\n\t\t\tif ( hidden ) {\n\t\t\t\tshowHide( [ elem ], true );\n\t\t\t}\n\n\t\t\t/* eslint-disable no-loop-func */\n\n\t\t\tanim.done( function() {\n\n\t\t\t\t/* eslint-enable no-loop-func */\n\n\t\t\t\t// The final step of a \"hide\" animation is actually hiding the element\n\t\t\t\tif ( !hidden ) {\n\t\t\t\t\tshowHide( [ elem ] );\n\t\t\t\t}\n\t\t\t\tdataPriv.remove( elem, \"fxshow\" );\n\t\t\t\tfor ( prop in orig ) {\n\t\t\t\t\tjQuery.style( elem, prop, orig[ prop ] );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Per-property setup\n\t\tpropTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );\n\t\tif ( !( prop in dataShow ) ) {\n\t\t\tdataShow[ prop ] = propTween.start;\n\t\t\tif ( hidden ) {\n\t\t\t\tpropTween.end = propTween.start;\n\t\t\t\tpropTween.start = 0;\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction propFilter( props, specialEasing ) {\n\tvar index, name, easing, value, hooks;\n\n\t// camelCase, specialEasing and expand cssHook pass\n\tfor ( index in props ) {\n\t\tname = camelCase( index );\n\t\teasing = specialEasing[ name ];\n\t\tvalue = props[ index ];\n\t\tif ( Array.isArray( value ) ) {\n\t\t\teasing = value[ 1 ];\n\t\t\tvalue = props[ index ] = value[ 0 ];\n\t\t}\n\n\t\tif ( index !== name ) {\n\t\t\tprops[ name ] = value;\n\t\t\tdelete props[ index ];\n\t\t}\n\n\t\thooks = jQuery.cssHooks[ name ];\n\t\tif ( hooks && \"expand\" in hooks ) {\n\t\t\tvalue = hooks.expand( value );\n\t\t\tdelete props[ name ];\n\n\t\t\t// Not quite $.extend, this won't overwrite existing keys.\n\t\t\t// Reusing 'index' because we have the correct \"name\"\n\t\t\tfor ( index in value ) {\n\t\t\t\tif ( !( index in props ) ) {\n\t\t\t\t\tprops[ index ] = value[ index ];\n\t\t\t\t\tspecialEasing[ index ] = easing;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tspecialEasing[ name ] = easing;\n\t\t}\n\t}\n}\n\nfunction Animation( elem, properties, options ) {\n\tvar result,\n\t\tstopped,\n\t\tindex = 0,\n\t\tlength = Animation.prefilters.length,\n\t\tdeferred = jQuery.Deferred().always( function() {\n\n\t\t\t// Don't match elem in the :animated selector\n\t\t\tdelete tick.elem;\n\t\t} ),\n\t\ttick = function() {\n\t\t\tif ( stopped ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tvar currentTime = fxNow || createFxNow(),\n\t\t\t\tremaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),\n\n\t\t\t\t// Support: Android 2.3 only\n\t\t\t\t// Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)\n\t\t\t\ttemp = remaining / animation.duration || 0,\n\t\t\t\tpercent = 1 - temp,\n\t\t\t\tindex = 0,\n\t\t\t\tlength = animation.tweens.length;\n\n\t\t\tfor ( ; index < length; index++ ) {\n\t\t\t\tanimation.tweens[ index ].run( percent );\n\t\t\t}\n\n\t\t\tdeferred.notifyWith( elem, [ animation, percent, remaining ] );\n\n\t\t\t// If there's more to do, yield\n\t\t\tif ( percent < 1 && length ) {\n\t\t\t\treturn remaining;\n\t\t\t}\n\n\t\t\t// If this was an empty animation, synthesize a final progress notification\n\t\t\tif ( !length ) {\n\t\t\t\tdeferred.notifyWith( elem, [ animation, 1, 0 ] );\n\t\t\t}\n\n\t\t\t// Resolve the animation and report its conclusion\n\t\t\tdeferred.resolveWith( elem, [ animation ] );\n\t\t\treturn false;\n\t\t},\n\t\tanimation = deferred.promise( {\n\t\t\telem: elem,\n\t\t\tprops: jQuery.extend( {}, properties ),\n\t\t\topts: jQuery.extend( true, {\n\t\t\t\tspecialEasing: {},\n\t\t\t\teasing: jQuery.easing._default\n\t\t\t}, options ),\n\t\t\toriginalProperties: properties,\n\t\t\toriginalOptions: options,\n\t\t\tstartTime: fxNow || createFxNow(),\n\t\t\tduration: options.duration,\n\t\t\ttweens: [],\n\t\t\tcreateTween: function( prop, end ) {\n\t\t\t\tvar tween = jQuery.Tween( elem, animation.opts, prop, end,\n\t\t\t\t\tanimation.opts.specialEasing[ prop ] || animation.opts.easing );\n\t\t\t\tanimation.tweens.push( tween );\n\t\t\t\treturn tween;\n\t\t\t},\n\t\t\tstop: function( gotoEnd ) {\n\t\t\t\tvar index = 0,\n\n\t\t\t\t\t// If we are going to the end, we want to run all the tweens\n\t\t\t\t\t// otherwise we skip this part\n\t\t\t\t\tlength = gotoEnd ? animation.tweens.length : 0;\n\t\t\t\tif ( stopped ) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t\tstopped = true;\n\t\t\t\tfor ( ; index < length; index++ ) {\n\t\t\t\t\tanimation.tweens[ index ].run( 1 );\n\t\t\t\t}\n\n\t\t\t\t// Resolve when we played the last frame; otherwise, reject\n\t\t\t\tif ( gotoEnd ) {\n\t\t\t\t\tdeferred.notifyWith( elem, [ animation, 1, 0 ] );\n\t\t\t\t\tdeferred.resolveWith( elem, [ animation, gotoEnd ] );\n\t\t\t\t} else {\n\t\t\t\t\tdeferred.rejectWith( elem, [ animation, gotoEnd ] );\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t}\n\t\t} ),\n\t\tprops = animation.props;\n\n\tpropFilter( props, animation.opts.specialEasing );\n\n\tfor ( ; index < length; index++ ) {\n\t\tresult = Animation.prefilters[ index ].call( animation, elem, props, animation.opts );\n\t\tif ( result ) {\n\t\t\tif ( isFunction( result.stop ) ) {\n\t\t\t\tjQuery._queueHooks( animation.elem, animation.opts.queue ).stop =\n\t\t\t\t\tresult.stop.bind( result );\n\t\t\t}\n\t\t\treturn result;\n\t\t}\n\t}\n\n\tjQuery.map( props, createTween, animation );\n\n\tif ( isFunction( animation.opts.start ) ) {\n\t\tanimation.opts.start.call( elem, animation );\n\t}\n\n\t// Attach callbacks from options\n\tanimation\n\t\t.progress( animation.opts.progress )\n\t\t.done( animation.opts.done, animation.opts.complete )\n\t\t.fail( animation.opts.fail )\n\t\t.always( animation.opts.always );\n\n\tjQuery.fx.timer(\n\t\tjQuery.extend( tick, {\n\t\t\telem: elem,\n\t\t\tanim: animation,\n\t\t\tqueue: animation.opts.queue\n\t\t} )\n\t);\n\n\treturn animation;\n}\n\njQuery.Animation = jQuery.extend( Animation, {\n\n\ttweeners: {\n\t\t\"*\": [ function( prop, value ) {\n\t\t\tvar tween = this.createTween( prop, value );\n\t\t\tadjustCSS( tween.elem, prop, rcssNum.exec( value ), tween );\n\t\t\treturn tween;\n\t\t} ]\n\t},\n\n\ttweener: function( props, callback ) {\n\t\tif ( isFunction( props ) ) {\n\t\t\tcallback = props;\n\t\t\tprops = [ \"*\" ];\n\t\t} else {\n\t\t\tprops = props.match( rnothtmlwhite );\n\t\t}\n\n\t\tvar prop,\n\t\t\tindex = 0,\n\t\t\tlength = props.length;\n\n\t\tfor ( ; index < length; index++ ) {\n\t\t\tprop = props[ index ];\n\t\t\tAnimation.tweeners[ prop ] = Animation.tweeners[ prop ] || [];\n\t\t\tAnimation.tweeners[ prop ].unshift( callback );\n\t\t}\n\t},\n\n\tprefilters: [ defaultPrefilter ],\n\n\tprefilter: function( callback, prepend ) {\n\t\tif ( prepend ) {\n\t\t\tAnimation.prefilters.unshift( callback );\n\t\t} else {\n\t\t\tAnimation.prefilters.push( callback );\n\t\t}\n\t}\n} );\n\njQuery.speed = function( speed, easing, fn ) {\n\tvar opt = speed && typeof speed === \"object\" ? jQuery.extend( {}, speed ) : {\n\t\tcomplete: fn || !fn && easing ||\n\t\t\tisFunction( speed ) && speed,\n\t\tduration: speed,\n\t\teasing: fn && easing || easing && !isFunction( easing ) && easing\n\t};\n\n\t// Go to the end state if fx are off\n\tif ( jQuery.fx.off ) {\n\t\topt.duration = 0;\n\n\t} else {\n\t\tif ( typeof opt.duration !== \"number\" ) {\n\t\t\tif ( opt.duration in jQuery.fx.speeds ) {\n\t\t\t\topt.duration = jQuery.fx.speeds[ opt.duration ];\n\n\t\t\t} else {\n\t\t\t\topt.duration = jQuery.fx.speeds._default;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Normalize opt.queue - true/undefined/null -> \"fx\"\n\tif ( opt.queue == null || opt.queue === true ) {\n\t\topt.queue = \"fx\";\n\t}\n\n\t// Queueing\n\topt.old = opt.complete;\n\n\topt.complete = function() {\n\t\tif ( isFunction( opt.old ) ) {\n\t\t\topt.old.call( this );\n\t\t}\n\n\t\tif ( opt.queue ) {\n\t\t\tjQuery.dequeue( this, opt.queue );\n\t\t}\n\t};\n\n\treturn opt;\n};\n\njQuery.fn.extend( {\n\tfadeTo: function( speed, to, easing, callback ) {\n\n\t\t// Show any hidden elements after setting opacity to 0\n\t\treturn this.filter( isHiddenWithinTree ).css( \"opacity\", 0 ).show()\n\n\t\t\t// Animate to the value specified\n\t\t\t.end().animate( { opacity: to }, speed, easing, callback );\n\t},\n\tanimate: function( prop, speed, easing, callback ) {\n\t\tvar empty = jQuery.isEmptyObject( prop ),\n\t\t\toptall = jQuery.speed( speed, easing, callback ),\n\t\t\tdoAnimation = function() {\n\n\t\t\t\t// Operate on a copy of prop so per-property easing won't be lost\n\t\t\t\tvar anim = Animation( this, jQuery.extend( {}, prop ), optall );\n\n\t\t\t\t// Empty animations, or finishing resolves immediately\n\t\t\t\tif ( empty || dataPriv.get( this, \"finish\" ) ) {\n\t\t\t\t\tanim.stop( true );\n\t\t\t\t}\n\t\t\t};\n\n\t\tdoAnimation.finish = doAnimation;\n\n\t\treturn empty || optall.queue === false ?\n\t\t\tthis.each( doAnimation ) :\n\t\t\tthis.queue( optall.queue, doAnimation );\n\t},\n\tstop: function( type, clearQueue, gotoEnd ) {\n\t\tvar stopQueue = function( hooks ) {\n\t\t\tvar stop = hooks.stop;\n\t\t\tdelete hooks.stop;\n\t\t\tstop( gotoEnd );\n\t\t};\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tgotoEnd = clearQueue;\n\t\t\tclearQueue = type;\n\t\t\ttype = undefined;\n\t\t}\n\t\tif ( clearQueue ) {\n\t\t\tthis.queue( type || \"fx\", [] );\n\t\t}\n\n\t\treturn this.each( function() {\n\t\t\tvar dequeue = true,\n\t\t\t\tindex = type != null && type + \"queueHooks\",\n\t\t\t\ttimers = jQuery.timers,\n\t\t\t\tdata = dataPriv.get( this );\n\n\t\t\tif ( index ) {\n\t\t\t\tif ( data[ index ] && data[ index ].stop ) {\n\t\t\t\t\tstopQueue( data[ index ] );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor ( index in data ) {\n\t\t\t\t\tif ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {\n\t\t\t\t\t\tstopQueue( data[ index ] );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor ( index = timers.length; index--; ) {\n\t\t\t\tif ( timers[ index ].elem === this &&\n\t\t\t\t\t( type == null || timers[ index ].queue === type ) ) {\n\n\t\t\t\t\ttimers[ index ].anim.stop( gotoEnd );\n\t\t\t\t\tdequeue = false;\n\t\t\t\t\ttimers.splice( index, 1 );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Start the next in the queue if the last step wasn't forced.\n\t\t\t// Timers currently will call their complete callbacks, which\n\t\t\t// will dequeue but only if they were gotoEnd.\n\t\t\tif ( dequeue || !gotoEnd ) {\n\t\t\t\tjQuery.dequeue( this, type );\n\t\t\t}\n\t\t} );\n\t},\n\tfinish: function( type ) {\n\t\tif ( type !== false ) {\n\t\t\ttype = type || \"fx\";\n\t\t}\n\t\treturn this.each( function() {\n\t\t\tvar index,\n\t\t\t\tdata = dataPriv.get( this ),\n\t\t\t\tqueue = data[ type + \"queue\" ],\n\t\t\t\thooks = data[ type + \"queueHooks\" ],\n\t\t\t\ttimers = jQuery.timers,\n\t\t\t\tlength = queue ? queue.length : 0;\n\n\t\t\t// Enable finishing flag on private data\n\t\t\tdata.finish = true;\n\n\t\t\t// Empty the queue first\n\t\t\tjQuery.queue( this, type, [] );\n\n\t\t\tif ( hooks && hooks.stop ) {\n\t\t\t\thooks.stop.call( this, true );\n\t\t\t}\n\n\t\t\t// Look for any active animations, and finish them\n\t\t\tfor ( index = timers.length; index--; ) {\n\t\t\t\tif ( timers[ index ].elem === this && timers[ index ].queue === type ) {\n\t\t\t\t\ttimers[ index ].anim.stop( true );\n\t\t\t\t\ttimers.splice( index, 1 );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Look for any animations in the old queue and finish them\n\t\t\tfor ( index = 0; index < length; index++ ) {\n\t\t\t\tif ( queue[ index ] && queue[ index ].finish ) {\n\t\t\t\t\tqueue[ index ].finish.call( this );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Turn off finishing flag\n\t\t\tdelete data.finish;\n\t\t} );\n\t}\n} );\n\njQuery.each( [ \"toggle\", \"show\", \"hide\" ], function( _i, name ) {\n\tvar cssFn = jQuery.fn[ name ];\n\tjQuery.fn[ name ] = function( speed, easing, callback ) {\n\t\treturn speed == null || typeof speed === \"boolean\" ?\n\t\t\tcssFn.apply( this, arguments ) :\n\t\t\tthis.animate( genFx( name, true ), speed, easing, callback );\n\t};\n} );\n\n// Generate shortcuts for custom animations\njQuery.each( {\n\tslideDown: genFx( \"show\" ),\n\tslideUp: genFx( \"hide\" ),\n\tslideToggle: genFx( \"toggle\" ),\n\tfadeIn: { opacity: \"show\" },\n\tfadeOut: { opacity: \"hide\" },\n\tfadeToggle: { opacity: \"toggle\" }\n}, function( name, props ) {\n\tjQuery.fn[ name ] = function( speed, easing, callback ) {\n\t\treturn this.animate( props, speed, easing, callback );\n\t};\n} );\n\njQuery.timers = [];\njQuery.fx.tick = function() {\n\tvar timer,\n\t\ti = 0,\n\t\ttimers = jQuery.timers;\n\n\tfxNow = Date.now();\n\n\tfor ( ; i < timers.length; i++ ) {\n\t\ttimer = timers[ i ];\n\n\t\t// Run the timer and safely remove it when done (allowing for external removal)\n\t\tif ( !timer() && timers[ i ] === timer ) {\n\t\t\ttimers.splice( i--, 1 );\n\t\t}\n\t}\n\n\tif ( !timers.length ) {\n\t\tjQuery.fx.stop();\n\t}\n\tfxNow = undefined;\n};\n\njQuery.fx.timer = function( timer ) {\n\tjQuery.timers.push( timer );\n\tjQuery.fx.start();\n};\n\njQuery.fx.interval = 13;\njQuery.fx.start = function() {\n\tif ( inProgress ) {\n\t\treturn;\n\t}\n\n\tinProgress = true;\n\tschedule();\n};\n\njQuery.fx.stop = function() {\n\tinProgress = null;\n};\n\njQuery.fx.speeds = {\n\tslow: 600,\n\tfast: 200,\n\n\t// Default speed\n\t_default: 400\n};\n\n\n// Based off of the plugin by Clint Helfers, with permission.\n// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/\njQuery.fn.delay = function( time, type ) {\n\ttime = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;\n\ttype = type || \"fx\";\n\n\treturn this.queue( type, function( next, hooks ) {\n\t\tvar timeout = window.setTimeout( next, time );\n\t\thooks.stop = function() {\n\t\t\twindow.clearTimeout( timeout );\n\t\t};\n\t} );\n};\n\n\n( function() {\n\tvar input = document.createElement( \"input\" ),\n\t\tselect = document.createElement( \"select\" ),\n\t\topt = select.appendChild( document.createElement( \"option\" ) );\n\n\tinput.type = \"checkbox\";\n\n\t// Support: Android <=4.3 only\n\t// Default value for a checkbox should be \"on\"\n\tsupport.checkOn = input.value !== \"\";\n\n\t// Support: IE <=11 only\n\t// Must access selectedIndex to make default options select\n\tsupport.optSelected = opt.selected;\n\n\t// Support: IE <=11 only\n\t// An input loses its value after becoming a radio\n\tinput = document.createElement( \"input\" );\n\tinput.value = \"t\";\n\tinput.type = \"radio\";\n\tsupport.radioValue = input.value === \"t\";\n} )();\n\n\nvar boolHook,\n\tattrHandle = jQuery.expr.attrHandle;\n\njQuery.fn.extend( {\n\tattr: function( name, value ) {\n\t\treturn access( this, jQuery.attr, name, value, arguments.length > 1 );\n\t},\n\n\tremoveAttr: function( name ) {\n\t\treturn this.each( function() {\n\t\t\tjQuery.removeAttr( this, name );\n\t\t} );\n\t}\n} );\n\njQuery.extend( {\n\tattr: function( elem, name, value ) {\n\t\tvar ret, hooks,\n\t\t\tnType = elem.nodeType;\n\n\t\t// Don't get/set attributes on text, comment and attribute nodes\n\t\tif ( nType === 3 || nType === 8 || nType === 2 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Fallback to prop when attributes are not supported\n\t\tif ( typeof elem.getAttribute === \"undefined\" ) {\n\t\t\treturn jQuery.prop( elem, name, value );\n\t\t}\n\n\t\t// Attribute hooks are determined by the lowercase version\n\t\t// Grab necessary hook if one is defined\n\t\tif ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {\n\t\t\thooks = jQuery.attrHooks[ name.toLowerCase() ] ||\n\t\t\t\t( jQuery.expr.match.bool.test( name ) ? boolHook : undefined );\n\t\t}\n\n\t\tif ( value !== undefined ) {\n\t\t\tif ( value === null ) {\n\t\t\t\tjQuery.removeAttr( elem, name );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( hooks && \"set\" in hooks &&\n\t\t\t\t( ret = hooks.set( elem, value, name ) ) !== undefined ) {\n\t\t\t\treturn ret;\n\t\t\t}\n\n\t\t\telem.setAttribute( name, value + \"\" );\n\t\t\treturn value;\n\t\t}\n\n\t\tif ( hooks && \"get\" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {\n\t\t\treturn ret;\n\t\t}\n\n\t\tret = jQuery.find.attr( elem, name );\n\n\t\t// Non-existent attributes return null, we normalize to undefined\n\t\treturn ret == null ? undefined : ret;\n\t},\n\n\tattrHooks: {\n\t\ttype: {\n\t\t\tset: function( elem, value ) {\n\t\t\t\tif ( !support.radioValue && value === \"radio\" &&\n\t\t\t\t\tnodeName( elem, \"input\" ) ) {\n\t\t\t\t\tvar val = elem.value;\n\t\t\t\t\telem.setAttribute( \"type\", value );\n\t\t\t\t\tif ( val ) {\n\t\t\t\t\t\telem.value = val;\n\t\t\t\t\t}\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\tremoveAttr: function( elem, value ) {\n\t\tvar name,\n\t\t\ti = 0,\n\n\t\t\t// Attribute names can contain non-HTML whitespace characters\n\t\t\t// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n\t\t\tattrNames = value && value.match( rnothtmlwhite );\n\n\t\tif ( attrNames && elem.nodeType === 1 ) {\n\t\t\twhile ( ( name = attrNames[ i++ ] ) ) {\n\t\t\t\telem.removeAttribute( name );\n\t\t\t}\n\t\t}\n\t}\n} );\n\n// Hooks for boolean attributes\nboolHook = {\n\tset: function( elem, value, name ) {\n\t\tif ( value === false ) {\n\n\t\t\t// Remove boolean attributes when set to false\n\t\t\tjQuery.removeAttr( elem, name );\n\t\t} else {\n\t\t\telem.setAttribute( name, name );\n\t\t}\n\t\treturn name;\n\t}\n};\n\njQuery.each( jQuery.expr.match.bool.source.match( /\\w+/g ), function( _i, name ) {\n\tvar getter = attrHandle[ name ] || jQuery.find.attr;\n\n\tattrHandle[ name ] = function( elem, name, isXML ) {\n\t\tvar ret, handle,\n\t\t\tlowercaseName = name.toLowerCase();\n\n\t\tif ( !isXML ) {\n\n\t\t\t// Avoid an infinite loop by temporarily removing this function from the getter\n\t\t\thandle = attrHandle[ lowercaseName ];\n\t\t\tattrHandle[ lowercaseName ] = ret;\n\t\t\tret = getter( elem, name, isXML ) != null ?\n\t\t\t\tlowercaseName :\n\t\t\t\tnull;\n\t\t\tattrHandle[ lowercaseName ] = handle;\n\t\t}\n\t\treturn ret;\n\t};\n} );\n\n\n\n\nvar rfocusable = /^(?:input|select|textarea|button)$/i,\n\trclickable = /^(?:a|area)$/i;\n\njQuery.fn.extend( {\n\tprop: function( name, value ) {\n\t\treturn access( this, jQuery.prop, name, value, arguments.length > 1 );\n\t},\n\n\tremoveProp: function( name ) {\n\t\treturn this.each( function() {\n\t\t\tdelete this[ jQuery.propFix[ name ] || name ];\n\t\t} );\n\t}\n} );\n\njQuery.extend( {\n\tprop: function( elem, name, value ) {\n\t\tvar ret, hooks,\n\t\t\tnType = elem.nodeType;\n\n\t\t// Don't get/set properties on text, comment and attribute nodes\n\t\tif ( nType === 3 || nType === 8 || nType === 2 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {\n\n\t\t\t// Fix name and attach hooks\n\t\t\tname = jQuery.propFix[ name ] || name;\n\t\t\thooks = jQuery.propHooks[ name ];\n\t\t}\n\n\t\tif ( value !== undefined ) {\n\t\t\tif ( hooks && \"set\" in hooks &&\n\t\t\t\t( ret = hooks.set( elem, value, name ) ) !== undefined ) {\n\t\t\t\treturn ret;\n\t\t\t}\n\n\t\t\treturn ( elem[ name ] = value );\n\t\t}\n\n\t\tif ( hooks && \"get\" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {\n\t\t\treturn ret;\n\t\t}\n\n\t\treturn elem[ name ];\n\t},\n\n\tpropHooks: {\n\t\ttabIndex: {\n\t\t\tget: function( elem ) {\n\n\t\t\t\t// Support: IE <=9 - 11 only\n\t\t\t\t// elem.tabIndex doesn't always return the\n\t\t\t\t// correct value when it hasn't been explicitly set\n\t\t\t\t// https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/\n\t\t\t\t// Use proper attribute retrieval(#12072)\n\t\t\t\tvar tabindex = jQuery.find.attr( elem, \"tabindex\" );\n\n\t\t\t\tif ( tabindex ) {\n\t\t\t\t\treturn parseInt( tabindex, 10 );\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\trfocusable.test( elem.nodeName ) ||\n\t\t\t\t\trclickable.test( elem.nodeName ) &&\n\t\t\t\t\telem.href\n\t\t\t\t) {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t}\n\t},\n\n\tpropFix: {\n\t\t\"for\": \"htmlFor\",\n\t\t\"class\": \"className\"\n\t}\n} );\n\n// Support: IE <=11 only\n// Accessing the selectedIndex property\n// forces the browser to respect setting selected\n// on the option\n// The getter ensures a default option is selected\n// when in an optgroup\n// eslint rule \"no-unused-expressions\" is disabled for this code\n// since it considers such accessions noop\nif ( !support.optSelected ) {\n\tjQuery.propHooks.selected = {\n\t\tget: function( elem ) {\n\n\t\t\t/* eslint no-unused-expressions: \"off\" */\n\n\t\t\tvar parent = elem.parentNode;\n\t\t\tif ( parent && parent.parentNode ) {\n\t\t\t\tparent.parentNode.selectedIndex;\n\t\t\t}\n\t\t\treturn null;\n\t\t},\n\t\tset: function( elem ) {\n\n\t\t\t/* eslint no-unused-expressions: \"off\" */\n\n\t\t\tvar parent = elem.parentNode;\n\t\t\tif ( parent ) {\n\t\t\t\tparent.selectedIndex;\n\n\t\t\t\tif ( parent.parentNode ) {\n\t\t\t\t\tparent.parentNode.selectedIndex;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\njQuery.each( [\n\t\"tabIndex\",\n\t\"readOnly\",\n\t\"maxLength\",\n\t\"cellSpacing\",\n\t\"cellPadding\",\n\t\"rowSpan\",\n\t\"colSpan\",\n\t\"useMap\",\n\t\"frameBorder\",\n\t\"contentEditable\"\n], function() {\n\tjQuery.propFix[ this.toLowerCase() ] = this;\n} );\n\n\n\n\n\t// Strip and collapse whitespace according to HTML spec\n\t// https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace\n\tfunction stripAndCollapse( value ) {\n\t\tvar tokens = value.match( rnothtmlwhite ) || [];\n\t\treturn tokens.join( \" \" );\n\t}\n\n\nfunction getClass( elem ) {\n\treturn elem.getAttribute && elem.getAttribute( \"class\" ) || \"\";\n}\n\nfunction classesToArray( value ) {\n\tif ( Array.isArray( value ) ) {\n\t\treturn value;\n\t}\n\tif ( typeof value === \"string\" ) {\n\t\treturn value.match( rnothtmlwhite ) || [];\n\t}\n\treturn [];\n}\n\njQuery.fn.extend( {\n\taddClass: function( value ) {\n\t\tvar classes, elem, cur, curValue, clazz, j, finalValue,\n\t\t\ti = 0;\n\n\t\tif ( isFunction( value ) ) {\n\t\t\treturn this.each( function( j ) {\n\t\t\t\tjQuery( this ).addClass( value.call( this, j, getClass( this ) ) );\n\t\t\t} );\n\t\t}\n\n\t\tclasses = classesToArray( value );\n\n\t\tif ( classes.length ) {\n\t\t\twhile ( ( elem = this[ i++ ] ) ) {\n\t\t\t\tcurValue = getClass( elem );\n\t\t\t\tcur = elem.nodeType === 1 && ( \" \" + stripAndCollapse( curValue ) + \" \" );\n\n\t\t\t\tif ( cur ) {\n\t\t\t\t\tj = 0;\n\t\t\t\t\twhile ( ( clazz = classes[ j++ ] ) ) {\n\t\t\t\t\t\tif ( cur.indexOf( \" \" + clazz + \" \" ) < 0 ) {\n\t\t\t\t\t\t\tcur += clazz + \" \";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Only assign if different to avoid unneeded rendering.\n\t\t\t\t\tfinalValue = stripAndCollapse( cur );\n\t\t\t\t\tif ( curValue !== finalValue ) {\n\t\t\t\t\t\telem.setAttribute( \"class\", finalValue );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\tremoveClass: function( value ) {\n\t\tvar classes, elem, cur, curValue, clazz, j, finalValue,\n\t\t\ti = 0;\n\n\t\tif ( isFunction( value ) ) {\n\t\t\treturn this.each( function( j ) {\n\t\t\t\tjQuery( this ).removeClass( value.call( this, j, getClass( this ) ) );\n\t\t\t} );\n\t\t}\n\n\t\tif ( !arguments.length ) {\n\t\t\treturn this.attr( \"class\", \"\" );\n\t\t}\n\n\t\tclasses = classesToArray( value );\n\n\t\tif ( classes.length ) {\n\t\t\twhile ( ( elem = this[ i++ ] ) ) {\n\t\t\t\tcurValue = getClass( elem );\n\n\t\t\t\t// This expression is here for better compressibility (see addClass)\n\t\t\t\tcur = elem.nodeType === 1 && ( \" \" + stripAndCollapse( curValue ) + \" \" );\n\n\t\t\t\tif ( cur ) {\n\t\t\t\t\tj = 0;\n\t\t\t\t\twhile ( ( clazz = classes[ j++ ] ) ) {\n\n\t\t\t\t\t\t// Remove *all* instances\n\t\t\t\t\t\twhile ( cur.indexOf( \" \" + clazz + \" \" ) > -1 ) {\n\t\t\t\t\t\t\tcur = cur.replace( \" \" + clazz + \" \", \" \" );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Only assign if different to avoid unneeded rendering.\n\t\t\t\t\tfinalValue = stripAndCollapse( cur );\n\t\t\t\t\tif ( curValue !== finalValue ) {\n\t\t\t\t\t\telem.setAttribute( \"class\", finalValue );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\ttoggleClass: function( value, stateVal ) {\n\t\tvar type = typeof value,\n\t\t\tisValidValue = type === \"string\" || Array.isArray( value );\n\n\t\tif ( typeof stateVal === \"boolean\" && isValidValue ) {\n\t\t\treturn stateVal ? this.addClass( value ) : this.removeClass( value );\n\t\t}\n\n\t\tif ( isFunction( value ) ) {\n\t\t\treturn this.each( function( i ) {\n\t\t\t\tjQuery( this ).toggleClass(\n\t\t\t\t\tvalue.call( this, i, getClass( this ), stateVal ),\n\t\t\t\t\tstateVal\n\t\t\t\t);\n\t\t\t} );\n\t\t}\n\n\t\treturn this.each( function() {\n\t\t\tvar className, i, self, classNames;\n\n\t\t\tif ( isValidValue ) {\n\n\t\t\t\t// Toggle individual class names\n\t\t\t\ti = 0;\n\t\t\t\tself = jQuery( this );\n\t\t\t\tclassNames = classesToArray( value );\n\n\t\t\t\twhile ( ( className = classNames[ i++ ] ) ) {\n\n\t\t\t\t\t// Check each className given, space separated list\n\t\t\t\t\tif ( self.hasClass( className ) ) {\n\t\t\t\t\t\tself.removeClass( className );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tself.addClass( className );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t// Toggle whole class name\n\t\t\t} else if ( value === undefined || type === \"boolean\" ) {\n\t\t\t\tclassName = getClass( this );\n\t\t\t\tif ( className ) {\n\n\t\t\t\t\t// Store className if set\n\t\t\t\t\tdataPriv.set( this, \"__className__\", className );\n\t\t\t\t}\n\n\t\t\t\t// If the element has a class name or if we're passed `false`,\n\t\t\t\t// then remove the whole classname (if there was one, the above saved it).\n\t\t\t\t// Otherwise bring back whatever was previously saved (if anything),\n\t\t\t\t// falling back to the empty string if nothing was stored.\n\t\t\t\tif ( this.setAttribute ) {\n\t\t\t\t\tthis.setAttribute( \"class\",\n\t\t\t\t\t\tclassName || value === false ?\n\t\t\t\t\t\t\t\"\" :\n\t\t\t\t\t\t\tdataPriv.get( this, \"__className__\" ) || \"\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t},\n\n\thasClass: function( selector ) {\n\t\tvar className, elem,\n\t\t\ti = 0;\n\n\t\tclassName = \" \" + selector + \" \";\n\t\twhile ( ( elem = this[ i++ ] ) ) {\n\t\t\tif ( elem.nodeType === 1 &&\n\t\t\t\t( \" \" + stripAndCollapse( getClass( elem ) ) + \" \" ).indexOf( className ) > -1 ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n} );\n\n\n\n\nvar rreturn = /\\r/g;\n\njQuery.fn.extend( {\n\tval: function( value ) {\n\t\tvar hooks, ret, valueIsFunction,\n\t\t\telem = this[ 0 ];\n\n\t\tif ( !arguments.length ) {\n\t\t\tif ( elem ) {\n\t\t\t\thooks = jQuery.valHooks[ elem.type ] ||\n\t\t\t\t\tjQuery.valHooks[ elem.nodeName.toLowerCase() ];\n\n\t\t\t\tif ( hooks &&\n\t\t\t\t\t\"get\" in hooks &&\n\t\t\t\t\t( ret = hooks.get( elem, \"value\" ) ) !== undefined\n\t\t\t\t) {\n\t\t\t\t\treturn ret;\n\t\t\t\t}\n\n\t\t\t\tret = elem.value;\n\n\t\t\t\t// Handle most common string cases\n\t\t\t\tif ( typeof ret === \"string\" ) {\n\t\t\t\t\treturn ret.replace( rreturn, \"\" );\n\t\t\t\t}\n\n\t\t\t\t// Handle cases where value is null/undef or number\n\t\t\t\treturn ret == null ? \"\" : ret;\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tvalueIsFunction = isFunction( value );\n\n\t\treturn this.each( function( i ) {\n\t\t\tvar val;\n\n\t\t\tif ( this.nodeType !== 1 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( valueIsFunction ) {\n\t\t\t\tval = value.call( this, i, jQuery( this ).val() );\n\t\t\t} else {\n\t\t\t\tval = value;\n\t\t\t}\n\n\t\t\t// Treat null/undefined as \"\"; convert numbers to string\n\t\t\tif ( val == null ) {\n\t\t\t\tval = \"\";\n\n\t\t\t} else if ( typeof val === \"number\" ) {\n\t\t\t\tval += \"\";\n\n\t\t\t} else if ( Array.isArray( val ) ) {\n\t\t\t\tval = jQuery.map( val, function( value ) {\n\t\t\t\t\treturn value == null ? \"\" : value + \"\";\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\thooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];\n\n\t\t\t// If set returns undefined, fall back to normal setting\n\t\t\tif ( !hooks || !( \"set\" in hooks ) || hooks.set( this, val, \"value\" ) === undefined ) {\n\t\t\t\tthis.value = val;\n\t\t\t}\n\t\t} );\n\t}\n} );\n\njQuery.extend( {\n\tvalHooks: {\n\t\toption: {\n\t\t\tget: function( elem ) {\n\n\t\t\t\tvar val = jQuery.find.attr( elem, \"value\" );\n\t\t\t\treturn val != null ?\n\t\t\t\t\tval :\n\n\t\t\t\t\t// Support: IE <=10 - 11 only\n\t\t\t\t\t// option.text throws exceptions (#14686, #14858)\n\t\t\t\t\t// Strip and collapse whitespace\n\t\t\t\t\t// https://html.spec.whatwg.org/#strip-and-collapse-whitespace\n\t\t\t\t\tstripAndCollapse( jQuery.text( elem ) );\n\t\t\t}\n\t\t},\n\t\tselect: {\n\t\t\tget: function( elem ) {\n\t\t\t\tvar value, option, i,\n\t\t\t\t\toptions = elem.options,\n\t\t\t\t\tindex = elem.selectedIndex,\n\t\t\t\t\tone = elem.type === \"select-one\",\n\t\t\t\t\tvalues = one ? null : [],\n\t\t\t\t\tmax = one ? index + 1 : options.length;\n\n\t\t\t\tif ( index < 0 ) {\n\t\t\t\t\ti = max;\n\n\t\t\t\t} else {\n\t\t\t\t\ti = one ? index : 0;\n\t\t\t\t}\n\n\t\t\t\t// Loop through all the selected options\n\t\t\t\tfor ( ; i < max; i++ ) {\n\t\t\t\t\toption = options[ i ];\n\n\t\t\t\t\t// Support: IE <=9 only\n\t\t\t\t\t// IE8-9 doesn't update selected after form reset (#2551)\n\t\t\t\t\tif ( ( option.selected || i === index ) &&\n\n\t\t\t\t\t\t\t// Don't return options that are disabled or in a disabled optgroup\n\t\t\t\t\t\t\t!option.disabled &&\n\t\t\t\t\t\t\t( !option.parentNode.disabled ||\n\t\t\t\t\t\t\t\t!nodeName( option.parentNode, \"optgroup\" ) ) ) {\n\n\t\t\t\t\t\t// Get the specific value for the option\n\t\t\t\t\t\tvalue = jQuery( option ).val();\n\n\t\t\t\t\t\t// We don't need an array for one selects\n\t\t\t\t\t\tif ( one ) {\n\t\t\t\t\t\t\treturn value;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Multi-Selects return an array\n\t\t\t\t\t\tvalues.push( value );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn values;\n\t\t\t},\n\n\t\t\tset: function( elem, value ) {\n\t\t\t\tvar optionSet, option,\n\t\t\t\t\toptions = elem.options,\n\t\t\t\t\tvalues = jQuery.makeArray( value ),\n\t\t\t\t\ti = options.length;\n\n\t\t\t\twhile ( i-- ) {\n\t\t\t\t\toption = options[ i ];\n\n\t\t\t\t\t/* eslint-disable no-cond-assign */\n\n\t\t\t\t\tif ( option.selected =\n\t\t\t\t\t\tjQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1\n\t\t\t\t\t) {\n\t\t\t\t\t\toptionSet = true;\n\t\t\t\t\t}\n\n\t\t\t\t\t/* eslint-enable no-cond-assign */\n\t\t\t\t}\n\n\t\t\t\t// Force browsers to behave consistently when non-matching value is set\n\t\t\t\tif ( !optionSet ) {\n\t\t\t\t\telem.selectedIndex = -1;\n\t\t\t\t}\n\t\t\t\treturn values;\n\t\t\t}\n\t\t}\n\t}\n} );\n\n// Radios and checkboxes getter/setter\njQuery.each( [ \"radio\", \"checkbox\" ], function() {\n\tjQuery.valHooks[ this ] = {\n\t\tset: function( elem, value ) {\n\t\t\tif ( Array.isArray( value ) ) {\n\t\t\t\treturn ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );\n\t\t\t}\n\t\t}\n\t};\n\tif ( !support.checkOn ) {\n\t\tjQuery.valHooks[ this ].get = function( elem ) {\n\t\t\treturn elem.getAttribute( \"value\" ) === null ? \"on\" : elem.value;\n\t\t};\n\t}\n} );\n\n\n\n\n// Return jQuery for attributes-only inclusion\n\n\nsupport.focusin = \"onfocusin\" in window;\n\n\nvar rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,\n\tstopPropagationCallback = function( e ) {\n\t\te.stopPropagation();\n\t};\n\njQuery.extend( jQuery.event, {\n\n\ttrigger: function( event, data, elem, onlyHandlers ) {\n\n\t\tvar i, cur, tmp, bubbleType, ontype, handle, special, lastElement,\n\t\t\teventPath = [ elem || document ],\n\t\t\ttype = hasOwn.call( event, \"type\" ) ? event.type : event,\n\t\t\tnamespaces = hasOwn.call( event, \"namespace\" ) ? event.namespace.split( \".\" ) : [];\n\n\t\tcur = lastElement = tmp = elem = elem || document;\n\n\t\t// Don't do events on text and comment nodes\n\t\tif ( elem.nodeType === 3 || elem.nodeType === 8 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// focus/blur morphs to focusin/out; ensure we're not firing them right now\n\t\tif ( rfocusMorph.test( type + jQuery.event.triggered ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( type.indexOf( \".\" ) > -1 ) {\n\n\t\t\t// Namespaced trigger; create a regexp to match event type in handle()\n\t\t\tnamespaces = type.split( \".\" );\n\t\t\ttype = namespaces.shift();\n\t\t\tnamespaces.sort();\n\t\t}\n\t\tontype = type.indexOf( \":\" ) < 0 && \"on\" + type;\n\n\t\t// Caller can pass in a jQuery.Event object, Object, or just an event type string\n\t\tevent = event[ jQuery.expando ] ?\n\t\t\tevent :\n\t\t\tnew jQuery.Event( type, typeof event === \"object\" && event );\n\n\t\t// Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)\n\t\tevent.isTrigger = onlyHandlers ? 2 : 3;\n\t\tevent.namespace = namespaces.join( \".\" );\n\t\tevent.rnamespace = event.namespace ?\n\t\t\tnew RegExp( \"(^|\\\\.)\" + namespaces.join( \"\\\\.(?:.*\\\\.|)\" ) + \"(\\\\.|$)\" ) :\n\t\t\tnull;\n\n\t\t// Clean up the event in case it is being reused\n\t\tevent.result = undefined;\n\t\tif ( !event.target ) {\n\t\t\tevent.target = elem;\n\t\t}\n\n\t\t// Clone any incoming data and prepend the event, creating the handler arg list\n\t\tdata = data == null ?\n\t\t\t[ event ] :\n\t\t\tjQuery.makeArray( data, [ event ] );\n\n\t\t// Allow special events to draw outside the lines\n\t\tspecial = jQuery.event.special[ type ] || {};\n\t\tif ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Determine event propagation path in advance, per W3C events spec (#9951)\n\t\t// Bubble up to document, then to window; watch for a global ownerDocument var (#9724)\n\t\tif ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) {\n\n\t\t\tbubbleType = special.delegateType || type;\n\t\t\tif ( !rfocusMorph.test( bubbleType + type ) ) {\n\t\t\t\tcur = cur.parentNode;\n\t\t\t}\n\t\t\tfor ( ; cur; cur = cur.parentNode ) {\n\t\t\t\teventPath.push( cur );\n\t\t\t\ttmp = cur;\n\t\t\t}\n\n\t\t\t// Only add window if we got to document (e.g., not plain obj or detached DOM)\n\t\t\tif ( tmp === ( elem.ownerDocument || document ) ) {\n\t\t\t\teventPath.push( tmp.defaultView || tmp.parentWindow || window );\n\t\t\t}\n\t\t}\n\n\t\t// Fire handlers on the event path\n\t\ti = 0;\n\t\twhile ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) {\n\t\t\tlastElement = cur;\n\t\t\tevent.type = i > 1 ?\n\t\t\t\tbubbleType :\n\t\t\t\tspecial.bindType || type;\n\n\t\t\t// jQuery handler\n\t\t\thandle = ( dataPriv.get( cur, \"events\" ) || Object.create( null ) )[ event.type ] &&\n\t\t\t\tdataPriv.get( cur, \"handle\" );\n\t\t\tif ( handle ) {\n\t\t\t\thandle.apply( cur, data );\n\t\t\t}\n\n\t\t\t// Native handler\n\t\t\thandle = ontype && cur[ ontype ];\n\t\t\tif ( handle && handle.apply && acceptData( cur ) ) {\n\t\t\t\tevent.result = handle.apply( cur, data );\n\t\t\t\tif ( event.result === false ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tevent.type = type;\n\n\t\t// If nobody prevented the default action, do it now\n\t\tif ( !onlyHandlers && !event.isDefaultPrevented() ) {\n\n\t\t\tif ( ( !special._default ||\n\t\t\t\tspecial._default.apply( eventPath.pop(), data ) === false ) &&\n\t\t\t\tacceptData( elem ) ) {\n\n\t\t\t\t// Call a native DOM method on the target with the same name as the event.\n\t\t\t\t// Don't do default actions on window, that's where global variables be (#6170)\n\t\t\t\tif ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) {\n\n\t\t\t\t\t// Don't re-trigger an onFOO event when we call its FOO() method\n\t\t\t\t\ttmp = elem[ ontype ];\n\n\t\t\t\t\tif ( tmp ) {\n\t\t\t\t\t\telem[ ontype ] = null;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Prevent re-triggering of the same event, since we already bubbled it above\n\t\t\t\t\tjQuery.event.triggered = type;\n\n\t\t\t\t\tif ( event.isPropagationStopped() ) {\n\t\t\t\t\t\tlastElement.addEventListener( type, stopPropagationCallback );\n\t\t\t\t\t}\n\n\t\t\t\t\telem[ type ]();\n\n\t\t\t\t\tif ( event.isPropagationStopped() ) {\n\t\t\t\t\t\tlastElement.removeEventListener( type, stopPropagationCallback );\n\t\t\t\t\t}\n\n\t\t\t\t\tjQuery.event.triggered = undefined;\n\n\t\t\t\t\tif ( tmp ) {\n\t\t\t\t\t\telem[ ontype ] = tmp;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn event.result;\n\t},\n\n\t// Piggyback on a donor event to simulate a different one\n\t// Used only for `focus(in | out)` events\n\tsimulate: function( type, elem, event ) {\n\t\tvar e = jQuery.extend(\n\t\t\tnew jQuery.Event(),\n\t\t\tevent,\n\t\t\t{\n\t\t\t\ttype: type,\n\t\t\t\tisSimulated: true\n\t\t\t}\n\t\t);\n\n\t\tjQuery.event.trigger( e, null, elem );\n\t}\n\n} );\n\njQuery.fn.extend( {\n\n\ttrigger: function( type, data ) {\n\t\treturn this.each( function() {\n\t\t\tjQuery.event.trigger( type, data, this );\n\t\t} );\n\t},\n\ttriggerHandler: function( type, data ) {\n\t\tvar elem = this[ 0 ];\n\t\tif ( elem ) {\n\t\t\treturn jQuery.event.trigger( type, data, elem, true );\n\t\t}\n\t}\n} );\n\n\n// Support: Firefox <=44\n// Firefox doesn't have focus(in | out) events\n// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787\n//\n// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1\n// focus(in | out) events fire after focus & blur events,\n// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order\n// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857\nif ( !support.focusin ) {\n\tjQuery.each( { focus: \"focusin\", blur: \"focusout\" }, function( orig, fix ) {\n\n\t\t// Attach a single capturing handler on the document while someone wants focusin/focusout\n\t\tvar handler = function( event ) {\n\t\t\tjQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) );\n\t\t};\n\n\t\tjQuery.event.special[ fix ] = {\n\t\t\tsetup: function() {\n\n\t\t\t\t// Handle: regular nodes (via `this.ownerDocument`), window\n\t\t\t\t// (via `this.document`) & document (via `this`).\n\t\t\t\tvar doc = this.ownerDocument || this.document || this,\n\t\t\t\t\tattaches = dataPriv.access( doc, fix );\n\n\t\t\t\tif ( !attaches ) {\n\t\t\t\t\tdoc.addEventListener( orig, handler, true );\n\t\t\t\t}\n\t\t\t\tdataPriv.access( doc, fix, ( attaches || 0 ) + 1 );\n\t\t\t},\n\t\t\tteardown: function() {\n\t\t\t\tvar doc = this.ownerDocument || this.document || this,\n\t\t\t\t\tattaches = dataPriv.access( doc, fix ) - 1;\n\n\t\t\t\tif ( !attaches ) {\n\t\t\t\t\tdoc.removeEventListener( orig, handler, true );\n\t\t\t\t\tdataPriv.remove( doc, fix );\n\n\t\t\t\t} else {\n\t\t\t\t\tdataPriv.access( doc, fix, attaches );\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t} );\n}\nvar location = window.location;\n\nvar nonce = { guid: Date.now() };\n\nvar rquery = ( /\\?/ );\n\n\n\n// Cross-browser xml parsing\njQuery.parseXML = function( data ) {\n\tvar xml, parserErrorElem;\n\tif ( !data || typeof data !== \"string\" ) {\n\t\treturn null;\n\t}\n\n\t// Support: IE 9 - 11 only\n\t// IE throws on parseFromString with invalid input.\n\ttry {\n\t\txml = ( new window.DOMParser() ).parseFromString( data, \"text/xml\" );\n\t} catch ( e ) {}\n\n\tparserErrorElem = xml && xml.getElementsByTagName( \"parsererror\" )[ 0 ];\n\tif ( !xml || parserErrorElem ) {\n\t\tjQuery.error( \"Invalid XML: \" + (\n\t\t\tparserErrorElem ?\n\t\t\t\tjQuery.map( parserErrorElem.childNodes, function( el ) {\n\t\t\t\t\treturn el.textContent;\n\t\t\t\t} ).join( \"\\n\" ) :\n\t\t\t\tdata\n\t\t) );\n\t}\n\treturn xml;\n};\n\n\nvar\n\trbracket = /\\[\\]$/,\n\trCRLF = /\\r?\\n/g,\n\trsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,\n\trsubmittable = /^(?:input|select|textarea|keygen)/i;\n\nfunction buildParams( prefix, obj, traditional, add ) {\n\tvar name;\n\n\tif ( Array.isArray( obj ) ) {\n\n\t\t// Serialize array item.\n\t\tjQuery.each( obj, function( i, v ) {\n\t\t\tif ( traditional || rbracket.test( prefix ) ) {\n\n\t\t\t\t// Treat each array item as a scalar.\n\t\t\t\tadd( prefix, v );\n\n\t\t\t} else {\n\n\t\t\t\t// Item is non-scalar (array or object), encode its numeric index.\n\t\t\t\tbuildParams(\n\t\t\t\t\tprefix + \"[\" + ( typeof v === \"object\" && v != null ? i : \"\" ) + \"]\",\n\t\t\t\t\tv,\n\t\t\t\t\ttraditional,\n\t\t\t\t\tadd\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\n\t} else if ( !traditional && toType( obj ) === \"object\" ) {\n\n\t\t// Serialize object item.\n\t\tfor ( name in obj ) {\n\t\t\tbuildParams( prefix + \"[\" + name + \"]\", obj[ name ], traditional, add );\n\t\t}\n\n\t} else {\n\n\t\t// Serialize scalar item.\n\t\tadd( prefix, obj );\n\t}\n}\n\n// Serialize an array of form elements or a set of\n// key/values into a query string\njQuery.param = function( a, traditional ) {\n\tvar prefix,\n\t\ts = [],\n\t\tadd = function( key, valueOrFunction ) {\n\n\t\t\t// If value is a function, invoke it and use its return value\n\t\t\tvar value = isFunction( valueOrFunction ) ?\n\t\t\t\tvalueOrFunction() :\n\t\t\t\tvalueOrFunction;\n\n\t\t\ts[ s.length ] = encodeURIComponent( key ) + \"=\" +\n\t\t\t\tencodeURIComponent( value == null ? \"\" : value );\n\t\t};\n\n\tif ( a == null ) {\n\t\treturn \"\";\n\t}\n\n\t// If an array was passed in, assume that it is an array of form elements.\n\tif ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {\n\n\t\t// Serialize the form elements\n\t\tjQuery.each( a, function() {\n\t\t\tadd( this.name, this.value );\n\t\t} );\n\n\t} else {\n\n\t\t// If traditional, encode the \"old\" way (the way 1.3.2 or older\n\t\t// did it), otherwise encode params recursively.\n\t\tfor ( prefix in a ) {\n\t\t\tbuildParams( prefix, a[ prefix ], traditional, add );\n\t\t}\n\t}\n\n\t// Return the resulting serialization\n\treturn s.join( \"&\" );\n};\n\njQuery.fn.extend( {\n\tserialize: function() {\n\t\treturn jQuery.param( this.serializeArray() );\n\t},\n\tserializeArray: function() {\n\t\treturn this.map( function() {\n\n\t\t\t// Can add propHook for \"elements\" to filter or add form elements\n\t\t\tvar elements = jQuery.prop( this, \"elements\" );\n\t\t\treturn elements ? jQuery.makeArray( elements ) : this;\n\t\t} ).filter( function() {\n\t\t\tvar type = this.type;\n\n\t\t\t// Use .is( \":disabled\" ) so that fieldset[disabled] works\n\t\t\treturn this.name && !jQuery( this ).is( \":disabled\" ) &&\n\t\t\t\trsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&\n\t\t\t\t( this.checked || !rcheckableType.test( type ) );\n\t\t} ).map( function( _i, elem ) {\n\t\t\tvar val = jQuery( this ).val();\n\n\t\t\tif ( val == null ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif ( Array.isArray( val ) ) {\n\t\t\t\treturn jQuery.map( val, function( val ) {\n\t\t\t\t\treturn { name: elem.name, value: val.replace( rCRLF, \"\\r\\n\" ) };\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn { name: elem.name, value: val.replace( rCRLF, \"\\r\\n\" ) };\n\t\t} ).get();\n\t}\n} );\n\n\nvar\n\tr20 = /%20/g,\n\trhash = /#.*$/,\n\trantiCache = /([?&])_=[^&]*/,\n\trheaders = /^(.*?):[ \\t]*([^\\r\\n]*)$/mg,\n\n\t// #7653, #8125, #8152: local protocol detection\n\trlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,\n\trnoContent = /^(?:GET|HEAD)$/,\n\trprotocol = /^\\/\\//,\n\n\t/* Prefilters\n\t * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)\n\t * 2) These are called:\n\t * - BEFORE asking for a transport\n\t * - AFTER param serialization (s.data is a string if s.processData is true)\n\t * 3) key is the dataType\n\t * 4) the catchall symbol \"*\" can be used\n\t * 5) execution will start with transport dataType and THEN continue down to \"*\" if needed\n\t */\n\tprefilters = {},\n\n\t/* Transports bindings\n\t * 1) key is the dataType\n\t * 2) the catchall symbol \"*\" can be used\n\t * 3) selection will start with transport dataType and THEN go to \"*\" if needed\n\t */\n\ttransports = {},\n\n\t// Avoid comment-prolog char sequence (#10098); must appease lint and evade compression\n\tallTypes = \"*/\".concat( \"*\" ),\n\n\t// Anchor tag for parsing the document origin\n\toriginAnchor = document.createElement( \"a\" );\n\noriginAnchor.href = location.href;\n\n// Base \"constructor\" for jQuery.ajaxPrefilter and jQuery.ajaxTransport\nfunction addToPrefiltersOrTransports( structure ) {\n\n\t// dataTypeExpression is optional and defaults to \"*\"\n\treturn function( dataTypeExpression, func ) {\n\n\t\tif ( typeof dataTypeExpression !== \"string\" ) {\n\t\t\tfunc = dataTypeExpression;\n\t\t\tdataTypeExpression = \"*\";\n\t\t}\n\n\t\tvar dataType,\n\t\t\ti = 0,\n\t\t\tdataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || [];\n\n\t\tif ( isFunction( func ) ) {\n\n\t\t\t// For each dataType in the dataTypeExpression\n\t\t\twhile ( ( dataType = dataTypes[ i++ ] ) ) {\n\n\t\t\t\t// Prepend if requested\n\t\t\t\tif ( dataType[ 0 ] === \"+\" ) {\n\t\t\t\t\tdataType = dataType.slice( 1 ) || \"*\";\n\t\t\t\t\t( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func );\n\n\t\t\t\t// Otherwise append\n\t\t\t\t} else {\n\t\t\t\t\t( structure[ dataType ] = structure[ dataType ] || [] ).push( func );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\n// Base inspection function for prefilters and transports\nfunction inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {\n\n\tvar inspected = {},\n\t\tseekingTransport = ( structure === transports );\n\n\tfunction inspect( dataType ) {\n\t\tvar selected;\n\t\tinspected[ dataType ] = true;\n\t\tjQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {\n\t\t\tvar dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );\n\t\t\tif ( typeof dataTypeOrTransport === \"string\" &&\n\t\t\t\t!seekingTransport && !inspected[ dataTypeOrTransport ] ) {\n\n\t\t\t\toptions.dataTypes.unshift( dataTypeOrTransport );\n\t\t\t\tinspect( dataTypeOrTransport );\n\t\t\t\treturn false;\n\t\t\t} else if ( seekingTransport ) {\n\t\t\t\treturn !( selected = dataTypeOrTransport );\n\t\t\t}\n\t\t} );\n\t\treturn selected;\n\t}\n\n\treturn inspect( options.dataTypes[ 0 ] ) || !inspected[ \"*\" ] && inspect( \"*\" );\n}\n\n// A special extend for ajax options\n// that takes \"flat\" options (not to be deep extended)\n// Fixes #9887\nfunction ajaxExtend( target, src ) {\n\tvar key, deep,\n\t\tflatOptions = jQuery.ajaxSettings.flatOptions || {};\n\n\tfor ( key in src ) {\n\t\tif ( src[ key ] !== undefined ) {\n\t\t\t( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];\n\t\t}\n\t}\n\tif ( deep ) {\n\t\tjQuery.extend( true, target, deep );\n\t}\n\n\treturn target;\n}\n\n/* Handles responses to an ajax request:\n * - finds the right dataType (mediates between content-type and expected dataType)\n * - returns the corresponding response\n */\nfunction ajaxHandleResponses( s, jqXHR, responses ) {\n\n\tvar ct, type, finalDataType, firstDataType,\n\t\tcontents = s.contents,\n\t\tdataTypes = s.dataTypes;\n\n\t// Remove auto dataType and get content-type in the process\n\twhile ( dataTypes[ 0 ] === \"*\" ) {\n\t\tdataTypes.shift();\n\t\tif ( ct === undefined ) {\n\t\t\tct = s.mimeType || jqXHR.getResponseHeader( \"Content-Type\" );\n\t\t}\n\t}\n\n\t// Check if we're dealing with a known content-type\n\tif ( ct ) {\n\t\tfor ( type in contents ) {\n\t\t\tif ( contents[ type ] && contents[ type ].test( ct ) ) {\n\t\t\t\tdataTypes.unshift( type );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Check to see if we have a response for the expected dataType\n\tif ( dataTypes[ 0 ] in responses ) {\n\t\tfinalDataType = dataTypes[ 0 ];\n\t} else {\n\n\t\t// Try convertible dataTypes\n\t\tfor ( type in responses ) {\n\t\t\tif ( !dataTypes[ 0 ] || s.converters[ type + \" \" + dataTypes[ 0 ] ] ) {\n\t\t\t\tfinalDataType = type;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( !firstDataType ) {\n\t\t\t\tfirstDataType = type;\n\t\t\t}\n\t\t}\n\n\t\t// Or just use first one\n\t\tfinalDataType = finalDataType || firstDataType;\n\t}\n\n\t// If we found a dataType\n\t// We add the dataType to the list if needed\n\t// and return the corresponding response\n\tif ( finalDataType ) {\n\t\tif ( finalDataType !== dataTypes[ 0 ] ) {\n\t\t\tdataTypes.unshift( finalDataType );\n\t\t}\n\t\treturn responses[ finalDataType ];\n\t}\n}\n\n/* Chain conversions given the request and the original response\n * Also sets the responseXXX fields on the jqXHR instance\n */\nfunction ajaxConvert( s, response, jqXHR, isSuccess ) {\n\tvar conv2, current, conv, tmp, prev,\n\t\tconverters = {},\n\n\t\t// Work with a copy of dataTypes in case we need to modify it for conversion\n\t\tdataTypes = s.dataTypes.slice();\n\n\t// Create converters map with lowercased keys\n\tif ( dataTypes[ 1 ] ) {\n\t\tfor ( conv in s.converters ) {\n\t\t\tconverters[ conv.toLowerCase() ] = s.converters[ conv ];\n\t\t}\n\t}\n\n\tcurrent = dataTypes.shift();\n\n\t// Convert to each sequential dataType\n\twhile ( current ) {\n\n\t\tif ( s.responseFields[ current ] ) {\n\t\t\tjqXHR[ s.responseFields[ current ] ] = response;\n\t\t}\n\n\t\t// Apply the dataFilter if provided\n\t\tif ( !prev && isSuccess && s.dataFilter ) {\n\t\t\tresponse = s.dataFilter( response, s.dataType );\n\t\t}\n\n\t\tprev = current;\n\t\tcurrent = dataTypes.shift();\n\n\t\tif ( current ) {\n\n\t\t\t// There's only work to do if current dataType is non-auto\n\t\t\tif ( current === \"*\" ) {\n\n\t\t\t\tcurrent = prev;\n\n\t\t\t// Convert response if prev dataType is non-auto and differs from current\n\t\t\t} else if ( prev !== \"*\" && prev !== current ) {\n\n\t\t\t\t// Seek a direct converter\n\t\t\t\tconv = converters[ prev + \" \" + current ] || converters[ \"* \" + current ];\n\n\t\t\t\t// If none found, seek a pair\n\t\t\t\tif ( !conv ) {\n\t\t\t\t\tfor ( conv2 in converters ) {\n\n\t\t\t\t\t\t// If conv2 outputs current\n\t\t\t\t\t\ttmp = conv2.split( \" \" );\n\t\t\t\t\t\tif ( tmp[ 1 ] === current ) {\n\n\t\t\t\t\t\t\t// If prev can be converted to accepted input\n\t\t\t\t\t\t\tconv = converters[ prev + \" \" + tmp[ 0 ] ] ||\n\t\t\t\t\t\t\t\tconverters[ \"* \" + tmp[ 0 ] ];\n\t\t\t\t\t\t\tif ( conv ) {\n\n\t\t\t\t\t\t\t\t// Condense equivalence converters\n\t\t\t\t\t\t\t\tif ( conv === true ) {\n\t\t\t\t\t\t\t\t\tconv = converters[ conv2 ];\n\n\t\t\t\t\t\t\t\t// Otherwise, insert the intermediate dataType\n\t\t\t\t\t\t\t\t} else if ( converters[ conv2 ] !== true ) {\n\t\t\t\t\t\t\t\t\tcurrent = tmp[ 0 ];\n\t\t\t\t\t\t\t\t\tdataTypes.unshift( tmp[ 1 ] );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\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}\n\n\t\t\t\t// Apply converter (if not an equivalence)\n\t\t\t\tif ( conv !== true ) {\n\n\t\t\t\t\t// Unless errors are allowed to bubble, catch and return them\n\t\t\t\t\tif ( conv && s.throws ) {\n\t\t\t\t\t\tresponse = conv( response );\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tresponse = conv( response );\n\t\t\t\t\t\t} catch ( e ) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstate: \"parsererror\",\n\t\t\t\t\t\t\t\terror: conv ? e : \"No conversion from \" + prev + \" to \" + current\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}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn { state: \"success\", data: response };\n}\n\njQuery.extend( {\n\n\t// Counter for holding the number of active queries\n\tactive: 0,\n\n\t// Last-Modified header cache for next request\n\tlastModified: {},\n\tetag: {},\n\n\tajaxSettings: {\n\t\turl: location.href,\n\t\ttype: \"GET\",\n\t\tisLocal: rlocalProtocol.test( location.protocol ),\n\t\tglobal: true,\n\t\tprocessData: true,\n\t\tasync: true,\n\t\tcontentType: \"application/x-www-form-urlencoded; charset=UTF-8\",\n\n\t\t/*\n\t\ttimeout: 0,\n\t\tdata: null,\n\t\tdataType: null,\n\t\tusername: null,\n\t\tpassword: null,\n\t\tcache: null,\n\t\tthrows: false,\n\t\ttraditional: false,\n\t\theaders: {},\n\t\t*/\n\n\t\taccepts: {\n\t\t\t\"*\": allTypes,\n\t\t\ttext: \"text/plain\",\n\t\t\thtml: \"text/html\",\n\t\t\txml: \"application/xml, text/xml\",\n\t\t\tjson: \"application/json, text/javascript\"\n\t\t},\n\n\t\tcontents: {\n\t\t\txml: /\\bxml\\b/,\n\t\t\thtml: /\\bhtml/,\n\t\t\tjson: /\\bjson\\b/\n\t\t},\n\n\t\tresponseFields: {\n\t\t\txml: \"responseXML\",\n\t\t\ttext: \"responseText\",\n\t\t\tjson: \"responseJSON\"\n\t\t},\n\n\t\t// Data converters\n\t\t// Keys separate source (or catchall \"*\") and destination types with a single space\n\t\tconverters: {\n\n\t\t\t// Convert anything to text\n\t\t\t\"* text\": String,\n\n\t\t\t// Text to html (true = no transformation)\n\t\t\t\"text html\": true,\n\n\t\t\t// Evaluate text as a json expression\n\t\t\t\"text json\": JSON.parse,\n\n\t\t\t// Parse text as xml\n\t\t\t\"text xml\": jQuery.parseXML\n\t\t},\n\n\t\t// For options that shouldn't be deep extended:\n\t\t// you can add your own custom options here if\n\t\t// and when you create one that shouldn't be\n\t\t// deep extended (see ajaxExtend)\n\t\tflatOptions: {\n\t\t\turl: true,\n\t\t\tcontext: true\n\t\t}\n\t},\n\n\t// Creates a full fledged settings object into target\n\t// with both ajaxSettings and settings fields.\n\t// If target is omitted, writes into ajaxSettings.\n\tajaxSetup: function( target, settings ) {\n\t\treturn settings ?\n\n\t\t\t// Building a settings object\n\t\t\tajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :\n\n\t\t\t// Extending ajaxSettings\n\t\t\tajaxExtend( jQuery.ajaxSettings, target );\n\t},\n\n\tajaxPrefilter: addToPrefiltersOrTransports( prefilters ),\n\tajaxTransport: addToPrefiltersOrTransports( transports ),\n\n\t// Main method\n\tajax: function( url, options ) {\n\n\t\t// If url is an object, simulate pre-1.5 signature\n\t\tif ( typeof url === \"object\" ) {\n\t\t\toptions = url;\n\t\t\turl = undefined;\n\t\t}\n\n\t\t// Force options to be an object\n\t\toptions = options || {};\n\n\t\tvar transport,\n\n\t\t\t// URL without anti-cache param\n\t\t\tcacheURL,\n\n\t\t\t// Response headers\n\t\t\tresponseHeadersString,\n\t\t\tresponseHeaders,\n\n\t\t\t// timeout handle\n\t\t\ttimeoutTimer,\n\n\t\t\t// Url cleanup var\n\t\t\turlAnchor,\n\n\t\t\t// Request state (becomes false upon send and true upon completion)\n\t\t\tcompleted,\n\n\t\t\t// To know if global events are to be dispatched\n\t\t\tfireGlobals,\n\n\t\t\t// Loop variable\n\t\t\ti,\n\n\t\t\t// uncached part of the url\n\t\t\tuncached,\n\n\t\t\t// Create the final options object\n\t\t\ts = jQuery.ajaxSetup( {}, options ),\n\n\t\t\t// Callbacks context\n\t\t\tcallbackContext = s.context || s,\n\n\t\t\t// Context for global events is callbackContext if it is a DOM node or jQuery collection\n\t\t\tglobalEventContext = s.context &&\n\t\t\t\t( callbackContext.nodeType || callbackContext.jquery ) ?\n\t\t\t\tjQuery( callbackContext ) :\n\t\t\t\tjQuery.event,\n\n\t\t\t// Deferreds\n\t\t\tdeferred = jQuery.Deferred(),\n\t\t\tcompleteDeferred = jQuery.Callbacks( \"once memory\" ),\n\n\t\t\t// Status-dependent callbacks\n\t\t\tstatusCode = s.statusCode || {},\n\n\t\t\t// Headers (they are sent all at once)\n\t\t\trequestHeaders = {},\n\t\t\trequestHeadersNames = {},\n\n\t\t\t// Default abort message\n\t\t\tstrAbort = \"canceled\",\n\n\t\t\t// Fake xhr\n\t\t\tjqXHR = {\n\t\t\t\treadyState: 0,\n\n\t\t\t\t// Builds headers hashtable if needed\n\t\t\t\tgetResponseHeader: function( key ) {\n\t\t\t\t\tvar match;\n\t\t\t\t\tif ( completed ) {\n\t\t\t\t\t\tif ( !responseHeaders ) {\n\t\t\t\t\t\t\tresponseHeaders = {};\n\t\t\t\t\t\t\twhile ( ( match = rheaders.exec( responseHeadersString ) ) ) {\n\t\t\t\t\t\t\t\tresponseHeaders[ match[ 1 ].toLowerCase() + \" \" ] =\n\t\t\t\t\t\t\t\t\t( responseHeaders[ match[ 1 ].toLowerCase() + \" \" ] || [] )\n\t\t\t\t\t\t\t\t\t\t.concat( match[ 2 ] );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmatch = responseHeaders[ key.toLowerCase() + \" \" ];\n\t\t\t\t\t}\n\t\t\t\t\treturn match == null ? null : match.join( \", \" );\n\t\t\t\t},\n\n\t\t\t\t// Raw string\n\t\t\t\tgetAllResponseHeaders: function() {\n\t\t\t\t\treturn completed ? responseHeadersString : null;\n\t\t\t\t},\n\n\t\t\t\t// Caches the header\n\t\t\t\tsetRequestHeader: function( name, value ) {\n\t\t\t\t\tif ( completed == null ) {\n\t\t\t\t\t\tname = requestHeadersNames[ name.toLowerCase() ] =\n\t\t\t\t\t\t\trequestHeadersNames[ name.toLowerCase() ] || name;\n\t\t\t\t\t\trequestHeaders[ name ] = value;\n\t\t\t\t\t}\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\n\t\t\t\t// Overrides response content-type header\n\t\t\t\toverrideMimeType: function( type ) {\n\t\t\t\t\tif ( completed == null ) {\n\t\t\t\t\t\ts.mimeType = type;\n\t\t\t\t\t}\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\n\t\t\t\t// Status-dependent callbacks\n\t\t\t\tstatusCode: function( map ) {\n\t\t\t\t\tvar code;\n\t\t\t\t\tif ( map ) {\n\t\t\t\t\t\tif ( completed ) {\n\n\t\t\t\t\t\t\t// Execute the appropriate callbacks\n\t\t\t\t\t\t\tjqXHR.always( map[ jqXHR.status ] );\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\t// Lazy-add the new callbacks in a way that preserves old ones\n\t\t\t\t\t\t\tfor ( code in map ) {\n\t\t\t\t\t\t\t\tstatusCode[ code ] = [ statusCode[ code ], map[ code ] ];\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\treturn this;\n\t\t\t\t},\n\n\t\t\t\t// Cancel the request\n\t\t\t\tabort: function( statusText ) {\n\t\t\t\t\tvar finalText = statusText || strAbort;\n\t\t\t\t\tif ( transport ) {\n\t\t\t\t\t\ttransport.abort( finalText );\n\t\t\t\t\t}\n\t\t\t\t\tdone( 0, finalText );\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t};\n\n\t\t// Attach deferreds\n\t\tdeferred.promise( jqXHR );\n\n\t\t// Add protocol if not provided (prefilters might expect it)\n\t\t// Handle falsy url in the settings object (#10093: consistency with old signature)\n\t\t// We also use the url parameter if available\n\t\ts.url = ( ( url || s.url || location.href ) + \"\" )\n\t\t\t.replace( rprotocol, location.protocol + \"//\" );\n\n\t\t// Alias method option to type as per ticket #12004\n\t\ts.type = options.method || options.type || s.method || s.type;\n\n\t\t// Extract dataTypes list\n\t\ts.dataTypes = ( s.dataType || \"*\" ).toLowerCase().match( rnothtmlwhite ) || [ \"\" ];\n\n\t\t// A cross-domain request is in order when the origin doesn't match the current origin.\n\t\tif ( s.crossDomain == null ) {\n\t\t\turlAnchor = document.createElement( \"a\" );\n\n\t\t\t// Support: IE <=8 - 11, Edge 12 - 15\n\t\t\t// IE throws exception on accessing the href property if url is malformed,\n\t\t\t// e.g. http://example.com:80x/\n\t\t\ttry {\n\t\t\t\turlAnchor.href = s.url;\n\n\t\t\t\t// Support: IE <=8 - 11 only\n\t\t\t\t// Anchor's host property isn't correctly set when s.url is relative\n\t\t\t\turlAnchor.href = urlAnchor.href;\n\t\t\t\ts.crossDomain = originAnchor.protocol + \"//\" + originAnchor.host !==\n\t\t\t\t\turlAnchor.protocol + \"//\" + urlAnchor.host;\n\t\t\t} catch ( e ) {\n\n\t\t\t\t// If there is an error parsing the URL, assume it is crossDomain,\n\t\t\t\t// it can be rejected by the transport if it is invalid\n\t\t\t\ts.crossDomain = true;\n\t\t\t}\n\t\t}\n\n\t\t// Convert data if not already a string\n\t\tif ( s.data && s.processData && typeof s.data !== \"string\" ) {\n\t\t\ts.data = jQuery.param( s.data, s.traditional );\n\t\t}\n\n\t\t// Apply prefilters\n\t\tinspectPrefiltersOrTransports( prefilters, s, options, jqXHR );\n\n\t\t// If request was aborted inside a prefilter, stop there\n\t\tif ( completed ) {\n\t\t\treturn jqXHR;\n\t\t}\n\n\t\t// We can fire global events as of now if asked to\n\t\t// Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)\n\t\tfireGlobals = jQuery.event && s.global;\n\n\t\t// Watch for a new set of requests\n\t\tif ( fireGlobals && jQuery.active++ === 0 ) {\n\t\t\tjQuery.event.trigger( \"ajaxStart\" );\n\t\t}\n\n\t\t// Uppercase the type\n\t\ts.type = s.type.toUpperCase();\n\n\t\t// Determine if request has content\n\t\ts.hasContent = !rnoContent.test( s.type );\n\n\t\t// Save the URL in case we're toying with the If-Modified-Since\n\t\t// and/or If-None-Match header later on\n\t\t// Remove hash to simplify url manipulation\n\t\tcacheURL = s.url.replace( rhash, \"\" );\n\n\t\t// More options handling for requests with no content\n\t\tif ( !s.hasContent ) {\n\n\t\t\t// Remember the hash so we can put it back\n\t\t\tuncached = s.url.slice( cacheURL.length );\n\n\t\t\t// If data is available and should be processed, append data to url\n\t\t\tif ( s.data && ( s.processData || typeof s.data === \"string\" ) ) {\n\t\t\t\tcacheURL += ( rquery.test( cacheURL ) ? \"&\" : \"?\" ) + s.data;\n\n\t\t\t\t// #9682: remove data so that it's not used in an eventual retry\n\t\t\t\tdelete s.data;\n\t\t\t}\n\n\t\t\t// Add or update anti-cache param if needed\n\t\t\tif ( s.cache === false ) {\n\t\t\t\tcacheURL = cacheURL.replace( rantiCache, \"$1\" );\n\t\t\t\tuncached = ( rquery.test( cacheURL ) ? \"&\" : \"?\" ) + \"_=\" + ( nonce.guid++ ) +\n\t\t\t\t\tuncached;\n\t\t\t}\n\n\t\t\t// Put hash and anti-cache on the URL that will be requested (gh-1732)\n\t\t\ts.url = cacheURL + uncached;\n\n\t\t// Change '%20' to '+' if this is encoded form body content (gh-2658)\n\t\t} else if ( s.data && s.processData &&\n\t\t\t( s.contentType || \"\" ).indexOf( \"application/x-www-form-urlencoded\" ) === 0 ) {\n\t\t\ts.data = s.data.replace( r20, \"+\" );\n\t\t}\n\n\t\t// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.\n\t\tif ( s.ifModified ) {\n\t\t\tif ( jQuery.lastModified[ cacheURL ] ) {\n\t\t\t\tjqXHR.setRequestHeader( \"If-Modified-Since\", jQuery.lastModified[ cacheURL ] );\n\t\t\t}\n\t\t\tif ( jQuery.etag[ cacheURL ] ) {\n\t\t\t\tjqXHR.setRequestHeader( \"If-None-Match\", jQuery.etag[ cacheURL ] );\n\t\t\t}\n\t\t}\n\n\t\t// Set the correct header, if data is being sent\n\t\tif ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {\n\t\t\tjqXHR.setRequestHeader( \"Content-Type\", s.contentType );\n\t\t}\n\n\t\t// Set the Accepts header for the server, depending on the dataType\n\t\tjqXHR.setRequestHeader(\n\t\t\t\"Accept\",\n\t\t\ts.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ?\n\t\t\t\ts.accepts[ s.dataTypes[ 0 ] ] +\n\t\t\t\t\t( s.dataTypes[ 0 ] !== \"*\" ? \", \" + allTypes + \"; q=0.01\" : \"\" ) :\n\t\t\t\ts.accepts[ \"*\" ]\n\t\t);\n\n\t\t// Check for headers option\n\t\tfor ( i in s.headers ) {\n\t\t\tjqXHR.setRequestHeader( i, s.headers[ i ] );\n\t\t}\n\n\t\t// Allow custom headers/mimetypes and early abort\n\t\tif ( s.beforeSend &&\n\t\t\t( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) {\n\n\t\t\t// Abort if not done already and return\n\t\t\treturn jqXHR.abort();\n\t\t}\n\n\t\t// Aborting is no longer a cancellation\n\t\tstrAbort = \"abort\";\n\n\t\t// Install callbacks on deferreds\n\t\tcompleteDeferred.add( s.complete );\n\t\tjqXHR.done( s.success );\n\t\tjqXHR.fail( s.error );\n\n\t\t// Get transport\n\t\ttransport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );\n\n\t\t// If no transport, we auto-abort\n\t\tif ( !transport ) {\n\t\t\tdone( -1, \"No Transport\" );\n\t\t} else {\n\t\t\tjqXHR.readyState = 1;\n\n\t\t\t// Send global event\n\t\t\tif ( fireGlobals ) {\n\t\t\t\tglobalEventContext.trigger( \"ajaxSend\", [ jqXHR, s ] );\n\t\t\t}\n\n\t\t\t// If request was aborted inside ajaxSend, stop there\n\t\t\tif ( completed ) {\n\t\t\t\treturn jqXHR;\n\t\t\t}\n\n\t\t\t// Timeout\n\t\t\tif ( s.async && s.timeout > 0 ) {\n\t\t\t\ttimeoutTimer = window.setTimeout( function() {\n\t\t\t\t\tjqXHR.abort( \"timeout\" );\n\t\t\t\t}, s.timeout );\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tcompleted = false;\n\t\t\t\ttransport.send( requestHeaders, done );\n\t\t\t} catch ( e ) {\n\n\t\t\t\t// Rethrow post-completion exceptions\n\t\t\t\tif ( completed ) {\n\t\t\t\t\tthrow e;\n\t\t\t\t}\n\n\t\t\t\t// Propagate others as results\n\t\t\t\tdone( -1, e );\n\t\t\t}\n\t\t}\n\n\t\t// Callback for when everything is done\n\t\tfunction done( status, nativeStatusText, responses, headers ) {\n\t\t\tvar isSuccess, success, error, response, modified,\n\t\t\t\tstatusText = nativeStatusText;\n\n\t\t\t// Ignore repeat invocations\n\t\t\tif ( completed ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tcompleted = true;\n\n\t\t\t// Clear timeout if it exists\n\t\t\tif ( timeoutTimer ) {\n\t\t\t\twindow.clearTimeout( timeoutTimer );\n\t\t\t}\n\n\t\t\t// Dereference transport for early garbage collection\n\t\t\t// (no matter how long the jqXHR object will be used)\n\t\t\ttransport = undefined;\n\n\t\t\t// Cache response headers\n\t\t\tresponseHeadersString = headers || \"\";\n\n\t\t\t// Set readyState\n\t\t\tjqXHR.readyState = status > 0 ? 4 : 0;\n\n\t\t\t// Determine if successful\n\t\t\tisSuccess = status >= 200 && status < 300 || status === 304;\n\n\t\t\t// Get response data\n\t\t\tif ( responses ) {\n\t\t\t\tresponse = ajaxHandleResponses( s, jqXHR, responses );\n\t\t\t}\n\n\t\t\t// Use a noop converter for missing script but not if jsonp\n\t\t\tif ( !isSuccess &&\n\t\t\t\tjQuery.inArray( \"script\", s.dataTypes ) > -1 &&\n\t\t\t\tjQuery.inArray( \"json\", s.dataTypes ) < 0 ) {\n\t\t\t\ts.converters[ \"text script\" ] = function() {};\n\t\t\t}\n\n\t\t\t// Convert no matter what (that way responseXXX fields are always set)\n\t\t\tresponse = ajaxConvert( s, response, jqXHR, isSuccess );\n\n\t\t\t// If successful, handle type chaining\n\t\t\tif ( isSuccess ) {\n\n\t\t\t\t// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.\n\t\t\t\tif ( s.ifModified ) {\n\t\t\t\t\tmodified = jqXHR.getResponseHeader( \"Last-Modified\" );\n\t\t\t\t\tif ( modified ) {\n\t\t\t\t\t\tjQuery.lastModified[ cacheURL ] = modified;\n\t\t\t\t\t}\n\t\t\t\t\tmodified = jqXHR.getResponseHeader( \"etag\" );\n\t\t\t\t\tif ( modified ) {\n\t\t\t\t\t\tjQuery.etag[ cacheURL ] = modified;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// if no content\n\t\t\t\tif ( status === 204 || s.type === \"HEAD\" ) {\n\t\t\t\t\tstatusText = \"nocontent\";\n\n\t\t\t\t// if not modified\n\t\t\t\t} else if ( status === 304 ) {\n\t\t\t\t\tstatusText = \"notmodified\";\n\n\t\t\t\t// If we have data, let's convert it\n\t\t\t\t} else {\n\t\t\t\t\tstatusText = response.state;\n\t\t\t\t\tsuccess = response.data;\n\t\t\t\t\terror = response.error;\n\t\t\t\t\tisSuccess = !error;\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\t// Extract error from statusText and normalize for non-aborts\n\t\t\t\terror = statusText;\n\t\t\t\tif ( status || !statusText ) {\n\t\t\t\t\tstatusText = \"error\";\n\t\t\t\t\tif ( status < 0 ) {\n\t\t\t\t\t\tstatus = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Set data for the fake xhr object\n\t\t\tjqXHR.status = status;\n\t\t\tjqXHR.statusText = ( nativeStatusText || statusText ) + \"\";\n\n\t\t\t// Success/Error\n\t\t\tif ( isSuccess ) {\n\t\t\t\tdeferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );\n\t\t\t} else {\n\t\t\t\tdeferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );\n\t\t\t}\n\n\t\t\t// Status-dependent callbacks\n\t\t\tjqXHR.statusCode( statusCode );\n\t\t\tstatusCode = undefined;\n\n\t\t\tif ( fireGlobals ) {\n\t\t\t\tglobalEventContext.trigger( isSuccess ? \"ajaxSuccess\" : \"ajaxError\",\n\t\t\t\t\t[ jqXHR, s, isSuccess ? success : error ] );\n\t\t\t}\n\n\t\t\t// Complete\n\t\t\tcompleteDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );\n\n\t\t\tif ( fireGlobals ) {\n\t\t\t\tglobalEventContext.trigger( \"ajaxComplete\", [ jqXHR, s ] );\n\n\t\t\t\t// Handle the global AJAX counter\n\t\t\t\tif ( !( --jQuery.active ) ) {\n\t\t\t\t\tjQuery.event.trigger( \"ajaxStop\" );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn jqXHR;\n\t},\n\n\tgetJSON: function( url, data, callback ) {\n\t\treturn jQuery.get( url, data, callback, \"json\" );\n\t},\n\n\tgetScript: function( url, callback ) {\n\t\treturn jQuery.get( url, undefined, callback, \"script\" );\n\t}\n} );\n\njQuery.each( [ \"get\", \"post\" ], function( _i, method ) {\n\tjQuery[ method ] = function( url, data, callback, type ) {\n\n\t\t// Shift arguments if data argument was omitted\n\t\tif ( isFunction( data ) ) {\n\t\t\ttype = type || callback;\n\t\t\tcallback = data;\n\t\t\tdata = undefined;\n\t\t}\n\n\t\t// The url can be an options object (which then must have .url)\n\t\treturn jQuery.ajax( jQuery.extend( {\n\t\t\turl: url,\n\t\t\ttype: method,\n\t\t\tdataType: type,\n\t\t\tdata: data,\n\t\t\tsuccess: callback\n\t\t}, jQuery.isPlainObject( url ) && url ) );\n\t};\n} );\n\njQuery.ajaxPrefilter( function( s ) {\n\tvar i;\n\tfor ( i in s.headers ) {\n\t\tif ( i.toLowerCase() === \"content-type\" ) {\n\t\t\ts.contentType = s.headers[ i ] || \"\";\n\t\t}\n\t}\n} );\n\n\njQuery._evalUrl = function( url, options, doc ) {\n\treturn jQuery.ajax( {\n\t\turl: url,\n\n\t\t// Make this explicit, since user can override this through ajaxSetup (#11264)\n\t\ttype: \"GET\",\n\t\tdataType: \"script\",\n\t\tcache: true,\n\t\tasync: false,\n\t\tglobal: false,\n\n\t\t// Only evaluate the response if it is successful (gh-4126)\n\t\t// dataFilter is not invoked for failure responses, so using it instead\n\t\t// of the default converter is kludgy but it works.\n\t\tconverters: {\n\t\t\t\"text script\": function() {}\n\t\t},\n\t\tdataFilter: function( response ) {\n\t\t\tjQuery.globalEval( response, options, doc );\n\t\t}\n\t} );\n};\n\n\njQuery.fn.extend( {\n\twrapAll: function( html ) {\n\t\tvar wrap;\n\n\t\tif ( this[ 0 ] ) {\n\t\t\tif ( isFunction( html ) ) {\n\t\t\t\thtml = html.call( this[ 0 ] );\n\t\t\t}\n\n\t\t\t// The elements to wrap the target around\n\t\t\twrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );\n\n\t\t\tif ( this[ 0 ].parentNode ) {\n\t\t\t\twrap.insertBefore( this[ 0 ] );\n\t\t\t}\n\n\t\t\twrap.map( function() {\n\t\t\t\tvar elem = this;\n\n\t\t\t\twhile ( elem.firstElementChild ) {\n\t\t\t\t\telem = elem.firstElementChild;\n\t\t\t\t}\n\n\t\t\t\treturn elem;\n\t\t\t} ).append( this );\n\t\t}\n\n\t\treturn this;\n\t},\n\n\twrapInner: function( html ) {\n\t\tif ( isFunction( html ) ) {\n\t\t\treturn this.each( function( i ) {\n\t\t\t\tjQuery( this ).wrapInner( html.call( this, i ) );\n\t\t\t} );\n\t\t}\n\n\t\treturn this.each( function() {\n\t\t\tvar self = jQuery( this ),\n\t\t\t\tcontents = self.contents();\n\n\t\t\tif ( contents.length ) {\n\t\t\t\tcontents.wrapAll( html );\n\n\t\t\t} else {\n\t\t\t\tself.append( html );\n\t\t\t}\n\t\t} );\n\t},\n\n\twrap: function( html ) {\n\t\tvar htmlIsFunction = isFunction( html );\n\n\t\treturn this.each( function( i ) {\n\t\t\tjQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html );\n\t\t} );\n\t},\n\n\tunwrap: function( selector ) {\n\t\tthis.parent( selector ).not( \"body\" ).each( function() {\n\t\t\tjQuery( this ).replaceWith( this.childNodes );\n\t\t} );\n\t\treturn this;\n\t}\n} );\n\n\njQuery.expr.pseudos.hidden = function( elem ) {\n\treturn !jQuery.expr.pseudos.visible( elem );\n};\njQuery.expr.pseudos.visible = function( elem ) {\n\treturn !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );\n};\n\n\n\n\njQuery.ajaxSettings.xhr = function() {\n\ttry {\n\t\treturn new window.XMLHttpRequest();\n\t} catch ( e ) {}\n};\n\nvar xhrSuccessStatus = {\n\n\t\t// File protocol always yields status code 0, assume 200\n\t\t0: 200,\n\n\t\t// Support: IE <=9 only\n\t\t// #1450: sometimes IE returns 1223 when it should be 204\n\t\t1223: 204\n\t},\n\txhrSupported = jQuery.ajaxSettings.xhr();\n\nsupport.cors = !!xhrSupported && ( \"withCredentials\" in xhrSupported );\nsupport.ajax = xhrSupported = !!xhrSupported;\n\njQuery.ajaxTransport( function( options ) {\n\tvar callback, errorCallback;\n\n\t// Cross domain only allowed if supported through XMLHttpRequest\n\tif ( support.cors || xhrSupported && !options.crossDomain ) {\n\t\treturn {\n\t\t\tsend: function( headers, complete ) {\n\t\t\t\tvar i,\n\t\t\t\t\txhr = options.xhr();\n\n\t\t\t\txhr.open(\n\t\t\t\t\toptions.type,\n\t\t\t\t\toptions.url,\n\t\t\t\t\toptions.async,\n\t\t\t\t\toptions.username,\n\t\t\t\t\toptions.password\n\t\t\t\t);\n\n\t\t\t\t// Apply custom fields if provided\n\t\t\t\tif ( options.xhrFields ) {\n\t\t\t\t\tfor ( i in options.xhrFields ) {\n\t\t\t\t\t\txhr[ i ] = options.xhrFields[ i ];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Override mime type if needed\n\t\t\t\tif ( options.mimeType && xhr.overrideMimeType ) {\n\t\t\t\t\txhr.overrideMimeType( options.mimeType );\n\t\t\t\t}\n\n\t\t\t\t// X-Requested-With header\n\t\t\t\t// For cross-domain requests, seeing as conditions for a preflight are\n\t\t\t\t// akin to a jigsaw puzzle, we simply never set it to be sure.\n\t\t\t\t// (it can always be set on a per-request basis or even using ajaxSetup)\n\t\t\t\t// For same-domain requests, won't change header if already provided.\n\t\t\t\tif ( !options.crossDomain && !headers[ \"X-Requested-With\" ] ) {\n\t\t\t\t\theaders[ \"X-Requested-With\" ] = \"XMLHttpRequest\";\n\t\t\t\t}\n\n\t\t\t\t// Set headers\n\t\t\t\tfor ( i in headers ) {\n\t\t\t\t\txhr.setRequestHeader( i, headers[ i ] );\n\t\t\t\t}\n\n\t\t\t\t// Callback\n\t\t\t\tcallback = function( type ) {\n\t\t\t\t\treturn function() {\n\t\t\t\t\t\tif ( callback ) {\n\t\t\t\t\t\t\tcallback = errorCallback = xhr.onload =\n\t\t\t\t\t\t\t\txhr.onerror = xhr.onabort = xhr.ontimeout =\n\t\t\t\t\t\t\t\t\txhr.onreadystatechange = null;\n\n\t\t\t\t\t\t\tif ( type === \"abort\" ) {\n\t\t\t\t\t\t\t\txhr.abort();\n\t\t\t\t\t\t\t} else if ( type === \"error\" ) {\n\n\t\t\t\t\t\t\t\t// Support: IE <=9 only\n\t\t\t\t\t\t\t\t// On a manual native abort, IE9 throws\n\t\t\t\t\t\t\t\t// errors on any property access that is not readyState\n\t\t\t\t\t\t\t\tif ( typeof xhr.status !== \"number\" ) {\n\t\t\t\t\t\t\t\t\tcomplete( 0, \"error\" );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tcomplete(\n\n\t\t\t\t\t\t\t\t\t\t// File: protocol always yields status 0; see #8605, #14207\n\t\t\t\t\t\t\t\t\t\txhr.status,\n\t\t\t\t\t\t\t\t\t\txhr.statusText\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tcomplete(\n\t\t\t\t\t\t\t\t\txhrSuccessStatus[ xhr.status ] || xhr.status,\n\t\t\t\t\t\t\t\t\txhr.statusText,\n\n\t\t\t\t\t\t\t\t\t// Support: IE <=9 only\n\t\t\t\t\t\t\t\t\t// IE9 has no XHR2 but throws on binary (trac-11426)\n\t\t\t\t\t\t\t\t\t// For XHR2 non-text, let the caller handle it (gh-2498)\n\t\t\t\t\t\t\t\t\t( xhr.responseType || \"text\" ) !== \"text\" ||\n\t\t\t\t\t\t\t\t\ttypeof xhr.responseText !== \"string\" ?\n\t\t\t\t\t\t\t\t\t\t{ binary: xhr.response } :\n\t\t\t\t\t\t\t\t\t\t{ text: xhr.responseText },\n\t\t\t\t\t\t\t\t\txhr.getAllResponseHeaders()\n\t\t\t\t\t\t\t\t);\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};\n\n\t\t\t\t// Listen to events\n\t\t\t\txhr.onload = callback();\n\t\t\t\terrorCallback = xhr.onerror = xhr.ontimeout = callback( \"error\" );\n\n\t\t\t\t// Support: IE 9 only\n\t\t\t\t// Use onreadystatechange to replace onabort\n\t\t\t\t// to handle uncaught aborts\n\t\t\t\tif ( xhr.onabort !== undefined ) {\n\t\t\t\t\txhr.onabort = errorCallback;\n\t\t\t\t} else {\n\t\t\t\t\txhr.onreadystatechange = function() {\n\n\t\t\t\t\t\t// Check readyState before timeout as it changes\n\t\t\t\t\t\tif ( xhr.readyState === 4 ) {\n\n\t\t\t\t\t\t\t// Allow onerror to be called first,\n\t\t\t\t\t\t\t// but that will not handle a native abort\n\t\t\t\t\t\t\t// Also, save errorCallback to a variable\n\t\t\t\t\t\t\t// as xhr.onerror cannot be accessed\n\t\t\t\t\t\t\twindow.setTimeout( function() {\n\t\t\t\t\t\t\t\tif ( callback ) {\n\t\t\t\t\t\t\t\t\terrorCallback();\n\t\t\t\t\t\t\t\t}\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}\n\n\t\t\t\t// Create the abort callback\n\t\t\t\tcallback = callback( \"abort\" );\n\n\t\t\t\ttry {\n\n\t\t\t\t\t// Do send the request (this may raise an exception)\n\t\t\t\t\txhr.send( options.hasContent && options.data || null );\n\t\t\t\t} catch ( e ) {\n\n\t\t\t\t\t// #14683: Only rethrow if this hasn't been notified as an error yet\n\t\t\t\t\tif ( callback ) {\n\t\t\t\t\t\tthrow e;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tabort: function() {\n\t\t\t\tif ( callback ) {\n\t\t\t\t\tcallback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t}\n} );\n\n\n\n\n// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432)\njQuery.ajaxPrefilter( function( s ) {\n\tif ( s.crossDomain ) {\n\t\ts.contents.script = false;\n\t}\n} );\n\n// Install script dataType\njQuery.ajaxSetup( {\n\taccepts: {\n\t\tscript: \"text/javascript, application/javascript, \" +\n\t\t\t\"application/ecmascript, application/x-ecmascript\"\n\t},\n\tcontents: {\n\t\tscript: /\\b(?:java|ecma)script\\b/\n\t},\n\tconverters: {\n\t\t\"text script\": function( text ) {\n\t\t\tjQuery.globalEval( text );\n\t\t\treturn text;\n\t\t}\n\t}\n} );\n\n// Handle cache's special case and crossDomain\njQuery.ajaxPrefilter( \"script\", function( s ) {\n\tif ( s.cache === undefined ) {\n\t\ts.cache = false;\n\t}\n\tif ( s.crossDomain ) {\n\t\ts.type = \"GET\";\n\t}\n} );\n\n// Bind script tag hack transport\njQuery.ajaxTransport( \"script\", function( s ) {\n\n\t// This transport only deals with cross domain or forced-by-attrs requests\n\tif ( s.crossDomain || s.scriptAttrs ) {\n\t\tvar script, callback;\n\t\treturn {\n\t\t\tsend: function( _, complete ) {\n\t\t\t\tscript = jQuery( \"\n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\n\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n var attrs = [['data-family-prefix', 'familyPrefix'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-auto-a11y', 'autoA11y'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']];\n attrs.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n attr = _ref2[0],\n key = _ref2[1];\n\n var val = coerce(getAttrConfig(attr));\n\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\n\nvar _default = {\n familyPrefix: DEFAULT_FAMILY_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n};\n\nvar _config = _objectSpread({}, _default, initial);\n\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\n\nvar config = _objectSpread({}, _config);\n\nWINDOW.FontAwesomeConfig = config;\n\nvar w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nvar functions = [];\n\nvar listener = function listener() {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(function (fn) {\n return fn();\n });\n};\n\nvar loaded = false;\n\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\n\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nvar PENDING = 'pending';\nvar SETTLED = 'settled';\nvar FULFILLED = 'fulfilled';\nvar REJECTED = 'rejected';\n\nvar NOOP = function NOOP() {};\n\nvar isNode = typeof global !== 'undefined' && typeof global.process !== 'undefined' && typeof global.process.emit === 'function';\nvar asyncSetTimer = typeof setImmediate === 'undefined' ? setTimeout : setImmediate;\nvar asyncQueue = [];\nvar asyncTimer;\n\nfunction asyncFlush() {\n // run promise callbacks\n for (var i = 0; i < asyncQueue.length; i++) {\n asyncQueue[i][0](asyncQueue[i][1]);\n } // reset async asyncQueue\n\n\n asyncQueue = [];\n asyncTimer = false;\n}\n\nfunction asyncCall(callback, arg) {\n asyncQueue.push([callback, arg]);\n\n if (!asyncTimer) {\n asyncTimer = true;\n asyncSetTimer(asyncFlush, 0);\n }\n}\n\nfunction invokeResolver(resolver, promise) {\n function resolvePromise(value) {\n resolve(promise, value);\n }\n\n function rejectPromise(reason) {\n reject(promise, reason);\n }\n\n try {\n resolver(resolvePromise, rejectPromise);\n } catch (e) {\n rejectPromise(e);\n }\n}\n\nfunction invokeCallback(subscriber) {\n var owner = subscriber.owner;\n var settled = owner._state;\n var value = owner._data;\n var callback = subscriber[settled];\n var promise = subscriber.then;\n\n if (typeof callback === 'function') {\n settled = FULFILLED;\n\n try {\n value = callback(value);\n } catch (e) {\n reject(promise, e);\n }\n }\n\n if (!handleThenable(promise, value)) {\n if (settled === FULFILLED) {\n resolve(promise, value);\n }\n\n if (settled === REJECTED) {\n reject(promise, value);\n }\n }\n}\n\nfunction handleThenable(promise, value) {\n var resolved;\n\n try {\n if (promise === value) {\n throw new TypeError('A promises callback cannot return that same promise.');\n }\n\n if (value && (typeof value === 'function' || _typeof(value) === 'object')) {\n // then should be retrieved only once\n var then = value.then;\n\n if (typeof then === 'function') {\n then.call(value, function (val) {\n if (!resolved) {\n resolved = true;\n\n if (value === val) {\n fulfill(promise, val);\n } else {\n resolve(promise, val);\n }\n }\n }, function (reason) {\n if (!resolved) {\n resolved = true;\n reject(promise, reason);\n }\n });\n return true;\n }\n }\n } catch (e) {\n if (!resolved) {\n reject(promise, e);\n }\n\n return true;\n }\n\n return false;\n}\n\nfunction resolve(promise, value) {\n if (promise === value || !handleThenable(promise, value)) {\n fulfill(promise, value);\n }\n}\n\nfunction fulfill(promise, value) {\n if (promise._state === PENDING) {\n promise._state = SETTLED;\n promise._data = value;\n asyncCall(publishFulfillment, promise);\n }\n}\n\nfunction reject(promise, reason) {\n if (promise._state === PENDING) {\n promise._state = SETTLED;\n promise._data = reason;\n asyncCall(publishRejection, promise);\n }\n}\n\nfunction publish(promise) {\n promise._then = promise._then.forEach(invokeCallback);\n}\n\nfunction publishFulfillment(promise) {\n promise._state = FULFILLED;\n publish(promise);\n}\n\nfunction publishRejection(promise) {\n promise._state = REJECTED;\n publish(promise);\n\n if (!promise._handled && isNode) {\n global.process.emit('unhandledRejection', promise._data, promise);\n }\n}\n\nfunction notifyRejectionHandled(promise) {\n global.process.emit('rejectionHandled', promise);\n}\n/**\n * @class\n */\n\n\nfunction P(resolver) {\n if (typeof resolver !== 'function') {\n throw new TypeError('Promise resolver ' + resolver + ' is not a function');\n }\n\n if (this instanceof P === false) {\n throw new TypeError('Failed to construct \\'Promise\\': Please use the \\'new\\' operator, this object constructor cannot be called as a function.');\n }\n\n this._then = [];\n invokeResolver(resolver, this);\n}\n\nP.prototype = {\n constructor: P,\n _state: PENDING,\n _then: null,\n _data: undefined,\n _handled: false,\n then: function then(onFulfillment, onRejection) {\n var subscriber = {\n owner: this,\n then: new this.constructor(NOOP),\n fulfilled: onFulfillment,\n rejected: onRejection\n };\n\n if ((onRejection || onFulfillment) && !this._handled) {\n this._handled = true;\n\n if (this._state === REJECTED && isNode) {\n asyncCall(notifyRejectionHandled, this);\n }\n }\n\n if (this._state === FULFILLED || this._state === REJECTED) {\n // already resolved, call callback async\n asyncCall(invokeCallback, subscriber);\n } else {\n // subscribe\n this._then.push(subscriber);\n }\n\n return subscriber.then;\n },\n catch: function _catch(onRejection) {\n return this.then(null, onRejection);\n }\n};\n\nP.all = function (promises) {\n if (!Array.isArray(promises)) {\n throw new TypeError('You must pass an array to Promise.all().');\n }\n\n return new P(function (resolve, reject) {\n var results = [];\n var remaining = 0;\n\n function resolver(index) {\n remaining++;\n return function (value) {\n results[index] = value;\n\n if (! --remaining) {\n resolve(results);\n }\n };\n }\n\n for (var i = 0, promise; i < promises.length; i++) {\n promise = promises[i];\n\n if (promise && typeof promise.then === 'function') {\n promise.then(resolver(i), reject);\n } else {\n results[i] = promise;\n }\n }\n\n if (!remaining) {\n resolve(results);\n }\n });\n};\n\nP.race = function (promises) {\n if (!Array.isArray(promises)) {\n throw new TypeError('You must pass an array to Promise.race().');\n }\n\n return new P(function (resolve, reject) {\n for (var i = 0, promise; i < promises.length; i++) {\n promise = promises[i];\n\n if (promise && typeof promise.then === 'function') {\n promise.then(resolve, reject);\n } else {\n resolve(promise);\n }\n }\n });\n};\n\nP.resolve = function (value) {\n if (value && _typeof(value) === 'object' && value.constructor === P) {\n return value;\n }\n\n return new P(function (resolve) {\n resolve(value);\n });\n};\n\nP.reject = function (reason) {\n return new P(function (resolve, reject) {\n reject(reason);\n });\n};\n\nvar picked = typeof Promise === 'function' ? Promise : P;\n\nvar d = UNITS_IN_GRID;\nvar meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n\n var style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n var headChildren = DOCUMENT.head.childNodes;\n var beforeChild = null;\n\n for (var i = headChildren.length - 1; i > -1; i--) {\n var child = headChildren[i];\n var tagName = (child.tagName || '').toUpperCase();\n\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nvar idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n var size = 12;\n var id = '';\n\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n\n return id;\n}\nfunction toArray(obj) {\n var array = [];\n\n for (var i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(function (i) {\n return i;\n });\n }\n}\nfunction getIconName(familyPrefix, cls) {\n var parts = cls.split('-');\n var prefix = parts[0];\n var iconName = parts.slice(1).join('-');\n\n if (prefix === familyPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(//g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce(function (acc, attributeName) {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce(function (acc, styleName) {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName], \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n var transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer: outer,\n inner: inner,\n path: path\n };\n}\nfunction transformForCss(_ref2) {\n var transform = _ref2.transform,\n _ref2$width = _ref2.width,\n width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,\n _ref2$height = _ref2.height,\n height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,\n _ref2$startCentered = _ref2.startCentered,\n startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;\n var val = '';\n\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d - width / 2, \"em, \").concat(transform.y / d - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d, \"em), calc(-50% + \").concat(transform.y / d, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d, \"em, \").concat(transform.y / d, \"em) \");\n }\n\n val += \"scale(\".concat(transform.size / d * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\n\nfunction fillBlack(abstract) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (abstract.attributes && (abstract.attributes.fill || force)) {\n abstract.attributes.fill = 'black';\n }\n\n return abstract;\n}\n\nfunction deGroup(abstract) {\n if (abstract.tag === 'g') {\n return abstract.children;\n } else {\n return [abstract];\n }\n}\n\nfunction makeIconMasking (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n mask = _ref.mask,\n explicitMaskId = _ref.maskId,\n transform = _ref.transform;\n var mainWidth = main.width,\n mainPath = main.icon;\n var maskWidth = mask.width,\n maskPath = mask.icon;\n var trans = transformForSvg({\n transform: transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n var maskRect = {\n tag: 'rect',\n attributes: _objectSpread({}, ALL_SPACE, {\n fill: 'white'\n })\n };\n var maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n var maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread({}, trans.inner),\n children: [fillBlack(_objectSpread({\n tag: mainPath.tag,\n attributes: _objectSpread({}, mainPath.attributes, trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n var maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread({}, trans.outer),\n children: [maskInnerGroup]\n };\n var maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n var clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n var maskTag = {\n tag: 'mask',\n attributes: _objectSpread({}, ALL_SPACE, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n var defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children: children,\n attributes: attributes\n };\n}\n\nfunction makeIconStandard (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n transform = _ref.transform,\n styles = _ref.styles;\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n if (transformIsMeaningful(transform)) {\n var trans = transformForSvg({\n transform: transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n children.push({\n tag: 'g',\n attributes: _objectSpread({}, trans.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread({}, trans.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread({}, main.icon.attributes, trans.path)\n }]\n }]\n });\n } else {\n children.push(main.icon);\n }\n\n return {\n children: children,\n attributes: attributes\n };\n}\n\nfunction asIcon (_ref) {\n var children = _ref.children,\n main = _ref.main,\n mask = _ref.mask,\n attributes = _ref.attributes,\n styles = _ref.styles,\n transform = _ref.transform;\n\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n var width = main.width,\n height = main.height;\n var offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread({}, styles, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n\n return [{\n tag: 'svg',\n attributes: attributes,\n children: children\n }];\n}\n\nfunction asSymbol (_ref) {\n var prefix = _ref.prefix,\n iconName = _ref.iconName,\n children = _ref.children,\n attributes = _ref.attributes,\n symbol = _ref.symbol;\n var id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.familyPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread({}, attributes, {\n id: id\n }),\n children: children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n var _params$icons = params.icons,\n main = _params$icons.main,\n mask = _params$icons.mask,\n prefix = params.prefix,\n iconName = params.iconName,\n transform = params.transform,\n symbol = params.symbol,\n title = params.title,\n maskId = params.maskId,\n titleId = params.titleId,\n extra = params.extra,\n _params$watchable = params.watchable,\n watchable = _params$watchable === void 0 ? false : _params$watchable;\n\n var _ref = mask.found ? mask : main,\n width = _ref.width,\n height = _ref.height;\n\n var isUploadedIcon = prefix === 'fak';\n var widthClass = isUploadedIcon ? '' : \"fa-w-\".concat(Math.ceil(width / height * 16));\n var attrClass = [config.replacementClass, iconName ? \"\".concat(config.familyPrefix, \"-\").concat(iconName) : '', widthClass].filter(function (c) {\n return extra.classes.indexOf(c) === -1;\n }).filter(function (c) {\n return c !== '' || !!c;\n }).concat(extra.classes).join(' ');\n var content = {\n children: [],\n attributes: _objectSpread({}, extra.attributes, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n var uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n\n if (title) content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n\n var args = _objectSpread({}, content, {\n prefix: prefix,\n iconName: iconName,\n main: main,\n mask: mask,\n maskId: maskId,\n transform: transform,\n symbol: symbol,\n styles: _objectSpread({}, uploadedIconWidthStyle, extra.styles)\n });\n\n var _ref2 = mask.found && main.found ? makeIconMasking(args) : makeIconStandard(args),\n children = _ref2.children,\n attributes = _ref2.attributes;\n\n args.children = children;\n args.attributes = attributes;\n\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n var content = params.content,\n width = params.width,\n height = params.height,\n transform = params.transform,\n title = params.title,\n extra = params.extra,\n _params$watchable2 = params.watchable,\n watchable = _params$watchable2 === void 0 ? false : _params$watchable2;\n\n var attributes = _objectSpread({}, extra.attributes, title ? {\n 'title': title\n } : {}, {\n 'class': extra.classes.join(' ')\n });\n\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n\n var styles = _objectSpread({}, extra.styles);\n\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform: transform,\n startCentered: true,\n width: width,\n height: height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n var content = params.content,\n title = params.title,\n extra = params.extra;\n\n var attributes = _objectSpread({}, extra.attributes, title ? {\n 'title': title\n } : {}, {\n 'class': extra.classes.join(' ')\n });\n\n var styleString = joinStyles(extra.styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\n\nvar noop$1 = function noop() {};\n\nvar p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nvar preamble = \"FA \\\"5.15.4\\\"\";\n\nvar begin = function begin(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return function () {\n return end(name);\n };\n};\n\nvar end = function end(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\n\nvar perf = {\n begin: begin,\n end: end\n};\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\n\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\n\n\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n\n return result;\n};\n\nfunction toHex(unicode) {\n var result = '';\n\n for (var i = 0; i < unicode.length; i++) {\n var hex = unicode.charCodeAt(i).toString(16);\n result += ('000' + hex).slice(-4);\n }\n\n return result;\n}\n\nfunction defineIcons(prefix, icons) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _params$skipHooks = params.skipHooks,\n skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;\n var normalized = Object.keys(icons).reduce(function (acc, iconName) {\n var icon = icons[iconName];\n var expanded = !!icon.icon;\n\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n\n return acc;\n }, {});\n\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalized);\n } else {\n namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, normalized);\n }\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll easy the upgrade process for our users by automatically defining\n * this as well.\n */\n\n\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nvar styles = namespace.styles,\n shims = namespace.shims;\nvar _byUnicode = {};\nvar _byLigature = {};\nvar _byOldName = {};\nvar build = function build() {\n var lookup = function lookup(reducer) {\n return reduce(styles, function (o, style, prefix) {\n o[prefix] = reduce(style, reducer, {});\n return o;\n }, {});\n };\n\n _byUnicode = lookup(function (acc, icon, iconName) {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n\n return acc;\n });\n _byLigature = lookup(function (acc, icon, iconName) {\n var ligatures = icon[2];\n acc[iconName] = iconName;\n ligatures.forEach(function (ligature) {\n acc[ligature] = iconName;\n });\n return acc;\n });\n var hasRegular = 'far' in styles;\n _byOldName = reduce(shims, function (acc, shim) {\n var oldName = shim[0];\n var prefix = shim[1];\n var iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n acc[oldName] = {\n prefix: prefix,\n iconName: iconName\n };\n return acc;\n }, {});\n};\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\n\nvar styles$1 = namespace.styles;\nvar emptyCanonicalIcon = function emptyCanonicalIcon() {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalIcon(values) {\n return values.reduce(function (acc, cls) {\n var iconName = getIconName(config.familyPrefix, cls);\n\n if (styles$1[cls]) {\n acc.prefix = cls;\n } else if (config.autoFetchSvg && Object.keys(PREFIX_TO_STYLE).indexOf(cls) > -1) {\n acc.prefix = cls;\n } else if (iconName) {\n var shim = acc.prefix === 'fa' ? byOldName(iconName) : {};\n acc.iconName = shim.iconName || iconName;\n acc.prefix = shim.prefix || acc.prefix;\n } else if (cls !== config.replacementClass && cls.indexOf('fa-w-') !== 0) {\n acc.rest.push(cls);\n }\n\n return acc;\n }, emptyCanonicalIcon());\n}\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix: prefix,\n iconName: iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\nfunction toHtml(abstractNodes) {\n var tag = abstractNodes.tag,\n _abstractNodes$attrib = abstractNodes.attributes,\n attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,\n _abstractNodes$childr = abstractNodes.children,\n children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;\n\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"\");\n }\n}\n\nvar noop$2 = function noop() {};\n\nfunction isWatched(node) {\n var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\n\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n\n var mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\n\nvar mutators = {\n replace: function replace(mutation) {\n var node = mutation[0];\n var abstract = mutation[1];\n var newOuterHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n\n if (node.parentNode && node.outerHTML) {\n node.outerHTML = newOuterHTML + (config.keepOriginalSource && node.tagName.toLowerCase() !== 'svg' ? \"\") : '');\n } else if (node.parentNode) {\n var newNode = document.createElement('span');\n node.parentNode.replaceChild(newNode, node);\n newNode.outerHTML = newOuterHTML;\n }\n },\n nest: function nest(mutation) {\n var node = mutation[0];\n var abstract = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n\n var forSvg = new RegExp(\"\".concat(config.familyPrefix, \"-.*\"));\n delete abstract[0].attributes.style;\n delete abstract[0].attributes.id;\n var splitClasses = abstract[0].attributes.class.split(' ').reduce(function (acc, cls) {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n abstract[0].attributes.class = splitClasses.toSvg.join(' ');\n var newInnerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.setAttribute('class', splitClasses.toNode.join(' '));\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\n\nfunction performOperationSync(op) {\n op();\n}\n\nfunction perform(mutations, callback) {\n var callbackFunction = typeof callback === 'function' ? callback : noop$2;\n\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n var frame = performOperationSync;\n\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n\n frame(function () {\n var mutator = getMutator();\n var mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nvar disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nvar mo = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n\n if (!config.observeMutations) {\n return;\n }\n\n var treeCallback = options.treeCallback,\n nodeCallback = options.nodeCallback,\n pseudoElementsCallback = options.pseudoElementsCallback,\n _options$observeMutat = options.observeMutationsRoot,\n observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat;\n mo = new MUTATION_OBSERVER(function (objects) {\n if (disabled) return;\n toArray(objects).forEach(function (mutationRecord) {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n\n treeCallback(mutationRecord.target);\n }\n\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class') {\n var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),\n prefix = _getCanonicalIcon.prefix,\n iconName = _getCanonicalIcon.iconName;\n\n if (prefix) mutationRecord.target.setAttribute('data-prefix', prefix);\n if (iconName) mutationRecord.target.setAttribute('data-icon', iconName);\n } else {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo) return;\n mo.disconnect();\n}\n\nfunction styleParser (node) {\n var style = node.getAttribute('style');\n var val = [];\n\n if (style) {\n val = style.split(';').reduce(function (acc, style) {\n var styles = style.split(':');\n var prop = styles[0];\n var value = styles.slice(1);\n\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n\n return acc;\n }, {});\n }\n\n return val;\n}\n\nfunction classParser (node) {\n var existingPrefix = node.getAttribute('data-prefix');\n var existingIconName = node.getAttribute('data-icon');\n var innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n var val = getCanonicalIcon(classArray(node));\n\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.prefix && innerText.length > 1) {\n val.iconName = byLigature(val.prefix, node.innerText);\n } else if (val.prefix && innerText.length === 1) {\n val.iconName = byUnicode(val.prefix, toHex(node.innerText));\n }\n\n return val;\n}\n\nvar parseTransformString = function parseTransformString(transformString) {\n var transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n\n if (!transformString) {\n return transform;\n } else {\n return transformString.toLowerCase().split(' ').reduce(function (acc, n) {\n var parts = n.toLowerCase().split('-');\n var first = parts[0];\n var rest = parts.slice(1).join('-');\n\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n\n rest = parseFloat(rest);\n\n if (isNaN(rest)) {\n return acc;\n }\n\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n\n case 'left':\n acc.x = acc.x - rest;\n break;\n\n case 'right':\n acc.x = acc.x + rest;\n break;\n\n case 'up':\n acc.y = acc.y - rest;\n break;\n\n case 'down':\n acc.y = acc.y + rest;\n break;\n\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n\n return acc;\n }, transform);\n }\n};\nfunction transformParser (node) {\n return parseTransformString(node.getAttribute('data-fa-transform'));\n}\n\nfunction symbolParser (node) {\n var symbol = node.getAttribute('data-fa-symbol');\n return symbol === null ? false : symbol === '' ? true : symbol;\n}\n\nfunction attributesParser (node) {\n var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n\n return acc;\n }, {});\n var title = node.getAttribute('title');\n var titleId = node.getAttribute('data-fa-title-id');\n\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n\n return extraAttributes;\n}\n\nfunction maskParser (node) {\n var mask = node.getAttribute('data-fa-mask');\n\n if (!mask) {\n return emptyCanonicalIcon();\n } else {\n return getCanonicalIcon(mask.split(' ').map(function (i) {\n return i.trim();\n }));\n }\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: null,\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n var _classParser = classParser(node),\n iconName = _classParser.iconName,\n prefix = _classParser.prefix,\n extraClasses = _classParser.rest;\n\n var extraStyles = styleParser(node);\n var transform = transformParser(node);\n var symbol = symbolParser(node);\n var extraAttributes = attributesParser(node);\n var mask = maskParser(node);\n return {\n iconName: iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix: prefix,\n transform: transform,\n symbol: symbol,\n mask: mask,\n maskId: node.getAttribute('data-fa-mask-id'),\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n };\n}\n\nfunction MissingIcon(error) {\n this.name = 'MissingIcon';\n this.message = error || 'Icon unavailable';\n this.stack = new Error().stack;\n}\nMissingIcon.prototype = Object.create(Error.prototype);\nMissingIcon.prototype.constructor = MissingIcon;\n\nvar FILL = {\n fill: 'currentColor'\n};\nvar ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n};\nvar RING = {\n tag: 'path',\n attributes: _objectSpread({}, FILL, {\n d: 'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'\n })\n};\n\nvar OPACITY_ANIMATE = _objectSpread({}, ANIMATION_BASE, {\n attributeName: 'opacity'\n});\n\nvar DOT = {\n tag: 'circle',\n attributes: _objectSpread({}, FILL, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, ANIMATION_BASE, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '1;0;1;1;0;1;'\n })\n }]\n};\nvar QUESTION = {\n tag: 'path',\n attributes: _objectSpread({}, FILL, {\n opacity: '1',\n d: 'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '1;0;0;0;0;1;'\n })\n }]\n};\nvar EXCLAMATION = {\n tag: 'path',\n attributes: _objectSpread({}, FILL, {\n opacity: '0',\n d: 'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '0;0;1;1;0;0;'\n })\n }]\n};\nvar missing = {\n tag: 'g',\n children: [RING, DOT, QUESTION, EXCLAMATION]\n};\n\nvar styles$2 = namespace.styles;\nfunction asFoundIcon(icon) {\n var width = icon[0];\n var height = icon[1];\n\n var _icon$slice = icon.slice(4),\n _icon$slice2 = _slicedToArray(_icon$slice, 1),\n vectorData = _icon$slice2[0];\n\n var element = null;\n\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n\n return {\n found: true,\n width: width,\n height: height,\n icon: element\n };\n}\nfunction findIcon(iconName, prefix) {\n return new picked(function (resolve, reject) {\n var val = {\n found: false,\n width: 512,\n height: 512,\n icon: missing\n };\n\n if (iconName && prefix && styles$2[prefix] && styles$2[prefix][iconName]) {\n var icon = styles$2[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n if (iconName && prefix && !config.showMissingIcons) {\n reject(new MissingIcon(\"Icon is missing for prefix \".concat(prefix, \" with icon name \").concat(iconName)));\n } else {\n resolve(val);\n }\n });\n}\n\nvar styles$3 = namespace.styles;\n\nfunction generateSvgReplacementMutation(node, nodeMeta) {\n var iconName = nodeMeta.iconName,\n title = nodeMeta.title,\n titleId = nodeMeta.titleId,\n prefix = nodeMeta.prefix,\n transform = nodeMeta.transform,\n symbol = nodeMeta.symbol,\n mask = nodeMeta.mask,\n maskId = nodeMeta.maskId,\n extra = nodeMeta.extra;\n return new picked(function (resolve, reject) {\n picked.all([findIcon(iconName, prefix), findIcon(mask.iconName, mask.prefix)]).then(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n main = _ref2[0],\n mask = _ref2[1];\n\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main: main,\n mask: mask\n },\n prefix: prefix,\n iconName: iconName,\n transform: transform,\n symbol: symbol,\n mask: mask,\n maskId: maskId,\n title: title,\n titleId: titleId,\n extra: extra,\n watchable: true\n })]);\n });\n });\n}\n\nfunction generateLayersText(node, nodeMeta) {\n var title = nodeMeta.title,\n transform = nodeMeta.transform,\n extra = nodeMeta.extra;\n var width = null;\n var height = null;\n\n if (IS_IE) {\n var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n var boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n\n return picked.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width: width,\n height: height,\n transform: transform,\n title: title,\n extra: extra,\n watchable: true\n })]);\n}\n\nfunction generateMutation(node) {\n var nodeMeta = parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return generateLayersText(node, nodeMeta);\n } else {\n return generateSvgReplacementMutation(node, nodeMeta);\n }\n}\n\nfunction onTree(root) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return;\n var htmlClassList = DOCUMENT.documentElement.classList;\n\n var hclAdd = function hclAdd(suffix) {\n return htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var hclRemove = function hclRemove(suffix) {\n return htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var prefixes = config.autoFetchSvg ? Object.keys(PREFIX_TO_STYLE) : Object.keys(styles$3);\n var prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(function (p) {\n return \".\".concat(p, \":not([\").concat(DATA_FA_I2SVG, \"])\");\n })).join(', ');\n\n if (prefixesDomQuery.length === 0) {\n return;\n }\n\n var candidates = [];\n\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e) {// noop\n }\n\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return;\n }\n\n var mark = perf.begin('onTree');\n var mutations = candidates.reduce(function (acc, node) {\n try {\n var mutation = generateMutation(node);\n\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e) {\n if (!PRODUCTION) {\n if (e instanceof MissingIcon) {\n console.error(e);\n }\n }\n }\n\n return acc;\n }, []);\n return new picked(function (resolve, reject) {\n picked.all(mutations).then(function (resolvedMutations) {\n perform(resolvedMutations, function () {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(function () {\n mark();\n reject();\n });\n });\n}\nfunction onNode(node) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(function (mutation) {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\n\nfunction replaceForPosition(node, position) {\n var pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new picked(function (resolve, reject) {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n\n var children = toArray(node.children);\n var alreadyProcessedPseudoElement = children.filter(function (c) {\n return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position;\n })[0];\n var styles = WINDOW.getComputedStyle(node, position);\n var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);\n var fontWeight = styles.getPropertyValue('font-weight');\n var content = styles.getPropertyValue('content');\n\n if (alreadyProcessedPseudoElement && !fontFamily) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamily && content !== 'none' && content !== '') {\n var _content = styles.getPropertyValue('content');\n\n var prefix = ~['Solid', 'Regular', 'Light', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[fontWeight];\n var hexValue = toHex(_content.length === 3 ? _content.substr(1, 1) : _content);\n var iconName = byUnicode(prefix, hexValue);\n var iconIdentifier = iconName; // Only convert the pseudo element in this :before/:after position into an icon if we haven't\n // already done so with the same prefix and iconName\n\n if (iconName && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n\n var meta = blankMeta();\n var extra = meta.extra;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(function (main) {\n var abstract = makeInlineSvgAbstract(_objectSpread({}, meta, {\n icons: {\n main: main,\n mask: emptyCanonicalIcon()\n },\n prefix: prefix,\n iconName: iconIdentifier,\n extra: extra,\n watchable: true\n }));\n var element = DOCUMENT.createElement('svg');\n\n if (position === ':before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n\n element.outerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\n\nfunction replace(node) {\n return picked.all([replaceForPosition(node, ':before'), replaceForPosition(node, ':after')]);\n}\n\nfunction processable(node) {\n return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== 'svg');\n}\n\nfunction searchPseudoElements (root) {\n if (!IS_DOM) return;\n return new picked(function (resolve, reject) {\n var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n var end = perf.begin('searchPseudoElements');\n disableObservation();\n picked.all(operations).then(function () {\n end();\n enableObservation();\n resolve();\n }).catch(function () {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar baseStyles = \"svg:not(:root).svg-inline--fa {\\n overflow: visible;\\n}\\n\\n.svg-inline--fa {\\n display: inline-block;\\n font-size: inherit;\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.225em;\\n}\\n.svg-inline--fa.fa-w-1 {\\n width: 0.0625em;\\n}\\n.svg-inline--fa.fa-w-2 {\\n width: 0.125em;\\n}\\n.svg-inline--fa.fa-w-3 {\\n width: 0.1875em;\\n}\\n.svg-inline--fa.fa-w-4 {\\n width: 0.25em;\\n}\\n.svg-inline--fa.fa-w-5 {\\n width: 0.3125em;\\n}\\n.svg-inline--fa.fa-w-6 {\\n width: 0.375em;\\n}\\n.svg-inline--fa.fa-w-7 {\\n width: 0.4375em;\\n}\\n.svg-inline--fa.fa-w-8 {\\n width: 0.5em;\\n}\\n.svg-inline--fa.fa-w-9 {\\n width: 0.5625em;\\n}\\n.svg-inline--fa.fa-w-10 {\\n width: 0.625em;\\n}\\n.svg-inline--fa.fa-w-11 {\\n width: 0.6875em;\\n}\\n.svg-inline--fa.fa-w-12 {\\n width: 0.75em;\\n}\\n.svg-inline--fa.fa-w-13 {\\n width: 0.8125em;\\n}\\n.svg-inline--fa.fa-w-14 {\\n width: 0.875em;\\n}\\n.svg-inline--fa.fa-w-15 {\\n width: 0.9375em;\\n}\\n.svg-inline--fa.fa-w-16 {\\n width: 1em;\\n}\\n.svg-inline--fa.fa-w-17 {\\n width: 1.0625em;\\n}\\n.svg-inline--fa.fa-w-18 {\\n width: 1.125em;\\n}\\n.svg-inline--fa.fa-w-19 {\\n width: 1.1875em;\\n}\\n.svg-inline--fa.fa-w-20 {\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: 0.3em;\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: 0.3em;\\n width: auto;\\n}\\n.svg-inline--fa.fa-border {\\n height: 1.5em;\\n}\\n.svg-inline--fa.fa-li {\\n width: 2em;\\n}\\n.svg-inline--fa.fa-fw {\\n width: 1.25em;\\n}\\n\\n.fa-layers svg.svg-inline--fa {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.fa-layers {\\n display: inline-block;\\n height: 1em;\\n position: relative;\\n text-align: center;\\n vertical-align: -0.125em;\\n width: 1em;\\n}\\n.fa-layers svg.svg-inline--fa {\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter {\\n background-color: #ff253a;\\n border-radius: 1em;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n color: #fff;\\n height: 1.5em;\\n line-height: 1;\\n max-width: 5em;\\n min-width: 1.5em;\\n overflow: hidden;\\n padding: 0.25em;\\n right: 0;\\n text-overflow: ellipsis;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: 0;\\n right: 0;\\n top: auto;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: bottom right;\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: 0;\\n left: 0;\\n right: auto;\\n top: auto;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: bottom left;\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n right: 0;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: 0;\\n right: auto;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top left;\\n transform-origin: top left;\\n}\\n\\n.fa-lg {\\n font-size: 1.3333333333em;\\n line-height: 0.75em;\\n vertical-align: -0.0667em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\n}\\n\\n.fa-1x {\\n font-size: 1em;\\n}\\n\\n.fa-2x {\\n font-size: 2em;\\n}\\n\\n.fa-3x {\\n font-size: 3em;\\n}\\n\\n.fa-4x {\\n font-size: 4em;\\n}\\n\\n.fa-5x {\\n font-size: 5em;\\n}\\n\\n.fa-6x {\\n font-size: 6em;\\n}\\n\\n.fa-7x {\\n font-size: 7em;\\n}\\n\\n.fa-8x {\\n font-size: 8em;\\n}\\n\\n.fa-9x {\\n font-size: 9em;\\n}\\n\\n.fa-10x {\\n font-size: 10em;\\n}\\n\\n.fa-fw {\\n text-align: center;\\n width: 1.25em;\\n}\\n\\n.fa-ul {\\n list-style-type: none;\\n margin-left: 2.5em;\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: -2em;\\n position: absolute;\\n text-align: center;\\n width: 2em;\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border: solid 0.08em #eee;\\n border-radius: 0.1em;\\n padding: 0.2em 0.25em 0.15em;\\n}\\n\\n.fa-pull-left {\\n float: left;\\n}\\n\\n.fa-pull-right {\\n float: right;\\n}\\n\\n.fa.fa-pull-left,\\n.fas.fa-pull-left,\\n.far.fa-pull-left,\\n.fal.fa-pull-left,\\n.fab.fa-pull-left {\\n margin-right: 0.3em;\\n}\\n.fa.fa-pull-right,\\n.fas.fa-pull-right,\\n.far.fa-pull-right,\\n.fal.fa-pull-right,\\n.fab.fa-pull-right {\\n margin-left: 0.3em;\\n}\\n\\n.fa-spin {\\n -webkit-animation: fa-spin 2s infinite linear;\\n animation: fa-spin 2s infinite linear;\\n}\\n\\n.fa-pulse {\\n -webkit-animation: fa-spin 1s infinite steps(8);\\n animation: fa-spin 1s infinite steps(8);\\n}\\n\\n@-webkit-keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\\\";\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)\\\";\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)\\\";\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)\\\";\\n -webkit-transform: scale(-1, 1);\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\\\";\\n -webkit-transform: scale(1, -1);\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\\\";\\n -webkit-transform: scale(-1, -1);\\n transform: scale(-1, -1);\\n}\\n\\n:root .fa-rotate-90,\\n:root .fa-rotate-180,\\n:root .fa-rotate-270,\\n:root .fa-flip-horizontal,\\n:root .fa-flip-vertical,\\n:root .fa-flip-both {\\n -webkit-filter: none;\\n filter: none;\\n}\\n\\n.fa-stack {\\n display: inline-block;\\n height: 2em;\\n position: relative;\\n width: 2.5em;\\n}\\n\\n.fa-stack-1x,\\n.fa-stack-2x {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.svg-inline--fa.fa-stack-1x {\\n height: 1em;\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-stack-2x {\\n height: 2em;\\n width: 2.5em;\\n}\\n\\n.fa-inverse {\\n color: #fff;\\n}\\n\\n.sr-only {\\n border: 0;\\n clip: rect(0, 0, 0, 0);\\n height: 1px;\\n margin: -1px;\\n overflow: hidden;\\n padding: 0;\\n position: absolute;\\n width: 1px;\\n}\\n\\n.sr-only-focusable:active, .sr-only-focusable:focus {\\n clip: auto;\\n height: auto;\\n margin: 0;\\n overflow: visible;\\n position: static;\\n width: auto;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: 1;\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: 0.4;\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: 0.4;\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\n opacity: 1;\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa mask .fa-primary,\\n.svg-inline--fa mask .fa-secondary {\\n fill: black;\\n}\\n\\n.fad.fa-inverse {\\n color: #fff;\\n}\";\n\nfunction css () {\n var dfp = DEFAULT_FAMILY_PREFIX;\n var drc = DEFAULT_REPLACEMENT_CLASS;\n var fp = config.familyPrefix;\n var rc = config.replacementClass;\n var s = baseStyles;\n\n if (fp !== dfp || rc !== drc) {\n var dPatt = new RegExp(\"\\\\.\".concat(dfp, \"\\\\-\"), 'g');\n var customPropPatt = new RegExp(\"\\\\--\".concat(dfp, \"\\\\-\"), 'g');\n var rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n\n return s;\n}\n\nvar Library =\n/*#__PURE__*/\nfunction () {\n function Library() {\n _classCallCheck(this, Library);\n\n this.definitions = {};\n }\n\n _createClass(Library, [{\n key: \"add\",\n value: function add() {\n var _this = this;\n\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n\n var additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(function (key) {\n _this.definitions[key] = _objectSpread({}, _this.definitions[key] || {}, additions[key]);\n defineIcons(key, additions[key]);\n build();\n });\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.definitions = {};\n }\n }, {\n key: \"_pullDefinitions\",\n value: function _pullDefinitions(additions, definition) {\n var normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(function (key) {\n var _normalized$key = normalized[key],\n prefix = _normalized$key.prefix,\n iconName = _normalized$key.iconName,\n icon = _normalized$key.icon;\n if (!additions[prefix]) additions[prefix] = {};\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n }]);\n\n return Library;\n}();\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n\n _cssInserted = true;\n }\n}\n\nfunction apiObject(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function get() {\n return val.abstract.map(function (a) {\n return toHtml(a);\n });\n }\n });\n Object.defineProperty(val, 'node', {\n get: function get() {\n if (!IS_DOM) return;\n var container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction findIconDefinition(iconLookup) {\n var _iconLookup$prefix = iconLookup.prefix,\n prefix = _iconLookup$prefix === void 0 ? 'fa' : _iconLookup$prefix,\n iconName = iconLookup.iconName;\n if (!iconName) return;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\n\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n var mask = params.mask;\n\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n\n return next(iconDefinition, _objectSpread({}, params, {\n mask: mask\n }));\n };\n}\n\nvar library = new Library();\nvar noAuto = function noAuto() {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n disconnect();\n};\nvar _cssInserted = false;\nvar dom = {\n i2svg: function i2svg() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n ensureCss();\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node,\n _params$callback = params.callback,\n callback = _params$callback === void 0 ? function () {} : _params$callback;\n\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n\n return onTree(node, callback);\n } else {\n return picked.reject('Operation requires a DOM of some kind.');\n }\n },\n css: css,\n insertCss: function insertCss$$1() {\n if (!_cssInserted) {\n insertCss(css());\n\n _cssInserted = true;\n }\n },\n watch: function watch() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var autoReplaceSvgRoot = params.autoReplaceSvgRoot,\n observeMutationsRoot = params.observeMutationsRoot;\n\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n\n config.observeMutations = true;\n domready(function () {\n autoReplace({\n autoReplaceSvgRoot: autoReplaceSvgRoot\n });\n observe({\n treeCallback: onTree,\n nodeCallback: onNode,\n pseudoElementsCallback: searchPseudoElements,\n observeMutationsRoot: observeMutationsRoot\n });\n });\n }\n};\nvar parse = {\n transform: function transform(transformString) {\n return parseTransformString(transformString);\n }\n};\nvar icon = resolveIcons(function (iconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$symbol = params.symbol,\n symbol = _params$symbol === void 0 ? false : _params$symbol,\n _params$mask = params.mask,\n mask = _params$mask === void 0 ? null : _params$mask,\n _params$maskId = params.maskId,\n maskId = _params$maskId === void 0 ? null : _params$maskId,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$titleId = params.titleId,\n titleId = _params$titleId === void 0 ? null : _params$titleId,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n if (!iconDefinition) return;\n var prefix = iconDefinition.prefix,\n iconName = iconDefinition.iconName,\n icon = iconDefinition.icon;\n return apiObject(_objectSpread({\n type: 'icon'\n }, iconDefinition), function () {\n ensureCss();\n\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix: prefix,\n iconName: iconName,\n transform: _objectSpread({}, meaninglessTransform, transform),\n symbol: symbol,\n title: title,\n maskId: maskId,\n titleId: titleId,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: classes\n }\n });\n });\n});\nvar text = function text(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform2 = params.transform,\n transform = _params$transform2 === void 0 ? meaninglessTransform : _params$transform2,\n _params$title2 = params.title,\n title = _params$title2 === void 0 ? null : _params$title2,\n _params$classes2 = params.classes,\n classes = _params$classes2 === void 0 ? [] : _params$classes2,\n _params$attributes2 = params.attributes,\n attributes = _params$attributes2 === void 0 ? {} : _params$attributes2,\n _params$styles2 = params.styles,\n styles = _params$styles2 === void 0 ? {} : _params$styles2;\n return apiObject({\n type: 'text',\n content: content\n }, function () {\n ensureCss();\n return makeLayersTextAbstract({\n content: content,\n transform: _objectSpread({}, meaninglessTransform, transform),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.familyPrefix, \"-layers-text\")].concat(_toConsumableArray(classes))\n }\n });\n });\n};\nvar counter = function counter(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$title3 = params.title,\n title = _params$title3 === void 0 ? null : _params$title3,\n _params$classes3 = params.classes,\n classes = _params$classes3 === void 0 ? [] : _params$classes3,\n _params$attributes3 = params.attributes,\n attributes = _params$attributes3 === void 0 ? {} : _params$attributes3,\n _params$styles3 = params.styles,\n styles = _params$styles3 === void 0 ? {} : _params$styles3;\n return apiObject({\n type: 'counter',\n content: content\n }, function () {\n ensureCss();\n return makeLayersCounterAbstract({\n content: content.toString(),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.familyPrefix, \"-layers-counter\")].concat(_toConsumableArray(classes))\n }\n });\n });\n};\nvar layer = function layer(assembler) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$classes4 = params.classes,\n classes = _params$classes4 === void 0 ? [] : _params$classes4;\n return apiObject({\n type: 'layer'\n }, function () {\n ensureCss();\n var children = [];\n assembler(function (args) {\n Array.isArray(args) ? args.map(function (a) {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.familyPrefix, \"-layers\")].concat(_toConsumableArray(classes)).join(' ')\n },\n children: children\n }];\n });\n};\nvar api = {\n noAuto: noAuto,\n config: config,\n dom: dom,\n library: library,\n parse: parse,\n findIconDefinition: findIconDefinition,\n icon: icon,\n text: text,\n counter: counter,\n layer: layer,\n toHtml: toHtml\n};\n\nvar autoReplace = function autoReplace() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _params$autoReplaceSv = params.autoReplaceSvgRoot,\n autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nexport { icon, noAuto, config, toHtml, layer, text, counter, library, dom, parse, findIconDefinition };\n","import { parse, icon } from '@fortawesome/fontawesome-svg-core';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _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 ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\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 _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) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\n// Get CSS class list from a props object\nfunction classList(props) {\n var _classes;\n\n var spin = props.spin,\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-spin': spin,\n 'fa-pulse': pulse,\n 'fa-fw': fixedWidth,\n 'fa-inverse': inverse,\n 'fa-border': border,\n 'fa-li': listItem,\n 'fa-flip-horizontal': flip === 'horizontal' || flip === 'both',\n 'fa-flip-vertical': flip === 'vertical' || flip === 'both'\n }, _defineProperty(_classes, \"fa-\".concat(size), typeof size !== 'undefined' && size !== null), _defineProperty(_classes, \"fa-rotate-\".concat(rotation), typeof rotation !== 'undefined' && rotation !== null && rotation !== 0), _defineProperty(_classes, \"fa-pull-\".concat(pull), typeof pull !== 'undefined' && pull !== null), _defineProperty(_classes, 'fa-swap-opacity', props.swapOpacity), _classes); // map over all the keys in the classes object\n // return an array of the keys where the value for the key is not null\n\n return Object.keys(classes).map(function (key) {\n return classes[key] ? key : null;\n }).filter(function (key) {\n return key;\n });\n}\n\n// Camelize taken from humps\n// humps is copyright © 2012+ Dom Christie\n// Released under the MIT license.\n// Performant way to determine if object coerces to a number\nfunction _isNumerical(obj) {\n obj = obj - 0; // eslint-disable-next-line no-self-compare\n\n return obj === obj;\n}\n\nfunction camelize(string) {\n if (_isNumerical(string)) {\n return string;\n } // eslint-disable-next-line no-useless-escape\n\n\n string = string.replace(/[\\-_\\s]+(.)?/g, function (match, chr) {\n return chr ? chr.toUpperCase() : '';\n }); // Ensure 1st char is always lowercase\n\n return string.substr(0, 1).toLowerCase() + string.substr(1);\n}\n\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, [\"style\"]);\n\n mixins.attrs['style'] = _objectSpread2({}, mixins.attrs['style'], {}, existingStyle);\n /* eslint-enable */\n\n return createElement.apply(void 0, [element.tag, _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\nfunction FontAwesomeIcon(_ref) {\n var forwardedRef = _ref.forwardedRef,\n props = _objectWithoutProperties(_ref, [\"forwardedRef\"]);\n\n var iconArgs = props.icon,\n maskArgs = props.mask,\n symbol = props.symbol,\n className = props.className,\n title = props.title,\n titleId = props.titleId;\n var iconLookup = normalizeIconArgs(iconArgs);\n var classes = objectWithKey('classes', [].concat(_toConsumableArray(classList(props)), _toConsumableArray(className.split(' '))));\n var transform = objectWithKey('transform', typeof props.transform === 'string' ? parse.transform(props.transform) : props.transform);\n var mask = objectWithKey('mask', normalizeIconArgs(maskArgs));\n var renderedIcon = icon(iconLookup, _objectSpread2({}, classes, {}, transform, {}, mask, {\n symbol: symbol,\n title: title,\n titleId: titleId\n }));\n\n if (!renderedIcon) {\n log('Could not find icon', iconLookup);\n return null;\n }\n\n var abstract = renderedIcon.abstract;\n var extraProps = {\n ref: forwardedRef\n };\n Object.keys(props).forEach(function (key) {\n // eslint-disable-next-line no-prototype-builtins\n if (!FontAwesomeIcon.defaultProps.hasOwnProperty(key)) {\n extraProps[key] = props[key];\n }\n });\n return convertCurry(abstract[0], extraProps);\n}\nFontAwesomeIcon.displayName = 'FontAwesomeIcon';\nFontAwesomeIcon.propTypes = {\n border: PropTypes.bool,\n className: PropTypes.string,\n mask: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n fixedWidth: PropTypes.bool,\n inverse: PropTypes.bool,\n flip: PropTypes.oneOf(['horizontal', 'vertical', 'both']),\n icon: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n listItem: PropTypes.bool,\n pull: PropTypes.oneOf(['right', 'left']),\n pulse: PropTypes.bool,\n rotation: PropTypes.oneOf([0, 90, 180, 270]),\n size: PropTypes.oneOf(['lg', 'xs', 'sm', '1x', '2x', '3x', '4x', '5x', '6x', '7x', '8x', '9x', '10x']),\n spin: PropTypes.bool,\n symbol: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),\n title: PropTypes.string,\n transform: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n swapOpacity: PropTypes.bool\n};\nFontAwesomeIcon.defaultProps = {\n border: false,\n className: '',\n mask: null,\n fixedWidth: false,\n inverse: false,\n flip: null,\n icon: null,\n listItem: false,\n pull: null,\n pulse: false,\n rotation: null,\n size: null,\n spin: false,\n symbol: false,\n title: '',\n transform: null,\n swapOpacity: false\n};\nvar convertCurry = convert.bind(null, React.createElement);\n\nexport { FontAwesomeIcon };\n","// WAI-ARIA: https://www.w3.org/TR/wai-aria-practices-1.2/#disclosure\nimport React, {\n Fragment,\n createContext,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n\n // Types\n Dispatch,\n ElementType,\n KeyboardEvent as ReactKeyboardEvent,\n MouseEvent as ReactMouseEvent,\n Ref,\n MutableRefObject,\n ContextType,\n} from 'react'\n\nimport { Props } from '../../types'\nimport { match } from '../../utils/match'\nimport { forwardRefWithAs, render, Features, PropsForFeatures } from '../../utils/render'\nimport { useSyncRefs } from '../../hooks/use-sync-refs'\nimport { useId } from '../../hooks/use-id'\nimport { Keys } from '../keyboard'\nimport { isDisabledReactIssue7711 } from '../../utils/bugs'\nimport { OpenClosedProvider, State, useOpenClosed } from '../../internal/open-closed'\nimport { useResolveButtonType } from '../../hooks/use-resolve-button-type'\n\nenum DisclosureStates {\n Open,\n Closed,\n}\n\ninterface StateDefinition {\n disclosureState: DisclosureStates\n\n linkedPanel: boolean\n\n buttonId: string\n panelId: string\n}\n\nenum ActionTypes {\n ToggleDisclosure,\n CloseDisclosure,\n\n SetButtonId,\n SetPanelId,\n\n LinkPanel,\n UnlinkPanel,\n}\n\ntype Actions =\n | { type: ActionTypes.ToggleDisclosure }\n | { type: ActionTypes.CloseDisclosure }\n | { type: ActionTypes.SetButtonId; buttonId: string }\n | { type: ActionTypes.SetPanelId; panelId: string }\n | { type: ActionTypes.LinkPanel }\n | { type: ActionTypes.UnlinkPanel }\n\nlet reducers: {\n [P in ActionTypes]: (\n state: StateDefinition,\n action: Extract\n ) => StateDefinition\n} = {\n [ActionTypes.ToggleDisclosure]: state => ({\n ...state,\n disclosureState: match(state.disclosureState, {\n [DisclosureStates.Open]: DisclosureStates.Closed,\n [DisclosureStates.Closed]: DisclosureStates.Open,\n }),\n }),\n [ActionTypes.CloseDisclosure]: state => {\n if (state.disclosureState === DisclosureStates.Closed) return state\n return { ...state, disclosureState: DisclosureStates.Closed }\n },\n [ActionTypes.LinkPanel](state) {\n if (state.linkedPanel === true) return state\n return { ...state, linkedPanel: true }\n },\n [ActionTypes.UnlinkPanel](state) {\n if (state.linkedPanel === false) return state\n return { ...state, linkedPanel: false }\n },\n [ActionTypes.SetButtonId](state, action) {\n if (state.buttonId === action.buttonId) return state\n return { ...state, buttonId: action.buttonId }\n },\n [ActionTypes.SetPanelId](state, action) {\n if (state.panelId === action.panelId) return state\n return { ...state, panelId: action.panelId }\n },\n}\n\nlet DisclosureContext = createContext<[StateDefinition, Dispatch] | null>(null)\nDisclosureContext.displayName = 'DisclosureContext'\n\nfunction useDisclosureContext(component: string) {\n let context = useContext(DisclosureContext)\n if (context === null) {\n let err = new Error(`<${component} /> is missing a parent <${Disclosure.name} /> component.`)\n if (Error.captureStackTrace) Error.captureStackTrace(err, useDisclosureContext)\n throw err\n }\n return context\n}\n\nlet DisclosureAPIContext = createContext<{\n close(focusableElement?: HTMLElement | MutableRefObject): void\n} | null>(null)\nDisclosureAPIContext.displayName = 'DisclosureAPIContext'\n\nfunction useDisclosureAPIContext(component: string) {\n let context = useContext(DisclosureAPIContext)\n if (context === null) {\n let err = new Error(`<${component} /> is missing a parent <${Disclosure.name} /> component.`)\n if (Error.captureStackTrace) Error.captureStackTrace(err, useDisclosureAPIContext)\n throw err\n }\n return context\n}\n\nlet DisclosurePanelContext = createContext(null)\nDisclosurePanelContext.displayName = 'DisclosurePanelContext'\n\nfunction useDisclosurePanelContext() {\n return useContext(DisclosurePanelContext)\n}\n\nfunction stateReducer(state: StateDefinition, action: Actions) {\n return match(action.type, reducers, state, action)\n}\n\n// ---\n\nlet DEFAULT_DISCLOSURE_TAG = Fragment\ninterface DisclosureRenderPropArg {\n open: boolean\n close(focusableElement?: HTMLElement | MutableRefObject): void\n}\n\nexport function Disclosure(\n props: Props & {\n defaultOpen?: boolean\n }\n) {\n let { defaultOpen = false, ...passthroughProps } = props\n let buttonId = `headlessui-disclosure-button-${useId()}`\n let panelId = `headlessui-disclosure-panel-${useId()}`\n\n let reducerBag = useReducer(stateReducer, {\n disclosureState: defaultOpen ? DisclosureStates.Open : DisclosureStates.Closed,\n linkedPanel: false,\n buttonId,\n panelId,\n } as StateDefinition)\n let [{ disclosureState }, dispatch] = reducerBag\n\n useEffect(() => dispatch({ type: ActionTypes.SetButtonId, buttonId }), [buttonId, dispatch])\n useEffect(() => dispatch({ type: ActionTypes.SetPanelId, panelId }), [panelId, dispatch])\n\n let close = useCallback(\n (focusableElement?: HTMLElement | MutableRefObject) => {\n dispatch({ type: ActionTypes.CloseDisclosure })\n\n let restoreElement = (() => {\n if (!focusableElement) return document.getElementById(buttonId)\n if (focusableElement instanceof HTMLElement) return focusableElement\n if (focusableElement.current instanceof HTMLElement) return focusableElement.current\n\n return document.getElementById(buttonId)\n })()\n\n restoreElement?.focus()\n },\n [dispatch, buttonId]\n )\n\n let api = useMemo>(() => ({ close }), [close])\n\n let slot = useMemo(\n () => ({ open: disclosureState === DisclosureStates.Open, close }),\n [disclosureState, close]\n )\n\n return (\n \n \n \n {render({\n props: passthroughProps,\n slot,\n defaultTag: DEFAULT_DISCLOSURE_TAG,\n name: 'Disclosure',\n })}\n \n \n \n )\n}\n\n// ---\n\nlet DEFAULT_BUTTON_TAG = 'button' as const\ninterface ButtonRenderPropArg {\n open: boolean\n}\ntype ButtonPropsWeControl =\n | 'id'\n | 'type'\n | 'aria-expanded'\n | 'aria-controls'\n | 'onKeyDown'\n | 'onClick'\n\nlet Button = forwardRefWithAs(function Button(\n props: Props,\n ref: Ref\n) {\n let [state, dispatch] = useDisclosureContext([Disclosure.name, Button.name].join('.'))\n let internalButtonRef = useRef(null)\n let buttonRef = useSyncRefs(internalButtonRef, ref)\n\n let panelContext = useDisclosurePanelContext()\n let isWithinPanel = panelContext === null ? false : panelContext === state.panelId\n\n let handleKeyDown = useCallback(\n (event: ReactKeyboardEvent) => {\n if (isWithinPanel) {\n if (state.disclosureState === DisclosureStates.Closed) return\n\n switch (event.key) {\n case Keys.Space:\n case Keys.Enter:\n event.preventDefault()\n event.stopPropagation()\n dispatch({ type: ActionTypes.ToggleDisclosure })\n document.getElementById(state.buttonId)?.focus()\n break\n }\n } else {\n switch (event.key) {\n case Keys.Space:\n case Keys.Enter:\n event.preventDefault()\n event.stopPropagation()\n dispatch({ type: ActionTypes.ToggleDisclosure })\n break\n }\n }\n },\n [dispatch, isWithinPanel, state.disclosureState]\n )\n\n let handleKeyUp = useCallback((event: ReactKeyboardEvent) => {\n switch (event.key) {\n case Keys.Space:\n // Required for firefox, event.preventDefault() in handleKeyDown for\n // the Space key doesn't cancel the handleKeyUp, which in turn\n // triggers a *click*.\n event.preventDefault()\n break\n }\n }, [])\n\n let handleClick = useCallback(\n (event: ReactMouseEvent) => {\n if (isDisabledReactIssue7711(event.currentTarget)) return\n if (props.disabled) return\n\n if (isWithinPanel) {\n dispatch({ type: ActionTypes.ToggleDisclosure })\n document.getElementById(state.buttonId)?.focus()\n } else {\n dispatch({ type: ActionTypes.ToggleDisclosure })\n }\n },\n [dispatch, props.disabled, state.buttonId, isWithinPanel]\n )\n\n let slot = useMemo(\n () => ({ open: state.disclosureState === DisclosureStates.Open }),\n [state]\n )\n\n let type = useResolveButtonType(props, internalButtonRef)\n let passthroughProps = props\n let propsWeControl = isWithinPanel\n ? { ref: buttonRef, type, onKeyDown: handleKeyDown, onClick: handleClick }\n : {\n ref: buttonRef,\n id: state.buttonId,\n type,\n 'aria-expanded': props.disabled\n ? undefined\n : state.disclosureState === DisclosureStates.Open,\n 'aria-controls': state.linkedPanel ? state.panelId : undefined,\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp,\n onClick: handleClick,\n }\n\n return render({\n props: { ...passthroughProps, ...propsWeControl },\n slot,\n defaultTag: DEFAULT_BUTTON_TAG,\n name: 'Disclosure.Button',\n })\n})\n\n// ---\n\nlet DEFAULT_PANEL_TAG = 'div' as const\ninterface PanelRenderPropArg {\n open: boolean\n close: (focusableElement?: HTMLElement | MutableRefObject) => void\n}\ntype PanelPropsWeControl = 'id'\n\nlet PanelRenderFeatures = Features.RenderStrategy | Features.Static\n\nlet Panel = forwardRefWithAs(function Panel(\n props: Props &\n PropsForFeatures,\n ref: Ref\n) {\n let [state, dispatch] = useDisclosureContext([Disclosure.name, Panel.name].join('.'))\n let { close } = useDisclosureAPIContext([Disclosure.name, Panel.name].join('.'))\n\n let panelRef = useSyncRefs(ref, () => {\n if (state.linkedPanel) return\n dispatch({ type: ActionTypes.LinkPanel })\n })\n\n let usesOpenClosedState = useOpenClosed()\n let visible = (() => {\n if (usesOpenClosedState !== null) {\n return usesOpenClosedState === State.Open\n }\n\n return state.disclosureState === DisclosureStates.Open\n })()\n\n // Unlink on \"unmount\" myself\n useEffect(() => () => dispatch({ type: ActionTypes.UnlinkPanel }), [dispatch])\n\n // Unlink on \"unmount\" children\n useEffect(() => {\n if (state.disclosureState === DisclosureStates.Closed && (props.unmount ?? true)) {\n dispatch({ type: ActionTypes.UnlinkPanel })\n }\n }, [state.disclosureState, props.unmount, dispatch])\n\n let slot = useMemo(\n () => ({ open: state.disclosureState === DisclosureStates.Open, close }),\n [state, close]\n )\n let propsWeControl = {\n ref: panelRef,\n id: state.panelId,\n }\n let passthroughProps = props\n\n return (\n \n {render({\n props: { ...passthroughProps, ...propsWeControl },\n slot,\n defaultTag: DEFAULT_PANEL_TAG,\n features: PanelRenderFeatures,\n visible,\n name: 'Disclosure.Panel',\n })}\n \n )\n})\n\n// ---\n\nDisclosure.Button = Button\nDisclosure.Panel = Panel\n","/*!\n * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)\n */\nvar prefix = \"fab\";\nvar fa500px = {\n prefix: 'fab',\n iconName: '500px',\n icon: [448, 512, [], \"f26e\", \"M103.3 344.3c-6.5-14.2-6.9-18.3 7.4-23.1 25.6-8 8 9.2 43.2 49.2h.3v-93.9c1.2-50.2 44-92.2 97.7-92.2 53.9 0 97.7 43.5 97.7 96.8 0 63.4-60.8 113.2-128.5 93.3-10.5-4.2-2.1-31.7 8.5-28.6 53 0 89.4-10.1 89.4-64.4 0-61-77.1-89.6-116.9-44.6-23.5 26.4-17.6 42.1-17.6 157.6 50.7 31 118.3 22 160.4-20.1 24.8-24.8 38.5-58 38.5-93 0-35.2-13.8-68.2-38.8-93.3-24.8-24.8-57.8-38.5-93.3-38.5s-68.8 13.8-93.5 38.5c-.3.3-16 16.5-21.2 23.9l-.5.6c-3.3 4.7-6.3 9.1-20.1 6.1-6.9-1.7-14.3-5.8-14.3-11.8V20c0-5 3.9-10.5 10.5-10.5h241.3c8.3 0 8.3 11.6 8.3 15.1 0 3.9 0 15.1-8.3 15.1H130.3v132.9h.3c104.2-109.8 282.8-36 282.8 108.9 0 178.1-244.8 220.3-310.1 62.8zm63.3-260.8c-.5 4.2 4.6 24.5 14.6 20.6C306 56.6 384 144.5 390.6 144.5c4.8 0 22.8-15.3 14.3-22.8-93.2-89-234.5-57-238.3-38.2zM393 414.7C283 524.6 94 475.5 61 310.5c0-12.2-30.4-7.4-28.9 3.3 24 173.4 246 256.9 381.6 121.3 6.9-7.8-12.6-28.4-20.7-20.4zM213.6 306.6c0 4 4.3 7.3 5.5 8.5 3 3 6.1 4.4 8.5 4.4 3.8 0 2.6.2 22.3-19.5 19.6 19.3 19.1 19.5 22.3 19.5 5.4 0 18.5-10.4 10.7-18.2L265.6 284l18.2-18.2c6.3-6.8-10.1-21.8-16.2-15.7L249.7 268c-18.6-18.8-18.4-19.5-21.5-19.5-5 0-18 11.7-12.4 17.3L234 284c-18.1 17.9-20.4 19.2-20.4 22.6z\"]\n};\nvar faAccessibleIcon = {\n prefix: 'fab',\n iconName: 'accessible-icon',\n icon: [448, 512, [], \"f368\", \"M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z\"]\n};\nvar faAccusoft = {\n prefix: 'fab',\n iconName: 'accusoft',\n icon: [640, 512, [], \"f369\", \"M322.1 252v-1l-51.2-65.8s-12 1.6-25 15.1c-9 9.3-242.1 239.1-243.4 240.9-7 10 1.6 6.8 15.7 1.7.8 0 114.5-36.6 114.5-36.6.5-.6-.1-.1.6-.6-.4-5.1-.8-26.2-1-27.7-.6-5.2 2.2-6.9 7-8.9l92.6-33.8c.6-.8 88.5-81.7 90.2-83.3zm160.1 120.1c13.3 16.1 20.7 13.3 30.8 9.3 3.2-1.2 115.4-47.6 117.8-48.9 8-4.3-1.7-16.7-7.2-23.4-2.1-2.5-205.1-245.6-207.2-248.3-9.7-12.2-14.3-12.9-38.4-12.8-10.2 0-106.8.5-116.5.6-19.2.1-32.9-.3-19.2 16.9C250 75 476.5 365.2 482.2 372.1zm152.7 1.6c-2.3-.3-24.6-4.7-38-7.2 0 0-115 50.4-117.5 51.6-16 7.3-26.9-3.2-36.7-14.6l-57.1-74c-5.4-.9-60.4-9.6-65.3-9.3-3.1.2-9.6.8-14.4 2.9-4.9 2.1-145.2 52.8-150.2 54.7-5.1 2-11.4 3.6-11.1 7.6.2 2.5 2 2.6 4.6 3.5 2.7.8 300.9 67.6 308 69.1 15.6 3.3 38.5 10.5 53.6 1.7 2.1-1.2 123.8-76.4 125.8-77.8 5.4-4 4.3-6.8-1.7-8.2z\"]\n};\nvar faAcquisitionsIncorporated = {\n prefix: 'fab',\n iconName: 'acquisitions-incorporated',\n icon: [384, 512, [], \"f6af\", \"M357.45 468.2c-1.2-7.7-1.3-7.6-9.6-7.6-99.8.2-111.8-2.4-112.7-2.6-12.3-1.7-20.6-10.5-21-23.1-.1-1.6-.2-71.6-1-129.1-.1-4.7 1.6-6.4 5.9-7.5 12.5-3 24.9-6.1 37.3-9.7 4.3-1.3 6.8-.2 8.4 3.5 4.5 10.3 8.8 20.6 13.2 30.9 1.6 3.7.1 4.4-3.4 4.4-10-.2-20-.1-30.4-.1v27h116c-1.4-9.5-2.7-18.1-4-27.5-7 0-13.8.4-20.4-.1-22.6-1.6-18.3-4.4-84-158.6-8.8-20.1-27.9-62.1-36.5-89.2-4.4-14 5.5-25.4 18.9-26.6 18.6-1.7 37.5-1.6 56.2-2 20.6-.4 41.2-.4 61.8-.5 3.1 0 4-1.4 4.3-4.3 1.2-9.8 2.7-19.5 4-29.2.8-5.3 1.6-10.7 2.4-16.1L23.75 0c-3.6 0-5.3 1.1-4.6 5.3 2.2 13.2-.8.8 6.4 45.3 63.4 0 71.8.9 101.8.5 12.3-.2 37 3.5 37.7 22.1.4 11.4-1.1 11.3-32.6 87.4-53.8 129.8-50.7 120.3-67.3 161-1.7 4.1-3.6 5.2-7.6 5.2-8.5-.2-17-.3-25.4.1-1.9.1-5.2 1.8-5.5 3.2-1.5 8.1-2.2 16.3-3.2 24.9h114.3v-27.6c-6.9 0-33.5.4-35.3-2.9 5.3-12.3 10.4-24.4 15.7-36.7 16.3 4 31.9 7.8 47.6 11.7 3.4.9 4.6 3 4.6 6.8-.1 42.9.1 85.9.2 128.8 0 10.2-5.5 19.1-14.9 23.1-6.5 2.7-3.3 3.4-121.4 2.4-5.3 0-7.1 2-7.6 6.8-1.5 12.9-2.9 25.9-5 38.8-.8 5 1.3 5.7 5.3 5.7 183.2.6-30.7 0 337.1 0-2.5-15-4.4-29.4-6.6-43.7zm-174.9-205.7c-13.3-4.2-26.6-8.2-39.9-12.5a44.53 44.53 0 0 1-5.8-2.9c17.2-44.3 34.2-88.1 51.3-132.1 7.5 2.4 7.9-.8 9.4 0 9.3 22.5 18.1 60.1 27 82.8 6.6 16.7 13 33.5 19.7 50.9a35.78 35.78 0 0 1-3.9 2.1c-13.1 3.9-26.4 7.5-39.4 11.7a27.66 27.66 0 0 1-18.4 0z\"]\n};\nvar faAdn = {\n prefix: 'fab',\n iconName: 'adn',\n icon: [496, 512, [], \"f170\", \"M248 167.5l64.9 98.8H183.1l64.9-98.8zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-99.8 82.7L248 115.5 99.8 338.7h30.4l33.6-51.7h168.6l33.6 51.7h30.2z\"]\n};\nvar faAdversal = {\n prefix: 'fab',\n iconName: 'adversal',\n icon: [512, 512, [], \"f36a\", \"M482.1 32H28.7C5.8 32 0 37.9 0 60.9v390.2C0 474.4 5.8 480 28.7 480h453.4c24.4 0 29.9-5.2 29.9-29.7V62.2c0-24.6-5.4-30.2-29.9-30.2zM178.4 220.3c-27.5-20.2-72.1-8.7-84.2 23.4-4.3 11.1-9.3 9.5-17.5 8.3-9.7-1.5-17.2-3.2-22.5-5.5-28.8-11.4 8.6-55.3 24.9-64.3 41.1-21.4 83.4-22.2 125.3-4.8 40.9 16.8 34.5 59.2 34.5 128.5 2.7 25.8-4.3 58.3 9.3 88.8 1.9 4.4.4 7.9-2.7 10.7-8.4 6.7-39.3 2.2-46.6-7.4-1.9-2.2-1.8-3.6-3.9-6.2-3.6-3.9-7.3-2.2-11.9 1-57.4 36.4-140.3 21.4-147-43.3-3.1-29.3 12.4-57.1 39.6-71 38.2-19.5 112.2-11.8 114-30.9 1.1-10.2-1.9-20.1-11.3-27.3zm286.7 222c0 15.1-11.1 9.9-17.8 9.9H52.4c-7.4 0-18.2 4.8-17.8-10.7.4-13.9 10.5-9.1 17.1-9.1 132.3-.4 264.5-.4 396.8 0 6.8 0 16.6-4.4 16.6 9.9zm3.8-340.5v291c0 5.7-.7 13.9-8.1 13.9-12.4-.4-27.5 7.1-36.1-5.6-5.8-8.7-7.8-4-12.4-1.2-53.4 29.7-128.1 7.1-144.4-85.2-6.1-33.4-.7-67.1 15.7-100 11.8-23.9 56.9-76.1 136.1-30.5v-71c0-26.2-.1-26.2 26-26.2 3.1 0 6.6.4 9.7 0 10.1-.8 13.6 4.4 13.6 14.3-.1.2-.1.3-.1.5zm-51.5 232.3c-19.5 47.6-72.9 43.3-90 5.2-15.1-33.3-15.5-68.2.4-101.5 16.3-34.1 59.7-35.7 81.5-4.8 20.6 28.8 14.9 84.6 8.1 101.1zm-294.8 35.3c-7.5-1.3-33-3.3-33.7-27.8-.4-13.9 7.8-23 19.8-25.8 24.4-5.9 49.3-9.9 73.7-14.7 8.9-2 7.4 4.4 7.8 9.5 1.4 33-26.1 59.2-67.6 58.8z\"]\n};\nvar faAffiliatetheme = {\n prefix: 'fab',\n iconName: 'affiliatetheme',\n icon: [512, 512, [], \"f36b\", \"M159.7 237.4C108.4 308.3 43.1 348.2 14 326.6-15.2 304.9 2.8 230 54.2 159.1c51.3-70.9 116.6-110.8 145.7-89.2 29.1 21.6 11.1 96.6-40.2 167.5zm351.2-57.3C437.1 303.5 319 367.8 246.4 323.7c-25-15.2-41.3-41.2-49-73.8-33.6 64.8-92.8 113.8-164.1 133.2 49.8 59.3 124.1 96.9 207 96.9 150 0 271.6-123.1 271.6-274.9.1-8.5-.3-16.8-1-25z\"]\n};\nvar faAirbnb = {\n prefix: 'fab',\n iconName: 'airbnb',\n icon: [448, 512, [], \"f834\", \"M224 373.12c-25.24-31.67-40.08-59.43-45-83.18-22.55-88 112.61-88 90.06 0-5.45 24.25-20.29 52-45 83.18zm138.15 73.23c-42.06 18.31-83.67-10.88-119.3-50.47 103.9-130.07 46.11-200-18.85-200-54.92 0-85.16 46.51-73.28 100.5 6.93 29.19 25.23 62.39 54.43 99.5-32.53 36.05-60.55 52.69-85.15 54.92-50 7.43-89.11-41.06-71.3-91.09 15.1-39.16 111.72-231.18 115.87-241.56 15.75-30.07 25.56-57.4 59.38-57.4 32.34 0 43.4 25.94 60.37 59.87 36 70.62 89.35 177.48 114.84 239.09 13.17 33.07-1.37 71.29-37.01 86.64zm47-136.12C280.27 35.93 273.13 32 224 32c-45.52 0-64.87 31.67-84.66 72.79C33.18 317.1 22.89 347.19 22 349.81-3.22 419.14 48.74 480 111.63 480c21.71 0 60.61-6.06 112.37-62.4 58.68 63.78 101.26 62.4 112.37 62.4 62.89.05 114.85-60.86 89.61-130.19.02-3.89-16.82-38.9-16.82-39.58z\"]\n};\nvar faAlgolia = {\n prefix: 'fab',\n iconName: 'algolia',\n icon: [448, 512, [], \"f36c\", \"M229.3 182.6c-49.3 0-89.2 39.9-89.2 89.2 0 49.3 39.9 89.2 89.2 89.2s89.2-39.9 89.2-89.2c0-49.3-40-89.2-89.2-89.2zm62.7 56.6l-58.9 30.6c-1.8.9-3.8-.4-3.8-2.3V201c0-1.5 1.3-2.7 2.7-2.6 26.2 1 48.9 15.7 61.1 37.1.7 1.3.2 3-1.1 3.7zM389.1 32H58.9C26.4 32 0 58.4 0 90.9V421c0 32.6 26.4 59 58.9 59H389c32.6 0 58.9-26.4 58.9-58.9V90.9C448 58.4 421.6 32 389.1 32zm-202.6 84.7c0-10.8 8.7-19.5 19.5-19.5h45.3c10.8 0 19.5 8.7 19.5 19.5v15.4c0 1.8-1.7 3-3.3 2.5-12.3-3.4-25.1-5.1-38.1-5.1-13.5 0-26.7 1.8-39.4 5.5-1.7.5-3.4-.8-3.4-2.5v-15.8zm-84.4 37l9.2-9.2c7.6-7.6 19.9-7.6 27.5 0l7.7 7.7c1.1 1.1 1 3-.3 4-6.2 4.5-12.1 9.4-17.6 14.9-5.4 5.4-10.4 11.3-14.8 17.4-1 1.3-2.9 1.5-4 .3l-7.7-7.7c-7.6-7.5-7.6-19.8 0-27.4zm127.2 244.8c-70 0-126.6-56.7-126.6-126.6s56.7-126.6 126.6-126.6c70 0 126.6 56.6 126.6 126.6 0 69.8-56.7 126.6-126.6 126.6z\"]\n};\nvar faAlipay = {\n prefix: 'fab',\n iconName: 'alipay',\n icon: [448, 512, [], \"f642\", \"M377.74 32H70.26C31.41 32 0 63.41 0 102.26v307.48C0 448.59 31.41 480 70.26 480h307.48c38.52 0 69.76-31.08 70.26-69.6-45.96-25.62-110.59-60.34-171.6-88.44-32.07 43.97-84.14 81-148.62 81-70.59 0-93.73-45.3-97.04-76.37-3.97-39.01 14.88-81.5 99.52-81.5 35.38 0 79.35 10.25 127.13 24.96 16.53-30.09 26.45-60.34 26.45-60.34h-178.2v-16.7h92.08v-31.24H88.28v-19.01h109.44V92.34h50.92v50.42h109.44v19.01H248.63v31.24h88.77s-15.21 46.62-38.35 90.92c48.93 16.7 100.01 36.04 148.62 52.74V102.26C447.83 63.57 416.43 32 377.74 32zM47.28 322.95c.99 20.17 10.25 53.73 69.93 53.73 52.07 0 92.58-39.68 117.87-72.9-44.63-18.68-84.48-31.41-109.44-31.41-67.45 0-79.35 33.06-78.36 50.58z\"]\n};\nvar faAmazon = {\n prefix: 'fab',\n iconName: 'amazon',\n icon: [448, 512, [], \"f270\", \"M257.2 162.7c-48.7 1.8-169.5 15.5-169.5 117.5 0 109.5 138.3 114 183.5 43.2 6.5 10.2 35.4 37.5 45.3 46.8l56.8-56S341 288.9 341 261.4V114.3C341 89 316.5 32 228.7 32 140.7 32 94 87 94 136.3l73.5 6.8c16.3-49.5 54.2-49.5 54.2-49.5 40.7-.1 35.5 29.8 35.5 69.1zm0 86.8c0 80-84.2 68-84.2 17.2 0-47.2 50.5-56.7 84.2-57.8v40.6zm136 163.5c-7.7 10-70 67-174.5 67S34.2 408.5 9.7 379c-6.8-7.7 1-11.3 5.5-8.3C88.5 415.2 203 488.5 387.7 401c7.5-3.7 13.3 2 5.5 12zm39.8 2.2c-6.5 15.8-16 26.8-21.2 31-5.5 4.5-9.5 2.7-6.5-3.8s19.3-46.5 12.7-55c-6.5-8.3-37-4.3-48-3.2-10.8 1-13 2-14-.3-2.3-5.7 21.7-15.5 37.5-17.5 15.7-1.8 41-.8 46 5.7 3.7 5.1 0 27.1-6.5 43.1z\"]\n};\nvar faAmazonPay = {\n prefix: 'fab',\n iconName: 'amazon-pay',\n icon: [640, 512, [], \"f42c\", \"M14 325.3c2.3-4.2 5.2-4.9 9.7-2.5 10.4 5.6 20.6 11.4 31.2 16.7a595.88 595.88 0 0 0 127.4 46.3 616.61 616.61 0 0 0 63.2 11.8 603.33 603.33 0 0 0 95 5.2c17.4-.4 34.8-1.8 52.1-3.8a603.66 603.66 0 0 0 163.3-42.8c2.9-1.2 5.9-2 9.1-1.2 6.7 1.8 9 9 4.1 13.9a70 70 0 0 1-9.6 7.4c-30.7 21.1-64.2 36.4-99.6 47.9a473.31 473.31 0 0 1-75.1 17.6 431 431 0 0 1-53.2 4.8 21.3 21.3 0 0 0-2.5.3H308a21.3 21.3 0 0 0-2.5-.3c-3.6-.2-7.2-.3-10.7-.4a426.3 426.3 0 0 1-50.4-5.3A448.4 448.4 0 0 1 164 420a443.33 443.33 0 0 1-145.6-87c-1.8-1.6-3-3.8-4.4-5.7zM172 65.1l-4.3.6a80.92 80.92 0 0 0-38 15.1c-2.4 1.7-4.6 3.5-7.1 5.4a4.29 4.29 0 0 1-.4-1.4c-.4-2.7-.8-5.5-1.3-8.2-.7-4.6-3-6.6-7.6-6.6h-11.5c-6.9 0-8.2 1.3-8.2 8.2v209.3c0 1 0 2 .1 3 .2 3 2 4.9 4.9 5 7 .1 14.1.1 21.1 0 2.9 0 4.7-2 5-5 .1-1 .1-2 .1-3v-72.4c1.1.9 1.7 1.4 2.2 1.9 17.9 14.9 38.5 19.8 61 15.4 20.4-4 34.6-16.5 43.8-34.9 7-13.9 9.9-28.7 10.3-44.1.5-17.1-1.2-33.9-8.1-49.8-8.5-19.6-22.6-32.5-43.9-36.9-3.2-.7-6.5-1-9.8-1.5-2.8-.1-5.5-.1-8.3-.1zM124.6 107a3.48 3.48 0 0 1 1.7-3.3c13.7-9.5 28.8-14.5 45.6-13.2 14.9 1.1 27.1 8.4 33.5 25.9 3.9 10.7 4.9 21.8 4.9 33 0 10.4-.8 20.6-4 30.6-6.8 21.3-22.4 29.4-42.6 28.5-14-.6-26.2-6-37.4-13.9a3.57 3.57 0 0 1-1.7-3.3c.1-14.1 0-28.1 0-42.2s.1-28 0-42.1zm205.7-41.9c-1 .1-2 .3-2.9.4a148 148 0 0 0-28.9 4.1c-6.1 1.6-12 3.8-17.9 5.8-3.6 1.2-5.4 3.8-5.3 7.7.1 3.3-.1 6.6 0 9.9.1 4.8 2.1 6.1 6.8 4.9 7.8-2 15.6-4.2 23.5-5.7 12.3-2.3 24.7-3.3 37.2-1.4 6.5 1 12.6 2.9 16.8 8.4 3.7 4.8 5.1 10.5 5.3 16.4.3 8.3.2 16.6.3 24.9a7.84 7.84 0 0 1-.2 1.4c-.5-.1-.9 0-1.3-.1a180.56 180.56 0 0 0-32-4.9c-11.3-.6-22.5.1-33.3 3.9-12.9 4.5-23.3 12.3-29.4 24.9-4.7 9.8-5.4 20.2-3.9 30.7 2 14 9 24.8 21.4 31.7 11.9 6.6 24.8 7.4 37.9 5.4 15.1-2.3 28.5-8.7 40.3-18.4a7.36 7.36 0 0 1 1.6-1.1c.6 3.8 1.1 7.4 1.8 11 .6 3.1 2.5 5.1 5.4 5.2 5.4.1 10.9.1 16.3 0a4.84 4.84 0 0 0 4.8-4.7 26.2 26.2 0 0 0 .1-2.8v-106a80 80 0 0 0-.9-12.9c-1.9-12.9-7.4-23.5-19-30.4-6.7-4-14.1-6-21.8-7.1-3.6-.5-7.2-.8-10.8-1.3-3.9.1-7.9.1-11.9.1zm35 127.7a3.33 3.33 0 0 1-1.5 3c-11.2 8.1-23.5 13.5-37.4 14.9-5.7.6-11.4.4-16.8-1.8a20.08 20.08 0 0 1-12.4-13.3 32.9 32.9 0 0 1-.1-19.4c2.5-8.3 8.4-13 16.4-15.6a61.33 61.33 0 0 1 24.8-2.2c8.4.7 16.6 2.3 25 3.4 1.6.2 2.1 1 2.1 2.6-.1 4.8 0 9.5 0 14.3s-.2 9.4-.1 14.1zm259.9 129.4c-1-5-4.8-6.9-9.1-8.3a88.42 88.42 0 0 0-21-3.9 147.32 147.32 0 0 0-39.2 1.9c-14.3 2.7-27.9 7.3-40 15.6a13.75 13.75 0 0 0-3.7 3.5 5.11 5.11 0 0 0-.5 4c.4 1.5 2.1 1.9 3.6 1.8a16.2 16.2 0 0 0 2.2-.1c7.8-.8 15.5-1.7 23.3-2.5 11.4-1.1 22.9-1.8 34.3-.9a71.64 71.64 0 0 1 14.4 2.7c5.1 1.4 7.4 5.2 7.6 10.4.4 8-1.4 15.7-3.5 23.3-4.1 15.4-10 30.3-15.8 45.1a17.6 17.6 0 0 0-1 3c-.5 2.9 1.2 4.8 4.1 4.1a10.56 10.56 0 0 0 4.8-2.5 145.91 145.91 0 0 0 12.7-13.4c12.8-16.4 20.3-35.3 24.7-55.6.8-3.6 1.4-7.3 2.1-10.9v-17.3zM493.1 199q-19.35-53.55-38.7-107.2c-2-5.7-4.2-11.3-6.3-16.9-1.1-2.9-3.2-4.8-6.4-4.8-7.6-.1-15.2-.2-22.9-.1-2.5 0-3.7 2-3.2 4.5a43.1 43.1 0 0 0 1.9 6.1q29.4 72.75 59.1 145.5c1.7 4.1 2.1 7.6.2 11.8-3.3 7.3-5.9 15-9.3 22.3-3 6.5-8 11.4-15.2 13.3a42.13 42.13 0 0 1-15.4 1.1c-2.5-.2-5-.8-7.5-1-3.4-.2-5.1 1.3-5.2 4.8q-.15 5 0 9.9c.1 5.5 2 8 7.4 8.9a108.18 108.18 0 0 0 16.9 2c17.1.4 30.7-6.5 39.5-21.4a131.63 131.63 0 0 0 9.2-18.4q35.55-89.7 70.6-179.6a26.62 26.62 0 0 0 1.6-5.5c.4-2.8-.9-4.4-3.7-4.4-6.6-.1-13.3 0-19.9 0a7.54 7.54 0 0 0-7.7 5.2c-.5 1.4-1.1 2.7-1.6 4.1l-34.8 100c-2.5 7.2-5.1 14.5-7.7 22.2-.4-1.1-.6-1.7-.9-2.4z\"]\n};\nvar faAmilia = {\n prefix: 'fab',\n iconName: 'amilia',\n icon: [448, 512, [], \"f36d\", \"M240.1 32c-61.9 0-131.5 16.9-184.2 55.4-5.1 3.1-9.1 9.2-7.2 19.4 1.1 5.1 5.1 27.4 10.2 39.6 4.1 10.2 14.2 10.2 20.3 6.1 32.5-22.3 96.5-47.7 152.3-47.7 57.9 0 58.9 28.4 58.9 73.1v38.5C203 227.7 78.2 251 46.7 264.2 11.2 280.5 16.3 357.7 16.3 376s15.2 104 124.9 104c47.8 0 113.7-20.7 153.3-42.1v25.4c0 3 2.1 8.2 6.1 9.1 3.1 1 50.7 2 59.9 2s62.5.3 66.5-.7c4.1-1 5.1-6.1 5.1-9.1V168c-.1-80.3-57.9-136-192-136zm50.2 348c-21.4 13.2-48.7 24.4-79.1 24.4-52.8 0-58.9-33.5-59-44.7 0-12.2-3-42.7 18.3-52.9 24.3-13.2 75.1-29.4 119.8-33.5z\"]\n};\nvar faAndroid = {\n prefix: 'fab',\n iconName: 'android',\n icon: [576, 512, [], \"f17b\", \"M420.55,301.93a24,24,0,1,1,24-24,24,24,0,0,1-24,24m-265.1,0a24,24,0,1,1,24-24,24,24,0,0,1-24,24m273.7-144.48,47.94-83a10,10,0,1,0-17.27-10h0l-48.54,84.07a301.25,301.25,0,0,0-246.56,0L116.18,64.45a10,10,0,1,0-17.27,10h0l47.94,83C64.53,202.22,8.24,285.55,0,384H576c-8.24-98.45-64.54-181.78-146.85-226.55\"]\n};\nvar faAngellist = {\n prefix: 'fab',\n iconName: 'angellist',\n icon: [448, 512, [], \"f209\", \"M347.1 215.4c11.7-32.6 45.4-126.9 45.4-157.1 0-26.6-15.7-48.9-43.7-48.9-44.6 0-84.6 131.7-97.1 163.1C242 144 196.6 0 156.6 0c-31.1 0-45.7 22.9-45.7 51.7 0 35.3 34.2 126.8 46.6 162-6.3-2.3-13.1-4.3-20-4.3-23.4 0-48.3 29.1-48.3 52.6 0 8.9 4.9 21.4 8 29.7-36.9 10-51.1 34.6-51.1 71.7C46 435.6 114.4 512 210.6 512c118 0 191.4-88.6 191.4-202.9 0-43.1-6.9-82-54.9-93.7zM311.7 108c4-12.3 21.1-64.3 37.1-64.3 8.6 0 10.9 8.9 10.9 16 0 19.1-38.6 124.6-47.1 148l-34-6 33.1-93.7zM142.3 48.3c0-11.9 14.5-45.7 46.3 47.1l34.6 100.3c-15.6-1.3-27.7-3-35.4 1.4-10.9-28.8-45.5-119.7-45.5-148.8zM140 244c29.3 0 67.1 94.6 67.1 107.4 0 5.1-4.9 11.4-10.6 11.4-20.9 0-76.9-76.9-76.9-97.7.1-7.7 12.7-21.1 20.4-21.1zm184.3 186.3c-29.1 32-66.3 48.6-109.7 48.6-59.4 0-106.3-32.6-128.9-88.3-17.1-43.4 3.8-68.3 20.6-68.3 11.4 0 54.3 60.3 54.3 73.1 0 4.9-7.7 8.3-11.7 8.3-16.1 0-22.4-15.5-51.1-51.4-29.7 29.7 20.5 86.9 58.3 86.9 26.1 0 43.1-24.2 38-42 3.7 0 8.3.3 11.7-.6 1.1 27.1 9.1 59.4 41.7 61.7 0-.9 2-7.1 2-7.4 0-17.4-10.6-32.6-10.6-50.3 0-28.3 21.7-55.7 43.7-71.7 8-6 17.7-9.7 27.1-13.1 9.7-3.7 20-8 27.4-15.4-1.1-11.2-5.7-21.1-16.9-21.1-27.7 0-120.6 4-120.6-39.7 0-6.7.1-13.1 17.4-13.1 32.3 0 114.3 8 138.3 29.1 18.1 16.1 24.3 113.2-31 174.7zm-98.6-126c9.7 3.1 19.7 4 29.7 6-7.4 5.4-14 12-20.3 19.1-2.8-8.5-6.2-16.8-9.4-25.1z\"]\n};\nvar faAngrycreative = {\n prefix: 'fab',\n iconName: 'angrycreative',\n icon: [640, 512, [], \"f36e\", \"M640 238.2l-3.2 28.2-34.5 2.3-2 18.1 34.5-2.3-3.2 28.2-34.4 2.2-2.3 20.1 34.4-2.2-3 26.1-64.7 4.1 12.7-113.2L527 365.2l-31.9 2-23.8-117.8 30.3-2 13.6 79.4 31.7-82.4 93.1-6.2zM426.8 371.5l28.3-1.8L468 249.6l-28.4 1.9-12.8 120zM162 388.1l-19.4-36-3.5 37.4-28.2 1.7 2.7-29.1c-11 18-32 34.3-56.9 35.8C23.9 399.9-3 377 .3 339.7c2.6-29.3 26.7-62.8 67.5-65.4 37.7-2.4 47.6 23.2 51.3 28.8l2.8-30.8 38.9-2.5c20.1-1.3 38.7 3.7 42.5 23.7l2.6-26.6 64.8-4.2-2.7 27.9-36.4 2.4-1.7 17.9 36.4-2.3-2.7 27.9-36.4 2.3-1.9 19.9 36.3-2.3-2.1 20.8 55-117.2 23.8-1.6L370.4 369l8.9-85.6-22.3 1.4 2.9-27.9 75-4.9-3 28-24.3 1.6-9.7 91.9-58 3.7-4.3-15.6-39.4 2.5-8 16.3-126.2 7.7zm-44.3-70.2l-26.4 1.7C84.6 307.2 76.9 303 65 303.8c-19 1.2-33.3 17.5-34.6 33.3-1.4 16 7.3 32.5 28.7 31.2 12.8-.8 21.3-8.6 28.9-18.9l27-1.7 2.7-29.8zm56.1-7.7c1.2-12.9-7.6-13.6-26.1-12.4l-2.7 28.5c14.2-.9 27.5-2.1 28.8-16.1zm21.1 70.8l5.8-60c-5 13.5-14.7 21.1-27.9 26.6l22.1 33.4zm135.4-45l-7.9-37.8-15.8 39.3 23.7-1.5zm-170.1-74.6l-4.3-17.5-39.6 2.6-8.1 18.2-31.9 2.1 57-121.9 23.9-1.6 30.7 102 9.9-104.7 27-1.8 37.8 63.6 6.5-66.6 28.5-1.9-4 41.2c7.4-13.5 22.9-44.7 63.6-47.5 40.5-2.8 52.4 29.3 53.4 30.3l3.3-32 39.3-2.7c12.7-.9 27.8.3 36.3 9.7l-4.4-11.9 32.2-2.2 12.9 43.2 23-45.7 31-2.2-43.6 78.4-4.8 44.3-28.4 1.9 4.8-44.3-15.8-43c1 22.3-9.2 40.1-32 49.6l25.2 38.8-36.4 2.4-19.2-36.8-4 38.3-28.4 1.9 3.3-31.5c-6.7 9.3-19.7 35.4-59.6 38-26.2 1.7-45.6-10.3-55.4-39.2l-4 40.3-25 1.6-37.6-63.3-6.3 66.2-56.8 3.7zm276.6-82.1c10.2-.7 17.5-2.1 21.6-4.3 4.5-2.4 7-6.4 7.6-12.1.6-5.3-.6-8.8-3.4-10.4-3.6-2.1-10.6-2.8-22.9-2l-2.9 28.8zM327.7 214c5.6 5.9 12.7 8.5 21.3 7.9 4.7-.3 9.1-1.8 13.3-4.1 5.5-3 10.6-8 15.1-14.3l-34.2 2.3 2.4-23.9 63.1-4.3 1.2-12-31.2 2.1c-4.1-3.7-7.8-6.6-11.1-8.1-4-1.7-8.1-2.8-12.2-2.5-8 .5-15.3 3.6-22 9.2-7.7 6.4-12 14.5-12.9 24.4-1.1 9.6 1.4 17.3 7.2 23.3zm-201.3 8.2l23.8-1.6-8.3-37.6-15.5 39.2z\"]\n};\nvar faAngular = {\n prefix: 'fab',\n iconName: 'angular',\n icon: [448, 512, [], \"f420\", \"M185.7 268.1h76.2l-38.1-91.6-38.1 91.6zM223.8 32L16 106.4l31.8 275.7 176 97.9 176-97.9 31.8-275.7zM354 373.8h-48.6l-26.2-65.4H168.6l-26.2 65.4H93.7L223.8 81.5z\"]\n};\nvar faAppStore = {\n prefix: 'fab',\n iconName: 'app-store',\n icon: [512, 512, [], \"f36f\", \"M255.9 120.9l9.1-15.7c5.6-9.8 18.1-13.1 27.9-7.5 9.8 5.6 13.1 18.1 7.5 27.9l-87.5 151.5h63.3c20.5 0 32 24.1 23.1 40.8H113.8c-11.3 0-20.4-9.1-20.4-20.4 0-11.3 9.1-20.4 20.4-20.4h52l66.6-115.4-20.8-36.1c-5.6-9.8-2.3-22.2 7.5-27.9 9.8-5.6 22.2-2.3 27.9 7.5l8.9 15.7zm-78.7 218l-19.6 34c-5.6 9.8-18.1 13.1-27.9 7.5-9.8-5.6-13.1-18.1-7.5-27.9l14.6-25.2c16.4-5.1 29.8-1.2 40.4 11.6zm168.9-61.7h53.1c11.3 0 20.4 9.1 20.4 20.4 0 11.3-9.1 20.4-20.4 20.4h-29.5l19.9 34.5c5.6 9.8 2.3 22.2-7.5 27.9-9.8 5.6-22.2 2.3-27.9-7.5-33.5-58.1-58.7-101.6-75.4-130.6-17.1-29.5-4.9-59.1 7.2-69.1 13.4 23 33.4 57.7 60.1 104zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm216 248c0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216z\"]\n};\nvar faAppStoreIos = {\n prefix: 'fab',\n iconName: 'app-store-ios',\n icon: [448, 512, [], \"f370\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM127 384.5c-5.5 9.6-17.8 12.8-27.3 7.3-9.6-5.5-12.8-17.8-7.3-27.3l14.3-24.7c16.1-4.9 29.3-1.1 39.6 11.4L127 384.5zm138.9-53.9H84c-11 0-20-9-20-20s9-20 20-20h51l65.4-113.2-20.5-35.4c-5.5-9.6-2.2-21.8 7.3-27.3 9.6-5.5 21.8-2.2 27.3 7.3l8.9 15.4 8.9-15.4c5.5-9.6 17.8-12.8 27.3-7.3 9.6 5.5 12.8 17.8 7.3 27.3l-85.8 148.6h62.1c20.2 0 31.5 23.7 22.7 40zm98.1 0h-29l19.6 33.9c5.5 9.6 2.2 21.8-7.3 27.3-9.6 5.5-21.8 2.2-27.3-7.3-32.9-56.9-57.5-99.7-74-128.1-16.7-29-4.8-58 7.1-67.8 13.1 22.7 32.7 56.7 58.9 102h52c11 0 20 9 20 20 0 11.1-9 20-20 20z\"]\n};\nvar faApper = {\n prefix: 'fab',\n iconName: 'apper',\n icon: [640, 512, [], \"f371\", \"M42.1 239.1c22.2 0 29 2.8 33.5 14.6h.8v-22.9c0-11.3-4.8-15.4-17.9-15.4-11.3 0-14.4 2.5-15.1 12.8H4.8c.3-13.9 1.5-19.1 5.8-24.4C17.9 195 29.5 192 56.7 192c33 0 47.1 5 53.9 18.9 2 4.3 4 15.6 4 23.7v76.3H76.3l1.3-19.1h-1c-5.3 15.6-13.6 20.4-35.5 20.4-30.3 0-41.1-10.1-41.1-37.3 0-25.2 12.3-35.8 42.1-35.8zm17.1 48.1c13.1 0 16.9-3 16.9-13.4 0-9.1-4.3-11.6-19.6-11.6-13.1 0-17.9 3-17.9 12.1-.1 10.4 3.7 12.9 20.6 12.9zm77.8-94.9h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.2 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3H137v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm57.9-60.7h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.3 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3h-39.5v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm53.8-3.8c0-25.4 3.3-37.8 12.3-45.8 8.8-8.1 22.2-11.3 45.1-11.3 42.8 0 55.7 12.8 55.7 55.7v11.1h-75.3c-.3 2-.3 4-.3 4.8 0 16.9 4.5 21.9 20.1 21.9 13.9 0 17.9-3 17.9-13.9h37.5v2.3c0 9.8-2.5 18.9-6.8 24.7-7.3 9.8-19.6 13.6-44.3 13.6-27.5 0-41.6-3.3-50.6-12.3-8.5-8.5-11.3-21.3-11.3-50.8zm76.4-11.6c-.3-1.8-.3-3.3-.3-3.8 0-12.3-3.3-14.6-19.6-14.6-14.4 0-17.1 3-18.1 15.1l-.3 3.3h38.3zm55.6-45.3h38.3l-1.8 19.9h.7c6.8-14.9 14.4-20.2 29.7-20.2 10.8 0 19.1 3.3 23.4 9.3 5.3 7.3 6.8 14.4 6.8 34 0 1.5 0 5 .2 9.3h-35c.3-1.8.3-3.3.3-4 0-15.4-2-19.4-10.3-19.4-6.3 0-10.8 3.3-13.1 9.3-1 3-1 4.3-1 12.3v68h-38.3V192.3z\"]\n};\nvar faApple = {\n prefix: 'fab',\n iconName: 'apple',\n icon: [384, 512, [], \"f179\", \"M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z\"]\n};\nvar faApplePay = {\n prefix: 'fab',\n iconName: 'apple-pay',\n icon: [640, 512, [], \"f415\", \"M116.9 158.5c-7.5 8.9-19.5 15.9-31.5 14.9-1.5-12 4.4-24.8 11.3-32.6 7.5-9.1 20.6-15.6 31.3-16.1 1.2 12.4-3.7 24.7-11.1 33.8m10.9 17.2c-17.4-1-32.3 9.9-40.5 9.9-8.4 0-21-9.4-34.8-9.1-17.9.3-34.5 10.4-43.6 26.5-18.8 32.3-4.9 80 13.3 106.3 8.9 13 19.5 27.3 33.5 26.8 13.3-.5 18.5-8.6 34.5-8.6 16.1 0 20.8 8.6 34.8 8.4 14.5-.3 23.6-13 32.5-26 10.1-14.8 14.3-29.1 14.5-29.9-.3-.3-28-10.9-28.3-42.9-.3-26.8 21.9-39.5 22.9-40.3-12.5-18.6-32-20.6-38.8-21.1m100.4-36.2v194.9h30.3v-66.6h41.9c38.3 0 65.1-26.3 65.1-64.3s-26.4-64-64.1-64h-73.2zm30.3 25.5h34.9c26.3 0 41.3 14 41.3 38.6s-15 38.8-41.4 38.8h-34.8V165zm162.2 170.9c19 0 36.6-9.6 44.6-24.9h.6v23.4h28v-97c0-28.1-22.5-46.3-57.1-46.3-32.1 0-55.9 18.4-56.8 43.6h27.3c2.3-12 13.4-19.9 28.6-19.9 18.5 0 28.9 8.6 28.9 24.5v10.8l-37.8 2.3c-35.1 2.1-54.1 16.5-54.1 41.5.1 25.2 19.7 42 47.8 42zm8.2-23.1c-16.1 0-26.4-7.8-26.4-19.6 0-12.3 9.9-19.4 28.8-20.5l33.6-2.1v11c0 18.2-15.5 31.2-36 31.2zm102.5 74.6c29.5 0 43.4-11.3 55.5-45.4L640 193h-30.8l-35.6 115.1h-.6L537.4 193h-31.6L557 334.9l-2.8 8.6c-4.6 14.6-12.1 20.3-25.5 20.3-2.4 0-7-.3-8.9-.5v23.4c1.8.4 9.3.7 11.6.7z\"]\n};\nvar faArtstation = {\n prefix: 'fab',\n iconName: 'artstation',\n icon: [512, 512, [], \"f77a\", \"M2 377.4l43 74.3A51.35 51.35 0 0 0 90.9 480h285.4l-59.2-102.6zM501.8 350L335.6 59.3A51.38 51.38 0 0 0 290.2 32h-88.4l257.3 447.6 40.7-70.5c1.9-3.2 21-29.7 2-59.1zM275 304.5l-115.5-200L44 304.5z\"]\n};\nvar faAsymmetrik = {\n prefix: 'fab',\n iconName: 'asymmetrik',\n icon: [576, 512, [], \"f372\", \"M517.5 309.2c38.8-40 58.1-80 58.5-116.1.8-65.5-59.4-118.2-169.4-135C277.9 38.4 118.1 73.6 0 140.5 52 114 110.6 92.3 170.7 82.3c74.5-20.5 153-25.4 221.3-14.8C544.5 91.3 588.8 195 490.8 299.2c-10.2 10.8-22 21.1-35 30.6L304.9 103.4 114.7 388.9c-65.6-29.4-76.5-90.2-19.1-151.2 20.8-22.2 48.3-41.9 79.5-58.1 20-12.2 39.7-22.6 62-30.7-65.1 20.3-122.7 52.9-161.6 92.9-27.7 28.6-41.4 57.1-41.7 82.9-.5 35.1 23.4 65.1 68.4 83l-34.5 51.7h101.6l22-34.4c22.2 1 45.3 0 68.6-2.7l-22.8 37.1h135.5L340 406.3c18.6-5.3 36.9-11.5 54.5-18.7l45.9 71.8H542L468.6 349c18.5-12.1 35-25.5 48.9-39.8zm-187.6 80.5l-25-40.6-32.7 53.3c-23.4 3.5-46.7 5.1-69.2 4.4l101.9-159.3 78.7 123c-17.2 7.4-35.3 13.9-53.7 19.2z\"]\n};\nvar faAtlassian = {\n prefix: 'fab',\n iconName: 'atlassian',\n icon: [512, 512, [], \"f77b\", \"M152.2 236.4c-7.7-8.2-19.7-7.7-24.8 2.8L1.6 490.2c-5 10 2.4 21.7 13.4 21.7h175c5.8.1 11-3.2 13.4-8.4 37.9-77.8 15.1-196.3-51.2-267.1zM244.4 8.1c-122.3 193.4-8.5 348.6 65 495.5 2.5 5.1 7.7 8.4 13.4 8.4H497c11.2 0 18.4-11.8 13.4-21.7 0 0-234.5-470.6-240.4-482.3-5.3-10.6-18.8-10.8-25.6.1z\"]\n};\nvar faAudible = {\n prefix: 'fab',\n iconName: 'audible',\n icon: [640, 512, [], \"f373\", \"M640 199.9v54l-320 200L0 254v-54l320 200 320-200.1zm-194.5 72l47.1-29.4c-37.2-55.8-100.7-92.6-172.7-92.6-72 0-135.5 36.7-172.6 92.4h.3c2.5-2.3 5.1-4.5 7.7-6.7 89.7-74.4 219.4-58.1 290.2 36.3zm-220.1 18.8c16.9-11.9 36.5-18.7 57.4-18.7 34.4 0 65.2 18.4 86.4 47.6l45.4-28.4c-20.9-29.9-55.6-49.5-94.8-49.5-38.9 0-73.4 19.4-94.4 49zM103.6 161.1c131.8-104.3 318.2-76.4 417.5 62.1l.7 1 48.8-30.4C517.1 112.1 424.8 58.1 319.9 58.1c-103.5 0-196.6 53.5-250.5 135.6 9.9-10.5 22.7-23.5 34.2-32.6zm467 32.7z\"]\n};\nvar faAutoprefixer = {\n prefix: 'fab',\n iconName: 'autoprefixer',\n icon: [640, 512, [], \"f41c\", \"M318.4 16l-161 480h77.5l25.4-81.4h119.5L405 496h77.5L318.4 16zm-40.3 341.9l41.2-130.4h1.5l40.9 130.4h-83.6zM640 405l-10-31.4L462.1 358l19.4 56.5L640 405zm-462.1-47L10 373.7 0 405l158.5 9.4 19.4-56.4z\"]\n};\nvar faAvianex = {\n prefix: 'fab',\n iconName: 'avianex',\n icon: [512, 512, [], \"f374\", \"M453.1 32h-312c-38.9 0-76.2 31.2-83.3 69.7L1.2 410.3C-5.9 448.8 19.9 480 58.9 480h312c38.9 0 76.2-31.2 83.3-69.7l56.7-308.5c7-38.6-18.8-69.8-57.8-69.8zm-58.2 347.3l-32 13.5-115.4-110c-14.7 10-29.2 19.5-41.7 27.1l22.1 64.2-17.9 12.7-40.6-61-52.4-48.1 15.7-15.4 58 31.1c9.3-10.5 20.8-22.6 32.8-34.9L203 228.9l-68.8-99.8 18.8-28.9 8.9-4.8L265 207.8l4.9 4.5c19.4-18.8 33.8-32.4 33.8-32.4 7.7-6.5 21.5-2.9 30.7 7.9 9 10.5 10.6 24.7 2.7 31.3-1.8 1.3-15.5 11.4-35.3 25.6l4.5 7.3 94.9 119.4-6.3 7.9z\"]\n};\nvar faAviato = {\n prefix: 'fab',\n iconName: 'aviato',\n icon: [640, 512, [], \"f421\", \"M107.2 283.5l-19-41.8H36.1l-19 41.8H0l62.2-131.4 62.2 131.4h-17.2zm-45-98.1l-19.6 42.5h39.2l-19.6-42.5zm112.7 102.4l-62.2-131.4h17.1l45.1 96 45.1-96h17l-62.1 131.4zm80.6-4.3V156.4H271v127.1h-15.5zm209.1-115.6v115.6h-17.3V167.9h-41.2v-11.5h99.6v11.5h-41.1zM640 218.8c0 9.2-1.7 17.8-5.1 25.8-3.4 8-8.2 15.1-14.2 21.1-6 6-13.1 10.8-21.1 14.2-8 3.4-16.6 5.1-25.8 5.1s-17.8-1.7-25.8-5.1c-8-3.4-15.1-8.2-21.1-14.2-6-6-10.8-13-14.2-21.1-3.4-8-5.1-16.6-5.1-25.8s1.7-17.8 5.1-25.8c3.4-8 8.2-15.1 14.2-21.1 6-6 13-8.4 21.1-11.9 8-3.4 16.6-5.1 25.8-5.1s17.8 1.7 25.8 5.1c8 3.4 15.1 5.8 21.1 11.9 6 6 10.7 13.1 14.2 21.1 3.4 8 5.1 16.6 5.1 25.8zm-15.5 0c0-7.3-1.3-14-3.9-20.3-2.6-6.3-6.2-11.7-10.8-16.3-4.6-4.6-10-8.2-16.2-10.9-6.2-2.7-12.8-4-19.8-4s-13.6 1.3-19.8 4c-6.2 2.7-11.6 6.3-16.2 10.9-4.6 4.6-8.2 10-10.8 16.3-2.6 6.3-3.9 13.1-3.9 20.3 0 7.3 1.3 14 3.9 20.3 2.6 6.3 6.2 11.7 10.8 16.3 4.6 4.6 10 8.2 16.2 10.9 6.2 2.7 12.8 4 19.8 4s13.6-1.3 19.8-4c6.2-2.7 11.6-6.3 16.2-10.9 4.6-4.6 8.2-10 10.8-16.3 2.6-6.3 3.9-13.1 3.9-20.3zm-94.8 96.7v-6.3l88.9-10-242.9 13.4c.6-2.2 1.1-4.6 1.4-7.2.3-2 .5-4.2.6-6.5l64.8-8.1-64.9 1.9c0-.4-.1-.7-.1-1.1-2.8-17.2-25.5-23.7-25.5-23.7l-1.1-26.3h23.8l19 41.8h17.1L348.6 152l-62.2 131.4h17.1l19-41.8h23.6L345 268s-22.7 6.5-25.5 23.7c-.1.3-.1.7-.1 1.1l-64.9-1.9 64.8 8.1c.1 2.3.3 4.4.6 6.5.3 2.6.8 5 1.4 7.2L78.4 299.2l88.9 10v6.3c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4 0-6.2-4.6-11.3-10.5-12.2v-5.8l80.3 9v5.4c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-4.9l28.4 3.2v23.7h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9V323l38.3 4.3c8.1 11.4 19 13.6 19 13.6l-.1 6.7-5.1.2-.1 12.1h4.1l.1-5h5.2l.1 5h4.1l-.1-12.1-5.1-.2-.1-6.7s10.9-2.1 19-13.6l38.3-4.3v23.2h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9v-23.7l28.4-3.2v4.9c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-5.4l80.3-9v5.8c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4-.2-6.3-4.7-11.4-10.7-12.3zm-200.8-87.6l19.6-42.5 19.6 42.5h-17.9l-1.7-40.3-1.7 40.3h-17.9z\"]\n};\nvar faAws = {\n prefix: 'fab',\n iconName: 'aws',\n icon: [640, 512, [], \"f375\", \"M180.41 203.01c-.72 22.65 10.6 32.68 10.88 39.05a8.164 8.164 0 0 1-4.1 6.27l-12.8 8.96a10.66 10.66 0 0 1-5.63 1.92c-.43-.02-8.19 1.83-20.48-25.61a78.608 78.608 0 0 1-62.61 29.45c-16.28.89-60.4-9.24-58.13-56.21-1.59-38.28 34.06-62.06 70.93-60.05 7.1.02 21.6.37 46.99 6.27v-15.62c2.69-26.46-14.7-46.99-44.81-43.91-2.4.01-19.4-.5-45.84 10.11-7.36 3.38-8.3 2.82-10.75 2.82-7.41 0-4.36-21.48-2.94-24.2 5.21-6.4 35.86-18.35 65.94-18.18a76.857 76.857 0 0 1 55.69 17.28 70.285 70.285 0 0 1 17.67 52.36l-.01 69.29zM93.99 235.4c32.43-.47 46.16-19.97 49.29-30.47 2.46-10.05 2.05-16.41 2.05-27.4-9.67-2.32-23.59-4.85-39.56-4.87-15.15-1.14-42.82 5.63-41.74 32.26-1.24 16.79 11.12 31.4 29.96 30.48zm170.92 23.05c-7.86.72-11.52-4.86-12.68-10.37l-49.8-164.65c-.97-2.78-1.61-5.65-1.92-8.58a4.61 4.61 0 0 1 3.86-5.25c.24-.04-2.13 0 22.25 0 8.78-.88 11.64 6.03 12.55 10.37l35.72 140.83 33.16-140.83c.53-3.22 2.94-11.07 12.8-10.24h17.16c2.17-.18 11.11-.5 12.68 10.37l33.42 142.63L420.98 80.1c.48-2.18 2.72-11.37 12.68-10.37h19.72c.85-.13 6.15-.81 5.25 8.58-.43 1.85 3.41-10.66-52.75 169.9-1.15 5.51-4.82 11.09-12.68 10.37h-18.69c-10.94 1.15-12.51-9.66-12.68-10.75L328.67 110.7l-32.78 136.99c-.16 1.09-1.73 11.9-12.68 10.75h-18.3zm273.48 5.63c-5.88.01-33.92-.3-57.36-12.29a12.802 12.802 0 0 1-7.81-11.91v-10.75c0-8.45 6.2-6.9 8.83-5.89 10.04 4.06 16.48 7.14 28.81 9.6 36.65 7.53 52.77-2.3 56.72-4.48 13.15-7.81 14.19-25.68 5.25-34.95-10.48-8.79-15.48-9.12-53.13-21-4.64-1.29-43.7-13.61-43.79-52.36-.61-28.24 25.05-56.18 69.52-55.95 12.67-.01 46.43 4.13 55.57 15.62 1.35 2.09 2.02 4.55 1.92 7.04v10.11c0 4.44-1.62 6.66-4.87 6.66-7.71-.86-21.39-11.17-49.16-10.75-6.89-.36-39.89.91-38.41 24.97-.43 18.96 26.61 26.07 29.7 26.89 36.46 10.97 48.65 12.79 63.12 29.58 17.14 22.25 7.9 48.3 4.35 55.44-19.08 37.49-68.42 34.44-69.26 34.42zm40.2 104.86c-70.03 51.72-171.69 79.25-258.49 79.25A469.127 469.127 0 0 1 2.83 327.46c-6.53-5.89-.77-13.96 7.17-9.47a637.37 637.37 0 0 0 316.88 84.12 630.22 630.22 0 0 0 241.59-49.55c11.78-5 21.77 7.8 10.12 16.38zm29.19-33.29c-8.96-11.52-59.28-5.38-81.81-2.69-6.79.77-7.94-5.12-1.79-9.47 40.07-28.17 105.88-20.1 113.44-10.63 7.55 9.47-2.05 75.41-39.56 106.91-5.76 4.87-11.27 2.3-8.71-4.1 8.44-21.25 27.39-68.49 18.43-80.02z\"]\n};\nvar faBandcamp = {\n prefix: 'fab',\n iconName: 'bandcamp',\n icon: [512, 512, [], \"f2d5\", \"M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm48.2,326.1h-181L207.9,178h181Z\"]\n};\nvar faBattleNet = {\n prefix: 'fab',\n iconName: 'battle-net',\n icon: [512, 512, [], \"f835\", \"M448.61 225.62c26.87.18 35.57-7.43 38.92-12.37 12.47-16.32-7.06-47.6-52.85-71.33 17.76-33.58 30.11-63.68 36.34-85.3 3.38-11.83 1.09-19 .45-20.25-1.72 10.52-15.85 48.46-48.2 100.05-25-11.22-56.52-20.1-93.77-23.8-8.94-16.94-34.88-63.86-60.48-88.93C252.18 7.14 238.7 1.07 228.18.22h-.05c-13.83-1.55-22.67 5.85-27.4 11-17.2 18.53-24.33 48.87-25 84.07-7.24-12.35-17.17-24.63-28.5-25.93h-.18c-20.66-3.48-38.39 29.22-36 81.29-38.36 1.38-71 5.75-93 11.23-9.9 2.45-16.22 7.27-17.76 9.72 1-.38 22.4-9.22 111.56-9.22 5.22 53 29.75 101.82 26 93.19-9.73 15.4-38.24 62.36-47.31 97.7-5.87 22.88-4.37 37.61.15 47.14 5.57 12.75 16.41 16.72 23.2 18.26 25 5.71 55.38-3.63 86.7-21.14-7.53 12.84-13.9 28.51-9.06 39.34 7.31 19.65 44.49 18.66 88.44-9.45 20.18 32.18 40.07 57.94 55.7 74.12a39.79 39.79 0 0 0 8.75 7.09c5.14 3.21 8.58 3.37 8.58 3.37-8.24-6.75-34-38-62.54-91.78 22.22-16 45.65-38.87 67.47-69.27 122.82 4.6 143.29-24.76 148-31.64 14.67-19.88 3.43-57.44-57.32-93.69zm-77.85 106.22c23.81-37.71 30.34-67.77 29.45-92.33 27.86 17.57 47.18 37.58 49.06 58.83 1.14 12.93-8.1 29.12-78.51 33.5zM216.9 387.69c9.76-6.23 19.53-13.12 29.2-20.49 6.68 13.33 13.6 26.1 20.6 38.19-40.6 21.86-68.84 12.76-49.8-17.7zm215-171.35c-10.29-5.34-21.16-10.34-32.38-15.05a722.459 722.459 0 0 0 22.74-36.9c39.06 24.1 45.9 53.18 9.64 51.95zM279.18 398c-5.51-11.35-11-23.5-16.5-36.44 43.25 1.27 62.42-18.73 63.28-20.41 0 .07-25 15.64-62.53 12.25a718.78 718.78 0 0 0 85.06-84q13.06-15.31 24.93-31.11c-.36-.29-1.54-3-16.51-12-51.7 60.27-102.34 98-132.75 115.92-20.59-11.18-40.84-31.78-55.71-61.49-20-39.92-30-82.39-31.57-116.07 12.3.91 25.27 2.17 38.85 3.88-22.29 36.8-14.39 63-13.47 64.23 0-.07-.95-29.17 20.14-59.57a695.23 695.23 0 0 0 44.67 152.84c.93-.38 1.84.88 18.67-8.25-26.33-74.47-33.76-138.17-34-173.43 20-12.42 48.18-19.8 81.63-17.81 44.57 2.67 86.36 15.25 116.32 30.71q-10.69 15.66-23.33 32.47C365.63 152 339.1 145.84 337.5 146c.11 0 25.9 14.07 41.52 47.22a717.63 717.63 0 0 0-115.34-31.71 646.608 646.608 0 0 0-39.39-6.05c-.07.45-1.81 1.85-2.16 20.33C300 190.28 358.78 215.68 389.36 233c.74 23.55-6.95 51.61-25.41 79.57-24.6 37.31-56.39 67.23-84.77 85.43zm27.4-287c-44.56-1.66-73.58 7.43-94.69 20.67 2-52.3 21.31-76.38 38.21-75.28C267 52.15 305 108.55 306.58 111zm-130.65 3.1c.48 12.11 1.59 24.62 3.21 37.28-14.55-.85-28.74-1.25-42.4-1.26-.08 3.24-.12-51 24.67-49.59h.09c5.76 1.09 10.63 6.88 14.43 13.57zm-28.06 162c20.76 39.7 43.3 60.57 65.25 72.31-46.79 24.76-77.53 20-84.92 4.51-.2-.21-11.13-15.3 19.67-76.81zm210.06 74.8\"]\n};\nvar faBehance = {\n prefix: 'fab',\n iconName: 'behance',\n icon: [576, 512, [], \"f1b4\", \"M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z\"]\n};\nvar faBehanceSquare = {\n prefix: 'fab',\n iconName: 'behance-square',\n icon: [448, 512, [], \"f1b5\", \"M186.5 293c0 19.3-14 25.4-31.2 25.4h-45.1v-52.9h46c18.6.1 30.3 7.8 30.3 27.5zm-7.7-82.3c0-17.7-13.7-21.9-28.9-21.9h-39.6v44.8H153c15.1 0 25.8-6.6 25.8-22.9zm132.3 23.2c-18.3 0-30.5 11.4-31.7 29.7h62.2c-1.7-18.5-11.3-29.7-30.5-29.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM271.7 185h77.8v-18.9h-77.8V185zm-43 110.3c0-24.1-11.4-44.9-35-51.6 17.2-8.2 26.2-17.7 26.2-37 0-38.2-28.5-47.5-61.4-47.5H68v192h93.1c34.9-.2 67.6-16.9 67.6-55.9zM380 280.5c0-41.1-24.1-75.4-67.6-75.4-42.4 0-71.1 31.8-71.1 73.6 0 43.3 27.3 73 71.1 73 33.2 0 54.7-14.9 65.1-46.8h-33.7c-3.7 11.9-18.6 18.1-30.2 18.1-22.4 0-34.1-13.1-34.1-35.3h100.2c.1-2.3.3-4.8.3-7.2z\"]\n};\nvar faBimobject = {\n prefix: 'fab',\n iconName: 'bimobject',\n icon: [448, 512, [], \"f378\", \"M416 32H32C14.4 32 0 46.4 0 64v384c0 17.6 14.4 32 32 32h384c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32zm-64 257.4c0 49.4-11.4 82.6-103.8 82.6h-16.9c-44.1 0-62.4-14.9-70.4-38.8h-.9V368H96V136h64v74.7h1.1c4.6-30.5 39.7-38.8 69.7-38.8h17.3c92.4 0 103.8 33.1 103.8 82.5v35zm-64-28.9v22.9c0 21.7-3.4 33.8-38.4 33.8h-45.3c-28.9 0-44.1-6.5-44.1-35.7v-19c0-29.3 15.2-35.7 44.1-35.7h45.3c35-.2 38.4 12 38.4 33.7z\"]\n};\nvar faBitbucket = {\n prefix: 'fab',\n iconName: 'bitbucket',\n icon: [512, 512, [], \"f171\", \"M22.2 32A16 16 0 0 0 6 47.8a26.35 26.35 0 0 0 .2 2.8l67.9 412.1a21.77 21.77 0 0 0 21.3 18.2h325.7a16 16 0 0 0 16-13.4L505 50.7a16 16 0 0 0-13.2-18.3 24.58 24.58 0 0 0-2.8-.2L22.2 32zm285.9 297.8h-104l-28.1-147h157.3l-25.2 147z\"]\n};\nvar faBitcoin = {\n prefix: 'fab',\n iconName: 'bitcoin',\n icon: [512, 512, [], \"f379\", \"M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-141.651-35.33c4.937-32.999-20.191-50.739-54.55-62.573l11.146-44.702-27.213-6.781-10.851 43.524c-7.154-1.783-14.502-3.464-21.803-5.13l10.929-43.81-27.198-6.781-11.153 44.686c-5.922-1.349-11.735-2.682-17.377-4.084l.031-.14-37.53-9.37-7.239 29.062s20.191 4.627 19.765 4.913c11.022 2.751 13.014 10.044 12.68 15.825l-12.696 50.925c.76.194 1.744.473 2.829.907-.907-.225-1.876-.473-2.876-.713l-17.796 71.338c-1.349 3.348-4.767 8.37-12.471 6.464.271.395-19.78-4.937-19.78-4.937l-13.51 31.147 35.414 8.827c6.588 1.651 13.045 3.379 19.4 5.006l-11.262 45.213 27.182 6.781 11.153-44.733a1038.209 1038.209 0 0 0 21.687 5.627l-11.115 44.523 27.213 6.781 11.262-45.128c46.404 8.781 81.299 5.239 95.986-36.727 11.836-33.79-.589-53.281-25.004-65.991 17.78-4.098 31.174-15.792 34.747-39.949zm-62.177 87.179c-8.41 33.79-65.308 15.523-83.755 10.943l14.944-59.899c18.446 4.603 77.6 13.717 68.811 48.956zm8.417-87.667c-7.673 30.736-55.031 15.12-70.393 11.292l13.548-54.327c15.363 3.828 64.836 10.973 56.845 43.035z\"]\n};\nvar faBity = {\n prefix: 'fab',\n iconName: 'bity',\n icon: [496, 512, [], \"f37a\", \"M78.4 67.2C173.8-22 324.5-24 421.5 71c14.3 14.1-6.4 37.1-22.4 21.5-84.8-82.4-215.8-80.3-298.9-3.2-16.3 15.1-36.5-8.3-21.8-22.1zm98.9 418.6c19.3 5.7 29.3-23.6 7.9-30C73 421.9 9.4 306.1 37.7 194.8c5-19.6-24.9-28.1-30.2-7.1-32.1 127.4 41.1 259.8 169.8 298.1zm148.1-2c121.9-40.2 192.9-166.9 164.4-291-4.5-19.7-34.9-13.8-30 7.9 24.2 107.7-37.1 217.9-143.2 253.4-21.2 7-10.4 36 8.8 29.7zm-62.9-79l.2-71.8c0-8.2-6.6-14.8-14.8-14.8-8.2 0-14.8 6.7-14.8 14.8l-.2 71.8c0 8.2 6.6 14.8 14.8 14.8s14.8-6.6 14.8-14.8zm71-269c2.1 90.9 4.7 131.9-85.5 132.5-92.5-.7-86.9-44.3-85.5-132.5 0-21.8-32.5-19.6-32.5 0v71.6c0 69.3 60.7 90.9 118 90.1 57.3.8 118-20.8 118-90.1v-71.6c0-19.6-32.5-21.8-32.5 0z\"]\n};\nvar faBlackTie = {\n prefix: 'fab',\n iconName: 'black-tie',\n icon: [448, 512, [], \"f27e\", \"M0 32v448h448V32H0zm316.5 325.2L224 445.9l-92.5-88.7 64.5-184-64.5-86.6h184.9L252 173.2l64.5 184z\"]\n};\nvar faBlackberry = {\n prefix: 'fab',\n iconName: 'blackberry',\n icon: [512, 512, [], \"f37b\", \"M166 116.9c0 23.4-16.4 49.1-72.5 49.1H23.4l21-88.8h67.8c42.1 0 53.8 23.3 53.8 39.7zm126.2-39.7h-67.8L205.7 166h70.1c53.8 0 70.1-25.7 70.1-49.1.1-16.4-11.6-39.7-53.7-39.7zM88.8 208.1H21L0 296.9h70.1c56.1 0 72.5-23.4 72.5-49.1 0-16.3-11.7-39.7-53.8-39.7zm180.1 0h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1 0-16.3-11.7-39.7-53.7-39.7zm189.3-53.8h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7zm-28 137.9h-67.8L343.7 381h70.1c56.1 0 70.1-23.4 70.1-49.1 0-16.3-11.6-39.7-53.7-39.7zM240.8 346H173l-18.7 88.8h70.1c56.1 0 70.1-25.7 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7z\"]\n};\nvar faBlogger = {\n prefix: 'fab',\n iconName: 'blogger',\n icon: [448, 512, [], \"f37c\", \"M162.4 196c4.8-4.9 6.2-5.1 36.4-5.1 27.2 0 28.1.1 32.1 2.1 5.8 2.9 8.3 7 8.3 13.6 0 5.9-2.4 10-7.6 13.4-2.8 1.8-4.5 1.9-31.1 2.1-16.4.1-29.5-.2-31.5-.8-10.3-2.9-14.1-17.7-6.6-25.3zm61.4 94.5c-53.9 0-55.8.2-60.2 4.1-3.5 3.1-5.7 9.4-5.1 13.9.7 4.7 4.8 10.1 9.2 12 2.2 1 14.1 1.7 56.3 1.2l47.9-.6 9.2-1.5c9-5.1 10.5-17.4 3.1-24.4-5.3-4.7-5-4.7-60.4-4.7zm223.4 130.1c-3.5 28.4-23 50.4-51.1 57.5-7.2 1.8-9.7 1.9-172.9 1.8-157.8 0-165.9-.1-172-1.8-8.4-2.2-15.6-5.5-22.3-10-5.6-3.8-13.9-11.8-17-16.4-3.8-5.6-8.2-15.3-10-22C.1 423 0 420.3 0 256.3 0 93.2 0 89.7 1.8 82.6 8.1 57.9 27.7 39 53 33.4c7.3-1.6 332.1-1.9 340-.3 21.2 4.3 37.9 17.1 47.6 36.4 7.7 15.3 7-1.5 7.3 180.6.2 115.8 0 164.5-.7 170.5zm-85.4-185.2c-1.1-5-4.2-9.6-7.7-11.5-1.1-.6-8-1.3-15.5-1.7-12.4-.6-13.8-.8-17.8-3.1-6.2-3.6-7.9-7.6-8-18.3 0-20.4-8.5-39.4-25.3-56.5-12-12.2-25.3-20.5-40.6-25.1-3.6-1.1-11.8-1.5-39.2-1.8-42.9-.5-52.5.4-67.1 6.2-27 10.7-46.3 33.4-53.4 62.4-1.3 5.4-1.6 14.2-1.9 64.3-.4 62.8 0 72.1 4 84.5 9.7 30.7 37.1 53.4 64.6 58.4 9.2 1.7 122.2 2.1 133.7.5 20.1-2.7 35.9-10.8 50.7-25.9 10.7-10.9 17.4-22.8 21.8-38.5 3.2-10.9 2.9-88.4 1.7-93.9z\"]\n};\nvar faBloggerB = {\n prefix: 'fab',\n iconName: 'blogger-b',\n icon: [448, 512, [], \"f37d\", \"M446.6 222.7c-1.8-8-6.8-15.4-12.5-18.5-1.8-1-13-2.2-25-2.7-20.1-.9-22.3-1.3-28.7-5-10.1-5.9-12.8-12.3-12.9-29.5-.1-33-13.8-63.7-40.9-91.3-19.3-19.7-40.9-33-65.5-40.5-5.9-1.8-19.1-2.4-63.3-2.9-69.4-.8-84.8.6-108.4 10C45.9 59.5 14.7 96.1 3.3 142.9 1.2 151.7.7 165.8.2 246.8c-.6 101.5.1 116.4 6.4 136.5 15.6 49.6 59.9 86.3 104.4 94.3 14.8 2.7 197.3 3.3 216 .8 32.5-4.4 58-17.5 81.9-41.9 17.3-17.7 28.1-36.8 35.2-62.1 4.9-17.6 4.5-142.8 2.5-151.7zm-322.1-63.6c7.8-7.9 10-8.2 58.8-8.2 43.9 0 45.4.1 51.8 3.4 9.3 4.7 13.4 11.3 13.4 21.9 0 9.5-3.8 16.2-12.3 21.6-4.6 2.9-7.3 3.1-50.3 3.3-26.5.2-47.7-.4-50.8-1.2-16.6-4.7-22.8-28.5-10.6-40.8zm191.8 199.8l-14.9 2.4-77.5.9c-68.1.8-87.3-.4-90.9-2-7.1-3.1-13.8-11.7-14.9-19.4-1.1-7.3 2.6-17.3 8.2-22.4 7.1-6.4 10.2-6.6 97.3-6.7 89.6-.1 89.1-.1 97.6 7.8 12.1 11.3 9.5 31.2-4.9 39.4z\"]\n};\nvar faBluetooth = {\n prefix: 'fab',\n iconName: 'bluetooth',\n icon: [448, 512, [], \"f293\", \"M292.6 171.1L249.7 214l-.3-86 43.2 43.1m-43.2 219.8l43.1-43.1-42.9-42.9-.2 86zM416 259.4C416 465 344.1 512 230.9 512S32 465 32 259.4 115.4 0 228.6 0 416 53.9 416 259.4zm-158.5 0l79.4-88.6L211.8 36.5v176.9L138 139.6l-27 26.9 92.7 93-92.7 93 26.9 26.9 73.8-73.8 2.3 170 127.4-127.5-83.9-88.7z\"]\n};\nvar faBluetoothB = {\n prefix: 'fab',\n iconName: 'bluetooth-b',\n icon: [320, 512, [], \"f294\", \"M196.48 260.023l92.626-103.333L143.125 0v206.33l-86.111-86.111-31.406 31.405 108.061 108.399L25.608 368.422l31.406 31.405 86.111-86.111L145.84 512l148.552-148.644-97.912-103.333zm40.86-102.996l-49.977 49.978-.338-100.295 50.315 50.317zM187.363 313.04l49.977 49.978-50.315 50.316.338-100.294z\"]\n};\nvar faBootstrap = {\n prefix: 'fab',\n iconName: 'bootstrap',\n icon: [576, 512, [], \"f836\", \"M333.5,201.4c0-22.1-15.6-34.3-43-34.3h-50.4v71.2h42.5C315.4,238.2,333.5,225,333.5,201.4z M517,188.6 c-9.5-30.9-10.9-68.8-9.8-98.1c1.1-30.5-22.7-58.5-54.7-58.5H123.7c-32.1,0-55.8,28.1-54.7,58.5c1,29.3-0.3,67.2-9.8,98.1 c-9.6,31-25.7,50.6-52.2,53.1v28.5c26.4,2.5,42.6,22.1,52.2,53.1c9.5,30.9,10.9,68.8,9.8,98.1c-1.1,30.5,22.7,58.5,54.7,58.5h328.7 c32.1,0,55.8-28.1,54.7-58.5c-1-29.3,0.3-67.2,9.8-98.1c9.6-31,25.7-50.6,52.1-53.1v-28.5C542.7,239.2,526.5,219.6,517,188.6z M300.2,375.1h-97.9V136.8h97.4c43.3,0,71.7,23.4,71.7,59.4c0,25.3-19.1,47.9-43.5,51.8v1.3c33.2,3.6,55.5,26.6,55.5,58.3 C383.4,349.7,352.1,375.1,300.2,375.1z M290.2,266.4h-50.1v78.4h52.3c34.2,0,52.3-13.7,52.3-39.5 C344.7,279.6,326.1,266.4,290.2,266.4z\"]\n};\nvar faBtc = {\n prefix: 'fab',\n iconName: 'btc',\n icon: [384, 512, [], \"f15a\", \"M310.204 242.638c27.73-14.18 45.377-39.39 41.28-81.3-5.358-57.351-52.458-76.573-114.85-81.929V0h-48.528v77.203c-12.605 0-25.525.315-38.444.63V0h-48.528v79.409c-17.842.539-38.622.276-97.37 0v51.678c38.314-.678 58.417-3.14 63.023 21.427v217.429c-2.925 19.492-18.524 16.685-53.255 16.071L3.765 443.68c88.481 0 97.37.315 97.37.315V512h48.528v-67.06c13.234.315 26.154.315 38.444.315V512h48.528v-68.005c81.299-4.412 135.647-24.894 142.895-101.467 5.671-61.446-23.32-88.862-69.326-99.89zM150.608 134.553c27.415 0 113.126-8.507 113.126 48.528 0 54.515-85.71 48.212-113.126 48.212v-96.74zm0 251.776V279.821c32.772 0 133.127-9.138 133.127 53.255-.001 60.186-100.355 53.253-133.127 53.253z\"]\n};\nvar faBuffer = {\n prefix: 'fab',\n iconName: 'buffer',\n icon: [448, 512, [], \"f837\", \"M427.84 380.67l-196.5 97.82a18.6 18.6 0 0 1-14.67 0L20.16 380.67c-4-2-4-5.28 0-7.29L67.22 350a18.65 18.65 0 0 1 14.69 0l134.76 67a18.51 18.51 0 0 0 14.67 0l134.76-67a18.62 18.62 0 0 1 14.68 0l47.06 23.43c4.05 1.96 4.05 5.24 0 7.24zm0-136.53l-47.06-23.43a18.62 18.62 0 0 0-14.68 0l-134.76 67.08a18.68 18.68 0 0 1-14.67 0L81.91 220.71a18.65 18.65 0 0 0-14.69 0l-47.06 23.43c-4 2-4 5.29 0 7.31l196.51 97.8a18.6 18.6 0 0 0 14.67 0l196.5-97.8c4.05-2.02 4.05-5.3 0-7.31zM20.16 130.42l196.5 90.29a20.08 20.08 0 0 0 14.67 0l196.51-90.29c4-1.86 4-4.89 0-6.74L231.33 33.4a19.88 19.88 0 0 0-14.67 0l-196.5 90.28c-4.05 1.85-4.05 4.88 0 6.74z\"]\n};\nvar faBuromobelexperte = {\n prefix: 'fab',\n iconName: 'buromobelexperte',\n icon: [448, 512, [], \"f37f\", \"M0 32v128h128V32H0zm120 120H8V40h112v112zm40-120v128h128V32H160zm120 120H168V40h112v112zm40-120v128h128V32H320zm120 120H328V40h112v112zM0 192v128h128V192H0zm120 120H8V200h112v112zm40-120v128h128V192H160zm120 120H168V200h112v112zm40-120v128h128V192H320zm120 120H328V200h112v112zM0 352v128h128V352H0zm120 120H8V360h112v112zm40-120v128h128V352H160zm120 120H168V360h112v112zm40-120v128h128V352H320z\"]\n};\nvar faBuyNLarge = {\n prefix: 'fab',\n iconName: 'buy-n-large',\n icon: [576, 512, [], \"f8a6\", \"M288 32C133.27 32 7.79 132.32 7.79 256S133.27 480 288 480s280.21-100.32 280.21-224S442.73 32 288 32zm-85.39 357.19L64.1 390.55l77.25-290.74h133.44c63.15 0 84.93 28.65 78 72.84a60.24 60.24 0 0 1-1.5 6.85 77.39 77.39 0 0 0-17.21-1.93c-42.35 0-76.69 33.88-76.69 75.65 0 37.14 27.14 68 62.93 74.45-18.24 37.16-56.16 60.92-117.71 61.52zM358 207.11h32l-22.16 90.31h-35.41l-11.19-35.63-7.83 35.63h-37.83l26.63-90.31h31.34l15 36.75zm145.86 182.08H306.79L322.63 328a78.8 78.8 0 0 0 11.47.83c42.34 0 76.69-33.87 76.69-75.65 0-32.65-21-60.46-50.38-71.06l21.33-82.35h92.5l-53.05 205.36h103.87zM211.7 269.39H187l-13.8 56.47h24.7c16.14 0 32.11-3.18 37.94-26.65 5.56-22.31-7.99-29.82-24.14-29.82zM233 170h-21.34L200 217.71h21.37c18 0 35.38-14.64 39.21-30.14C265.23 168.71 251.07 170 233 170z\"]\n};\nvar faBuysellads = {\n prefix: 'fab',\n iconName: 'buysellads',\n icon: [448, 512, [], \"f20d\", \"M224 150.7l42.9 160.7h-85.8L224 150.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-65.3 325.3l-94.5-298.7H159.8L65.3 405.3H156l111.7-91.6 24.2 91.6h90.8z\"]\n};\nvar faCanadianMapleLeaf = {\n prefix: 'fab',\n iconName: 'canadian-maple-leaf',\n icon: [512, 512, [], \"f785\", \"M383.8 351.7c2.5-2.5 105.2-92.4 105.2-92.4l-17.5-7.5c-10-4.9-7.4-11.5-5-17.4 2.4-7.6 20.1-67.3 20.1-67.3s-47.7 10-57.7 12.5c-7.5 2.4-10-2.5-12.5-7.5s-15-32.4-15-32.4-52.6 59.9-55.1 62.3c-10 7.5-20.1 0-17.6-10 0-10 27.6-129.6 27.6-129.6s-30.1 17.4-40.1 22.4c-7.5 5-12.6 5-17.6-5C293.5 72.3 255.9 0 255.9 0s-37.5 72.3-42.5 79.8c-5 10-10 10-17.6 5-10-5-40.1-22.4-40.1-22.4S183.3 182 183.3 192c2.5 10-7.5 17.5-17.6 10-2.5-2.5-55.1-62.3-55.1-62.3S98.1 167 95.6 172s-5 9.9-12.5 7.5C73 177 25.4 167 25.4 167s17.6 59.7 20.1 67.3c2.4 6 5 12.5-5 17.4L23 259.3s102.6 89.9 105.2 92.4c5.1 5 10 7.5 5.1 22.5-5.1 15-10.1 35.1-10.1 35.1s95.2-20.1 105.3-22.6c8.7-.9 18.3 2.5 18.3 12.5S241 512 241 512h30s-5.8-102.7-5.8-112.8 9.5-13.4 18.4-12.5c10 2.5 105.2 22.6 105.2 22.6s-5-20.1-10-35.1 0-17.5 5-22.5z\"]\n};\nvar faCcAmazonPay = {\n prefix: 'fab',\n iconName: 'cc-amazon-pay',\n icon: [576, 512, [], \"f42d\", \"M124.7 201.8c.1-11.8 0-23.5 0-35.3v-35.3c0-1.3.4-2 1.4-2.7 11.5-8 24.1-12.1 38.2-11.1 12.5.9 22.7 7 28.1 21.7 3.3 8.9 4.1 18.2 4.1 27.7 0 8.7-.7 17.3-3.4 25.6-5.7 17.8-18.7 24.7-35.7 23.9-11.7-.5-21.9-5-31.4-11.7-.9-.8-1.4-1.6-1.3-2.8zm154.9 14.6c4.6 1.8 9.3 2 14.1 1.5 11.6-1.2 21.9-5.7 31.3-12.5.9-.6 1.3-1.3 1.3-2.5-.1-3.9 0-7.9 0-11.8 0-4-.1-8 0-12 0-1.4-.4-2-1.8-2.2-7-.9-13.9-2.2-20.9-2.9-7-.6-14-.3-20.8 1.9-6.7 2.2-11.7 6.2-13.7 13.1-1.6 5.4-1.6 10.8.1 16.2 1.6 5.5 5.2 9.2 10.4 11.2zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zm-207.5 23.9c.4 1.7.9 3.4 1.6 5.1 16.5 40.6 32.9 81.3 49.5 121.9 1.4 3.5 1.7 6.4.2 9.9-2.8 6.2-4.9 12.6-7.8 18.7-2.6 5.5-6.7 9.5-12.7 11.2-4.2 1.1-8.5 1.3-12.9.9-2.1-.2-4.2-.7-6.3-.8-2.8-.2-4.2 1.1-4.3 4-.1 2.8-.1 5.6 0 8.3.1 4.6 1.6 6.7 6.2 7.5 4.7.8 9.4 1.6 14.2 1.7 14.3.3 25.7-5.4 33.1-17.9 2.9-4.9 5.6-10.1 7.7-15.4 19.8-50.1 39.5-100.3 59.2-150.5.6-1.5 1.1-3 1.3-4.6.4-2.4-.7-3.6-3.1-3.7-5.6-.1-11.1 0-16.7 0-3.1 0-5.3 1.4-6.4 4.3-.4 1.1-.9 2.3-1.3 3.4l-29.1 83.7c-2.1 6.1-4.2 12.1-6.5 18.6-.4-.9-.6-1.4-.8-1.9-10.8-29.9-21.6-59.9-32.4-89.8-1.7-4.7-3.5-9.5-5.3-14.2-.9-2.5-2.7-4-5.4-4-6.4-.1-12.8-.2-19.2-.1-2.2 0-3.3 1.6-2.8 3.7zM242.4 206c1.7 11.7 7.6 20.8 18 26.6 9.9 5.5 20.7 6.2 31.7 4.6 12.7-1.9 23.9-7.3 33.8-15.5.4-.3.8-.6 1.4-1 .5 3.2.9 6.2 1.5 9.2.5 2.6 2.1 4.3 4.5 4.4 4.6.1 9.1.1 13.7 0 2.3-.1 3.8-1.6 4-3.9.1-.8.1-1.6.1-2.3v-88.8c0-3.6-.2-7.2-.7-10.8-1.6-10.8-6.2-19.7-15.9-25.4-5.6-3.3-11.8-5-18.2-5.9-3-.4-6-.7-9.1-1.1h-10c-.8.1-1.6.3-2.5.3-8.2.4-16.3 1.4-24.2 3.5-5.1 1.3-10 3.2-15 4.9-3 1-4.5 3.2-4.4 6.5.1 2.8-.1 5.6 0 8.3.1 4.1 1.8 5.2 5.7 4.1 6.5-1.7 13.1-3.5 19.7-4.8 10.3-1.9 20.7-2.7 31.1-1.2 5.4.8 10.5 2.4 14.1 7 3.1 4 4.2 8.8 4.4 13.7.3 6.9.2 13.9.3 20.8 0 .4-.1.7-.2 1.2-.4 0-.8 0-1.1-.1-8.8-2.1-17.7-3.6-26.8-4.1-9.5-.5-18.9.1-27.9 3.2-10.8 3.8-19.5 10.3-24.6 20.8-4.1 8.3-4.6 17-3.4 25.8zM98.7 106.9v175.3c0 .8 0 1.7.1 2.5.2 2.5 1.7 4.1 4.1 4.2 5.9.1 11.8.1 17.7 0 2.5 0 4-1.7 4.1-4.1.1-.8.1-1.7.1-2.5v-60.7c.9.7 1.4 1.2 1.9 1.6 15 12.5 32.2 16.6 51.1 12.9 17.1-3.4 28.9-13.9 36.7-29.2 5.8-11.6 8.3-24.1 8.7-37 .5-14.3-1-28.4-6.8-41.7-7.1-16.4-18.9-27.3-36.7-30.9-2.7-.6-5.5-.8-8.2-1.2h-7c-1.2.2-2.4.3-3.6.5-11.7 1.4-22.3 5.8-31.8 12.7-2 1.4-3.9 3-5.9 4.5-.1-.5-.3-.8-.4-1.2-.4-2.3-.7-4.6-1.1-6.9-.6-3.9-2.5-5.5-6.4-5.6h-9.7c-5.9-.1-6.9 1-6.9 6.8zM493.6 339c-2.7-.7-5.1 0-7.6 1-43.9 18.4-89.5 30.2-136.8 35.8-14.5 1.7-29.1 2.8-43.7 3.2-26.6.7-53.2-.8-79.6-4.3-17.8-2.4-35.5-5.7-53-9.9-37-8.9-72.7-21.7-106.7-38.8-8.8-4.4-17.4-9.3-26.1-14-3.8-2.1-6.2-1.5-8.2 2.1v1.7c1.2 1.6 2.2 3.4 3.7 4.8 36 32.2 76.6 56.5 122 72.9 21.9 7.9 44.4 13.7 67.3 17.5 14 2.3 28 3.8 42.2 4.5 3 .1 6 .2 9 .4.7 0 1.4.2 2.1.3h17.7c.7-.1 1.4-.3 2.1-.3 14.9-.4 29.8-1.8 44.6-4 21.4-3.2 42.4-8.1 62.9-14.7 29.6-9.6 57.7-22.4 83.4-40.1 2.8-1.9 5.7-3.8 8-6.2 4.3-4.4 2.3-10.4-3.3-11.9zm50.4-27.7c-.8-4.2-4-5.8-7.6-7-5.7-1.9-11.6-2.8-17.6-3.3-11-.9-22-.4-32.8 1.6-12 2.2-23.4 6.1-33.5 13.1-1.2.8-2.4 1.8-3.1 3-.6.9-.7 2.3-.5 3.4.3 1.3 1.7 1.6 3 1.5.6 0 1.2 0 1.8-.1l19.5-2.1c9.6-.9 19.2-1.5 28.8-.8 4.1.3 8.1 1.2 12 2.2 4.3 1.1 6.2 4.4 6.4 8.7.3 6.7-1.2 13.1-2.9 19.5-3.5 12.9-8.3 25.4-13.3 37.8-.3.8-.7 1.7-.8 2.5-.4 2.5 1 4 3.4 3.5 1.4-.3 3-1.1 4-2.1 3.7-3.6 7.5-7.2 10.6-11.2 10.7-13.8 17-29.6 20.7-46.6.7-3 1.2-6.1 1.7-9.1.2-4.7.2-9.6.2-14.5z\"]\n};\nvar faCcAmex = {\n prefix: 'fab',\n iconName: 'cc-amex',\n icon: [576, 512, [], \"f1f3\", \"M325.1 167.8c0-16.4-14.1-18.4-27.4-18.4l-39.1-.3v69.3H275v-25.1h18c18.4 0 14.5 10.3 14.8 25.1h16.6v-13.5c0-9.2-1.5-15.1-11-18.4 7.4-3 11.8-10.7 11.7-18.7zm-29.4 11.3H275v-15.3h21c5.1 0 10.7 1 10.7 7.4 0 6.6-5.3 7.9-11 7.9zM279 268.6h-52.7l-21 22.8-20.5-22.8h-66.5l-.1 69.3h65.4l21.3-23 20.4 23h32.2l.1-23.3c18.9 0 49.3 4.6 49.3-23.3 0-17.3-12.3-22.7-27.9-22.7zm-103.8 54.7h-40.6v-13.8h36.3v-14.1h-36.3v-12.5h41.7l17.9 20.2zm65.8 8.2l-25.3-28.1L241 276zm37.8-31h-21.2v-17.6h21.5c5.6 0 10.2 2.3 10.2 8.4 0 6.4-4.6 9.2-10.5 9.2zm-31.6-136.7v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5zM576 255.4h-.2zm-194.6 31.9c0-16.4-14.1-18.7-27.1-18.7h-39.4l-.1 69.3h16.6l.1-25.3h17.6c11 0 14.8 2 14.8 13.8l-.1 11.5h16.6l.1-13.8c0-8.9-1.8-15.1-11-18.4 7.7-3.1 11.8-10.8 11.9-18.4zm-29.2 11.2h-20.7v-15.6h21c5.1 0 10.7 1 10.7 7.4 0 6.9-5.4 8.2-11 8.2zm-172.8-80v-69.3h-27.6l-19.7 47-21.7-47H83.3v65.7l-28.1-65.7H30.7L1 218.5h17.9l6.4-15.3h34.5l6.4 15.3H100v-54.2l24 54.2h14.6l24-54.2v54.2zM31.2 188.8l11.2-27.6 11.5 27.6zm477.4 158.9v-4.5c-10.8 5.6-3.9 4.5-156.7 4.5 0-25.2.1-23.9 0-25.2-1.7-.1-3.2-.1-9.4-.1 0 17.9-.1 6.8-.1 25.3h-39.6c0-12.1.1-15.3.1-29.2-10 6-22.8 6.4-34.3 6.2 0 14.7-.1 8.3-.1 23h-48.9c-5.1-5.7-2.7-3.1-15.4-17.4-3.2 3.5-12.8 13.9-16.1 17.4h-82v-92.3h83.1c5 5.6 2.8 3.1 15.5 17.2 3.2-3.5 12.2-13.4 15.7-17.2h58c9.8 0 18 1.9 24.3 5.6v-5.6c54.3 0 64.3-1.4 75.7 5.1v-5.1h78.2v5.2c11.4-6.9 19.6-5.2 64.9-5.2v5c10.3-5.9 16.6-5.2 54.3-5V80c0-26.5-21.5-48-48-48h-480c-26.5 0-48 21.5-48 48v109.8c9.4-21.9 19.7-46 23.1-53.9h39.7c4.3 10.1 1.6 3.7 9 21.1v-21.1h46c2.9 6.2 11.1 24 13.9 30 5.8-13.6 10.1-23.9 12.6-30h103c0-.1 11.5 0 11.6 0 43.7.2 53.6-.8 64.4 5.3v-5.3H363v9.3c7.6-6.1 17.9-9.3 30.7-9.3h27.6c0 .5 1.9.3 2.3.3H456c4.2 9.8 2.6 6 8.8 20.6v-20.6h43.3c4.9 8-1-1.8 11.2 18.4v-18.4h39.9v92h-41.6c-5.4-9-1.4-2.2-13.2-21.9v21.9h-52.8c-6.4-14.8-.1-.3-6.6-15.3h-19c-4.2 10-2.2 5.2-6.4 15.3h-26.8c-12.3 0-22.3-3-29.7-8.9v8.9h-66.5c-.3-13.9-.1-24.8-.1-24.8-1.8-.3-3.4-.2-9.8-.2v25.1H151.2v-11.4c-2.5 5.6-2.7 5.9-5.1 11.4h-29.5c-4-8.9-2.9-6.4-5.1-11.4v11.4H58.6c-4.2-10.1-2.2-5.3-6.4-15.3H33c-4.2 10-2.2 5.2-6.4 15.3H0V432c0 26.5 21.5 48 48 48h480.1c26.5 0 48-21.5 48-48v-90.4c-12.7 8.3-32.7 6.1-67.5 6.1zm36.3-64.5H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-57 39.8h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-42.2-40.1v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5zm-56.3-108.1c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm20.4-10.5h-.1zm-16.2-15.2c-23.5 0-34 12-34 35.3 0 22.2 10.2 34 33 34h19.2l6.4-15.3h34.3l6.6 15.3h33.7v-51.9l31.2 51.9h23.6v-69h-16.9v48.1l-29.1-48.1h-25.3v65.4l-27.9-65.4h-24.8l-23.5 54.5h-7.4c-13.3 0-16.1-8.1-16.1-19.9 0-23.8 15.7-20 33.1-19.7v-15.2zm42.1 12.1l11.2 27.6h-22.8zm-101.1-12v69.3h16.9v-69.3z\"]\n};\nvar faCcApplePay = {\n prefix: 'fab',\n iconName: 'cc-apple-pay',\n icon: [576, 512, [], \"f416\", \"M302.2 218.4c0 17.2-10.5 27.1-29 27.1h-24.3v-54.2h24.4c18.4 0 28.9 9.8 28.9 27.1zm47.5 62.6c0 8.3 7.2 13.7 18.5 13.7 14.4 0 25.2-9.1 25.2-21.9v-7.7l-23.5 1.5c-13.3.9-20.2 5.8-20.2 14.4zM576 79v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM127.8 197.2c8.4.7 16.8-4.2 22.1-10.4 5.2-6.4 8.6-15 7.7-23.7-7.4.3-16.6 4.9-21.9 11.3-4.8 5.5-8.9 14.4-7.9 22.8zm60.6 74.5c-.2-.2-19.6-7.6-19.8-30-.2-18.7 15.3-27.7 16-28.2-8.8-13-22.4-14.4-27.1-14.7-12.2-.7-22.6 6.9-28.4 6.9-5.9 0-14.7-6.6-24.3-6.4-12.5.2-24.2 7.3-30.5 18.6-13.1 22.6-3.4 56 9.3 74.4 6.2 9.1 13.7 19.1 23.5 18.7 9.3-.4 13-6 24.2-6 11.3 0 14.5 6 24.3 5.9 10.2-.2 16.5-9.1 22.8-18.2 6.9-10.4 9.8-20.4 10-21zm135.4-53.4c0-26.6-18.5-44.8-44.9-44.8h-51.2v136.4h21.2v-46.6h29.3c26.8 0 45.6-18.4 45.6-45zm90 23.7c0-19.7-15.8-32.4-40-32.4-22.5 0-39.1 12.9-39.7 30.5h19.1c1.6-8.4 9.4-13.9 20-13.9 13 0 20.2 6 20.2 17.2v7.5l-26.4 1.6c-24.6 1.5-37.9 11.6-37.9 29.1 0 17.7 13.7 29.4 33.4 29.4 13.3 0 25.6-6.7 31.2-17.4h.4V310h19.6v-68zM516 210.9h-21.5l-24.9 80.6h-.4l-24.9-80.6H422l35.9 99.3-1.9 6c-3.2 10.2-8.5 14.2-17.9 14.2-1.7 0-4.9-.2-6.2-.3v16.4c1.2.4 6.5.5 8.1.5 20.7 0 30.4-7.9 38.9-31.8L516 210.9z\"]\n};\nvar faCcDinersClub = {\n prefix: 'fab',\n iconName: 'cc-diners-club',\n icon: [576, 512, [], \"f24c\", \"M239.7 79.9c-96.9 0-175.8 78.6-175.8 175.8 0 96.9 78.9 175.8 175.8 175.8 97.2 0 175.8-78.9 175.8-175.8 0-97.2-78.6-175.8-175.8-175.8zm-39.9 279.6c-41.7-15.9-71.4-56.4-71.4-103.8s29.7-87.9 71.4-104.1v207.9zm79.8.3V151.6c41.7 16.2 71.4 56.7 71.4 104.1s-29.7 87.9-71.4 104.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM329.7 448h-90.3c-106.2 0-193.8-85.5-193.8-190.2C45.6 143.2 133.2 64 239.4 64h90.3c105 0 200.7 79.2 200.7 193.8 0 104.7-95.7 190.2-200.7 190.2z\"]\n};\nvar faCcDiscover = {\n prefix: 'fab',\n iconName: 'cc-discover',\n icon: [576, 512, [], \"f1f2\", \"M520.4 196.1c0-7.9-5.5-12.1-15.6-12.1h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-44.1 138.9c22.6 0 52.9-4.1 52.9 24.4 0 12.6-6.6 20.7-18.7 23.2l25.8 34.4h-19.6l-22.2-32.8h-2.2v32.8h-16zm-55.9.1h45.3v14H444v18.2h28.3V217H444v22.2h29.3V253H428zm-68.7 0l21.9 55.2 22.2-55.2h17.5l-35.5 84.2h-8.6l-35-84.2zm-55.9-3c24.7 0 44.6 20 44.6 44.6 0 24.7-20 44.6-44.6 44.6-24.7 0-44.6-20-44.6-44.6 0-24.7 20-44.6 44.6-44.6zm-49.3 6.1v19c-20.1-20.1-46.8-4.7-46.8 19 0 25 27.5 38.5 46.8 19.2v19c-29.7 14.3-63.3-5.7-63.3-38.2 0-31.2 33.1-53 63.3-38zm-97.2 66.3c11.4 0 22.4-15.3-3.3-24.4-15-5.5-20.2-11.4-20.2-22.7 0-23.2 30.6-31.4 49.7-14.3l-8.4 10.8c-10.4-11.6-24.9-6.2-24.9 2.5 0 4.4 2.7 6.9 12.3 10.3 18.2 6.6 23.6 12.5 23.6 25.6 0 29.5-38.8 37.4-56.6 11.3l10.3-9.9c3.7 7.1 9.9 10.8 17.5 10.8zM55.4 253H32v-82h23.4c26.1 0 44.1 17 44.1 41.1 0 18.5-13.2 40.9-44.1 40.9zm67.5 0h-16v-82h16zM544 433c0 8.2-6.8 15-15 15H128c189.6-35.6 382.7-139.2 416-160zM74.1 191.6c-5.2-4.9-11.6-6.6-21.9-6.6H48v54.2h4.2c10.3 0 17-2 21.9-6.4 5.7-5.2 8.9-12.8 8.9-20.7s-3.2-15.5-8.9-20.5z\"]\n};\nvar faCcJcb = {\n prefix: 'fab',\n iconName: 'cc-jcb',\n icon: [576, 512, [], \"f24b\", \"M431.5 244.3V212c41.2 0 38.5.2 38.5.2 7.3 1.3 13.3 7.3 13.3 16 0 8.8-6 14.5-13.3 15.8-1.2.4-3.3.3-38.5.3zm42.8 20.2c-2.8-.7-3.3-.5-42.8-.5v35c39.6 0 40 .2 42.8-.5 7.5-1.5 13.5-8 13.5-17 0-8.7-6-15.5-13.5-17zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM182 192.3h-57c0 67.1 10.7 109.7-35.8 109.7-19.5 0-38.8-5.7-57.2-14.8v28c30 8.3 68 8.3 68 8.3 97.9 0 82-47.7 82-131.2zm178.5 4.5c-63.4-16-165-14.9-165 59.3 0 77.1 108.2 73.6 165 59.2V287C312.9 311.7 253 309 253 256s59.8-55.6 107.5-31.2v-28zM544 286.5c0-18.5-16.5-30.5-38-32v-.8c19.5-2.7 30.3-15.5 30.3-30.2 0-19-15.7-30-37-31 0 0 6.3-.3-120.3-.3v127.5h122.7c24.3.1 42.3-12.9 42.3-33.2z\"]\n};\nvar faCcMastercard = {\n prefix: 'fab',\n iconName: 'cc-mastercard',\n icon: [576, 512, [], \"f1f1\", \"M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z\"]\n};\nvar faCcPaypal = {\n prefix: 'fab',\n iconName: 'cc-paypal',\n icon: [576, 512, [], \"f1f4\", \"M186.3 258.2c0 12.2-9.7 21.5-22 21.5-9.2 0-16-5.2-16-15 0-12.2 9.5-22 21.7-22 9.3 0 16.3 5.7 16.3 15.5zM80.5 209.7h-4.7c-1.5 0-3 1-3.2 2.7l-4.3 26.7 8.2-.3c11 0 19.5-1.5 21.5-14.2 2.3-13.4-6.2-14.9-17.5-14.9zm284 0H360c-1.8 0-3 1-3.2 2.7l-4.2 26.7 8-.3c13 0 22-3 22-18-.1-10.6-9.6-11.1-18.1-11.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM128.3 215.4c0-21-16.2-28-34.7-28h-40c-2.5 0-5 2-5.2 4.7L32 294.2c-.3 2 1.2 4 3.2 4h19c2.7 0 5.2-2.9 5.5-5.7l4.5-26.6c1-7.2 13.2-4.7 18-4.7 28.6 0 46.1-17 46.1-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.2 8.2-5.8-8.5-14.2-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9 0 20.2-4.9 26.5-11.9-.5 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H200c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm40.5 97.9l63.7-92.6c.5-.5.5-1 .5-1.7 0-1.7-1.5-3.5-3.2-3.5h-19.2c-1.7 0-3.5 1-4.5 2.5l-26.5 39-11-37.5c-.8-2.2-3-4-5.5-4h-18.7c-1.7 0-3.2 1.8-3.2 3.5 0 1.2 19.5 56.8 21.2 62.1-2.7 3.8-20.5 28.6-20.5 31.6 0 1.8 1.5 3.2 3.2 3.2h19.2c1.8-.1 3.5-1.1 4.5-2.6zm159.3-106.7c0-21-16.2-28-34.7-28h-39.7c-2.7 0-5.2 2-5.5 4.7l-16.2 102c-.2 2 1.3 4 3.2 4h20.5c2 0 3.5-1.5 4-3.2l4.5-29c1-7.2 13.2-4.7 18-4.7 28.4 0 45.9-17 45.9-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.3 8.2-5.5-8.5-14-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9.3 0 20.5-4.9 26.5-11.9-.3 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H484c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm47.5-33.3c0-2-1.5-3.5-3.2-3.5h-18.5c-1.5 0-3 1.2-3.2 2.7l-16.2 104-.3.5c0 1.8 1.5 3.5 3.5 3.5h16.5c2.5 0 5-2.9 5.2-5.7L544 191.2v-.3zm-90 51.8c-12.2 0-21.7 9.7-21.7 22 0 9.7 7 15 16.2 15 12 0 21.7-9.2 21.7-21.5.1-9.8-6.9-15.5-16.2-15.5z\"]\n};\nvar faCcStripe = {\n prefix: 'fab',\n iconName: 'cc-stripe',\n icon: [576, 512, [], \"f1f5\", \"M492.4 220.8c-8.9 0-18.7 6.7-18.7 22.7h36.7c0-16-9.3-22.7-18-22.7zM375 223.4c-8.2 0-13.3 2.9-17 7l.2 52.8c3.5 3.7 8.5 6.7 16.8 6.7 13.1 0 21.9-14.3 21.9-33.4 0-18.6-9-33.2-21.9-33.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM122.2 281.1c0 25.6-20.3 40.1-49.9 40.3-12.2 0-25.6-2.4-38.8-8.1v-33.9c12 6.4 27.1 11.3 38.9 11.3 7.9 0 13.6-2.1 13.6-8.7 0-17-54-10.6-54-49.9 0-25.2 19.2-40.2 48-40.2 11.8 0 23.5 1.8 35.3 6.5v33.4c-10.8-5.8-24.5-9.1-35.3-9.1-7.5 0-12.1 2.2-12.1 7.7 0 16 54.3 8.4 54.3 50.7zm68.8-56.6h-27V275c0 20.9 22.5 14.4 27 12.6v28.9c-4.7 2.6-13.3 4.7-24.9 4.7-21.1 0-36.9-15.5-36.9-36.5l.2-113.9 34.7-7.4v30.8H191zm74 2.4c-4.5-1.5-18.7-3.6-27.1 7.4v84.4h-35.5V194.2h30.7l2.2 10.5c8.3-15.3 24.9-12.2 29.6-10.5h.1zm44.1 91.8h-35.7V194.2h35.7zm0-142.9l-35.7 7.6v-28.9l35.7-7.6zm74.1 145.5c-12.4 0-20-5.3-25.1-9l-.1 40.2-35.5 7.5V194.2h31.3l1.8 8.8c4.9-4.5 13.9-11.1 27.8-11.1 24.9 0 48.4 22.5 48.4 63.8 0 45.1-23.2 65.5-48.6 65.6zm160.4-51.5h-69.5c1.6 16.6 13.8 21.5 27.6 21.5 14.1 0 25.2-3 34.9-7.9V312c-9.7 5.3-22.4 9.2-39.4 9.2-34.6 0-58.8-21.7-58.8-64.5 0-36.2 20.5-64.9 54.3-64.9 33.7 0 51.3 28.7 51.3 65.1 0 3.5-.3 10.9-.4 12.9z\"]\n};\nvar faCcVisa = {\n prefix: 'fab',\n iconName: 'cc-visa',\n icon: [576, 512, [], \"f1f0\", \"M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z\"]\n};\nvar faCentercode = {\n prefix: 'fab',\n iconName: 'centercode',\n icon: [512, 512, [], \"f380\", \"M329.2 268.6c-3.8 35.2-35.4 60.6-70.6 56.8-35.2-3.8-60.6-35.4-56.8-70.6 3.8-35.2 35.4-60.6 70.6-56.8 35.1 3.8 60.6 35.4 56.8 70.6zm-85.8 235.1C96.7 496-8.2 365.5 10.1 224.3c11.2-86.6 65.8-156.9 139.1-192 161-77.1 349.7 37.4 354.7 216.6 4.1 147-118.4 262.2-260.5 254.8zm179.9-180c27.9-118-160.5-205.9-237.2-234.2-57.5 56.3-69.1 188.6-33.8 344.4 68.8 15.8 169.1-26.4 271-110.2z\"]\n};\nvar faCentos = {\n prefix: 'fab',\n iconName: 'centos',\n icon: [448, 512, [], \"f789\", \"M289.6 97.5l31.6 31.7-76.3 76.5V97.5zm-162.4 31.7l76.3 76.5V97.5h-44.7zm41.5-41.6h44.7v127.9l10.8 10.8 10.8-10.8V87.6h44.7L224.2 32zm26.2 168.1l-10.8-10.8H55.5v-44.8L0 255.7l55.5 55.6v-44.8h128.6l10.8-10.8zm79.3-20.7h107.9v-44.8l-31.6-31.7zm173.3 20.7L392 200.1v44.8H264.3l-10.8 10.8 10.8 10.8H392v44.8l55.5-55.6zM65.4 176.2l32.5-31.7 90.3 90.5h15.3v-15.3l-90.3-90.5 31.6-31.7H65.4zm316.7-78.7h-78.5l31.6 31.7-90.3 90.5V235h15.3l90.3-90.5 31.6 31.7zM203.5 413.9V305.8l-76.3 76.5 31.6 31.7h44.7zM65.4 235h108.8l-76.3-76.5-32.5 31.7zm316.7 100.2l-31.6 31.7-90.3-90.5h-15.3v15.3l90.3 90.5-31.6 31.7h78.5zm0-58.8H274.2l76.3 76.5 31.6-31.7zm-60.9 105.8l-76.3-76.5v108.1h44.7zM97.9 352.9l76.3-76.5H65.4v44.8zm181.8 70.9H235V295.9l-10.8-10.8-10.8 10.8v127.9h-44.7l55.5 55.6zm-166.5-41.6l90.3-90.5v-15.3h-15.3l-90.3 90.5-32.5-31.7v78.7h79.4z\"]\n};\nvar faChrome = {\n prefix: 'fab',\n iconName: 'chrome',\n icon: [496, 512, [], \"f268\", \"M131.5 217.5L55.1 100.1c47.6-59.2 119-91.8 192-92.1 42.3-.3 85.5 10.5 124.8 33.2 43.4 25.2 76.4 61.4 97.4 103L264 133.4c-58.1-3.4-113.4 29.3-132.5 84.1zm32.9 38.5c0 46.2 37.4 83.6 83.6 83.6s83.6-37.4 83.6-83.6-37.4-83.6-83.6-83.6-83.6 37.3-83.6 83.6zm314.9-89.2L339.6 174c37.9 44.3 38.5 108.2 6.6 157.2L234.1 503.6c46.5 2.5 94.4-7.7 137.8-32.9 107.4-62 150.9-192 107.4-303.9zM133.7 303.6L40.4 120.1C14.9 159.1 0 205.9 0 256c0 124 90.8 226.7 209.5 244.9l63.7-124.8c-57.6 10.8-113.2-20.8-139.5-72.5z\"]\n};\nvar faChromecast = {\n prefix: 'fab',\n iconName: 'chromecast',\n icon: [512, 512, [], \"f838\", \"M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z\"]\n};\nvar faCloudflare = {\n prefix: 'fab',\n iconName: 'cloudflare',\n icon: [640, 512, [], \"e07d\", \"M407.906,319.913l-230.8-2.928a4.58,4.58,0,0,1-3.632-1.926,4.648,4.648,0,0,1-.494-4.147,6.143,6.143,0,0,1,5.361-4.076L411.281,303.9c27.631-1.26,57.546-23.574,68.022-50.784l13.286-34.542a7.944,7.944,0,0,0,.524-2.936,7.735,7.735,0,0,0-.164-1.631A151.91,151.91,0,0,0,201.257,198.4,68.12,68.12,0,0,0,94.2,269.59C41.924,271.106,0,313.728,0,366.12a96.054,96.054,0,0,0,1.029,13.958,4.508,4.508,0,0,0,4.445,3.871l426.1.051c.043,0,.08-.019.122-.02a5.606,5.606,0,0,0,5.271-4l3.273-11.265c3.9-13.4,2.448-25.8-4.1-34.9C430.124,325.423,420.09,320.487,407.906,319.913ZM513.856,221.1c-2.141,0-4.271.062-6.391.164a3.771,3.771,0,0,0-3.324,2.653l-9.077,31.193c-3.9,13.4-2.449,25.786,4.1,34.89,6.02,8.4,16.054,13.323,28.238,13.9l49.2,2.939a4.491,4.491,0,0,1,3.51,1.894,4.64,4.64,0,0,1,.514,4.169,6.153,6.153,0,0,1-5.351,4.075l-51.125,2.939c-27.754,1.27-57.669,23.574-68.145,50.784l-3.695,9.606a2.716,2.716,0,0,0,2.427,3.68c.046,0,.088.017.136.017h175.91a4.69,4.69,0,0,0,4.539-3.37,124.807,124.807,0,0,0,4.682-34C640,277.3,583.524,221.1,513.856,221.1Z\"]\n};\nvar faCloudscale = {\n prefix: 'fab',\n iconName: 'cloudscale',\n icon: [448, 512, [], \"f383\", \"M318.1 154l-9.4 7.6c-22.5-19.3-51.5-33.6-83.3-33.6C153.8 128 96 188.8 96 260.3c0 6.6.4 13.1 1.4 19.4-2-56 41.8-97.4 92.6-97.4 24.2 0 46.2 9.4 62.6 24.7l-25.2 20.4c-8.3-.9-16.8 1.8-23.1 8.1-11.1 11-11.1 28.9 0 40 11.1 11 28.9 11 40 0 6.3-6.3 9-14.9 8.1-23.1l75.2-88.8c6.3-6.5-3.3-15.9-9.5-9.6zm-83.8 111.5c-5.6 5.5-14.6 5.5-20.2 0-5.6-5.6-5.6-14.6 0-20.2s14.6-5.6 20.2 0 5.6 14.7 0 20.2zM224 32C100.5 32 0 132.5 0 256s100.5 224 224 224 224-100.5 224-224S347.5 32 224 32zm0 384c-88.2 0-160-71.8-160-160S135.8 96 224 96s160 71.8 160 160-71.8 160-160 160z\"]\n};\nvar faCloudsmith = {\n prefix: 'fab',\n iconName: 'cloudsmith',\n icon: [332, 512, [], \"f384\", \"M332.5 419.9c0 46.4-37.6 84.1-84 84.1s-84-37.7-84-84.1 37.6-84 84-84 84 37.6 84 84zm-84-243.9c46.4 0 80-37.6 80-84s-33.6-84-80-84-88 37.6-88 84-29.6 76-76 76-84 41.6-84 88 37.6 80 84 80 84-33.6 84-80 33.6-80 80-80z\"]\n};\nvar faCloudversify = {\n prefix: 'fab',\n iconName: 'cloudversify',\n icon: [616, 512, [], \"f385\", \"M148.6 304c8.2 68.5 67.4 115.5 146 111.3 51.2 43.3 136.8 45.8 186.4-5.6 69.2 1.1 118.5-44.6 131.5-99.5 14.8-62.5-18.2-132.5-92.1-155.1-33-88.1-131.4-101.5-186.5-85-57.3 17.3-84.3 53.2-99.3 109.7-7.8 2.7-26.5 8.9-45 24.1 11.7 0 15.2 8.9 15.2 19.5v20.4c0 10.7-8.7 19.5-19.5 19.5h-20.2c-10.7 0-19.5-6-19.5-16.7V240H98.8C95 240 88 244.3 88 251.9v40.4c0 6.4 5.3 11.8 11.7 11.8h48.9zm227.4 8c-10.7 46.3 21.7 72.4 55.3 86.8C324.1 432.6 259.7 348 296 288c-33.2 21.6-33.7 71.2-29.2 92.9-17.9-12.4-53.8-32.4-57.4-79.8-3-39.9 21.5-75.7 57-93.9C297 191.4 369.9 198.7 400 248c-14.1-48-53.8-70.1-101.8-74.8 30.9-30.7 64.4-50.3 114.2-43.7 69.8 9.3 133.2 82.8 67.7 150.5 35-16.3 48.7-54.4 47.5-76.9l10.5 19.6c11.8 22 15.2 47.6 9.4 72-9.2 39-40.6 68.8-79.7 76.5-32.1 6.3-83.1-5.1-91.8-59.2zM128 208H88.2c-8.9 0-16.2-7.3-16.2-16.2v-39.6c0-8.9 7.3-16.2 16.2-16.2H128c8.9 0 16.2 7.3 16.2 16.2v39.6c0 8.9-7.3 16.2-16.2 16.2zM10.1 168C4.5 168 0 163.5 0 157.9v-27.8c0-5.6 4.5-10.1 10.1-10.1h27.7c5.5 0 10.1 4.5 10.1 10.1v27.8c0 5.6-4.5 10.1-10.1 10.1H10.1zM168 142.7v-21.4c0-5.1 4.2-9.3 9.3-9.3h21.4c5.1 0 9.3 4.2 9.3 9.3v21.4c0 5.1-4.2 9.3-9.3 9.3h-21.4c-5.1 0-9.3-4.2-9.3-9.3zM56 235.5v25c0 6.3-5.1 11.5-11.4 11.5H19.4C13.1 272 8 266.8 8 260.5v-25c0-6.3 5.1-11.5 11.4-11.5h25.1c6.4 0 11.5 5.2 11.5 11.5z\"]\n};\nvar faCodepen = {\n prefix: 'fab',\n iconName: 'codepen',\n icon: [512, 512, [], \"f1cb\", \"M502.285 159.704l-234-156c-7.987-4.915-16.511-4.96-24.571 0l-234 156C3.714 163.703 0 170.847 0 177.989v155.999c0 7.143 3.714 14.286 9.715 18.286l234 156.022c7.987 4.915 16.511 4.96 24.571 0l234-156.022c6-3.999 9.715-11.143 9.715-18.286V177.989c-.001-7.142-3.715-14.286-9.716-18.285zM278 63.131l172.286 114.858-76.857 51.429L278 165.703V63.131zm-44 0v102.572l-95.429 63.715-76.857-51.429L234 63.131zM44 219.132l55.143 36.857L44 292.846v-73.714zm190 229.715L61.714 333.989l76.857-51.429L234 346.275v102.572zm22-140.858l-77.715-52 77.715-52 77.715 52-77.715 52zm22 140.858V346.275l95.429-63.715 76.857 51.429L278 448.847zm190-156.001l-55.143-36.857L468 219.132v73.714z\"]\n};\nvar faCodiepie = {\n prefix: 'fab',\n iconName: 'codiepie',\n icon: [472, 512, [], \"f284\", \"M422.5 202.9c30.7 0 33.5 53.1-.3 53.1h-10.8v44.3h-26.6v-97.4h37.7zM472 352.6C429.9 444.5 350.4 504 248 504 111 504 0 393 0 256S111 8 248 8c97.4 0 172.8 53.7 218.2 138.4l-186 108.8L472 352.6zm-38.5 12.5l-60.3-30.7c-27.1 44.3-70.4 71.4-122.4 71.4-82.5 0-149.2-66.7-149.2-148.9 0-82.5 66.7-149.2 149.2-149.2 48.4 0 88.9 23.5 116.9 63.4l59.5-34.6c-40.7-62.6-104.7-100-179.2-100-121.2 0-219.5 98.3-219.5 219.5S126.8 475.5 248 475.5c78.6 0 146.5-42.1 185.5-110.4z\"]\n};\nvar faConfluence = {\n prefix: 'fab',\n iconName: 'confluence',\n icon: [512, 512, [], \"f78d\", \"M2.3 412.2c-4.5 7.6-2.1 17.5 5.5 22.2l105.9 65.2c7.7 4.7 17.7 2.4 22.4-5.3 0-.1.1-.2.1-.2 67.1-112.2 80.5-95.9 280.9-.7 8.1 3.9 17.8.4 21.7-7.7.1-.1.1-.3.2-.4l50.4-114.1c3.6-8.1-.1-17.6-8.1-21.3-22.2-10.4-66.2-31.2-105.9-50.3C127.5 179 44.6 345.3 2.3 412.2zm507.4-312.1c4.5-7.6 2.1-17.5-5.5-22.2L398.4 12.8c-7.5-5-17.6-3.1-22.6 4.4-.2.3-.4.6-.6 1-67.3 112.6-81.1 95.6-280.6.9-8.1-3.9-17.8-.4-21.7 7.7-.1.1-.1.3-.2.4L22.2 141.3c-3.6 8.1.1 17.6 8.1 21.3 22.2 10.4 66.3 31.2 106 50.4 248 120 330.8-45.4 373.4-112.9z\"]\n};\nvar faConnectdevelop = {\n prefix: 'fab',\n iconName: 'connectdevelop',\n icon: [576, 512, [], \"f20e\", \"M550.5 241l-50.089-86.786c1.071-2.142 1.875-4.553 1.875-7.232 0-8.036-6.696-14.733-14.732-15.001l-55.447-95.893c.536-1.607 1.071-3.214 1.071-4.821 0-8.571-6.964-15.268-15.268-15.268-4.821 0-8.839 2.143-11.786 5.625H299.518C296.839 18.143 292.821 16 288 16s-8.839 2.143-11.518 5.625H170.411C167.464 18.143 163.447 16 158.625 16c-8.303 0-15.268 6.696-15.268 15.268 0 1.607.536 3.482 1.072 4.821l-55.983 97.233c-5.356 2.41-9.107 7.5-9.107 13.661 0 .535.268 1.071.268 1.607l-53.304 92.143c-7.232 1.339-12.59 7.5-12.59 15 0 7.232 5.089 13.393 12.054 15l55.179 95.358c-.536 1.607-.804 2.946-.804 4.821 0 7.232 5.089 13.393 12.054 14.732l51.697 89.732c-.536 1.607-1.071 3.482-1.071 5.357 0 8.571 6.964 15.268 15.268 15.268 4.821 0 8.839-2.143 11.518-5.357h106.875C279.161 493.857 283.447 496 288 496s8.839-2.143 11.518-5.357h107.143c2.678 2.946 6.696 4.821 10.982 4.821 8.571 0 15.268-6.964 15.268-15.268 0-1.607-.267-2.946-.803-4.285l51.697-90.268c6.964-1.339 12.054-7.5 12.054-14.732 0-1.607-.268-3.214-.804-4.821l54.911-95.358c6.964-1.339 12.322-7.5 12.322-15-.002-7.232-5.092-13.393-11.788-14.732zM153.535 450.732l-43.66-75.803h43.66v75.803zm0-83.839h-43.66c-.268-1.071-.804-2.142-1.339-3.214l44.999-47.41v50.624zm0-62.411l-50.357 53.304c-1.339-.536-2.679-1.34-4.018-1.607L43.447 259.75c.535-1.339.535-2.679.535-4.018s0-2.41-.268-3.482l51.965-90c2.679-.268 5.357-1.072 7.768-2.679l50.089 51.965v92.946zm0-102.322l-45.803-47.41c1.339-2.143 2.143-4.821 2.143-7.767 0-.268-.268-.804-.268-1.072l43.928-15.804v72.053zm0-80.625l-43.66 15.804 43.66-75.536v59.732zm326.519 39.108l.804 1.339L445.5 329.125l-63.75-67.232 98.036-101.518.268.268zM291.75 355.107l11.518 11.786H280.5l11.25-11.786zm-.268-11.25l-83.303-85.446 79.553-84.375 83.036 87.589-79.286 82.232zm5.357 5.893l79.286-82.232 67.5 71.25-5.892 28.125H313.714l-16.875-17.143zM410.411 44.393c1.071.536 2.142 1.072 3.482 1.34l57.857 100.714v.536c0 2.946.803 5.624 2.143 7.767L376.393 256l-83.035-87.589L410.411 44.393zm-9.107-2.143L287.732 162.518l-57.054-60.268 166.339-60h4.287zm-123.483 0c2.678 2.678 6.16 4.285 10.179 4.285s7.5-1.607 10.179-4.285h75L224.786 95.821 173.893 42.25h103.928zm-116.249 5.625l1.071-2.142a33.834 33.834 0 0 0 2.679-.804l51.161 53.84-54.911 19.821V47.875zm0 79.286l60.803-21.964 59.732 63.214-79.553 84.107-40.982-42.053v-83.304zm0 92.678L198 257.607l-36.428 38.304v-76.072zm0 87.858l42.053-44.464 82.768 85.982-17.143 17.678H161.572v-59.196zm6.964 162.053c-1.607-1.607-3.482-2.678-5.893-3.482l-1.071-1.607v-89.732h99.91l-91.607 94.821h-1.339zm129.911 0c-2.679-2.41-6.428-4.285-10.447-4.285s-7.767 1.875-10.447 4.285h-96.429l91.607-94.821h38.304l91.607 94.821H298.447zm120-11.786l-4.286 7.5c-1.339.268-2.41.803-3.482 1.339l-89.196-91.875h114.376l-17.412 83.036zm12.856-22.232l12.858-60.803h21.964l-34.822 60.803zm34.822-68.839h-20.357l4.553-21.16 17.143 18.214c-.535.803-1.071 1.874-1.339 2.946zm66.161-107.411l-55.447 96.697c-1.339.535-2.679 1.071-4.018 1.874l-20.625-21.964 34.554-163.928 45.803 79.286c-.267 1.339-.803 2.678-.803 4.285 0 1.339.268 2.411.536 3.75z\"]\n};\nvar faContao = {\n prefix: 'fab',\n iconName: 'contao',\n icon: [512, 512, [], \"f26d\", \"M45.4 305c14.4 67.1 26.4 129 68.2 175H34c-18.7 0-34-15.2-34-34V66c0-18.7 15.2-34 34-34h57.7C77.9 44.6 65.6 59.2 54.8 75.6c-45.4 70-27 146.8-9.4 229.4zM478 32h-90.2c21.4 21.4 39.2 49.5 52.7 84.1l-137.1 29.3c-14.9-29-37.8-53.3-82.6-43.9-24.6 5.3-41 19.3-48.3 34.6-8.8 18.7-13.2 39.8 8.2 140.3 21.1 100.2 33.7 117.7 49.5 131.2 12.9 11.1 33.4 17 58.3 11.7 44.5-9.4 55.7-40.7 57.4-73.2l137.4-29.6c3.2 71.5-18.7 125.2-57.4 163.6H478c18.7 0 34-15.2 34-34V66c0-18.8-15.2-34-34-34z\"]\n};\nvar faCottonBureau = {\n prefix: 'fab',\n iconName: 'cotton-bureau',\n icon: [512, 512, [], \"f89e\", \"M474.31 330.41c-23.66 91.85-94.23 144.59-201.9 148.35V429.6c0-48 26.41-74.39 74.39-74.39 62 0 99.2-37.2 99.2-99.21 0-61.37-36.53-98.28-97.38-99.06-33-69.32-146.5-64.65-177.24 0C110.52 157.72 74 194.63 74 256c0 62.13 37.27 99.41 99.4 99.41 48 0 74.55 26.23 74.55 74.39V479c-134.43-5-211.1-85.07-211.1-223 0-141.82 81.35-223.2 223.2-223.2 114.77 0 189.84 53.2 214.69 148.81H500C473.88 71.51 388.22 8 259.82 8 105 8 12 101.19 12 255.82 12 411.14 105.19 504.34 259.82 504c128.27 0 213.87-63.81 239.67-173.59zM357 182.33c41.37 3.45 64.2 29 64.2 73.67 0 48-26.43 74.41-74.4 74.41-28.61 0-49.33-9.59-61.59-27.33 83.06-16.55 75.59-99.67 71.79-120.75zm-81.68 97.36c-2.46-10.34-16.33-87 56.23-97 2.27 10.09 16.52 87.11-56.26 97zM260 132c28.61 0 49 9.67 61.44 27.61-28.36 5.48-49.36 20.59-61.59 43.45-12.23-22.86-33.23-38-61.6-43.45 12.41-17.69 33.27-27.35 61.57-27.35zm-71.52 50.72c73.17 10.57 58.91 86.81 56.49 97-72.41-9.84-59-86.95-56.25-97zM173.2 330.41c-48 0-74.4-26.4-74.4-74.41 0-44.36 22.86-70 64.22-73.67-6.75 37.2-1.38 106.53 71.65 120.75-12.14 17.63-32.84 27.3-61.14 27.3zm53.21 12.39A80.8 80.8 0 0 0 260 309.25c7.77 14.49 19.33 25.54 33.82 33.55a80.28 80.28 0 0 0-33.58 33.83c-8-14.5-19.07-26.23-33.56-33.83z\"]\n};\nvar faCpanel = {\n prefix: 'fab',\n iconName: 'cpanel',\n icon: [640, 512, [], \"f388\", \"M210.3 220.2c-5.6-24.8-26.9-41.2-51-41.2h-37c-7.1 0-12.5 4.5-14.3 10.9L73.1 320l24.7-.1c6.8 0 12.3-4.5 14.2-10.7l25.8-95.7h19.8c8.4 0 16.2 5.6 18.3 14.8 2.5 10.9-5.9 22.6-18.3 22.6h-10.3c-7 0-12.5 4.6-14.3 10.8l-6.4 23.8h32c37.2 0 58.3-36.2 51.7-65.3zm-156.5 28h18.6c6.9 0 12.4-4.4 14.3-10.9l6.2-23.6h-40C30 213.7 9 227.8 1.7 254.8-7 288.6 18.5 320 52 320h12.4l7.1-26.1c1.2-4.4-2.2-8.3-6.4-8.3H53.8c-24.7 0-24.9-37.4 0-37.4zm247.5-34.8h-77.9l-3.5 13.4c-2.4 9.6 4.5 18.5 14.2 18.5h57.5c4 0 2.4 4.3 2.1 5.3l-8.6 31.8c-.4 1.4-.9 5.3-5.5 5.3h-34.9c-5.3 0-5.3-7.9 0-7.9h21.6c6.8 0 12.3-4.6 14.2-10.8l3.5-13.2h-48.4c-39.2 0-43.6 63.8-.7 63.8l57.5.2c11.2 0 20.6-7.2 23.4-17.8l14-51.8c4.8-19.2-9.7-36.8-28.5-36.8zM633.1 179h-18.9c-4.9 0-9.2 3.2-10.4 7.9L568.2 320c20.7 0 39.8-13.8 44.9-34.5l26.5-98.2c1.2-4.3-2-8.3-6.5-8.3zm-236.3 34.7v.1h-48.3l-26.2 98c-1.2 4.4 2.2 8.3 6.4 8.3h18.9c4.8 0 9.2-3 10.4-7.8l17.2-64H395c12.5 0 21.4 11.8 18.1 23.4l-10.6 40c-1.2 4.3 1.9 8.3 6.4 8.3H428c4.6 0 9.1-2.9 10.3-7.8l8.8-33.1c9-33.1-15.9-65.4-50.3-65.4zm98.3 74.6c-3.6 0-6-3.4-5.1-6.7l8-30c.9-3.9 3.7-6 7.8-6h32.9c2.6 0 4.6 2.4 3.9 5.1l-.7 2.6c-.6 2-1.9 3-3.9 3h-21.6c-7 0-12.6 4.6-14.2 10.8l-3.5 13h53.4c10.5 0 20.3-6.6 23.2-17.6l3.2-12c4.9-19.1-9.3-36.8-28.3-36.8h-47.3c-17.9 0-33.8 12-38.6 29.6l-10.8 40c-5 17.7 8.3 36.7 28.3 36.7h66.7c6.8 0 12.3-4.5 14.2-10.7l5.7-21z\"]\n};\nvar faCreativeCommons = {\n prefix: 'fab',\n iconName: 'creative-commons',\n icon: [496, 512, [], \"f25e\", \"M245.83 214.87l-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0l-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z\"]\n};\nvar faCreativeCommonsBy = {\n prefix: 'fab',\n iconName: 'creative-commons-by',\n icon: [496, 512, [], \"f4e7\", \"M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z\"]\n};\nvar faCreativeCommonsNc = {\n prefix: 'fab',\n iconName: 'creative-commons-nc',\n icon: [496, 512, [], \"f4e8\", \"M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-101.8 178.5-104.1l-93.4-41.6c-7.7 37.1-41.2 53-68.2 55.4v38.1h-28.8V368c-27.5-.3-52.6-10.2-75.3-29.7l34.1-34.5c31.7 29.4 86.4 31.8 86.4-2.2 0-6.2-2.2-11.2-6.6-15.1-14.2-6-1.8-.1-219.3-97.4zM248.4 52.3c-38.4 0-112.4 8.7-170.5 93l94.8 42.5c10-31.3 40.4-42.9 63.8-44.3v-38.1h28.8v38.1c22.7 1.2 43.4 8.9 62 23L295 199.7c-42.7-29.9-83.5-8-70 11.1 53.4 24.1 43.8 19.8 93 41.6l127.1 56.7c4.1-17.4 6.2-35.1 6.2-53.1 0-57-19.8-105-59.3-143.9-39.3-39.9-87.2-59.8-143.6-59.8z\"]\n};\nvar faCreativeCommonsNcEu = {\n prefix: 'fab',\n iconName: 'creative-commons-nc-eu',\n icon: [496, 512, [], \"f4e9\", \"M247.7 8C103.6 8 0 124.8 0 256c0 136.3 111.7 248 247.7 248C377.9 504 496 403.1 496 256 496 117 388.4 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-23.2 3.7-45.2 10.9-66l65.7 29.1h-4.7v29.5h23.3c0 6.2-.4 3.2-.4 19.5h-22.8v29.5h27c11.4 67 67.2 101.3 124.6 101.3 26.6 0 50.6-7.9 64.8-15.8l-10-46.1c-8.7 4.6-28.2 10.8-47.3 10.8-28.2 0-58.1-10.9-67.3-50.2h90.3l128.3 56.8c-1.5 2.1-56.2 104.3-178.8 104.3zm-16.7-190.6l-.5-.4.9.4h-.4zm77.2-19.5h3.7v-29.5h-70.3l-28.6-12.6c2.5-5.5 5.4-10.5 8.8-14.3 12.9-15.8 31.1-22.4 51.1-22.4 18.3 0 35.3 5.4 46.1 10l11.6-47.3c-15-6.6-37-12.4-62.3-12.4-39 0-72.2 15.8-95.9 42.3-5.3 6.1-9.8 12.9-13.9 20.1l-81.6-36.1c64.6-96.8 157.7-93.6 170.7-93.6 113 0 203 90.2 203 203.4 0 18.7-2.1 36.3-6.3 52.9l-136.1-60.5z\"]\n};\nvar faCreativeCommonsNcJp = {\n prefix: 'fab',\n iconName: 'creative-commons-nc-jp',\n icon: [496, 512, [], \"f4ea\", \"M247.7 8C103.6 8 0 124.8 0 256c0 136.4 111.8 248 247.7 248C377.9 504 496 403.2 496 256 496 117.2 388.5 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-21.1 3-41.2 9-60.3l127 56.5h-27.9v38.6h58.1l5.7 11.8v18.7h-63.8V360h63.8v56h61.7v-56h64.2v-35.7l81 36.1c-1.5 2.2-57.1 98.3-175.2 98.3zm87.6-137.3h-57.6v-18.7l2.9-5.6 54.7 24.3zm6.5-51.4v-17.8h-38.6l63-116H301l-43.4 96-23-10.2-39.6-85.7h-65.8l27.3 51-81.9-36.5c27.8-44.1 82.6-98.1 173.7-98.1 112.8 0 203 90 203 203.4 0 21-2.7 40.6-7.9 59l-101-45.1z\"]\n};\nvar faCreativeCommonsNd = {\n prefix: 'fab',\n iconName: 'creative-commons-nd',\n icon: [496, 512, [], \"f4eb\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z\"]\n};\nvar faCreativeCommonsPd = {\n prefix: 'fab',\n iconName: 'creative-commons-pd',\n icon: [496, 512, [], \"f4ec\", \"M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm0 449.5c-139.2 0-235.8-138-190.2-267.9l78.8 35.1c-2.1 10.5-3.3 21.5-3.3 32.9 0 99 73.9 126.9 120.4 126.9 22.9 0 53.5-6.7 79.4-29.5L297 311.1c-5.5 6.3-17.6 16.7-36.3 16.7-37.8 0-53.7-39.9-53.9-71.9 230.4 102.6 216.5 96.5 217.9 96.8-34.3 62.4-100.6 104.8-176.7 104.8zm194.2-150l-224-100c18.8-34 54.9-30.7 74.7-11l40.4-41.6c-27.1-23.3-58-27.5-78.1-27.5-47.4 0-80.9 20.5-100.7 51.6l-74.9-33.4c36.1-54.9 98.1-91.2 168.5-91.2 111.1 0 201.5 90.4 201.5 201.5 0 18-2.4 35.4-6.8 52-.3-.1-.4-.2-.6-.4z\"]\n};\nvar faCreativeCommonsPdAlt = {\n prefix: 'fab',\n iconName: 'creative-commons-pd-alt',\n icon: [496, 512, [], \"f4ed\", \"M247.6 8C104.7 8 0 123.1 0 256c0 138.5 113.6 248 247.6 248C377.5 504 496 403.1 496 256 496 118.1 389.4 8 247.6 8zm.8 450.8c-112.5 0-203.7-93-203.7-202.8 0-105.4 85.5-203.3 203.7-203.3 112.6 0 202.9 89.5 202.8 203.3 0 121.7-99.6 202.8-202.8 202.8zM316.7 186h-53.2v137.2h53.2c21.4 0 70-5.1 70-68.6 0-63.4-48.6-68.6-70-68.6zm.8 108.5h-19.9v-79.7l19.4-.1c3.8 0 35-2.1 35 39.9 0 24.6-10.5 39.9-34.5 39.9zM203.7 186h-68.2v137.3h34.6V279h27c54.1 0 57.1-37.5 57.1-46.5 0-31-16.8-46.5-50.5-46.5zm-4.9 67.3h-29.2v-41.6h28.3c30.9 0 28.8 41.6.9 41.6z\"]\n};\nvar faCreativeCommonsRemix = {\n prefix: 'fab',\n iconName: 'creative-commons-remix',\n icon: [496, 512, [], \"f4ee\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm161.7 207.7l4.9 2.2v70c-7.2 3.6-63.4 27.5-67.3 28.8-6.5-1.8-113.7-46.8-137.3-56.2l-64.2 26.6-63.3-27.5v-63.8l59.3-24.8c-.7-.7-.4 5-.4-70.4l67.3-29.7L361 178.5v61.6l49.1 20.3zm-70.4 81.5v-43.8h-.4v-1.8l-113.8-46.5V295l113.8 46.9v-.4l.4.4zm7.5-57.6l39.9-16.4-36.8-15.5-39 16.4 35.9 15.5zm52.3 38.1v-43L355.2 298v43.4l44.3-19z\"]\n};\nvar faCreativeCommonsSa = {\n prefix: 'fab',\n iconName: 'creative-commons-sa',\n icon: [496, 512, [], \"f4ef\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zM137.7 221c13-83.9 80.5-95.7 108.9-95.7 99.8 0 127.5 82.5 127.5 134.2 0 63.6-41 132.9-128.9 132.9-38.9 0-99.1-20-109.4-97h62.5c1.5 30.1 19.6 45.2 54.5 45.2 23.3 0 58-18.2 58-82.8 0-82.5-49.1-80.6-56.7-80.6-33.1 0-51.7 14.6-55.8 43.8h18.2l-49.2 49.2-49-49.2h19.4z\"]\n};\nvar faCreativeCommonsSampling = {\n prefix: 'fab',\n iconName: 'creative-commons-sampling',\n icon: [496, 512, [], \"f4f0\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm3.6 53.2c2.8-.3 11.5 1 11.5 11.5l6.6 107.2 4.9-59.3c0-6 4.7-10.6 10.6-10.6 5.9 0 10.6 4.7 10.6 10.6 0 2.5-.5-5.7 5.7 81.5l5.8-64.2c.3-2.9 2.9-9.3 10.2-9.3 3.8 0 9.9 2.3 10.6 8.9l11.5 96.5 5.3-12.8c1.8-4.4 5.2-6.6 10.2-6.6h58v21.3h-50.9l-18.2 44.3c-3.9 9.9-19.5 9.1-20.8-3.1l-4-31.9-7.5 92.6c-.3 3-3 9.3-10.2 9.3-3 0-9.8-2.1-10.6-9.3 0-1.9.6 5.8-6.2-77.9l-5.3 72.2c-1.1 4.8-4.8 9.3-10.6 9.3-2.9 0-9.8-2-10.6-9.3 0-1.9.5 6.7-5.8-87.7l-5.8 94.8c0 6.3-3.6 12.4-10.6 12.4-5.2 0-10.6-4.1-10.6-12l-5.8-87.7c-5.8 92.5-5.3 84-5.3 85.9-1.1 4.8-4.8 9.3-10.6 9.3-3 0-9.8-2.1-10.6-9.3 0-.7-.4-1.1-.4-2.6l-6.2-88.6L182 348c-.7 6.5-6.7 9.3-10.6 9.3-5.8 0-9.6-4.1-10.6-8.9L149.7 272c-2 4-3.5 8.4-11.1 8.4H87.2v-21.3H132l13.7-27.9c4.4-9.9 18.2-7.2 19.9 2.7l3.1 20.4 8.4-97.9c0-6 4.8-10.6 10.6-10.6.5 0 10.6-.2 10.6 12.4l4.9 69.1 6.6-92.6c0-10.1 9.5-10.6 10.2-10.6.6 0 10.6.7 10.6 10.6l5.3 80.6 6.2-97.9c.1-1.1-.6-10.3 9.9-11.5z\"]\n};\nvar faCreativeCommonsSamplingPlus = {\n prefix: 'fab',\n iconName: 'creative-commons-sampling-plus',\n icon: [496, 512, [], \"f4f1\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm107 205.6c-4.7 0-9 2.8-10.7 7.2l-4 9.5-11-92.8c-1.7-13.9-22-13.4-23.1.4l-4.3 51.4-5.2-68.8c-1.1-14.3-22.1-14.2-23.2 0l-3.5 44.9-5.9-94.3c-.9-14.5-22.3-14.4-23.2 0l-5.1 83.7-4.3-66.3c-.9-14.4-22.2-14.4-23.2 0l-5.3 80.2-4.1-57c-1.1-14.3-22-14.3-23.2-.2l-7.7 89.8-1.8-12.2c-1.7-11.4-17.1-13.6-22-3.3l-13.2 27.7H87.5v23.2h51.3c4.4 0 8.4-2.5 10.4-6.4l10.7 73.1c2 13.5 21.9 13 23.1-.7l3.8-43.6 5.7 78.3c1.1 14.4 22.3 14.2 23.2-.1l4.6-70.4 4.8 73.3c.9 14.4 22.3 14.4 23.2-.1l4.9-80.5 4.5 71.8c.9 14.3 22.1 14.5 23.2.2l4.6-58.6 4.9 64.4c1.1 14.3 22 14.2 23.1.1l6.8-83 2.7 22.3c1.4 11.8 17.7 14.1 22.3 3.1l18-43.4h50.5V258l-58.4.3zm-78 5.2h-21.9v21.9c0 4.1-3.3 7.5-7.5 7.5-4.1 0-7.5-3.3-7.5-7.5v-21.9h-21.9c-4.1 0-7.5-3.3-7.5-7.5 0-4.1 3.4-7.5 7.5-7.5h21.9v-21.9c0-4.1 3.4-7.5 7.5-7.5s7.5 3.3 7.5 7.5v21.9h21.9c4.1 0 7.5 3.3 7.5 7.5 0 4.1-3.4 7.5-7.5 7.5z\"]\n};\nvar faCreativeCommonsShare = {\n prefix: 'fab',\n iconName: 'creative-commons-share',\n icon: [496, 512, [], \"f4f2\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm101 132.4c7.8 0 13.7 6.1 13.7 13.7v182.5c0 7.7-6.1 13.7-13.7 13.7H214.3c-7.7 0-13.7-6-13.7-13.7v-54h-54c-7.8 0-13.7-6-13.7-13.7V131.1c0-8.2 6.6-12.7 12.4-13.7h136.4c7.7 0 13.7 6 13.7 13.7v54h54zM159.9 300.3h40.7V198.9c0-7.4 5.8-12.6 12-13.7h55.8v-40.3H159.9v155.4zm176.2-88.1H227.6v155.4h108.5V212.2z\"]\n};\nvar faCreativeCommonsZero = {\n prefix: 'fab',\n iconName: 'creative-commons-zero',\n icon: [496, 512, [], \"f4f3\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm-.4 60.5c-81.9 0-102.5 77.3-102.5 142.8 0 65.5 20.6 142.8 102.5 142.8S350.5 321.5 350.5 256c0-65.5-20.6-142.8-102.5-142.8zm0 53.9c3.3 0 6.4.5 9.2 1.2 5.9 5.1 8.8 12.1 3.1 21.9l-54.5 100.2c-1.7-12.7-1.9-25.1-1.9-34.4 0-28.8 2-88.9 44.1-88.9zm40.8 46.2c2.9 15.4 3.3 31.4 3.3 42.7 0 28.9-2 88.9-44.1 88.9-13.5 0-32.6-7.7-20.1-26.4l60.9-105.2z\"]\n};\nvar faCriticalRole = {\n prefix: 'fab',\n iconName: 'critical-role',\n icon: [448, 512, [], \"f6c9\", \"M225.82 0c.26.15 216.57 124.51 217.12 124.72 3 1.18 3.7 3.46 3.7 6.56q-.11 125.17 0 250.36a5.88 5.88 0 0 1-3.38 5.78c-21.37 12-207.86 118.29-218.93 124.58h-3C142 466.34 3.08 386.56 2.93 386.48a3.29 3.29 0 0 1-1.88-3.24c0-.87 0-225.94-.05-253.1a5 5 0 0 1 2.93-4.93C27.19 112.11 213.2 6 224.07 0zM215.4 20.42l-.22-.16Q118.06 75.55 21 130.87c0 .12.08.23.13.35l30.86 11.64c-7.71 6-8.32 6-10.65 5.13-.1 0-24.17-9.28-26.8-10v230.43c.88-1.41 64.07-110.91 64.13-111 1.62-2.82 3-1.92 9.12-1.52 1.4.09 1.48.22.78 1.42-41.19 71.33-36.4 63-67.48 116.94-.81 1.4-.61 1.13 1.25 1.13h186.5c1.44 0 1.69-.23 1.7-1.64v-8.88c0-1.34 2.36-.81-18.37-1-7.46-.07-14.14-3.22-21.38-12.7-7.38-9.66-14.62-19.43-21.85-29.21-2.28-3.08-3.45-2.38-16.76-2.38-1.75 0-1.78 0-1.76 1.82.29 26.21.15 25.27 1 32.66.52 4.37 2.16 4.2 9.69 4.81 3.14.26 3.88 4.08.52 4.92-1.57.39-31.6.51-33.67-.1a2.42 2.42 0 0 1 .3-4.73c3.29-.76 6.16.81 6.66-4.44 1.3-13.66 1.17-9 1.1-79.42 0-10.82-.35-12.58-5.36-13.55-1.22-.24-3.54-.16-4.69-.55-2.88-1-2-4.84 1.77-4.85 33.67 0 46.08-1.07 56.06 4.86 7.74 4.61 12 11.48 12.51 20.4.88 14.59-6.51 22.35-15 32.59a1.46 1.46 0 0 0 0 2.22c2.6 3.25 5 6.63 7.71 9.83 27.56 33.23 24.11 30.54 41.28 33.06.89.13 1-.42 1-1.15v-11c0-1 .32-1.43 1.41-1.26a72.37 72.37 0 0 0 23.58-.3c1.08-.15 1.5.2 1.48 1.33 0 .11.88 26.69.87 26.8-.05 1.52.67 1.62 1.89 1.62h186.71Q386.51 304.6 346 234.33c2.26-.66-.4 0 6.69-1.39 2-.39 2.05-.41 3.11 1.44 7.31 12.64 77.31 134 77.37 134.06V138c-1.72.5-103.3 38.72-105.76 39.68-1.08.42-1.55.2-1.91-.88-.63-1.9-1.34-3.76-2.09-5.62-.32-.79-.09-1.13.65-1.39.1 0 95.53-35.85 103-38.77-65.42-37.57-130.56-75-196-112.6l86.82 150.39-.28.33c-9.57-.9-10.46-1.6-11.8-3.94-1-1.69-73.5-127.71-82-142.16-9.1 14.67-83.56 146.21-85.37 146.32-2.93.17-5.88.08-9.25.08q43.25-74.74 86.18-149zm51.93 129.92a37.68 37.68 0 0 0 5.54-.85c1.69-.3 2.53.2 2.6 1.92 0 .11.07 19.06-.86 20.45s-1.88 1.22-2.6-.19c-5-9.69 6.22-9.66-39.12-12-.7 0-1 .23-1 .93 0 .13 3.72 122 3.73 122.11 0 .89.52 1.2 1.21 1.51a83.92 83.92 0 0 1 8.7 4.05c7.31 4.33 11.38 10.84 12.41 19.31 1.44 11.8-2.77 35.77-32.21 37.14-2.75.13-28.26 1.08-34.14-23.25-4.66-19.26 8.26-32.7 19.89-36.4a2.45 2.45 0 0 0 2-2.66c.1-5.63 3-107.1 3.71-121.35.05-1.08-.62-1.16-1.35-1.15-32.35.52-36.75-.34-40.22 8.52-2.42 6.18-4.14 1.32-3.95.23q1.59-9 3.31-18c.4-2.11 1.43-2.61 3.43-1.86 5.59 2.11 6.72 1.7 37.25 1.92 1.73 0 1.78-.08 1.82-1.85.68-27.49.58-22.59 1-29.55a2.69 2.69 0 0 0-1.63-2.8c-5.6-2.91-8.75-7.55-8.9-13.87-.35-14.81 17.72-21.67 27.38-11.51 6.84 7.19 5.8 18.91-2.45 24.15a4.35 4.35 0 0 0-2.22 4.34c0 .59-.11-4.31 1 30.05 0 .9.43 1.12 1.24 1.11.1 0 23-.09 34.47-.37zM68.27 141.7c19.84-4.51 32.68-.56 52.49 1.69 2.76.31 3.74 1.22 3.62 4-.21 5-1.16 22.33-1.24 23.15a2.65 2.65 0 0 1-1.63 2.34c-4.06 1.7-3.61-4.45-4-7.29-3.13-22.43-73.87-32.7-74.63 25.4-.31 23.92 17 53.63 54.08 50.88 27.24-2 19-20.19 24.84-20.47a2.72 2.72 0 0 1 3 3.36c-1.83 10.85-3.42 18.95-3.45 19.15-1.54 9.17-86.7 22.09-93.35-42.06-2.71-25.85 10.44-53.37 40.27-60.15zm80 87.67h-19.49a2.57 2.57 0 0 1-2.66-1.79c2.38-3.75 5.89.92 5.86-6.14-.08-25.75.21-38 .23-40.1 0-3.42-.53-4.65-3.32-4.94-7-.72-3.11-3.37-1.11-3.38 11.84-.1 22.62-.18 30.05.72 8.77 1.07 16.71 12.63 7.93 22.62-2 2.25-4 4.42-6.14 6.73.95 1.15 6.9 8.82 17.28 19.68 2.66 2.78 6.15 3.51 9.88 3.13a2.21 2.21 0 0 0 2.23-2.12c.3-3.42.26 4.73.45-40.58 0-5.65-.34-6.58-3.23-6.83-3.95-.35-4-2.26-.69-3.37l19.09-.09c.32 0 4.49.53 1 3.38 0 .05-.16 0-.24 0-3.61.26-3.94 1-4 4.62-.27 43.93.07 40.23.41 42.82.11.84.27 2.23 5.1 2.14 2.49 0 3.86 3.37 0 3.4-10.37.08-20.74 0-31.11.07-10.67 0-13.47-6.2-24.21-20.82-1.6-2.18-8.31-2.36-8.2-.37.88 16.47 0 17.78 4 17.67 4.75-.1 4.73 3.57.83 3.55zm275-10.15c-1.21 7.13.17 10.38-5.3 10.34-61.55-.42-47.82-.22-50.72-.31a18.4 18.4 0 0 1-3.63-.73c-2.53-.6 1.48-1.23-.38-5.6-1.43-3.37-2.78-6.78-4.11-10.19a1.94 1.94 0 0 0-2-1.44 138 138 0 0 0-14.58.07 2.23 2.23 0 0 0-1.62 1.06c-1.58 3.62-3.07 7.29-4.51 11-1.27 3.23 7.86 1.32 12.19 2.16 3 .57 4.53 3.72.66 3.73H322.9c-2.92 0-3.09-3.15-.74-3.21a6.3 6.3 0 0 0 5.92-3.47c1.5-3 2.8-6 4.11-9.09 18.18-42.14 17.06-40.17 18.42-41.61a1.83 1.83 0 0 1 3 0c2.93 3.34 18.4 44.71 23.62 51.92 2 2.7 5.74 2 6.36 2 3.61.13 4-1.11 4.13-4.29.09-1.87.08 1.17.07-41.24 0-4.46-2.36-3.74-5.55-4.27-.26 0-2.56-.63-.08-3.06.21-.2-.89-.24 21.7-.15 2.32 0 5.32 2.75-1.21 3.45a2.56 2.56 0 0 0-2.66 2.83c-.07 1.63-.19 38.89.29 41.21a3.06 3.06 0 0 0 3.23 2.43c13.25.43 14.92.44 16-3.41 1.67-5.78 4.13-2.52 3.73-.19zm-104.72 64.37c-4.24 0-4.42-3.39-.61-3.41 35.91-.16 28.11.38 37.19-.65 1.68-.19 2.38.24 2.25 1.89-.26 3.39-.64 6.78-1 10.16-.25 2.16-3.2 2.61-3.4-.15-.38-5.31-2.15-4.45-15.63-5.08-1.58-.07-1.64 0-1.64 1.52V304c0 1.65 0 1.6 1.62 1.47 3.12-.25 10.31.34 15.69-1.52.47-.16 3.3-1.79 3.07 1.76 0 .21-.76 10.35-1.18 11.39-.53 1.29-1.88 1.51-2.58.32-1.17-2 0-5.08-3.71-5.3-15.42-.9-12.91-2.55-12.91 6 0 12.25-.76 16.11 3.89 16.24 16.64.48 14.4 0 16.43-5.71.84-2.37 3.5-1.77 3.18.58-.44 3.21-.85 6.43-1.23 9.64 0 .36-.16 2.4-4.66 2.39-37.16-.08-34.54-.19-35.21-.31-2.72-.51-2.2-3 .22-3.45 1.1-.19 4 .54 4.16-2.56 2.44-56.22-.07-51.34-3.91-51.33zm-.41-109.52c2.46.61 3.13 1.76 2.95 4.65-.33 5.3-.34 9-.55 9.69-.66 2.23-3.15 2.12-3.34-.27-.38-4.81-3.05-7.82-7.57-9.15-26.28-7.73-32.81 15.46-27.17 30.22 5.88 15.41 22 15.92 28.86 13.78 5.92-1.85 5.88-6.5 6.91-7.58 1.23-1.3 2.25-1.84 3.12 1.1 0 .1.57 11.89-6 12.75-1.6.21-19.38 3.69-32.68-3.39-21-11.19-16.74-35.47-6.88-45.33 14-14.06 39.91-7.06 42.32-6.47zM289.8 280.14c3.28 0 3.66 3 .16 3.43-2.61.32-5-.42-5 5.46 0 2-.19 29.05.4 41.45.11 2.29 1.15 3.52 3.44 3.65 22 1.21 14.95-1.65 18.79-6.34 1.83-2.24 2.76.84 2.76 1.08.35 13.62-4 12.39-5.19 12.4l-38.16-.19c-1.93-.23-2.06-3-.42-3.38 2-.48 4.94.4 5.13-2.8 1-15.87.57-44.65.34-47.81-.27-3.77-2.8-3.27-5.68-3.71-2.47-.38-2-3.22.34-3.22 1.45-.02 17.97-.03 23.09-.02zm-31.63-57.79c.07 4.08 2.86 3.46 6 3.58 2.61.1 2.53 3.41-.07 3.43-6.48 0-13.7 0-21.61-.06-3.84 0-3.38-3.35 0-3.37 4.49 0 3.24 1.61 3.41-45.54 0-5.08-3.27-3.54-4.72-4.23-2.58-1.23-1.36-3.09.41-3.15 1.29 0 20.19-.41 21.17.21s1.87 1.65-.42 2.86c-1 .52-3.86-.28-4.15 2.47 0 .21-.82 1.63-.07 43.8zm-36.91 274.27a2.93 2.93 0 0 0 3.26 0c17-9.79 182-103.57 197.42-112.51-.14-.43 11.26-.18-181.52-.27-1.22 0-1.57.37-1.53 1.56 0 .1 1.25 44.51 1.22 50.38a28.33 28.33 0 0 1-1.36 7.71c-.55 1.83.38-.5-13.5 32.23-.73 1.72-1 2.21-2-.08-4.19-10.34-8.28-20.72-12.57-31a23.6 23.6 0 0 1-2-10.79c.16-2.46.8-16.12 1.51-48 0-1.95 0-2-2-2h-183c2.58 1.63 178.32 102.57 196 112.76zm-90.9-188.75c0 2.4.36 2.79 2.76 3 11.54 1.17 21 3.74 25.64-7.32 6-14.46 2.66-34.41-12.48-38.84-2-.59-16-2.76-15.94 1.51.05 8.04.01 11.61.02 41.65zm105.75-15.05c0 2.13 1.07 38.68 1.09 39.13.34 9.94-25.58 5.77-25.23-2.59.08-2 1.37-37.42 1.1-39.43-14.1 7.44-14.42 40.21 6.44 48.8a17.9 17.9 0 0 0 22.39-7.07c4.91-7.76 6.84-29.47-5.43-39a2.53 2.53 0 0 1-.36.12zm-12.28-198c-9.83 0-9.73 14.75-.07 14.87s10.1-14.88.07-14.91zm-80.15 103.83c0 1.8.41 2.4 2.17 2.58 13.62 1.39 12.51-11 12.16-13.36-1.69-11.22-14.38-10.2-14.35-7.81.05 4.5-.03 13.68.02 18.59zm212.32 6.4l-6.1-15.84c-2.16 5.48-4.16 10.57-6.23 15.84z\"]\n};\nvar faCss3 = {\n prefix: 'fab',\n iconName: 'css3',\n icon: [512, 512, [], \"f13c\", \"M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z\"]\n};\nvar faCss3Alt = {\n prefix: 'fab',\n iconName: 'css3-alt',\n icon: [384, 512, [], \"f38b\", \"M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z\"]\n};\nvar faCuttlefish = {\n prefix: 'fab',\n iconName: 'cuttlefish',\n icon: [440, 512, [], \"f38c\", \"M344 305.5c-17.5 31.6-57.4 54.5-96 54.5-56.6 0-104-47.4-104-104s47.4-104 104-104c38.6 0 78.5 22.9 96 54.5 13.7-50.9 41.7-93.3 87-117.8C385.7 39.1 320.5 8 248 8 111 8 0 119 0 256s111 248 248 248c72.5 0 137.7-31.1 183-80.7-45.3-24.5-73.3-66.9-87-117.8z\"]\n};\nvar faDAndD = {\n prefix: 'fab',\n iconName: 'd-and-d',\n icon: [576, 512, [], \"f38d\", \"M82.5 98.9c-.6-17.2 2-33.8 12.7-48.2.3 7.4 1.2 14.5 4.2 21.6 5.9-27.5 19.7-49.3 42.3-65.5-1.9 5.9-3.5 11.8-3 17.7 8.7-7.4 18.8-17.8 44.4-22.7 14.7-2.8 29.7-2 42.1 1 38.5 9.3 61 34.3 69.7 72.3 5.3 23.1.7 45-8.3 66.4-5.2 12.4-12 24.4-20.7 35.1-2-1.9-3.9-3.8-5.8-5.6-42.8-40.8-26.8-25.2-37.4-37.4-1.1-1.2-1-2.2-.1-3.6 8.3-13.5 11.8-28.2 10-44-1.1-9.8-4.3-18.9-11.3-26.2-14.5-15.3-39.2-15-53.5.6-11.4 12.5-14.1 27.4-10.9 43.6.2 1.3.4 2.7 0 3.9-3.4 13.7-4.6 27.6-2.5 41.6.1.5.1 1.1.1 1.6 0 .3-.1.5-.2 1.1-21.8-11-36-28.3-43.2-52.2-8.3 17.8-11.1 35.5-6.6 54.1-15.6-15.2-21.3-34.3-22-55.2zm469.6 123.2c-11.6-11.6-25-20.4-40.1-26.6-12.8-5.2-26-7.9-39.9-7.1-10 .6-19.6 3.1-29 6.4-2.5.9-5.1 1.6-7.7 2.2-4.9 1.2-7.3-3.1-4.7-6.8 3.2-4.6 3.4-4.2 15-12 .6-.4 1.2-.8 2.2-1.5h-2.5c-.6 0-1.2.2-1.9.3-19.3 3.3-30.7 15.5-48.9 29.6-10.4 8.1-13.8 3.8-12-.5 1.4-3.5 3.3-6.7 5.1-10 1-1.8 2.3-3.4 3.5-5.1-.2-.2-.5-.3-.7-.5-27 18.3-46.7 42.4-57.7 73.3.3.3.7.6 1 .9.3-.6.5-1.2.9-1.7 10.4-12.1 22.8-21.8 36.6-29.8 18.2-10.6 37.5-18.3 58.7-20.2 4.3-.4 8.7-.1 13.1-.1-1.8.7-3.5.9-5.3 1.1-18.5 2.4-35.5 9-51.5 18.5-30.2 17.9-54.5 42.2-75.1 70.4-.3.4-.4.9-.7 1.3 14.5 5.3 24 17.3 36.1 25.6.2-.1.3-.2.4-.4l1.2-2.7c12.2-26.9 27-52.3 46.7-74.5 16.7-18.8 38-25.3 62.5-20 5.9 1.3 11.4 4.4 17.2 6.8 2.3-1.4 5.1-3.2 8-4.7 8.4-4.3 17.4-7 26.7-9 14.7-3.1 29.5-4.9 44.5-1.3v-.5c-.5-.4-1.2-.8-1.7-1.4zM316.7 397.6c-39.4-33-22.8-19.5-42.7-35.6-.8.9 0-.2-1.9 3-11.2 19.1-25.5 35.3-44 47.6-10.3 6.8-21.5 11.8-34.1 11.8-21.6 0-38.2-9.5-49.4-27.8-12-19.5-13.3-40.7-8.2-62.6 7.8-33.8 30.1-55.2 38.6-64.3-18.7-6.2-33 1.7-46.4 13.9.8-13.9 4.3-26.2 11.8-37.3-24.3 10.6-45.9 25-64.8 43.9-.3-5.8 5.4-43.7 5.6-44.7.3-2.7-.6-5.3-3-7.4-24.2 24.7-44.5 51.8-56.1 84.6 7.4-5.9 14.9-11.4 23.6-16.2-8.3 22.3-19.6 52.8-7.8 101.1 4.6 19 11.9 36.8 24.1 52.3 2.9 3.7 6.3 6.9 9.5 10.3.2-.2.4-.3.6-.5-1.4-7-2.2-14.1-1.5-21.9 2.2 3.2 3.9 6 5.9 8.6 12.6 16 28.7 27.4 47.2 35.6 25 11.3 51.1 13.3 77.9 8.6 54.9-9.7 90.7-48.6 116-98.8 1-1.8.6-2.9-.9-4.2zm172-46.4c-9.5-3.1-22.2-4.2-28.7-2.9 9.9 4 14.1 6.6 18.8 12 12.6 14.4 10.4 34.7-5.4 45.6-11.7 8.1-24.9 10.5-38.9 9.1-1.2-.1-2.3-.4-3-.6 2.8-3.7 6-7 8.1-10.8 9.4-16.8 5.4-42.1-8.7-56.1-2.1-2.1-4.6-3.9-7-5.9-.3 1.3-.1 2.1.1 2.8 4.2 16.6-8.1 32.4-24.8 31.8-7.6-.3-13.9-3.8-19.6-8.5-19.5-16.1-39.1-32.1-58.5-48.3-5.9-4.9-12.5-8.1-20.1-8.7-4.6-.4-9.3-.6-13.9-.9-5.9-.4-8.8-2.8-10.4-8.4-.9-3.4-1.5-6.8-2.2-10.2-1.5-8.1-6.2-13-14.3-14.2-4.4-.7-8.9-1-13.3-1.5-13-1.4-19.8-7.4-22.6-20.3-5 11-1.6 22.4 7.3 29.9 4.5 3.8 9.3 7.3 13.8 11.2 4.6 3.8 7.4 8.7 7.9 14.8.4 4.7.8 9.5 1.8 14.1 2.2 10.6 8.9 18.4 17 25.1 16.5 13.7 33 27.3 49.5 41.1 17.9 15 13.9 32.8 13 56-.9 22.9 12.2 42.9 33.5 51.2 1 .4 2 .6 3.6 1.1-15.7-18.2-10.1-44.1.7-52.3.3 2.2.4 4.3.9 6.4 9.4 44.1 45.4 64.2 85 56.9 16-2.9 30.6-8.9 42.9-19.8 2-1.8 3.7-4.1 5.9-6.5-19.3 4.6-35.8.1-50.9-10.6.7-.3 1.3-.3 1.9-.3 21.3 1.8 40.6-3.4 57-17.4 19.5-16.6 26.6-42.9 17.4-66-8.3-20.1-23.6-32.3-43.8-38.9zM99.4 179.3c-5.3-9.2-13.2-15.6-22.1-21.3 13.7-.5 26.6.2 39.6 3.7-7-12.2-8.5-24.7-5-38.7 5.3 11.9 13.7 20.1 23.6 26.8 19.7 13.2 35.7 19.6 46.7 30.2 3.4 3.3 6.3 7.1 9.6 10.9-.8-2.1-1.4-4.1-2.2-6-5-10.6-13-18.6-22.6-25-1.8-1.2-2.8-2.5-3.4-4.5-3.3-12.5-3-25.1-.7-37.6 1-5.5 2.8-10.9 4.5-16.3.8-2.4 2.3-4.6 4-6.6.6 6.9 0 25.5 19.6 46 10.8 11.3 22.4 21.9 33.9 32.7 9 8.5 18.3 16.7 25.5 26.8 1.1 1.6 2.2 3.3 3.8 4.7-5-13-14.2-24.1-24.2-33.8-9.6-9.3-19.4-18.4-29.2-27.4-3.3-3-4.6-6.7-5.1-10.9-1.2-10.4 0-20.6 4.3-30.2.5-1 1.1-2 1.9-3.3.5 4.2.6 7.9 1.4 11.6 4.8 23.1 20.4 36.3 49.3 63.5 10 9.4 19.3 19.2 25.6 31.6 4.8 9.3 7.3 19 5.7 29.6-.1.6.5 1.7 1.1 2 6.2 2.6 10 6.9 9.7 14.3 7.7-2.6 12.5-8 16.4-14.5 4.2 20.2-9.1 50.3-27.2 58.7.4-4.5 5-23.4-16.5-27.7-6.8-1.3-12.8-1.3-22.9-2.1 4.7-9 10.4-20.6.5-22.4-24.9-4.6-52.8 1.9-57.8 4.6 8.2.4 16.3 1 23.5 3.3-2 6.5-4 12.7-5.8 18.9-1.9 6.5 2.1 14.6 9.3 9.6 1.2-.9 2.3-1.9 3.3-2.7-3.1 17.9-2.9 15.9-2.8 18.3.3 10.2 9.5 7.8 15.7 7.3-2.5 11.8-29.5 27.3-45.4 25.8 7-4.7 12.7-10.3 15.9-17.9-6.5.8-12.9 1.6-19.2 2.4l-.3-.9c4.7-3.4 8-7.8 10.2-13.1 8.7-21.1-3.6-38-25-39.9-9.1-.8-17.8.8-25.9 5.5 6.2-15.6 17.2-26.6 32.6-34.5-15.2-4.3-8.9-2.7-24.6-6.3 14.6-9.3 30.2-13.2 46.5-14.6-5.2-3.2-48.1-3.6-70.2 20.9 7.9 1.4 15.5 2.8 23.2 4.2-23.8 7-44 19.7-62.4 35.6 1.1-4.8 2.7-9.5 3.3-14.3.6-4.5.8-9.2.1-13.6-1.5-9.4-8.9-15.1-19.7-16.3-7.9-.9-15.6.1-23.3 1.3-.9.1-1.7.3-2.9 0 15.8-14.8 36-21.7 53.1-33.5 6-4.5 6.8-8.2 3-14.9zm128.4 26.8c3.3 16 12.6 25.5 23.8 24.3-4.6-11.3-12.1-19.5-23.8-24.3z\"]\n};\nvar faDAndDBeyond = {\n prefix: 'fab',\n iconName: 'd-and-d-beyond',\n icon: [640, 512, [], \"f6ca\", \"M313.8 241.5c13.8 0 21-10.1 24.8-17.9-1-1.1-5-4.2-7.4-6.6-2.4 4.3-8.2 10.7-13.9 10.7-10.2 0-15.4-14.7-3.2-26.6-.5-.2-4.3-1.8-8 2.4 0-3 1-5.1 2.1-6.6-3.5 1.3-9.8 5.6-11.4 7.9.2-5.8 1.6-7.5.6-9l-.2-.2s-8.5 5.6-9.3 14.7c0 0 1.1-1.6 2.1-1.9.6-.3 1.3 0 .6 1.9-.2.6-5.8 15.7 5.1 26-.6-1.6-1.9-7.6 2.4-1.9-.3.1 5.8 7.1 15.7 7.1zm52.4-21.1c0-4-4.9-4.4-5.6-4.5 2 3.9.9 7.5.2 9 2.5-.4 5.4-1.6 5.4-4.5zm10.3 5.2c0-6.4-6.2-11.4-13.5-10.7 8 1.3 5.6 13.8-5 11.4 3.7-2.6 3.2-9.9-1.3-12.5 1.4 4.2-3 8.2-7.4 4.6-2.4-1.9-8-6.6-10.6-8.6-2.4-2.1-5.5-1-6.6-1.8-1.3-1.1-.5-3.8-2.2-5-1.6-.8-3-.3-4.8-1-1.6-.6-2.7-1.9-2.6-3.5-2.5 4.4 3.4 6.3 4.5 8.5 1 1.9-.8 4.8 4 8.5 14.8 11.6 9.1 8 10.4 18.1.6 4.3 4.2 6.7 6.4 7.4-2.1-1.9-2.9-6.4 0-9.3 0 13.9 19.2 13.3 23.1 6.4-2.4 1.1-7-.2-9-1.9 7.7 1 14.2-4.1 14.6-10.6zm-39.4-18.4c2 .8 1.6.7 6.4 4.5 10.2-24.5 21.7-15.7 22-15.5 2.2-1.9 9.8-3.8 13.8-2.7-2.4-2.7-7.5-6.2-13.3-6.2-4.7 0-7.4 2.2-8 1.3-.8-1.4 3.2-3.4 3.2-3.4-5.4.2-9.6 6.7-11.2 5.9-1.1-.5 1.4-3.7 1.4-3.7-5.1 2.9-9.3 9.1-10.2 13 4.6-5.8 13.8-9.8 19.7-9-10.5.5-19.5 9.7-23.8 15.8zm242.5 51.9c-20.7 0-40 1.3-50.3 2.1l7.4 8.2v77.2l-7.4 8.2c10.4.8 30.9 2.1 51.6 2.1 42.1 0 59.1-20.7 59.1-48.9 0-29.3-23.2-48.9-60.4-48.9zm-15.1 75.6v-53.3c30.1-3.3 46.8 3.8 46.8 26.3 0 25.6-21.4 30.2-46.8 27zM301.6 181c-1-3.4-.2-6.9 1.1-9.4 1 3 2.6 6.4 7.5 9-.5-2.4-.2-5.6.5-8-1.4-5.4 2.1-9.9 6.4-9.9 6.9 0 8.5 8.8 4.7 14.4 2.1 3.2 5.5 5.6 7.7 7.8 3.2-3.7 5.5-9.5 5.5-13.8 0-8.2-5.5-15.9-16.7-16.5-20-.9-20.2 16.6-20 18.9.5 5.2 3.4 7.8 3.3 7.5zm-.4 6c-.5 1.8-7 3.7-10.2 6.9 4.8-1 7-.2 7.8 1.8.5 1.4-.2 3.4-.5 5.6 1.6-1.8 7-5.5 11-6.2-1-.3-3.4-.8-4.3-.8 2.9-3.4 9.3-4.5 12.8-3.7-2.2-.2-6.7 1.1-8.5 2.6 1.6.3 3 .6 4.3 1.1-2.1.8-4.8 3.4-5.8 6.1 7-5 13.1 5.2 7 8.2.8.2 2.7 0 3.5-.5-.3 1.1-1.9 3-3 3.4 2.9 0 7-1.9 8.2-4.6 0 0-1.8.6-2.6-.2s.3-4.3.3-4.3c-2.3 2.9-3.4-1.3-1.3-4.2-1-.3-3.5-.6-4.6-.5 3.2-1.1 10.4-1.8 11.2-.3.6 1.1-1 3.4-1 3.4 4-.5 8.3 1.1 6.7 5.1 2.9-1.4 5.5-5.9 4.8-10.4-.3 1-1.6 2.4-2.9 2.7.2-1.4-1-2.2-1.9-2.6 1.7-9.6-14.6-14.2-14.1-23.9-1 1.3-1.8 5-.8 7.1 2.7 3.2 8.7 6.7 10.1 12.2-2.6-6.4-15.1-11.4-14.6-20.2-1.6 1.6-2.6 7.8-1.3 11 2.4 1.4 4.5 3.8 4.8 6.1-2.2-5.1-11.4-6.1-13.9-12.2-.6 2.2-.3 5 1 6.7 0 0-2.2-.8-7-.6 1.7.6 5.1 3.5 4.8 5.2zm25.9 7.4c-2.7 0-3.5-2.1-4.2-4.3 3.3 1.3 4.2 4.3 4.2 4.3zm38.9 3.7l-1-.6c-1.1-1-2.9-1.4-4.7-1.4-2.9 0-5.8 1.3-7.5 3.4-.8.8-1.4 1.8-2.1 2.6v15.7c3.5 2.6 7.1-2.9 3-7.2 1.5.3 4.6 2.7 5.1 3.2 0 0 2.6-.5 5-.5 2.1 0 3.9.3 5.6 1.1V196c-1.1.5-2.2 1-2.7 1.4zM79.9 305.9c17.2-4.6 16.2-18 16.2-19.9 0-20.6-24.1-25-37-25H3l8.3 8.6v29.5H0l11.4 14.6V346L3 354.6c61.7 0 73.8 1.5 86.4-5.9 6.7-4 9.9-9.8 9.9-17.6 0-5.1 2.6-18.8-19.4-25.2zm-41.3-27.5c20 0 29.6-.8 29.6 9.1v3c0 12.1-19 8.8-29.6 8.8zm0 59.2V315c12.2 0 32.7-2.3 32.7 8.8v4.5h.2c0 11.2-12.5 9.3-32.9 9.3zm101.2-19.3l23.1.2v-.2l14.1-21.2h-37.2v-14.9h52.4l-14.1-21v-.2l-73.5.2 7.4 8.2v77.1l-7.4 8.2h81.2l14.1-21.2-60.1.2zm214.7-60.1c-73.9 0-77.5 99.3-.3 99.3 77.9 0 74.1-99.3.3-99.3zm-.3 77.5c-37.4 0-36.9-55.3.2-55.3 36.8.1 38.8 55.3-.2 55.3zm-91.3-8.3l44.1-66.2h-41.7l6.1 7.2-20.5 37.2h-.3l-21-37.2 6.4-7.2h-44.9l44.1 65.8.2 19.4-7.7 8.2h42.6l-7.2-8.2zm-28.4-151.3c1.6 1.3 2.9 2.4 2.9 6.6v38.8c0 4.2-.8 5.3-2.7 6.4-.1.1-7.5 4.5-7.9 4.6h35.1c10 0 17.4-1.5 26-8.6-.6-5 .2-9.5.8-12 0-.2-1.8 1.4-2.7 3.5 0-5.7 1.6-15.4 9.6-20.5-.1 0-3.7-.8-9 1.1 2-3.1 10-7.9 10.4-7.9-8.2-26-38-22.9-32.2-22.9-30.9 0-32.6.3-39.9-4 .1.8.5 8.2 9.6 14.9zm21.5 5.5c4.6 0 23.1-3.3 23.1 17.3 0 20.7-18.4 17.3-23.1 17.3zm228.9 79.6l7 8.3V312h-.3c-5.4-14.4-42.3-41.5-45.2-50.9h-31.6l7.4 8.5v76.9l-7.2 8.3h39l-7.4-8.2v-47.4h.3c3.7 10.6 44.5 42.9 48.5 55.6h21.3v-85.2l7.4-8.3zm-106.7-96.1c-32.2 0-32.8.2-39.9-4 .1.7.5 8.3 9.6 14.9 3.1 2 2.9 4.3 2.9 9.5 1.8-1.1 3.8-2.2 6.1-3-1.1 1.1-2.7 2.7-3.5 4.5 1-1.1 7.5-5.1 14.6-3.5-1.6.3-4 1.1-6.1 2.9.1 0 2.1-1.1 7.5-.3v-4.3c4.7 0 23.1-3.4 23.1 17.3 0 20.5-18.5 17.3-19.7 17.3 5.7 4.4 5.8 12 2.2 16.3h.3c33.4 0 36.7-27.3 36.7-34 0-3.8-1.1-32-33.8-33.6z\"]\n};\nvar faDailymotion = {\n prefix: 'fab',\n iconName: 'dailymotion',\n icon: [448, 512, [], \"e052\", \"M298.93,267a48.4,48.4,0,0,0-24.36-6.21q-19.83,0-33.44,13.27t-13.61,33.42q0,21.16,13.28,34.6t33.43,13.44q20.5,0,34.11-13.78T322,307.47A47.13,47.13,0,0,0,315.9,284,44.13,44.13,0,0,0,298.93,267ZM0,32V480H448V32ZM374.71,405.26h-53.1V381.37h-.67q-15.79,26.2-55.78,26.2-27.56,0-48.89-13.1a88.29,88.29,0,0,1-32.94-35.77q-11.6-22.68-11.59-50.89,0-27.56,11.76-50.22a89.9,89.9,0,0,1,32.93-35.78q21.18-13.09,47.72-13.1a80.87,80.87,0,0,1,29.74,5.21q13.28,5.21,25,17V153l55.79-12.09Z\"]\n};\nvar faDashcube = {\n prefix: 'fab',\n iconName: 'dashcube',\n icon: [448, 512, [], \"f210\", \"M326.6 104H110.4c-51.1 0-91.2 43.3-91.2 93.5V427c0 50.5 40.1 85 91.2 85h227.2c51.1 0 91.2-34.5 91.2-85V0L326.6 104zM153.9 416.5c-17.7 0-32.4-15.1-32.4-32.8V240.8c0-17.7 14.7-32.5 32.4-32.5h140.7c17.7 0 32 14.8 32 32.5v123.5l51.1 52.3H153.9z\"]\n};\nvar faDeezer = {\n prefix: 'fab',\n iconName: 'deezer',\n icon: [576, 512, [], \"e077\", \"M451.46,244.71H576V172H451.46Zm0-173.89v72.67H576V70.82Zm0,275.06H576V273.2H451.46ZM0,447.09H124.54V374.42H0Zm150.47,0H275V374.42H150.47Zm150.52,0H425.53V374.42H301Zm150.47,0H576V374.42H451.46ZM301,345.88H425.53V273.2H301Zm-150.52,0H275V273.2H150.47Zm0-101.17H275V172H150.47Z\"]\n};\nvar faDelicious = {\n prefix: 'fab',\n iconName: 'delicious',\n icon: [448, 512, [], \"f1a5\", \"M446.5 68c-.4-1.5-.9-3-1.4-4.5-.9-2.5-2-4.8-3.3-7.1-1.4-2.4-3-4.8-4.7-6.9-2.1-2.5-4.4-4.8-6.9-6.8-1.1-.9-2.2-1.7-3.3-2.5-1.3-.9-2.6-1.7-4-2.4-1.8-1-3.6-1.8-5.5-2.5-1.7-.7-3.5-1.3-5.4-1.7-3.8-1-7.9-1.5-12-1.5H48C21.5 32 0 53.5 0 80v352c0 4.1.5 8.2 1.5 12 2 7.7 5.8 14.6 11 20.3 1 1.1 2.1 2.2 3.3 3.3 5.7 5.2 12.6 9 20.3 11 3.8 1 7.9 1.5 12 1.5h352c26.5 0 48-21.5 48-48V80c-.1-4.1-.6-8.2-1.6-12zM416 432c0 8.8-7.2 16-16 16H224V256H32V80c0-8.8 7.2-16 16-16h176v192h192z\"]\n};\nvar faDeploydog = {\n prefix: 'fab',\n iconName: 'deploydog',\n icon: [512, 512, [], \"f38e\", \"M382.2 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.6 0-33.2 16.4-33.2 32.6zM188.5 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.7 0-33.2 16.4-33.2 32.6zM448 96c17.5 0 32 14.4 32 32v256c0 17.5-14.4 32-32 32H64c-17.5 0-32-14.4-32-32V128c0-17.5 14.4-32 32-32h384m0-32H64C28.8 64 0 92.8 0 128v256c0 35.2 28.8 64 64 64h384c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z\"]\n};\nvar faDeskpro = {\n prefix: 'fab',\n iconName: 'deskpro',\n icon: [480, 512, [], \"f38f\", \"M205.9 512l31.1-38.4c12.3-.2 25.6-1.4 36.5-6.6 38.9-18.6 38.4-61.9 38.3-63.8-.1-5-.8-4.4-28.9-37.4H362c-.2 50.1-7.3 68.5-10.2 75.7-9.4 23.7-43.9 62.8-95.2 69.4-8.7 1.1-32.8 1.2-50.7 1.1zm200.4-167.7c38.6 0 58.5-13.6 73.7-30.9l-175.5-.3-17.4 31.3 119.2-.1zm-43.6-223.9v168.3h-73.5l-32.7 55.5H250c-52.3 0-58.1-56.5-58.3-58.9-1.2-13.2-21.3-11.6-20.1 1.8 1.4 15.8 8.8 40 26.4 57.1h-91c-25.5 0-110.8-26.8-107-114V16.9C0 .9 9.7.3 15 .1h82c.2 0 .3.1.5.1 4.3-.4 50.1-2.1 50.1 43.7 0 13.3 20.2 13.4 20.2 0 0-18.2-5.5-32.8-15.8-43.7h84.2c108.7-.4 126.5 79.4 126.5 120.2zm-132.5 56l64 29.3c13.3-45.5-42.2-71.7-64-29.3z\"]\n};\nvar faDev = {\n prefix: 'fab',\n iconName: 'dev',\n icon: [448, 512, [], \"f6cc\", \"M120.12 208.29c-3.88-2.9-7.77-4.35-11.65-4.35H91.03v104.47h17.45c3.88 0 7.77-1.45 11.65-4.35 3.88-2.9 5.82-7.25 5.82-13.06v-69.65c-.01-5.8-1.96-10.16-5.83-13.06zM404.1 32H43.9C19.7 32 .06 51.59 0 75.8v360.4C.06 460.41 19.7 480 43.9 480h360.2c24.21 0 43.84-19.59 43.9-43.8V75.8c-.06-24.21-19.7-43.8-43.9-43.8zM154.2 291.19c0 18.81-11.61 47.31-48.36 47.25h-46.4V172.98h47.38c35.44 0 47.36 28.46 47.37 47.28l.01 70.93zm100.68-88.66H201.6v38.42h32.57v29.57H201.6v38.41h53.29v29.57h-62.18c-11.16.29-20.44-8.53-20.72-19.69V193.7c-.27-11.15 8.56-20.41 19.71-20.69h63.19l-.01 29.52zm103.64 115.29c-13.2 30.75-36.85 24.63-47.44 0l-38.53-144.8h32.57l29.71 113.72 29.57-113.72h32.58l-38.46 144.8z\"]\n};\nvar faDeviantart = {\n prefix: 'fab',\n iconName: 'deviantart',\n icon: [320, 512, [], \"f1bd\", \"M320 93.2l-98.2 179.1 7.4 9.5H320v127.7H159.1l-13.5 9.2-43.7 84c-.3 0-8.6 8.6-9.2 9.2H0v-93.2l93.2-179.4-7.4-9.2H0V102.5h156l13.5-9.2 43.7-84c.3 0 8.6-8.6 9.2-9.2H320v93.1z\"]\n};\nvar faDhl = {\n prefix: 'fab',\n iconName: 'dhl',\n icon: [640, 512, [], \"f790\", \"M238 301.2h58.7L319 271h-58.7L238 301.2zM0 282.9v6.4h81.8l4.7-6.4H0zM172.9 271c-8.7 0-6-3.6-4.6-5.5 2.8-3.8 7.6-10.4 10.4-14.1 2.8-3.7 2.8-5.9-2.8-5.9h-51l-41.1 55.8h100.1c33.1 0 51.5-22.5 57.2-30.3h-68.2zm317.5-6.9l39.3-53.4h-62.2l-39.3 53.4h62.2zM95.3 271H0v6.4h90.6l4.7-6.4zm111-26.6c-2.8 3.8-7.5 10.4-10.3 14.2-1.4 2-4.1 5.5 4.6 5.5h45.6s7.3-10 13.5-18.4c8.4-11.4.7-35-29.2-35H112.6l-20.4 27.8h111.4c5.6 0 5.5 2.2 2.7 5.9zM0 301.2h73.1l4.7-6.4H0v6.4zm323 0h58.7L404 271h-58.7c-.1 0-22.3 30.2-22.3 30.2zm222 .1h95v-6.4h-90.3l-4.7 6.4zm22.3-30.3l-4.7 6.4H640V271h-72.7zm-13.5 18.3H640v-6.4h-81.5l-4.7 6.4zm-164.2-78.6l-22.5 30.6h-26.2l22.5-30.6h-58.7l-39.3 53.4H409l39.3-53.4h-58.7zm33.5 60.3s-4.3 5.9-6.4 8.7c-7.4 10-.9 21.6 23.2 21.6h94.3l22.3-30.3H423.1z\"]\n};\nvar faDiaspora = {\n prefix: 'fab',\n iconName: 'diaspora',\n icon: [512, 512, [], \"f791\", \"M251.64 354.55c-1.4 0-88 119.9-88.7 119.9S76.34 414 76 413.25s86.6-125.7 86.6-127.4c0-2.2-129.6-44-137.6-47.1-1.3-.5 31.4-101.8 31.7-102.1.6-.7 144.4 47 145.5 47 .4 0 .9-.6 1-1.3.4-2 1-148.6 1.7-149.6.8-1.2 104.5-.7 105.1-.3 1.5 1 3.5 156.1 6.1 156.1 1.4 0 138.7-47 139.3-46.3.8.9 31.9 102.2 31.5 102.6-.9.9-140.2 47.1-140.6 48.8-.3 1.4 82.8 122.1 82.5 122.9s-85.5 63.5-86.3 63.5c-1-.2-89-125.5-90.9-125.5z\"]\n};\nvar faDigg = {\n prefix: 'fab',\n iconName: 'digg',\n icon: [512, 512, [], \"f1a6\", \"M81.7 172.3H0v174.4h132.7V96h-51v76.3zm0 133.4H50.9v-92.3h30.8v92.3zm297.2-133.4v174.4h81.8v28.5h-81.8V416H512V172.3H378.9zm81.8 133.4h-30.8v-92.3h30.8v92.3zm-235.6 41h82.1v28.5h-82.1V416h133.3V172.3H225.1v174.4zm51.2-133.3h30.8v92.3h-30.8v-92.3zM153.3 96h51.3v51h-51.3V96zm0 76.3h51.3v174.4h-51.3V172.3z\"]\n};\nvar faDigitalOcean = {\n prefix: 'fab',\n iconName: 'digital-ocean',\n icon: [512, 512, [], \"f391\", \"M87 481.8h73.7v-73.6H87zM25.4 346.6v61.6H87v-61.6zm466.2-169.7c-23-74.2-82.4-133.3-156.6-156.6C164.9-32.8 8 93.7 8 255.9h95.8c0-101.8 101-180.5 208.1-141.7 39.7 14.3 71.5 46.1 85.8 85.7 39.1 107-39.7 207.8-141.4 208v.3h-.3V504c162.6 0 288.8-156.8 235.6-327.1zm-235.3 231v-95.3h-95.6v95.6H256v-.3z\"]\n};\nvar faDiscord = {\n prefix: 'fab',\n iconName: 'discord',\n icon: [640, 512, [], \"f392\", \"M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z\"]\n};\nvar faDiscourse = {\n prefix: 'fab',\n iconName: 'discourse',\n icon: [448, 512, [], \"f393\", \"M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z\"]\n};\nvar faDochub = {\n prefix: 'fab',\n iconName: 'dochub',\n icon: [416, 512, [], \"f394\", \"M397.9 160H256V19.6L397.9 160zM304 192v130c0 66.8-36.5 100.1-113.3 100.1H96V84.8h94.7c12 0 23.1.8 33.1 2.5v-84C212.9 1.1 201.4 0 189.2 0H0v512h189.2C329.7 512 400 447.4 400 318.1V192h-96z\"]\n};\nvar faDocker = {\n prefix: 'fab',\n iconName: 'docker',\n icon: [640, 512, [], \"f395\", \"M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z\"]\n};\nvar faDraft2digital = {\n prefix: 'fab',\n iconName: 'draft2digital',\n icon: [480, 512, [], \"f396\", \"M480 398.1l-144-82.2v64.7h-91.3c30.8-35 81.8-95.9 111.8-149.3 35.2-62.6 16.1-123.4-12.8-153.3-4.4-4.6-62.2-62.9-166-41.2-59.1 12.4-89.4 43.4-104.3 67.3-13.1 20.9-17 39.8-18.2 47.7-5.5 33 19.4 67.1 56.7 67.1 31.7 0 57.3-25.7 57.3-57.4 0-27.1-19.7-52.1-48-56.8 1.8-7.3 17.7-21.1 26.3-24.7 41.1-17.3 78 5.2 83.3 33.5 8.3 44.3-37.1 90.4-69.7 127.6C84.5 328.1 18.3 396.8 0 415.9l336-.1V480zM369.9 371l47.1 27.2-47.1 27.2zM134.2 161.4c0 12.4-10 22.4-22.4 22.4s-22.4-10-22.4-22.4 10-22.4 22.4-22.4 22.4 10.1 22.4 22.4zM82.5 380.5c25.6-27.4 97.7-104.7 150.8-169.9 35.1-43.1 40.3-82.4 28.4-112.7-7.4-18.8-17.5-30.2-24.3-35.7 45.3 2.1 68 23.4 82.2 38.3 0 0 42.4 48.2 5.8 113.3-37 65.9-110.9 147.5-128.5 166.7z\"]\n};\nvar faDribbble = {\n prefix: 'fab',\n iconName: 'dribbble',\n icon: [512, 512, [], \"f17d\", \"M256 8C119.252 8 8 119.252 8 256s111.252 248 248 248 248-111.252 248-248S392.748 8 256 8zm163.97 114.366c29.503 36.046 47.369 81.957 47.835 131.955-6.984-1.477-77.018-15.682-147.502-6.818-5.752-14.041-11.181-26.393-18.617-41.614 78.321-31.977 113.818-77.482 118.284-83.523zM396.421 97.87c-3.81 5.427-35.697 48.286-111.021 76.519-34.712-63.776-73.185-116.168-79.04-124.008 67.176-16.193 137.966 1.27 190.061 47.489zm-230.48-33.25c5.585 7.659 43.438 60.116 78.537 122.509-99.087 26.313-186.36 25.934-195.834 25.809C62.38 147.205 106.678 92.573 165.941 64.62zM44.17 256.323c0-2.166.043-4.322.108-6.473 9.268.19 111.92 1.513 217.706-30.146 6.064 11.868 11.857 23.915 17.174 35.949-76.599 21.575-146.194 83.527-180.531 142.306C64.794 360.405 44.17 310.73 44.17 256.323zm81.807 167.113c22.127-45.233 82.178-103.622 167.579-132.756 29.74 77.283 42.039 142.053 45.189 160.638-68.112 29.013-150.015 21.053-212.768-27.882zm248.38 8.489c-2.171-12.886-13.446-74.897-41.152-151.033 66.38-10.626 124.7 6.768 131.947 9.055-9.442 58.941-43.273 109.844-90.795 141.978z\"]\n};\nvar faDribbbleSquare = {\n prefix: 'fab',\n iconName: 'dribbble-square',\n icon: [448, 512, [], \"f397\", \"M90.2 228.2c8.9-42.4 37.4-77.7 75.7-95.7 3.6 4.9 28 38.8 50.7 79-64 17-120.3 16.8-126.4 16.7zM314.6 154c-33.6-29.8-79.3-41.1-122.6-30.6 3.8 5.1 28.6 38.9 51 80 48.6-18.3 69.1-45.9 71.6-49.4zM140.1 364c40.5 31.6 93.3 36.7 137.3 18-2-12-10-53.8-29.2-103.6-55.1 18.8-93.8 56.4-108.1 85.6zm98.8-108.2c-3.4-7.8-7.2-15.5-11.1-23.2C159.6 253 93.4 252.2 87.4 252c0 1.4-.1 2.8-.1 4.2 0 35.1 13.3 67.1 35.1 91.4 22.2-37.9 67.1-77.9 116.5-91.8zm34.9 16.3c17.9 49.1 25.1 89.1 26.5 97.4 30.7-20.7 52.5-53.6 58.6-91.6-4.6-1.5-42.3-12.7-85.1-5.8zm-20.3-48.4c4.8 9.8 8.3 17.8 12 26.8 45.5-5.7 90.7 3.4 95.2 4.4-.3-32.3-11.8-61.9-30.9-85.1-2.9 3.9-25.8 33.2-76.3 53.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 176c0-88.2-71.8-160-160-160S64 167.8 64 256s71.8 160 160 160 160-71.8 160-160z\"]\n};\nvar faDropbox = {\n prefix: 'fab',\n iconName: 'dropbox',\n icon: [528, 512, [], \"f16b\", \"M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z\"]\n};\nvar faDrupal = {\n prefix: 'fab',\n iconName: 'drupal',\n icon: [448, 512, [], \"f1a9\", \"M319.5 114.7c-22.2-14-43.5-19.5-64.7-33.5-13-8.8-31.3-30-46.5-48.3-2.7 29.3-11.5 41.2-22 49.5-21.3 17-34.8 22.2-53.5 32.3C117 123 32 181.5 32 290.5 32 399.7 123.8 480 225.8 480 327.5 480 416 406 416 294c0-112.3-83-171-96.5-179.3zm2.5 325.6c-20.1 20.1-90.1 28.7-116.7 4.2-4.8-4.8.3-12 6.5-12 0 0 17 13.3 51.5 13.3 27 0 46-7.7 54.5-14 6.1-4.6 8.4 4.3 4.2 8.5zm-54.5-52.6c8.7-3.6 29-3.8 36.8 1.3 4.1 2.8 16.1 18.8 6.2 23.7-8.4 4.2-1.2-15.7-26.5-15.7-14.7 0-19.5 5.2-26.7 11-7 6-9.8 8-12.2 4.7-6-8.2 15.9-22.3 22.4-25zM360 405c-15.2-1-45.5-48.8-65-49.5-30.9-.9-104.1 80.7-161.3 42-38.8-26.6-14.6-104.8 51.8-105.2 49.5-.5 83.8 49 108.5 48.5 21.3-.3 61.8-41.8 81.8-41.8 48.7 0 23.3 109.3-15.8 106z\"]\n};\nvar faDyalog = {\n prefix: 'fab',\n iconName: 'dyalog',\n icon: [416, 512, [], \"f399\", \"M0 32v119.2h64V96h107.2C284.6 96 352 176.2 352 255.9 352 332 293.4 416 171.2 416H0v64h171.2C331.9 480 416 367.3 416 255.9c0-58.7-22.1-113.4-62.3-154.3C308.9 56 245.7 32 171.2 32H0z\"]\n};\nvar faEarlybirds = {\n prefix: 'fab',\n iconName: 'earlybirds',\n icon: [480, 512, [], \"f39a\", \"M313.2 47.5c1.2-13 21.3-14 36.6-8.7.9.3 26.2 9.7 19 15.2-27.9-7.4-56.4 18.2-55.6-6.5zm-201 6.9c30.7-8.1 62 20 61.1-7.1-1.3-14.2-23.4-15.3-40.2-9.6-1 .3-28.7 10.5-20.9 16.7zM319.4 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-159.7 0c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm318.5 163.2c-9.9 24-40.7 11-63.9-1.2-13.5 69.1-58.1 111.4-126.3 124.2.3.9-2-.1 24 1 33.6 1.4 63.8-3.1 97.4-8-19.8-13.8-11.4-37.1-9.8-38.1 1.4-.9 14.7 1.7 21.6 11.5 8.6-12.5 28.4-14.8 30.2-13.6 1.6 1.1 6.6 20.9-6.9 34.6 4.7-.9 8.2-1.6 9.8-2.1 2.6-.8 17.7 11.3 3.1 13.3-14.3 2.3-22.6 5.1-47.1 10.8-45.9 10.7-85.9 11.8-117.7 12.8l1 11.6c3.8 18.1-23.4 24.3-27.6 6.2.8 17.9-27.1 21.8-28.4-1l-.5 5.3c-.7 18.4-28.4 17.9-28.3-.6-7.5 13.5-28.1 6.8-26.4-8.5l1.2-12.4c-36.7.9-59.7 3.1-61.8 3.1-20.9 0-20.9-31.6 0-31.6 2.4 0 27.7 1.3 63.2 2.8-61.1-15.5-103.7-55-114.9-118.2-25 12.8-57.5 26.8-68.2.8-10.5-25.4 21.5-42.6 66.8-73.4.7-6.6 1.6-13.3 2.7-19.8-14.4-19.6-11.6-36.3-16.1-60.4-16.8 2.4-23.2-9.1-23.6-23.1.3-7.3 2.1-14.9 2.4-15.4 1.1-1.8 10.1-2 12.7-2.6 6-31.7 50.6-33.2 90.9-34.5 19.7-21.8 45.2-41.5 80.9-48.3C203.3 29 215.2 8.5 216.2 8c1.7-.8 21.2 4.3 26.3 23.2 5.2-8.8 18.3-11.4 19.6-10.7 1.1.6 6.4 15-4.9 25.9 40.3 3.5 72.2 24.7 96 50.7 36.1 1.5 71.8 5.9 77.1 34 2.7.6 11.6.8 12.7 2.6.3.5 2.1 8.1 2.4 15.4-.5 13.9-6.8 25.4-23.6 23.1-3.2 17.3-2.7 32.9-8.7 47.7 2.4 11.7 4 23.8 4.8 36.4 37 25.4 70.3 42.5 60.3 66.9zM207.4 159.9c.9-44-37.9-42.2-78.6-40.3-21.7 1-38.9 1.9-45.5 13.9-11.4 20.9 5.9 92.9 23.2 101.2 9.8 4.7 73.4 7.9 86.3-7.1 8.2-9.4 15-49.4 14.6-67.7zm52 58.3c-4.3-12.4-6-30.1-15.3-32.7-2-.5-9-.5-11 0-10 2.8-10.8 22.1-17 37.2 15.4 0 19.3 9.7 23.7 9.7 4.3 0 6.3-11.3 19.6-14.2zm135.7-84.7c-6.6-12.1-24.8-12.9-46.5-13.9-40.2-1.9-78.2-3.8-77.3 40.3-.5 18.3 5 58.3 13.2 67.8 13 14.9 76.6 11.8 86.3 7.1 15.8-7.6 36.5-78.9 24.3-101.3z\"]\n};\nvar faEbay = {\n prefix: 'fab',\n iconName: 'ebay',\n icon: [640, 512, [], \"f4f4\", \"M606 189.5l-54.8 109.9-54.9-109.9h-37.5l10.9 20.6c-11.5-19-35.9-26-63.3-26-31.8 0-67.9 8.7-71.5 43.1h33.7c1.4-13.8 15.7-21.8 35-21.8 26 0 41 9.6 41 33v3.4c-12.7 0-28 .1-41.7.4-42.4.9-69.6 10-76.7 34.4 1-5.2 1.5-10.6 1.5-16.2 0-52.1-39.7-76.2-75.4-76.2-21.3 0-43 5.5-58.7 24.2v-80.6h-32.1v169.5c0 10.3-.6 22.9-1.1 33.1h31.5c.7-6.3 1.1-12.9 1.1-19.5 13.6 16.6 35.4 24.9 58.7 24.9 36.9 0 64.9-21.9 73.3-54.2-.5 2.8-.7 5.8-.7 9 0 24.1 21.1 45 60.6 45 26.6 0 45.8-5.7 61.9-25.5 0 6.6.3 13.3 1.1 20.2h29.8c-.7-8.2-1-17.5-1-26.8v-65.6c0-9.3-1.7-17.2-4.8-23.8l61.5 116.1-28.5 54.1h35.9L640 189.5zM243.7 313.8c-29.6 0-50.2-21.5-50.2-53.8 0-32.4 20.6-53.8 50.2-53.8 29.8 0 50.2 21.4 50.2 53.8 0 32.3-20.4 53.8-50.2 53.8zm200.9-47.3c0 30-17.9 48.4-51.6 48.4-25.1 0-35-13.4-35-25.8 0-19.1 18.1-24.4 47.2-25.3 13.1-.5 27.6-.6 39.4-.6zm-411.9 1.6h128.8v-8.5c0-51.7-33.1-75.4-78.4-75.4-56.8 0-83 30.8-83 77.6 0 42.5 25.3 74 82.5 74 31.4 0 68-11.7 74.4-46.1h-33.1c-12 35.8-87.7 36.7-91.2-21.6zm95-21.4H33.3c6.9-56.6 92.1-54.7 94.4 0z\"]\n};\nvar faEdge = {\n prefix: 'fab',\n iconName: 'edge',\n icon: [512, 512, [], \"f282\", \"M481.92,134.48C440.87,54.18,352.26,8,255.91,8,137.05,8,37.51,91.68,13.47,203.66c26-46.49,86.22-79.14,149.46-79.14,79.27,0,121.09,48.93,122.25,50.18,22,23.8,33,50.39,33,83.1,0,10.4-5.31,25.82-15.11,38.57-1.57,2-6.39,4.84-6.39,11,0,5.06,3.29,9.92,9.14,14,27.86,19.37,80.37,16.81,80.51,16.81A115.39,115.39,0,0,0,444.94,322a118.92,118.92,0,0,0,58.95-102.44C504.39,176.13,488.39,147.26,481.92,134.48ZM212.77,475.67a154.88,154.88,0,0,1-46.64-45c-32.94-47.42-34.24-95.6-20.1-136A155.5,155.5,0,0,1,203,215.75c59-45.2,94.84-5.65,99.06-1a80,80,0,0,0-4.89-10.14c-9.24-15.93-24-36.41-56.56-53.51-33.72-17.69-70.59-18.59-77.64-18.59-38.71,0-77.9,13-107.53,35.69C35.68,183.3,12.77,208.72,8.6,243c-1.08,12.31-2.75,62.8,23,118.27a248,248,0,0,0,248.3,141.61C241.78,496.26,214.05,476.24,212.77,475.67Zm250.72-98.33a7.76,7.76,0,0,0-7.92-.23,181.66,181.66,0,0,1-20.41,9.12,197.54,197.54,0,0,1-69.55,12.52c-91.67,0-171.52-63.06-171.52-144A61.12,61.12,0,0,1,200.61,228,168.72,168.72,0,0,0,161.85,278c-14.92,29.37-33,88.13,13.33,151.66,6.51,8.91,23,30,56,47.67,23.57,12.65,49,19.61,71.7,19.61,35.14,0,115.43-33.44,163-108.87A7.75,7.75,0,0,0,463.49,377.34Z\"]\n};\nvar faEdgeLegacy = {\n prefix: 'fab',\n iconName: 'edge-legacy',\n icon: [512, 512, [], \"e078\", \"M25.71,228.16l.35-.48c0,.16,0,.32-.07.48Zm460.58,15.51c0-44-7.76-84.46-28.81-122.4C416.5,47.88,343.91,8,258.89,8,119,7.72,40.62,113.21,26.06,227.68c42.42-61.31,117.07-121.38,220.37-125,0,0,109.67,0,99.42,105H170c6.37-37.39,18.55-59,34.34-78.93-75.05,34.9-121.85,96.1-120.75,188.32.83,71.45,50.13,144.84,120.75,172,83.35,31.84,192.77,7.2,240.13-21.33V363.31C363.6,419.8,173.6,424.23,172.21,295.74H486.29V243.67Z\"]\n};\nvar faElementor = {\n prefix: 'fab',\n iconName: 'elementor',\n icon: [448, 512, [], \"f430\", \"M425.6 32H22.4C10 32 0 42 0 54.4v403.2C0 470 10 480 22.4 480h403.2c12.4 0 22.4-10 22.4-22.4V54.4C448 42 438 32 425.6 32M164.3 355.5h-39.8v-199h39.8v199zm159.3 0H204.1v-39.8h119.5v39.8zm0-79.6H204.1v-39.8h119.5v39.8zm0-79.7H204.1v-39.8h119.5v39.8z\"]\n};\nvar faEllo = {\n prefix: 'fab',\n iconName: 'ello',\n icon: [496, 512, [], \"f5f1\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm143.84 285.2C375.31 358.51 315.79 404.8 248 404.8s-127.31-46.29-143.84-111.6c-1.65-7.44 2.48-15.71 9.92-17.36 7.44-1.65 15.71 2.48 17.36 9.92 14.05 52.91 62 90.11 116.56 90.11s102.51-37.2 116.56-90.11c1.65-7.44 9.92-12.4 17.36-9.92 7.44 1.65 12.4 9.92 9.92 17.36z\"]\n};\nvar faEmber = {\n prefix: 'fab',\n iconName: 'ember',\n icon: [640, 512, [], \"f423\", \"M639.9 254.6c-1.1-10.7-10.7-6.8-10.7-6.8s-15.6 12.1-29.3 10.7c-13.7-1.3-9.4-32-9.4-32s3-28.1-5.1-30.4c-8.1-2.4-18 7.3-18 7.3s-12.4 13.7-18.3 31.2l-1.6.5s1.9-30.6-.3-37.6c-1.6-3.5-16.4-3.2-18.8 3s-14.2 49.2-15 67.2c0 0-23.1 19.6-43.3 22.8s-25-9.4-25-9.4 54.8-15.3 52.9-59.1-44.2-27.6-49-24c-4.6 3.5-29.4 18.4-36.6 59.7-.2 1.4-.7 7.5-.7 7.5s-21.2 14.2-33 18c0 0 33-55.6-7.3-80.9-11.4-6.8-21.3-.5-27.2 5.3 13.6-17.3 46.4-64.2 36.9-105.2-5.8-24.4-18-27.1-29.2-23.1-17 6.7-23.5 16.7-23.5 16.7s-22 32-27.1 79.5-12.6 105.1-12.6 105.1-10.5 10.2-20.2 10.7-5.4-28.7-5.4-28.7 7.5-44.6 7-52.1-1.1-11.6-9.9-14.2c-8.9-2.7-18.5 8.6-18.5 8.6s-25.5 38.7-27.7 44.6l-1.3 2.4-1.3-1.6s18-52.7.8-53.5-28.5 18.8-28.5 18.8-19.6 32.8-20.4 36.5l-1.3-1.6s8.1-38.2 6.4-47.6c-1.6-9.4-10.5-7.5-10.5-7.5s-11.3-1.3-14.2 5.9-13.7 55.3-15 70.7c0 0-28.2 20.2-46.8 20.4-18.5.3-16.7-11.8-16.7-11.8s68-23.3 49.4-69.2c-8.3-11.8-18-15.5-31.7-15.3-13.7.3-30.3 8.6-41.3 33.3-5.3 11.8-6.8 23-7.8 31.5 0 0-12.3 2.4-18.8-2.9s-10 0-10 0-11.2 14-.1 18.3 28.1 6.1 28.1 6.1c1.6 7.5 6.2 19.5 19.6 29.7 20.2 15.3 58.8-1.3 58.8-1.3l15.9-8.8s.5 14.6 12.1 16.7 16.4 1 36.5-47.9c11.8-25 12.6-23.6 12.6-23.6l1.3-.3s-9.1 46.8-5.6 59.7C187.7 319.4 203 318 203 318s8.3 2.4 15-21.2 19.6-49.9 19.6-49.9h1.6s-5.6 48.1 3 63.7 30.9 5.3 30.9 5.3 15.6-7.8 18-10.2c0 0 18.5 15.8 44.6 12.9 58.3-11.5 79.1-25.9 79.1-25.9s10 24.4 41.1 26.7c35.5 2.7 54.8-18.6 54.8-18.6s-.3 13.5 12.1 18.6 20.7-22.8 20.7-22.8l20.7-57.2h1.9s1.1 37.3 21.5 43.2 47-13.7 47-13.7 6.4-3.5 5.3-14.3zm-578 5.3c.8-32 21.8-45.9 29-39 7.3 7 4.6 22-9.1 31.4-13.7 9.5-19.9 7.6-19.9 7.6zm272.8-123.8s19.1-49.7 23.6-25.5-40 96.2-40 96.2c.5-16.2 16.4-70.7 16.4-70.7zm22.8 138.4c-12.6 33-43.3 19.6-43.3 19.6s-3.5-11.8 6.4-44.9 33.3-20.2 33.3-20.2 16.2 12.4 3.6 45.5zm84.6-14.6s-3-10.5 8.1-30.6c11-20.2 19.6-9.1 19.6-9.1s9.4 10.2-1.3 25.5-26.4 14.2-26.4 14.2z\"]\n};\nvar faEmpire = {\n prefix: 'fab',\n iconName: 'empire',\n icon: [496, 512, [], \"f1d1\", \"M287.6 54.2c-10.8-2.2-22.1-3.3-33.5-3.6V32.4c78.1 2.2 146.1 44 184.6 106.6l-15.8 9.1c-6.1-9.7-12.7-18.8-20.2-27.1l-18 15.5c-26-29.6-61.4-50.7-101.9-58.4l4.8-23.9zM53.4 322.4l23-7.7c-6.4-18.3-10-38.2-10-58.7s3.3-40.4 9.7-58.7l-22.7-7.7c3.6-10.8 8.3-21.3 13.6-31l-15.8-9.1C34 181 24.1 217.5 24.1 256s10 75 27.1 106.6l15.8-9.1c-5.3-10-9.7-20.3-13.6-31.1zM213.1 434c-40.4-8-75.8-29.1-101.9-58.7l-18 15.8c-7.5-8.6-14.4-17.7-20.2-27.4l-16 9.4c38.5 62.3 106.8 104.3 184.9 106.6v-18.3c-11.3-.3-22.7-1.7-33.5-3.6l4.7-23.8zM93.3 120.9l18 15.5c26-29.6 61.4-50.7 101.9-58.4l-4.7-23.8c10.8-2.2 22.1-3.3 33.5-3.6V32.4C163.9 34.6 95.9 76.4 57.4 139l15.8 9.1c6-9.7 12.6-18.9 20.1-27.2zm309.4 270.2l-18-15.8c-26 29.6-61.4 50.7-101.9 58.7l4.7 23.8c-10.8 1.9-22.1 3.3-33.5 3.6v18.3c78.1-2.2 146.4-44.3 184.9-106.6l-16.1-9.4c-5.7 9.7-12.6 18.8-20.1 27.4zM496 256c0 137-111 248-248 248S0 393 0 256 111 8 248 8s248 111 248 248zm-12.2 0c0-130.1-105.7-235.8-235.8-235.8S12.2 125.9 12.2 256 117.9 491.8 248 491.8 483.8 386.1 483.8 256zm-39-106.6l-15.8 9.1c5.3 9.7 10 20.2 13.6 31l-22.7 7.7c6.4 18.3 9.7 38.2 9.7 58.7s-3.6 40.4-10 58.7l23 7.7c-3.9 10.8-8.3 21-13.6 31l15.8 9.1C462 331 471.9 294.5 471.9 256s-9.9-75-27.1-106.6zm-183 177.7c16.3-3.3 30.4-11.6 40.7-23.5l51.2 44.8c11.9-13.6 21.3-29.3 27.1-46.8l-64.2-22.1c2.5-7.5 3.9-15.2 3.9-23.5s-1.4-16.1-3.9-23.5l64.5-22.1c-6.1-17.4-15.5-33.2-27.4-46.8l-51.2 44.8c-10.2-11.9-24.4-20.5-40.7-23.8l13.3-66.4c-8.6-1.9-17.7-2.8-27.1-2.8-9.4 0-18.5.8-27.1 2.8l13.3 66.4c-16.3 3.3-30.4 11.9-40.7 23.8l-51.2-44.8c-11.9 13.6-21.3 29.3-27.4 46.8l64.5 22.1c-2.5 7.5-3.9 15.2-3.9 23.5s1.4 16.1 3.9 23.5l-64.2 22.1c5.8 17.4 15.2 33.2 27.1 46.8l51.2-44.8c10.2 11.9 24.4 20.2 40.7 23.5l-13.3 66.7c8.6 1.7 17.7 2.8 27.1 2.8 9.4 0 18.5-1.1 27.1-2.8l-13.3-66.7z\"]\n};\nvar faEnvira = {\n prefix: 'fab',\n iconName: 'envira',\n icon: [448, 512, [], \"f299\", \"M0 32c477.6 0 366.6 317.3 367.1 366.3L448 480h-26l-70.4-71.2c-39 4.2-124.4 34.5-214.4-37C47 300.3 52 214.7 0 32zm79.7 46c-49.7-23.5-5.2 9.2-5.2 9.2 45.2 31.2 66 73.7 90.2 119.9 31.5 60.2 79 139.7 144.2 167.7 65 28 34.2 12.5 6-8.5-28.2-21.2-68.2-87-91-130.2-31.7-60-61-118.6-144.2-158.1z\"]\n};\nvar faErlang = {\n prefix: 'fab',\n iconName: 'erlang',\n icon: [640, 512, [], \"f39d\", \"M87.2 53.5H0v405h100.4c-49.7-52.6-78.8-125.3-78.7-212.1-.1-76.7 24-142.7 65.5-192.9zm238.2 9.7c-45.9.1-85.1 33.5-89.2 83.2h169.9c-1.1-49.7-34.5-83.1-80.7-83.2zm230.7-9.6h.3l-.1-.1zm.3 0c31.4 42.7 48.7 97.5 46.2 162.7.5 6 .5 11.7 0 24.1H230.2c-.2 109.7 38.9 194.9 138.6 195.3 68.5-.3 118-51 151.9-106.1l96.4 48.2c-17.4 30.9-36.5 57.8-57.9 80.8H640v-405z\"]\n};\nvar faEthereum = {\n prefix: 'fab',\n iconName: 'ethereum',\n icon: [320, 512, [], \"f42e\", \"M311.9 260.8L160 353.6 8 260.8 160 0l151.9 260.8zM160 383.4L8 290.6 160 512l152-221.4-152 92.8z\"]\n};\nvar faEtsy = {\n prefix: 'fab',\n iconName: 'etsy',\n icon: [384, 512, [], \"f2d7\", \"M384 348c-1.75 10.75-13.75 110-15.5 132-117.879-4.299-219.895-4.743-368.5 0v-25.5c45.457-8.948 60.627-8.019 61-35.25 1.793-72.322 3.524-244.143 0-322-1.029-28.46-12.13-26.765-61-36v-25.5c73.886 2.358 255.933 8.551 362.999-3.75-3.5 38.25-7.75 126.5-7.75 126.5H332C320.947 115.665 313.241 68 277.25 68h-137c-10.25 0-10.75 3.5-10.75 9.75V241.5c58 .5 88.5-2.5 88.5-2.5 29.77-.951 27.56-8.502 40.75-65.251h25.75c-4.407 101.351-3.91 61.829-1.75 160.25H257c-9.155-40.086-9.065-61.045-39.501-61.5 0 0-21.5-2-88-2v139c0 26 14.25 38.25 44.25 38.25H263c63.636 0 66.564-24.996 98.751-99.75H384z\"]\n};\nvar faEvernote = {\n prefix: 'fab',\n iconName: 'evernote',\n icon: [384, 512, [], \"f839\", \"M120.82 132.21c1.6 22.31-17.55 21.59-21.61 21.59-68.93 0-73.64-1-83.58 3.34-.56.22-.74 0-.37-.37L123.79 46.45c.38-.37.6-.22.38.37-4.35 9.99-3.35 15.09-3.35 85.39zm79 308c-14.68-37.08 13-76.93 52.52-76.62 17.49 0 22.6 23.21 7.95 31.42-6.19 3.3-24.95 1.74-25.14 19.2-.05 17.09 19.67 25 31.2 24.89A45.64 45.64 0 0 0 312 393.45v-.08c0-11.63-7.79-47.22-47.54-55.34-7.72-1.54-65-6.35-68.35-50.52-3.74 16.93-17.4 63.49-43.11 69.09-8.74 1.94-69.68 7.64-112.92-36.77 0 0-18.57-15.23-28.23-57.95-3.38-15.75-9.28-39.7-11.14-62 0-18 11.14-30.45 25.07-32.2 81 0 90 2.32 101-7.8 9.82-9.24 7.8-15.5 7.8-102.78 1-8.3 7.79-30.81 53.41-24.14 6 .86 31.91 4.18 37.48 30.64l64.26 11.15c20.43 3.71 70.94 7 80.6 57.94 22.66 121.09 8.91 238.46 7.8 238.46C362.15 485.53 267.06 480 267.06 480c-18.95-.23-54.25-9.4-67.27-39.83zm80.94-204.84c-1 1.92-2.2 6 .85 7 14.09 4.93 39.75 6.84 45.88 5.53 3.11-.25 3.05-4.43 2.48-6.65-3.53-21.85-40.83-26.5-49.24-5.92z\"]\n};\nvar faExpeditedssl = {\n prefix: 'fab',\n iconName: 'expeditedssl',\n icon: [496, 512, [], \"f23e\", \"M248 43.4C130.6 43.4 35.4 138.6 35.4 256S130.6 468.6 248 468.6 460.6 373.4 460.6 256 365.4 43.4 248 43.4zm-97.4 132.9c0-53.7 43.7-97.4 97.4-97.4s97.4 43.7 97.4 97.4v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6c0-82.1-124-82.1-124 0v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6zM389.7 380c0 9.7-8 17.7-17.7 17.7H124c-9.7 0-17.7-8-17.7-17.7V238.3c0-9.7 8-17.7 17.7-17.7h248c9.7 0 17.7 8 17.7 17.7V380zm-248-137.3v132.9c0 2.5-1.9 4.4-4.4 4.4h-8.9c-2.5 0-4.4-1.9-4.4-4.4V242.7c0-2.5 1.9-4.4 4.4-4.4h8.9c2.5 0 4.4 1.9 4.4 4.4zm141.7 48.7c0 13-7.2 24.4-17.7 30.4v31.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-31.6c-10.5-6.1-17.7-17.4-17.7-30.4 0-19.7 15.8-35.4 35.4-35.4s35.5 15.8 35.5 35.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 478.3C121 486.3 17.7 383 17.7 256S121 25.7 248 25.7 478.3 129 478.3 256 375 486.3 248 486.3z\"]\n};\nvar faFacebook = {\n prefix: 'fab',\n iconName: 'facebook',\n icon: [512, 512, [], \"f09a\", \"M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z\"]\n};\nvar faFacebookF = {\n prefix: 'fab',\n iconName: 'facebook-f',\n icon: [320, 512, [], \"f39e\", \"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"]\n};\nvar faFacebookMessenger = {\n prefix: 'fab',\n iconName: 'facebook-messenger',\n icon: [512, 512, [], \"f39f\", \"M256.55 8C116.52 8 8 110.34 8 248.57c0 72.3 29.71 134.78 78.07 177.94 8.35 7.51 6.63 11.86 8.05 58.23A19.92 19.92 0 0 0 122 502.31c52.91-23.3 53.59-25.14 62.56-22.7C337.85 521.8 504 423.7 504 248.57 504 110.34 396.59 8 256.55 8zm149.24 185.13l-73 115.57a37.37 37.37 0 0 1-53.91 9.93l-58.08-43.47a15 15 0 0 0-18 0l-78.37 59.44c-10.46 7.93-24.16-4.6-17.11-15.67l73-115.57a37.36 37.36 0 0 1 53.91-9.93l58.06 43.46a15 15 0 0 0 18 0l78.41-59.38c10.44-7.98 24.14 4.54 17.09 15.62z\"]\n};\nvar faFacebookSquare = {\n prefix: 'fab',\n iconName: 'facebook-square',\n icon: [448, 512, [], \"f082\", \"M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z\"]\n};\nvar faFantasyFlightGames = {\n prefix: 'fab',\n iconName: 'fantasy-flight-games',\n icon: [512, 512, [], \"f6dc\", \"M256 32.86L32.86 256 256 479.14 479.14 256 256 32.86zM88.34 255.83c1.96-2 11.92-12.3 96.49-97.48 41.45-41.75 86.19-43.77 119.77-18.69 24.63 18.4 62.06 58.9 62.15 59 .68.74 1.07 2.86.58 3.38-11.27 11.84-22.68 23.54-33.5 34.69-34.21-32.31-40.52-38.24-48.51-43.95-17.77-12.69-41.4-10.13-56.98 5.1-2.17 2.13-1.79 3.43.12 5.35 2.94 2.95 28.1 28.33 35.09 35.78-11.95 11.6-23.66 22.97-35.69 34.66-12.02-12.54-24.48-25.53-36.54-38.11-21.39 21.09-41.69 41.11-61.85 60.99a42569.01 42569.01 0 0 1-41.13-40.72zm234.82 101.6c-35.49 35.43-78.09 38.14-106.99 20.47-22.08-13.5-39.38-32.08-72.93-66.84 12.05-12.37 23.79-24.42 35.37-36.31 33.02 31.91 37.06 36.01 44.68 42.09 18.48 14.74 42.52 13.67 59.32-1.8 3.68-3.39 3.69-3.64.14-7.24-10.59-10.73-21.19-21.44-31.77-32.18-1.32-1.34-3.03-2.48-.8-4.69 10.79-10.71 21.48-21.52 32.21-32.29.26-.26.65-.38 1.91-1.07 12.37 12.87 24.92 25.92 37.25 38.75 21.01-20.73 41.24-40.68 61.25-60.42 13.68 13.4 27.13 26.58 40.86 40.03-20.17 20.86-81.68 82.71-100.5 101.5zM256 0L0 256l256 256 256-256L256 0zM16 256L256 16l240 240-240 240L16 256z\"]\n};\nvar faFedex = {\n prefix: 'fab',\n iconName: 'fedex',\n icon: [640, 512, [], \"f797\", \"M586 284.5l53.3-59.9h-62.4l-21.7 24.8-22.5-24.8H414v-16h56.1v-48.1H318.9V236h-.5c-9.6-11-21.5-14.8-35.4-14.8-28.4 0-49.8 19.4-57.3 44.9-18-59.4-97.4-57.6-121.9-14v-24.2H49v-26.2h60v-41.1H0V345h49v-77.5h48.9c-1.5 5.7-2.3 11.8-2.3 18.2 0 73.1 102.6 91.4 130.2 23.7h-42c-14.7 20.9-45.8 8.9-45.8-14.6h85.5c3.7 30.5 27.4 56.9 60.1 56.9 14.1 0 27-6.9 34.9-18.6h.5V345h212.2l22.1-25 22.3 25H640l-54-60.5zm-446.7-16.6c6.1-26.3 41.7-25.6 46.5 0h-46.5zm153.4 48.9c-34.6 0-34-62.8 0-62.8 32.6 0 34.5 62.8 0 62.8zm167.8 19.1h-94.4V169.4h95v30.2H405v33.9h55.5v28.1h-56.1v44.7h56.1v29.6zm-45.9-39.8v-24.4h56.1v-44l50.7 57-50.7 57v-45.6h-56.1zm138.6 10.3l-26.1 29.5H489l45.6-51.2-45.6-51.2h39.7l26.6 29.3 25.6-29.3h38.5l-45.4 51 46 51.4h-40.5l-26.3-29.5z\"]\n};\nvar faFedora = {\n prefix: 'fab',\n iconName: 'fedora',\n icon: [448, 512, [], \"f798\", \"M225 32C101.3 31.7.8 131.7.4 255.4L0 425.7a53.6 53.6 0 0 0 53.6 53.9l170.2.4c123.7.3 224.3-99.7 224.6-223.4S348.7 32.3 225 32zm169.8 157.2L333 126.6c2.3-4.7 3.8-9.2 3.8-14.3v-1.6l55.2 56.1a101 101 0 0 1 2.8 22.4zM331 94.3a106.06 106.06 0 0 1 58.5 63.8l-54.3-54.6a26.48 26.48 0 0 0-4.2-9.2zM118.1 247.2a49.66 49.66 0 0 0-7.7 11.4l-8.5-8.5a85.78 85.78 0 0 1 16.2-2.9zM97 251.4l11.8 11.9-.9 8a34.74 34.74 0 0 0 2.4 12.5l-27-27.2a80.6 80.6 0 0 1 13.7-5.2zm-18.2 7.4l38.2 38.4a53.17 53.17 0 0 0-14.1 4.7L67.6 266a107 107 0 0 1 11.2-7.2zm-15.2 9.8l35.3 35.5a67.25 67.25 0 0 0-10.5 8.5L53.5 278a64.33 64.33 0 0 1 10.1-9.4zm-13.3 12.3l34.9 35a56.84 56.84 0 0 0-7.7 11.4l-35.8-35.9c2.8-3.8 5.7-7.2 8.6-10.5zm-11 14.3l36.4 36.6a48.29 48.29 0 0 0-3.6 15.2l-39.5-39.8a99.81 99.81 0 0 1 6.7-12zm-8.8 16.3l41.3 41.8a63.47 63.47 0 0 0 6.7 26.2L25.8 326c1.4-4.9 2.9-9.6 4.7-14.5zm-7.9 43l61.9 62.2a31.24 31.24 0 0 0-3.6 14.3v1.1l-55.4-55.7a88.27 88.27 0 0 1-2.9-21.9zm5.3 30.7l54.3 54.6a28.44 28.44 0 0 0 4.2 9.2 106.32 106.32 0 0 1-58.5-63.8zm-5.3-37a80.69 80.69 0 0 1 2.1-17l72.2 72.5a37.59 37.59 0 0 0-9.9 8.7zm253.3-51.8l-42.6-.1-.1 56c-.2 69.3-64.4 115.8-125.7 102.9-5.7 0-19.9-8.7-19.9-24.2a24.89 24.89 0 0 1 24.5-24.6c6.3 0 6.3 1.6 15.7 1.6a55.91 55.91 0 0 0 56.1-55.9l.1-47c0-4.5-4.5-9-8.9-9l-33.6-.1c-32.6-.1-32.5-49.4.1-49.3l42.6.1.1-56a105.18 105.18 0 0 1 105.6-105 86.35 86.35 0 0 1 20.2 2.3c11.2 1.8 19.9 11.9 19.9 24 0 15.5-14.9 27.8-30.3 23.9-27.4-5.9-65.9 14.4-66 54.9l-.1 47a8.94 8.94 0 0 0 8.9 9l33.6.1c32.5.2 32.4 49.5-.2 49.4zm23.5-.3a35.58 35.58 0 0 0 7.6-11.4l8.5 8.5a102 102 0 0 1-16.1 2.9zm21-4.2L308.6 280l.9-8.1a34.74 34.74 0 0 0-2.4-12.5l27 27.2a74.89 74.89 0 0 1-13.7 5.3zm18-7.4l-38-38.4c4.9-1.1 9.6-2.4 13.7-4.7l36.2 35.9c-3.8 2.5-7.9 5-11.9 7.2zm15.5-9.8l-35.3-35.5a61.06 61.06 0 0 0 10.5-8.5l34.9 35a124.56 124.56 0 0 1-10.1 9zm13.2-12.3l-34.9-35a63.18 63.18 0 0 0 7.7-11.4l35.8 35.9a130.28 130.28 0 0 1-8.6 10.5zm11-14.3l-36.4-36.6a48.29 48.29 0 0 0 3.6-15.2l39.5 39.8a87.72 87.72 0 0 1-6.7 12zm13.5-30.9a140.63 140.63 0 0 1-4.7 14.3L345.6 190a58.19 58.19 0 0 0-7.1-26.2zm1-5.6l-71.9-72.1a32 32 0 0 0 9.9-9.2l64.3 64.7a90.93 90.93 0 0 1-2.3 16.6z\"]\n};\nvar faFigma = {\n prefix: 'fab',\n iconName: 'figma',\n icon: [384, 512, [], \"f799\", \"M14 95.7924C14 42.8877 56.8878 0 109.793 0H274.161C327.066 0 369.954 42.8877 369.954 95.7924C369.954 129.292 352.758 158.776 326.711 175.897C352.758 193.019 369.954 222.502 369.954 256.002C369.954 308.907 327.066 351.795 274.161 351.795H272.081C247.279 351.795 224.678 342.369 207.666 326.904V415.167C207.666 468.777 163.657 512 110.309 512C57.5361 512 14 469.243 14 416.207C14 382.709 31.1945 353.227 57.2392 336.105C31.1945 318.983 14 289.5 14 256.002C14 222.502 31.196 193.019 57.2425 175.897C31.196 158.776 14 129.292 14 95.7924ZM176.288 191.587H109.793C74.2172 191.587 45.3778 220.427 45.3778 256.002C45.3778 291.44 73.9948 320.194 109.381 320.416C109.518 320.415 109.655 320.415 109.793 320.415H176.288V191.587ZM207.666 256.002C207.666 291.577 236.505 320.417 272.081 320.417H274.161C309.737 320.417 338.576 291.577 338.576 256.002C338.576 220.427 309.737 191.587 274.161 191.587H272.081C236.505 191.587 207.666 220.427 207.666 256.002ZM109.793 351.795C109.655 351.795 109.518 351.794 109.381 351.794C73.9948 352.015 45.3778 380.769 45.3778 416.207C45.3778 451.652 74.6025 480.622 110.309 480.622C146.591 480.622 176.288 451.186 176.288 415.167V351.795H109.793ZM109.793 31.3778C74.2172 31.3778 45.3778 60.2173 45.3778 95.7924C45.3778 131.368 74.2172 160.207 109.793 160.207H176.288V31.3778H109.793ZM207.666 160.207H274.161C309.737 160.207 338.576 131.368 338.576 95.7924C338.576 60.2173 309.737 31.3778 274.161 31.3778H207.666V160.207Z\"]\n};\nvar faFirefox = {\n prefix: 'fab',\n iconName: 'firefox',\n icon: [512, 512, [], \"f269\", \"M503.52,241.48c-.12-1.56-.24-3.12-.24-4.68v-.12l-.36-4.68v-.12a245.86,245.86,0,0,0-7.32-41.15c0-.12,0-.12-.12-.24l-1.08-4c-.12-.24-.12-.48-.24-.6-.36-1.2-.72-2.52-1.08-3.72-.12-.24-.12-.6-.24-.84-.36-1.2-.72-2.4-1.08-3.48-.12-.36-.24-.6-.36-1-.36-1.2-.72-2.28-1.2-3.48l-.36-1.08c-.36-1.08-.84-2.28-1.2-3.36a8.27,8.27,0,0,0-.36-1c-.48-1.08-.84-2.28-1.32-3.36-.12-.24-.24-.6-.36-.84-.48-1.2-1-2.28-1.44-3.48,0-.12-.12-.24-.12-.36-1.56-3.84-3.24-7.68-5-11.4l-.36-.72c-.48-1-.84-1.8-1.32-2.64-.24-.48-.48-1.08-.72-1.56-.36-.84-.84-1.56-1.2-2.4-.36-.6-.6-1.2-1-1.8s-.84-1.44-1.2-2.28c-.36-.6-.72-1.32-1.08-1.92s-.84-1.44-1.2-2.16a18.07,18.07,0,0,0-1.2-2c-.36-.72-.84-1.32-1.2-2s-.84-1.32-1.2-2-.84-1.32-1.2-1.92-.84-1.44-1.32-2.16a15.63,15.63,0,0,0-1.2-1.8L463.2,119a15.63,15.63,0,0,0-1.2-1.8c-.48-.72-1.08-1.56-1.56-2.28-.36-.48-.72-1.08-1.08-1.56l-1.8-2.52c-.36-.48-.6-.84-1-1.32-1-1.32-1.8-2.52-2.76-3.72a248.76,248.76,0,0,0-23.51-26.64A186.82,186.82,0,0,0,412,62.46c-4-3.48-8.16-6.72-12.48-9.84a162.49,162.49,0,0,0-24.6-15.12c-2.4-1.32-4.8-2.52-7.2-3.72a254,254,0,0,0-55.43-19.56c-1.92-.36-3.84-.84-5.64-1.2h-.12c-1-.12-1.8-.36-2.76-.48a236.35,236.35,0,0,0-38-4H255.14a234.62,234.62,0,0,0-45.48,5c-33.59,7.08-63.23,21.24-82.91,39-1.08,1-1.92,1.68-2.4,2.16l-.48.48H124l-.12.12.12-.12a.12.12,0,0,0,.12-.12l-.12.12a.42.42,0,0,1,.24-.12c14.64-8.76,34.92-16,49.44-19.56l5.88-1.44c.36-.12.84-.12,1.2-.24,1.68-.36,3.36-.72,5.16-1.08.24,0,.6-.12.84-.12C250.94,20.94,319.34,40.14,367,85.61a171.49,171.49,0,0,1,26.88,32.76c30.36,49.2,27.48,111.11,3.84,147.59-34.44,53-111.35,71.27-159,24.84a84.19,84.19,0,0,1-25.56-59,74.05,74.05,0,0,1,6.24-31c1.68-3.84,13.08-25.67,18.24-24.59-13.08-2.76-37.55,2.64-54.71,28.19-15.36,22.92-14.52,58.2-5,83.28a132.85,132.85,0,0,1-12.12-39.24c-12.24-82.55,43.31-153,94.31-170.51-27.48-24-96.47-22.31-147.71,15.36-29.88,22-51.23,53.16-62.51,90.36,1.68-20.88,9.6-52.08,25.8-83.88-17.16,8.88-39,37-49.8,62.88-15.6,37.43-21,82.19-16.08,124.79.36,3.24.72,6.36,1.08,9.6,19.92,117.11,122,206.38,244.78,206.38C392.77,503.42,504,392.19,504,255,503.88,250.48,503.76,245.92,503.52,241.48Z\"]\n};\nvar faFirefoxBrowser = {\n prefix: 'fab',\n iconName: 'firefox-browser',\n icon: [512, 512, [], \"e007\", \"M189.37,152.86Zm-58.74-29.37C130.79,123.5,130.71,123.5,130.63,123.49Zm351.42,45.35c-10.61-25.5-32.08-53-48.94-61.73,13.72,26.89,21.67,53.88,24.7,74,0,0,0,.14.05.41-27.58-68.75-74.35-96.47-112.55-156.83-1.93-3.05-3.86-6.11-5.74-9.33-1-1.65-1.86-3.34-2.69-5.05A44.88,44.88,0,0,1,333.24.69a.63.63,0,0,0-.55-.66.9.9,0,0,0-.46,0l-.12.07-.18.1.1-.14c-54.23,31.77-76.72,87.38-82.5,122.78a130,130,0,0,0-48.33,12.33,6.25,6.25,0,0,0-3.09,7.75,6.13,6.13,0,0,0,7.79,3.79l.52-.21a117.84,117.84,0,0,1,42.11-11l1.42-.1c2-.12,4-.2,6-.22A122.61,122.61,0,0,1,291,140c.67.2,1.32.42,2,.63,1.89.57,3.76,1.2,5.62,1.87,1.36.5,2.71,1,4.05,1.58,1.09.44,2.18.88,3.25,1.35q2.52,1.13,5,2.35c.75.37,1.5.74,2.25,1.13q2.4,1.26,4.74,2.63,1.51.87,3,1.8a124.89,124.89,0,0,1,42.66,44.13c-13-9.15-36.35-18.19-58.82-14.28,87.74,43.86,64.18,194.9-57.39,189.2a108.43,108.43,0,0,1-31.74-6.12c-2.42-.91-4.8-1.89-7.16-2.93-1.38-.63-2.76-1.27-4.12-2C174.5,346,149.9,316.92,146.83,281.59c0,0,11.25-41.95,80.62-41.95,7.5,0,28.93-20.92,29.33-27-.09-2-42.54-18.87-59.09-35.18-8.85-8.71-13.05-12.91-16.77-16.06a69.58,69.58,0,0,0-6.31-4.77A113.05,113.05,0,0,1,173.92,97c-25.06,11.41-44.55,29.45-58.71,45.37h-.12c-9.67-12.25-9-52.65-8.43-61.08-.12-.53-7.22,3.68-8.15,4.31a178.54,178.54,0,0,0-23.84,20.43A214,214,0,0,0,51.9,133.36l0,0a.08.08,0,0,1,0,0,205.84,205.84,0,0,0-32.73,73.9c-.06.27-2.33,10.21-4,22.48q-.42,2.87-.78,5.74c-.57,3.69-1,7.71-1.44,14,0,.24,0,.48-.05.72-.18,2.71-.34,5.41-.49,8.12,0,.41,0,.82,0,1.24,0,134.7,109.21,243.89,243.92,243.89,120.64,0,220.82-87.58,240.43-202.62.41-3.12.74-6.26,1.11-9.41,4.85-41.83-.54-85.79-15.82-122.55Z\"]\n};\nvar faFirstOrder = {\n prefix: 'fab',\n iconName: 'first-order',\n icon: [448, 512, [], \"f2b0\", \"M12.9 229.2c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4h-.2zM224 96.6c-7.1 0-14.6.6-21.4 1.7l3.7 67.4-22-64c-14.3 3.7-27.7 9.4-40 16.6l29.4 61.4-45.1-50.9c-11.4 8.9-21.7 19.1-30.6 30.9l50.6 45.4-61.1-29.7c-7.1 12.3-12.9 25.7-16.6 40l64.3 22.6-68-4c-.9 7.1-1.4 14.6-1.4 22s.6 14.6 1.4 21.7l67.7-4-64 22.6c3.7 14.3 9.4 27.7 16.6 40.3l61.1-29.7L97.7 352c8.9 11.7 19.1 22.3 30.9 30.9l44.9-50.9-29.5 61.4c12.3 7.4 25.7 13.1 40 16.9l22.3-64.6-4 68c7.1 1.1 14.6 1.7 21.7 1.7 7.4 0 14.6-.6 21.7-1.7l-4-68.6 22.6 65.1c14.3-4 27.7-9.4 40-16.9L274.9 332l44.9 50.9c11.7-8.9 22-19.1 30.6-30.9l-50.6-45.1 61.1 29.4c7.1-12.3 12.9-25.7 16.6-40.3l-64-22.3 67.4 4c1.1-7.1 1.4-14.3 1.4-21.7s-.3-14.9-1.4-22l-67.7 4 64-22.3c-3.7-14.3-9.1-28-16.6-40.3l-60.9 29.7 50.6-45.4c-8.9-11.7-19.1-22-30.6-30.9l-45.1 50.9 29.4-61.1c-12.3-7.4-25.7-13.1-40-16.9L241.7 166l4-67.7c-7.1-1.2-14.3-1.7-21.7-1.7zM443.4 128v256L224 512 4.6 384V128L224 0l219.4 128zm-17.1 10.3L224 20.9 21.7 138.3v235.1L224 491.1l202.3-117.7V138.3zM224 37.1l187.7 109.4v218.9L224 474.9 36.3 365.4V146.6L224 37.1zm0 50.9c-92.3 0-166.9 75.1-166.9 168 0 92.6 74.6 167.7 166.9 167.7 92 0 166.9-75.1 166.9-167.7 0-92.9-74.9-168-166.9-168z\"]\n};\nvar faFirstOrderAlt = {\n prefix: 'fab',\n iconName: 'first-order-alt',\n icon: [496, 512, [], \"f50a\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 488.21C115.34 496.21 7.79 388.66 7.79 256S115.34 15.79 248 15.79 488.21 123.34 488.21 256 380.66 496.21 248 496.21zm0-459.92C126.66 36.29 28.29 134.66 28.29 256S126.66 475.71 248 475.71 467.71 377.34 467.71 256 369.34 36.29 248 36.29zm0 431.22c-116.81 0-211.51-94.69-211.51-211.51S131.19 44.49 248 44.49 459.51 139.19 459.51 256 364.81 467.51 248 467.51zm186.23-162.98a191.613 191.613 0 0 1-20.13 48.69l-74.13-35.88 61.48 54.82a193.515 193.515 0 0 1-37.2 37.29l-54.8-61.57 35.88 74.27a190.944 190.944 0 0 1-48.63 20.23l-27.29-78.47 4.79 82.93c-8.61 1.18-17.4 1.8-26.33 1.8s-17.72-.62-26.33-1.8l4.76-82.46-27.15 78.03a191.365 191.365 0 0 1-48.65-20.2l35.93-74.34-54.87 61.64a193.85 193.85 0 0 1-37.22-37.28l61.59-54.9-74.26 35.93a191.638 191.638 0 0 1-20.14-48.69l77.84-27.11-82.23 4.76c-1.16-8.57-1.78-17.32-1.78-26.21 0-9 .63-17.84 1.82-26.51l82.38 4.77-77.94-27.16a191.726 191.726 0 0 1 20.23-48.67l74.22 35.92-61.52-54.86a193.85 193.85 0 0 1 37.28-37.22l54.76 61.53-35.83-74.17a191.49 191.49 0 0 1 48.65-20.13l26.87 77.25-4.71-81.61c8.61-1.18 17.39-1.8 26.32-1.8s17.71.62 26.32 1.8l-4.74 82.16 27.05-77.76c17.27 4.5 33.6 11.35 48.63 20.17l-35.82 74.12 54.72-61.47a193.13 193.13 0 0 1 37.24 37.23l-61.45 54.77 74.12-35.86a191.515 191.515 0 0 1 20.2 48.65l-77.81 27.1 82.24-4.75c1.19 8.66 1.82 17.5 1.82 26.49 0 8.88-.61 17.63-1.78 26.19l-82.12-4.75 77.72 27.09z\"]\n};\nvar faFirstdraft = {\n prefix: 'fab',\n iconName: 'firstdraft',\n icon: [384, 512, [], \"f3a1\", \"M384 192h-64v128H192v128H0v-25.6h166.4v-128h128v-128H384V192zm-25.6 38.4v128h-128v128H64V512h192V384h128V230.4h-25.6zm25.6 192h-89.6V512H320v-64h64v-25.6zM0 0v384h128V256h128V128h128V0H0z\"]\n};\nvar faFlickr = {\n prefix: 'fab',\n iconName: 'flickr',\n icon: [448, 512, [], \"f16e\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM144.5 319c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5zm159 0c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5z\"]\n};\nvar faFlipboard = {\n prefix: 'fab',\n iconName: 'flipboard',\n icon: [448, 512, [], \"f44d\", \"M0 32v448h448V32H0zm358.4 179.2h-89.6v89.6h-89.6v89.6H89.6V121.6h268.8v89.6z\"]\n};\nvar faFly = {\n prefix: 'fab',\n iconName: 'fly',\n icon: [384, 512, [], \"f417\", \"M197.8 427.8c12.9 11.7 33.7 33.3 33.2 50.7 0 .8-.1 1.6-.1 2.5-1.8 19.8-18.8 31.1-39.1 31-25-.1-39.9-16.8-38.7-35.8 1-16.2 20.5-36.7 32.4-47.6 2.3-2.1 2.7-2.7 5.6-3.6 3.4 0 3.9.3 6.7 2.8zM331.9 67.3c-16.3-25.7-38.6-40.6-63.3-52.1C243.1 4.5 214-.2 192 0c-44.1 0-71.2 13.2-81.1 17.3C57.3 45.2 26.5 87.2 28 158.6c7.1 82.2 97 176 155.8 233.8 1.7 1.6 4.5 4.5 6.2 5.1l3.3.1c2.1-.7 1.8-.5 3.5-2.1 52.3-49.2 140.7-145.8 155.9-215.7 7-39.2 3.1-72.5-20.8-112.5zM186.8 351.9c-28-51.1-65.2-130.7-69.3-189-3.4-47.5 11.4-131.2 69.3-136.7v325.7zM328.7 180c-16.4 56.8-77.3 128-118.9 170.3C237.6 298.4 275 217 277 158.4c1.6-45.9-9.8-105.8-48-131.4 88.8 18.3 115.5 98.1 99.7 153z\"]\n};\nvar faFontAwesome = {\n prefix: 'fab',\n iconName: 'font-awesome',\n icon: [448, 512, [], \"f2b4\", \"M400 32H48A48 48 0 0 0 0 80V432a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V80A48 48 0 0 0 400 32ZM336 312c-31.6 11.2-41.2 16-59.8 16-31.4 0-43.2-16-74.6-16a80 80 0 0 0-25.6 4V284a85.9 85.9 0 0 1 25.6-4c31.2 0 43.2 16 74.6 16 10.2 0 17.8-1.4 27.8-4.6v-96c-10 3.2-17.6 4.6-27.8 4.6-31.4 0-43.2-16-74.6-16-25.4 0-37.4 10.4-57.6 14.4V352a16 16 0 0 1-32 0V160a16 16 0 0 1 32 0v6.4c20.2-4 32.2-14.4 57.6-14.4 31.2 0 43.2 16 74.6 16 18.6 0 28.2-4.8 59.8-16Z\"]\n};\nvar faFontAwesomeAlt = {\n prefix: 'fab',\n iconName: 'font-awesome-alt',\n icon: [448, 512, [], \"f35c\", \"M400 32H48A48 48 0 0 0 0 80V432a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V80A48 48 0 0 0 400 32Zm16 400a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V80A16 16 0 0 1 48 64H400a16 16 0 0 1 16 16ZM201.6 152c-25.4 0-37.4 10.4-57.6 14.4V160a16 16 0 0 0-32 0V352a16 16 0 0 0 32 0V198.4c20.2-4 32.2-14.4 57.6-14.4 31.4 0 43.2 16 74.6 16 10.2 0 17.8-1.4 27.8-4.6v96c-10 3.2-17.6 4.6-27.8 4.6-31.4 0-43.4-16-74.6-16a85.9 85.9 0 0 0-25.6 4v32a80 80 0 0 1 25.6-4c31.4 0 43.2 16 74.6 16 18.6 0 28.2-4.8 59.8-16V152c-31.6 11.2-41.2 16-59.8 16C244.8 168 232.8 152 201.6 152Z\"]\n};\nvar faFontAwesomeFlag = {\n prefix: 'fab',\n iconName: 'font-awesome-flag',\n icon: [448, 512, [], \"f425\", \"M448 48V384c-63 23-82 32-119 32-63 0-87-32-150-32-20 0-36 4-51 8V328c15-4 31-8 51-8 63 0 87 32 150 32 20 0 35-3 55-9V135c-20 6-35 9-55 9-63 0-87-32-150-32-51 0-75 21-115 29V448a31.6 31.6 0 0 1-32 32A31.6 31.6 0 0 1 0 448V64A31.6 31.6 0 0 1 32 32 31.6 31.6 0 0 1 64 64V77c40-8 64-29 115-29 63 0 87 32 150 32C366 80 385 71 448 48Z\"]\n};\nvar faFontAwesomeLogoFull = {\n prefix: 'fab',\n iconName: 'font-awesome-logo-full',\n icon: [3992, 512, [\"Font Awesome\"], \"f4e6\", \"M1209.7 156.5c-57.8 0-102 43.9-102 99.1 0 56 44.6 99.1 102 99.1 57.4 0 102-43.1 102-99.1C1311.7 200.4 1267.5 156.5 1209.7 156.5Zm0 152.7c-35.1 0-51.8-27.4-51.8-53.2 0-25.8 16.7-53.2 51.8-53.2 35.1 0 51.8 27.8 51.8 53.2C1261.1 281.8 1244.8 309.2 1209.7 309.2Zm962.1-136.1c-4.4-10.9-12.3-16.5-23.5-16.5s-19.1 5.6-23.5 16.5l-59.4 145.8c-7.2 17.7 2.8 27.4 4.4 29a24.6 24.6 0 0 0 17.5 6.8c10.8 0 18.7-6 23.1-18.1l4-10.1h67.7l4 10.1c4.8 12.1 12.3 18.1 23.1 18.1a24.6 24.6 0 0 0 17.5-6.8c10-10.1 6.8-22.6 4.4-29Zm-43 113.6 19.1-56 19.1 56Zm-574.5-130.1c-14.3 0-24.7 10.9-24.7 25.4v76.5l-68.5-85.8c-4.4-5.6-11.6-16.1-25.5-16.1-19.1 0-24.3 17.7-24.3 25.4V329.7c0 14.1 10.4 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V252.8l68.9 86.2c4.8 5.6 11.6 16.1 25.5 16.1 19.1 0 23.9-17.3 23.9-25.4V181.9C1579 167.4 1568.6 156.5 1554.3 156.5Zm-554.1 1.6H916.5c-19.9 0-25.1 17.3-25.1 25.4V328.1c0 19.7 16.7 25.4 24.7 25.4 8 0 24.7-5.2 24.7-25.4V285h44.6c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.5-22.1-22.7-22.1H940.8V203.6h59.4c12.8 0 22.7-9.3 22.7-22.6C1022.9 163 1007.3 158.1 1000.2 158.1Zm815.1 0H1691.7c-7.2 0-22.7 4.4-22.7 22.2 0 13.3 10 22.6 22.7 22.6h37V327.7c0 14.1 10.4 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V202.8h37c12.7 0 22.7-9.3 22.7-22.6C1837.9 163 1822.4 158.1 1815.2 158.1Zm1789.5-1.6c-9.6 0-17.5 6-25.1 18.1l-46.6 76.1L3486.4 174.6q-10.8-18.1-25.1-18.1c-19.5 0-24.7 18.1-24.7 25.8V329.7c0 14.1 10.4 25.4 24.7 25.4s24.7-10.9 24.7-25.4V262.8L3510.7 302.7c6.4 10.1 13.9 15.3 22.3 15.3 8.8 0 15.9-5.2 22.3-15.3l24.7-39.9v66.9c0 14.1 10.3 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V182.3C3629.4 174.2 3624.6 156.5 3604.7 156.5Zm248.6 149.8h-65.7V272.9h39.4c11.9 0 21.1-8.9 21.1-20.9 0-12.1-9.2-20.9-21.1-20.9h-39.4V204.8h62.1c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.6-22.2-22.7-22.2h-86.4c-19.9 0-25.1 17.3-25.1 25.4V326.5c0 8.1 5.2 25.4 25.1 25.4h90c12.8 0 22.7-9.3 22.7-22.6C3876 311.2 3860.5 306.3 3853.3 306.3ZM3235 156.5c-57.8 0-102 43.9-102 99.1 0 56 44.6 99.1 102 99.1 57.4 0 102-43.1 102-99.1C3337 200.4 3292.8 156.5 3235 156.5Zm0 152.7c-35.1 0-51.8-27.4-51.8-53.2 0-25.8 16.7-53.2 51.8-53.2 35.1 0 51.8 27.8 51.8 53.2C3286.8 281.8 3270.1 309.2 3235 309.2ZM2550.2 156.5c-11.2 0-19.1 5.6-23.1 16.5l-34.3 94.7-31.5-92.2c-4.4-12.5-12.3-18.9-24.3-18.9-11.9 0-19.9 6.4-24.3 18.9l-31.5 92.2-34.3-95.5q-5.4-15.7-22.7-15.7c-6.8 0-12.3 2.4-17.5 7.3-5.2 5.2-10.8 14.5-4.8 28.6l55.8 145.8c4 11.3 11.6 16.9 23.1 16.9q16.7 0 22.7-16.9l33.5-91.8 33.5 91.8q6 16.9 22.7 16.9c11.2 0 19.1-5.6 23.1-16.9l55.8-145.8c3.6-9.3 4.4-19.3-4.8-28.6A23 23 0 0 0 2550.2 156.5Zm444.2 81-21.9-9.3c-11.9-4.8-16.3-8.5-16.3-15.7q0-12.1 16.7-12.1c12.7 0 19.5 7.7 24.3 10.9 7.2 5.2 18.3 6.8 27.9-2 10.8-10.5 6.8-23.8 1.2-30.6-12.3-14.9-30.3-22.2-53.8-22.2-19.1 0-35.1 5.2-47.4 15.7-12.3 10.5-18.7 24.2-18.7 41.1 0 24.2 15.9 43.5 47.8 57.6l19.5 8.9c15.9 6.8 19.1 9.7 19.1 17.7 0 9.3-6.4 14.1-19.5 14.1-19.1 0-34.7-14.9-36.3-16.1-10.8-7.3-21.5-2-26.3 2.8-6.8 6.4-12.7 20.9 3.2 36.2 6.8 6.4 15.5 11.7 26.7 15.3a94.6 94.6 0 0 0 32.7 5.6c19.9 0 36.7-5.2 49.8-16.1 13.1-10.9 19.5-25.4 19.5-43.5q0-20.5-12-33.8C3022.7 253.2 3010.7 244.3 2994.4 237.5Zm-206.4 68.9h-65.7V272.9h39.4c12 0 21.1-8.9 21.1-20.9 0-12.1-9.2-20.9-21.1-20.9h-39.4V204.8h62.1c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.5-22.2-22.7-22.2h-86.4c-19.9 0-25.1 17.3-25.1 25.4V326.5c0 8.1 5.2 25.4 25.1 25.4h90c12.7 0 22.7-9.3 22.7-22.6C2810.8 311.2 2795.2 306.3 2788 306.3ZM178.3 49.1c-50.5 0-74.4 20.7-114.6 28.7V65A31.8 31.8 0 1 0 0 65V447a31.8 31.8 0 0 0 63.7 0V141.4c40.2-8 64.1-28.7 114.6-28.7 62.5 0 86 31.8 148.4 31.8 20.3 0 35.4-2.8 55.3-9.2v191c-19.9 6.4-35 9.2-55.3 9.2-62.5 0-86.4-31.8-148.4-31.8-20.3 0-36.2 3.6-50.9 8V375.4a159.1 159.1 0 0 1 50.9-8c62.5 0 86 31.8 148.4 31.8 37 0 56.1-9.6 119-31.8V49.1C382.8 71.4 363.7 80.9 326.7 80.9 264.2 80.9 240.4 49.1 178.3 49.1Z\"]\n};\nvar faFonticons = {\n prefix: 'fab',\n iconName: 'fonticons',\n icon: [448, 512, [], \"f280\", \"M0 32v448h448V32zm187 140.9c-18.4 0-19 9.9-19 27.4v23.3c0 2.4-3.5 4.4-.6 4.4h67.4l-11.1 37.3H168v112.9c0 5.8-2 6.7 3.2 7.3l43.5 4.1v25.1H84V389l21.3-2c5.2-.6 6.7-2.3 6.7-7.9V267.7c0-2.3-2.9-2.3-5.8-2.3H84V228h28v-21c0-49.6 26.5-70 77.3-70 34.1 0 64.7 8.2 64.7 52.8l-50.7 6.1c.3-18.7-4.4-23-16.3-23zm74.3 241.8v-25.1l20.4-2.6c5.2-.6 7.6-1.7 7.6-7.3V271.8c0-4.1-2.9-6.7-6.7-7.9l-24.2-6.4 6.7-29.5h80.2v151.7c0 5.8-2.6 6.4 2.9 7.3l15.7 2.6v25.1zm80.8-255.5l9 33.2-7.3 7.3-31.2-16.6-31.2 16.6-7.3-7.3 9-33.2-21.8-24.2 3.5-9.6h27.7l15.5-28h9.3l15.5 28h27.7l3.5 9.6z\"]\n};\nvar faFonticonsFi = {\n prefix: 'fab',\n iconName: 'fonticons-fi',\n icon: [384, 512, [], \"f3a2\", \"M114.4 224h92.4l-15.2 51.2h-76.4V433c0 8-2.8 9.2 4.4 10l59.6 5.6V483H0v-35.2l29.2-2.8c7.2-.8 9.2-3.2 9.2-10.8V278.4c0-3.2-4-3.2-8-3.2H0V224h38.4v-28.8c0-68 36.4-96 106-96 46.8 0 88.8 11.2 88.8 72.4l-69.6 8.4c.4-25.6-6-31.6-22.4-31.6-25.2 0-26 13.6-26 37.6v32c0 3.2-4.8 6-.8 6zM384 483H243.2v-34.4l28-3.6c7.2-.8 10.4-2.4 10.4-10V287c0-5.6-4-9.2-9.2-10.8l-33.2-8.8 9.2-40.4h110v208c0 8-3.6 8.8 4 10l21.6 3.6V483zm-30-347.2l12.4 45.6-10 10-42.8-22.8-42.8 22.8-10-10 12.4-45.6-30-36.4 4.8-10h38L307.2 51H320l21.2 38.4h38l4.8 13.2-30 33.2z\"]\n};\nvar faFortAwesome = {\n prefix: 'fab',\n iconName: 'fort-awesome',\n icon: [512, 512, [], \"f286\", \"M489.2 287.9h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6V146.2c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-6-8-4.6-11.7-4.6v-38c8.3-2 17.1-3.4 25.7-3.4 10.9 0 20.9 4.3 31.4 4.3 4.6 0 27.7-1.1 27.7-8v-60c0-2.6-2-4.6-4.6-4.6-5.1 0-15.1 4.3-24 4.3-9.7 0-20.9-4.3-32.6-4.3-8 0-16 1.1-23.7 2.9v-4.9c5.4-2.6 9.1-8.3 9.1-14.3 0-20.7-31.4-20.8-31.4 0 0 6 3.7 11.7 9.1 14.3v111.7c-3.7 0-11.7-1.4-11.7 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32H128v-32c0-2.6-2-4.6-4.6-4.6H96c-2.6 0-4.6 2-4.6 4.6v178.3H54.8v-32c0-2.6-2-4.6-4.6-4.6H22.8c-2.6 0-4.6 2-4.6 4.6V512h182.9v-96c0-72.6 109.7-72.6 109.7 0v96h182.9V292.5c.1-2.6-1.9-4.6-4.5-4.6zm-288.1-4.5c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64zm146.4 0c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64z\"]\n};\nvar faFortAwesomeAlt = {\n prefix: 'fab',\n iconName: 'fort-awesome-alt',\n icon: [512, 512, [], \"f3a3\", \"M208 237.4h-22.2c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7H208c2.1 0 3.7-1.6 3.7-3.7v-51.7c0-2.1-1.6-3.7-3.7-3.7zm118.2 0H304c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7h22.2c2.1 0 3.7-1.6 3.7-3.7v-51.7c-.1-2.1-1.7-3.7-3.7-3.7zm132-125.1c-2.3-3.2-4.6-6.4-7.1-9.5-9.8-12.5-20.8-24-32.8-34.4-4.5-3.9-9.1-7.6-13.9-11.2-1.6-1.2-3.2-2.3-4.8-3.5C372 34.1 340.3 20 306 13c-16.2-3.3-32.9-5-50-5s-33.9 1.7-50 5c-34.3 7.1-66 21.2-93.3 40.8-1.6 1.1-3.2 2.3-4.8 3.5-4.8 3.6-9.4 7.3-13.9 11.2-3 2.6-5.9 5.3-8.8 8s-5.7 5.5-8.4 8.4c-5.5 5.7-10.7 11.8-15.6 18-2.4 3.1-4.8 6.3-7.1 9.5C25.2 153 8.3 202.5 8.3 256c0 2 .1 4 .1 6 .1.7.1 1.3.1 2 .1 1.3.1 2.7.2 4 0 .8.1 1.5.1 2.3 0 1.3.1 2.5.2 3.7.1.8.1 1.6.2 2.4.1 1.1.2 2.3.3 3.5 0 .8.1 1.6.2 2.4.1 1.2.3 2.4.4 3.6.1.8.2 1.5.3 2.3.1 1.3.3 2.6.5 3.9.1.6.2 1.3.3 1.9l.9 5.7c.1.6.2 1.1.3 1.7.3 1.3.5 2.7.8 4 .2.8.3 1.6.5 2.4.2 1 .5 2.1.7 3.2.2.9.4 1.7.6 2.6.2 1 .4 2 .7 3 .2.9.5 1.8.7 2.7.3 1 .5 1.9.8 2.9.3.9.5 1.8.8 2.7.2.9.5 1.9.8 2.8s.5 1.8.8 2.7c.3 1 .6 1.9.9 2.8.6 1.6 1.1 3.3 1.7 4.9.4 1 .7 1.9 1 2.8.3 1 .7 2 1.1 3 .3.8.6 1.5.9 2.3l1.2 3c.3.7.6 1.5.9 2.2.4 1 .9 2 1.3 3l.9 2.1c.5 1 .9 2 1.4 3 .3.7.6 1.3.9 2 .5 1 1 2.1 1.5 3.1.2.6.5 1.1.8 1.7.6 1.1 1.1 2.2 1.7 3.3.1.2.2.3.3.5 2.2 4.1 4.4 8.2 6.8 12.2.2.4.5.8.7 1.2.7 1.1 1.3 2.2 2 3.3.3.5.6.9.9 1.4.6 1.1 1.3 2.1 2 3.2.3.5.6.9.9 1.4.7 1.1 1.4 2.1 2.1 3.2.2.4.5.8.8 1.2.7 1.1 1.5 2.2 2.3 3.3.2.2.3.5.5.7 37.5 51.7 94.4 88.5 160 99.4.9.1 1.7.3 2.6.4 1 .2 2.1.4 3.1.5s1.9.3 2.8.4c1 .2 2 .3 3 .4.9.1 1.9.2 2.9.3s1.9.2 2.9.3 2.1.2 3.1.3c.9.1 1.8.1 2.7.2 1.1.1 2.3.1 3.4.2.8 0 1.7.1 2.5.1 1.3 0 2.6.1 3.9.1.7.1 1.4.1 2.1.1 2 .1 4 .1 6 .1s4-.1 6-.1c.7 0 1.4-.1 2.1-.1 1.3 0 2.6 0 3.9-.1.8 0 1.7-.1 2.5-.1 1.1-.1 2.3-.1 3.4-.2.9 0 1.8-.1 2.7-.2 1-.1 2.1-.2 3.1-.3s1.9-.2 2.9-.3c.9-.1 1.9-.2 2.9-.3s2-.3 3-.4 1.9-.3 2.8-.4c1-.2 2.1-.3 3.1-.5.9-.1 1.7-.3 2.6-.4 65.6-11 122.5-47.7 160.1-102.4.2-.2.3-.5.5-.7.8-1.1 1.5-2.2 2.3-3.3.2-.4.5-.8.8-1.2.7-1.1 1.4-2.1 2.1-3.2.3-.5.6-.9.9-1.4.6-1.1 1.3-2.1 2-3.2.3-.5.6-.9.9-1.4.7-1.1 1.3-2.2 2-3.3.2-.4.5-.8.7-1.2 2.4-4 4.6-8.1 6.8-12.2.1-.2.2-.3.3-.5.6-1.1 1.1-2.2 1.7-3.3.2-.6.5-1.1.8-1.7.5-1 1-2.1 1.5-3.1.3-.7.6-1.3.9-2 .5-1 1-2 1.4-3l.9-2.1c.5-1 .9-2 1.3-3 .3-.7.6-1.5.9-2.2l1.2-3c.3-.8.6-1.5.9-2.3.4-1 .7-2 1.1-3s.7-1.9 1-2.8c.6-1.6 1.2-3.3 1.7-4.9.3-1 .6-1.9.9-2.8s.5-1.8.8-2.7c.2-.9.5-1.9.8-2.8s.6-1.8.8-2.7c.3-1 .5-1.9.8-2.9.2-.9.5-1.8.7-2.7.2-1 .5-2 .7-3 .2-.9.4-1.7.6-2.6.2-1 .5-2.1.7-3.2.2-.8.3-1.6.5-2.4.3-1.3.6-2.7.8-4 .1-.6.2-1.1.3-1.7l.9-5.7c.1-.6.2-1.3.3-1.9.1-1.3.3-2.6.5-3.9.1-.8.2-1.5.3-2.3.1-1.2.3-2.4.4-3.6 0-.8.1-1.6.2-2.4.1-1.1.2-2.3.3-3.5.1-.8.1-1.6.2-2.4.1 1.7.1.5.2-.7 0-.8.1-1.5.1-2.3.1-1.3.2-2.7.2-4 .1-.7.1-1.3.1-2 .1-2 .1-4 .1-6 0-53.5-16.9-103-45.8-143.7zM448 371.5c-9.4 15.5-20.6 29.9-33.6 42.9-20.6 20.6-44.5 36.7-71.2 48-13.9 5.8-28.2 10.3-42.9 13.2v-75.8c0-58.6-88.6-58.6-88.6 0v75.8c-14.7-2.9-29-7.3-42.9-13.2-26.7-11.3-50.6-27.4-71.2-48-13-13-24.2-27.4-33.6-42.9v-71.3c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7V326h29.6V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7H208c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-4.8 6.5-3.7 9.5-3.7V88.1c-4.4-2-7.4-6.7-7.4-11.5 0-16.8 25.4-16.8 25.4 0 0 4.8-3 9.4-7.4 11.5V92c6.3-1.4 12.7-2.3 19.2-2.3 9.4 0 18.4 3.5 26.3 3.5 7.2 0 15.2-3.5 19.4-3.5 2.1 0 3.7 1.6 3.7 3.7v48.4c0 5.6-18.7 6.5-22.4 6.5-8.6 0-16.6-3.5-25.4-3.5-7 0-14.1 1.2-20.8 2.8v30.7c3 0 9.5-1.1 9.5 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v144h29.5v-25.8c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7z\"]\n};\nvar faForumbee = {\n prefix: 'fab',\n iconName: 'forumbee',\n icon: [448, 512, [], \"f211\", \"M5.8 309.7C2 292.7 0 275.5 0 258.3 0 135 99.8 35 223.1 35c16.6 0 33.3 2 49.3 5.5C149 87.5 51.9 186 5.8 309.7zm392.9-189.2C385 103 369 87.8 350.9 75.2c-149.6 44.3-266.3 162.1-309.7 312 12.5 18.1 28 35.6 45.2 49 43.1-151.3 161.2-271.7 312.3-315.7zm15.8 252.7c15.2-25.1 25.4-53.7 29.5-82.8-79.4 42.9-145 110.6-187.6 190.3 30-4.4 58.9-15.3 84.6-31.3 35 13.1 70.9 24.3 107 33.6-9.3-36.5-20.4-74.5-33.5-109.8zm29.7-145.5c-2.6-19.5-7.9-38.7-15.8-56.8C290.5 216.7 182 327.5 137.1 466c18.1 7.6 37 12.5 56.6 15.2C240 367.1 330.5 274.4 444.2 227.7z\"]\n};\nvar faFoursquare = {\n prefix: 'fab',\n iconName: 'foursquare',\n icon: [368, 512, [], \"f180\", \"M323.1 3H49.9C12.4 3 0 31.3 0 49.1v433.8c0 20.3 12.1 27.7 18.2 30.1 6.2 2.5 22.8 4.6 32.9-7.1C180 356.5 182.2 354 182.2 354c3.1-3.4 3.4-3.1 6.8-3.1h83.4c35.1 0 40.6-25.2 44.3-39.7l48.6-243C373.8 25.8 363.1 3 323.1 3zm-16.3 73.8l-11.4 59.7c-1.2 6.5-9.5 13.2-16.9 13.2H172.1c-12 0-20.6 8.3-20.6 20.3v13c0 12 8.6 20.6 20.6 20.6h90.4c8.3 0 16.6 9.2 14.8 18.2-1.8 8.9-10.5 53.8-11.4 58.8-.9 4.9-6.8 13.5-16.9 13.5h-73.5c-13.5 0-17.2 1.8-26.5 12.6 0 0-8.9 11.4-89.5 108.3-.9.9-1.8.6-1.8-.3V75.9c0-7.7 6.8-16.6 16.6-16.6h219c8.2 0 15.6 7.7 13.5 17.5z\"]\n};\nvar faFreeCodeCamp = {\n prefix: 'fab',\n iconName: 'free-code-camp',\n icon: [576, 512, [], \"f2c5\", \"M97.22,96.21c10.36-10.65,16-17.12,16-21.9,0-2.76-1.92-5.51-3.83-7.42A14.81,14.81,0,0,0,101,64.05c-8.48,0-20.92,8.79-35.84,25.69C23.68,137,2.51,182.81,3.37,250.34s17.47,117,54.06,161.87C76.22,435.86,90.62,448,100.9,448a13.55,13.55,0,0,0,8.37-3.84c1.91-2.76,3.81-5.63,3.81-8.38,0-5.63-3.86-12.2-13.2-20.55-44.45-42.33-67.32-97-67.48-165C32.25,188.8,54,137.83,97.22,96.21ZM239.47,420.07c.58.37.91.55.91.55Zm93.79.55.17-.13C333.24,420.62,333.17,420.67,333.26,420.62Zm3.13-158.18c-16.24-4.15,50.41-82.89-68.05-177.17,0,0,15.54,49.38-62.83,159.57-74.27,104.35,23.46,168.73,34,175.23-6.73-4.35-47.4-35.7,9.55-128.64,11-18.3,25.53-34.87,43.5-72.16,0,0,15.91,22.45,7.6,71.13C287.7,364,354,342.91,355,343.94c22.75,26.78-17.72,73.51-21.58,76.55,5.49-3.65,117.71-78,33-188.1C360.43,238.4,352.62,266.59,336.39,262.44ZM510.88,89.69C496,72.79,483.52,64,475,64a14.81,14.81,0,0,0-8.39,2.84c-1.91,1.91-3.83,4.66-3.83,7.42,0,4.78,5.6,11.26,16,21.9,43.23,41.61,65,92.59,64.82,154.06-.16,68-23,122.63-67.48,165-9.34,8.35-13.18,14.92-13.2,20.55,0,2.75,1.9,5.62,3.81,8.38A13.61,13.61,0,0,0,475.1,448c10.28,0,24.68-12.13,43.47-35.79,36.59-44.85,53.14-94.38,54.06-161.87S552.32,137,510.88,89.69Z\"]\n};\nvar faFreebsd = {\n prefix: 'fab',\n iconName: 'freebsd',\n icon: [448, 512, [], \"f3a4\", \"M303.7 96.2c11.1-11.1 115.5-77 139.2-53.2 23.7 23.7-42.1 128.1-53.2 139.2-11.1 11.1-39.4.9-63.1-22.9-23.8-23.7-34.1-52-22.9-63.1zM109.9 68.1C73.6 47.5 22 24.6 5.6 41.1c-16.6 16.6 7.1 69.4 27.9 105.7 18.5-32.2 44.8-59.3 76.4-78.7zM406.7 174c3.3 11.3 2.7 20.7-2.7 26.1-20.3 20.3-87.5-27-109.3-70.1-18-32.3-11.1-53.4 14.9-48.7 5.7-3.6 12.3-7.6 19.6-11.6-29.8-15.5-63.6-24.3-99.5-24.3-119.1 0-215.6 96.5-215.6 215.6 0 119 96.5 215.6 215.6 215.6S445.3 380.1 445.3 261c0-38.4-10.1-74.5-27.7-105.8-3.9 7-7.6 13.3-10.9 18.8z\"]\n};\nvar faFulcrum = {\n prefix: 'fab',\n iconName: 'fulcrum',\n icon: [320, 512, [], \"f50b\", \"M95.75 164.14l-35.38 43.55L25 164.14l35.38-43.55zM144.23 0l-20.54 198.18L72.72 256l51 57.82L144.23 512V300.89L103.15 256l41.08-44.89zm79.67 164.14l35.38 43.55 35.38-43.55-35.38-43.55zm-48.48 47L216.5 256l-41.08 44.89V512L196 313.82 247 256l-51-57.82L175.42 0z\"]\n};\nvar faGalacticRepublic = {\n prefix: 'fab',\n iconName: 'galactic-republic',\n icon: [496, 512, [], \"f50c\", \"M248 504C111.25 504 0 392.75 0 256S111.25 8 248 8s248 111.25 248 248-111.25 248-248 248zm0-479.47C120.37 24.53 16.53 128.37 16.53 256S120.37 487.47 248 487.47 479.47 383.63 479.47 256 375.63 24.53 248 24.53zm27.62 21.81v24.62a185.933 185.933 0 0 1 83.57 34.54l17.39-17.36c-28.75-22.06-63.3-36.89-100.96-41.8zm-55.37.07c-37.64 4.94-72.16 19.8-100.88 41.85l17.28 17.36h.08c24.07-17.84 52.55-30.06 83.52-34.67V46.41zm12.25 50.17v82.87c-10.04 2.03-19.42 5.94-27.67 11.42l-58.62-58.59-21.93 21.93 58.67 58.67c-5.47 8.23-9.45 17.59-11.47 27.62h-82.9v31h82.9c2.02 10.02 6.01 19.31 11.47 27.54l-58.67 58.69 21.93 21.93 58.62-58.62a77.873 77.873 0 0 0 27.67 11.47v82.9h31v-82.9c10.05-2.03 19.37-6.06 27.62-11.55l58.67 58.69 21.93-21.93-58.67-58.69c5.46-8.23 9.47-17.52 11.5-27.54h82.87v-31h-82.87c-2.02-10.02-6.03-19.38-11.5-27.62l58.67-58.67-21.93-21.93-58.67 58.67c-8.25-5.49-17.57-9.47-27.62-11.5V96.58h-31zm183.24 30.72l-17.36 17.36a186.337 186.337 0 0 1 34.67 83.67h24.62c-4.95-37.69-19.83-72.29-41.93-101.03zm-335.55.13c-22.06 28.72-36.91 63.26-41.85 100.91h24.65c4.6-30.96 16.76-59.45 34.59-83.52l-17.39-17.39zM38.34 283.67c4.92 37.64 19.75 72.18 41.8 100.9l17.36-17.39c-17.81-24.07-29.92-52.57-34.51-83.52H38.34zm394.7 0c-4.61 30.99-16.8 59.5-34.67 83.6l17.36 17.36c22.08-28.74 36.98-63.29 41.93-100.96h-24.62zM136.66 406.38l-17.36 17.36c28.73 22.09 63.3 36.98 100.96 41.93v-24.64c-30.99-4.63-59.53-16.79-83.6-34.65zm222.53.05c-24.09 17.84-52.58 30.08-83.57 34.67v24.57c37.67-4.92 72.21-19.79 100.96-41.85l-17.31-17.39h-.08z\"]\n};\nvar faGalacticSenate = {\n prefix: 'fab',\n iconName: 'galactic-senate',\n icon: [512, 512, [], \"f50d\", \"M249.86 33.48v26.07C236.28 80.17 226 168.14 225.39 274.9c11.74-15.62 19.13-33.33 19.13-48.24v-16.88c-.03-5.32.75-10.53 2.19-15.65.65-2.14 1.39-4.08 2.62-5.82 1.23-1.75 3.43-3.79 6.68-3.79 3.24 0 5.45 2.05 6.68 3.79 1.23 1.75 1.97 3.68 2.62 5.82 1.44 5.12 2.22 10.33 2.19 15.65v16.88c0 14.91 7.39 32.62 19.13 48.24-.63-106.76-10.91-194.73-24.49-215.35V33.48h-12.28zm-26.34 147.77c-9.52 2.15-18.7 5.19-27.46 9.08 8.9 16.12 9.76 32.64 1.71 37.29-8 4.62-21.85-4.23-31.36-19.82-11.58 8.79-21.88 19.32-30.56 31.09 14.73 9.62 22.89 22.92 18.32 30.66-4.54 7.7-20.03 7.14-35.47-.96-5.78 13.25-9.75 27.51-11.65 42.42 9.68.18 18.67 2.38 26.18 6.04 17.78-.3 32.77-1.96 40.49-4.22 5.55-26.35 23.02-48.23 46.32-59.51.73-25.55 1.88-49.67 3.48-72.07zm64.96 0c1.59 22.4 2.75 46.52 3.47 72.07 23.29 11.28 40.77 33.16 46.32 59.51 7.72 2.26 22.71 3.92 40.49 4.22 7.51-3.66 16.5-5.85 26.18-6.04-1.9-14.91-5.86-29.17-11.65-42.42-15.44 8.1-30.93 8.66-35.47.96-4.57-7.74 3.6-21.05 18.32-30.66-8.68-11.77-18.98-22.3-30.56-31.09-9.51 15.59-23.36 24.44-31.36 19.82-8.05-4.65-7.19-21.16 1.71-37.29a147.49 147.49 0 0 0-27.45-9.08zm-32.48 8.6c-3.23 0-5.86 8.81-6.09 19.93h-.05v16.88c0 41.42-49.01 95.04-93.49 95.04-52 0-122.75-1.45-156.37 29.17v2.51c9.42 17.12 20.58 33.17 33.18 47.97C45.7 380.26 84.77 360.4 141.2 360c45.68 1.02 79.03 20.33 90.76 40.87.01.01-.01.04 0 .05 7.67 2.14 15.85 3.23 24.04 3.21 8.19.02 16.37-1.07 24.04-3.21.01-.01-.01-.04 0-.05 11.74-20.54 45.08-39.85 90.76-40.87 56.43.39 95.49 20.26 108.02 41.35 12.6-14.8 23.76-30.86 33.18-47.97v-2.51c-33.61-30.62-104.37-29.17-156.37-29.17-44.48 0-93.49-53.62-93.49-95.04v-16.88h-.05c-.23-11.12-2.86-19.93-6.09-19.93zm0 96.59c22.42 0 40.6 18.18 40.6 40.6s-18.18 40.65-40.6 40.65-40.6-18.23-40.6-40.65c0-22.42 18.18-40.6 40.6-40.6zm0 7.64c-18.19 0-32.96 14.77-32.96 32.96S237.81 360 256 360s32.96-14.77 32.96-32.96-14.77-32.96-32.96-32.96zm0 6.14c14.81 0 26.82 12.01 26.82 26.82s-12.01 26.82-26.82 26.82-26.82-12.01-26.82-26.82 12.01-26.82 26.82-26.82zm-114.8 66.67c-10.19.07-21.6.36-30.5 1.66.43 4.42 1.51 18.63 7.11 29.76 9.11-2.56 18.36-3.9 27.62-3.9 41.28.94 71.48 34.35 78.26 74.47l.11 4.7c10.4 1.91 21.19 2.94 32.21 2.94 11.03 0 21.81-1.02 32.21-2.94l.11-4.7c6.78-40.12 36.98-73.53 78.26-74.47 9.26 0 18.51 1.34 27.62 3.9 5.6-11.13 6.68-25.34 7.11-29.76-8.9-1.3-20.32-1.58-30.5-1.66-18.76.42-35.19 4.17-48.61 9.67-12.54 16.03-29.16 30.03-49.58 33.07-.09.02-.17.04-.27.05-.05.01-.11.04-.16.05-5.24 1.07-10.63 1.6-16.19 1.6-5.55 0-10.95-.53-16.19-1.6-.05-.01-.11-.04-.16-.05-.1-.02-.17-.04-.27-.05-20.42-3.03-37.03-17.04-49.58-33.07-13.42-5.49-29.86-9.25-48.61-9.67z\"]\n};\nvar faGetPocket = {\n prefix: 'fab',\n iconName: 'get-pocket',\n icon: [448, 512, [], \"f265\", \"M407.6 64h-367C18.5 64 0 82.5 0 104.6v135.2C0 364.5 99.7 464 224.2 464c124 0 223.8-99.5 223.8-224.2V104.6c0-22.4-17.7-40.6-40.4-40.6zm-162 268.5c-12.4 11.8-31.4 11.1-42.4 0C89.5 223.6 88.3 227.4 88.3 209.3c0-16.9 13.8-30.7 30.7-30.7 17 0 16.1 3.8 105.2 89.3 90.6-86.9 88.6-89.3 105.5-89.3 16.9 0 30.7 13.8 30.7 30.7 0 17.8-2.9 15.7-114.8 123.2z\"]\n};\nvar faGg = {\n prefix: 'fab',\n iconName: 'gg',\n icon: [512, 512, [], \"f260\", \"M179.2 230.4l102.4 102.4-102.4 102.4L0 256 179.2 76.8l44.8 44.8-25.6 25.6-19.2-19.2-128 128 128 128 51.5-51.5-77.1-76.5 25.6-25.6zM332.8 76.8L230.4 179.2l102.4 102.4 25.6-25.6-77.1-76.5 51.5-51.5 128 128-128 128-19.2-19.2-25.6 25.6 44.8 44.8L512 256 332.8 76.8z\"]\n};\nvar faGgCircle = {\n prefix: 'fab',\n iconName: 'gg-circle',\n icon: [512, 512, [], \"f261\", \"M257 8C120 8 9 119 9 256s111 248 248 248 248-111 248-248S394 8 257 8zm-49.5 374.8L81.8 257.1l125.7-125.7 35.2 35.4-24.2 24.2-11.1-11.1-77.2 77.2 77.2 77.2 26.6-26.6-53.1-52.9 24.4-24.4 77.2 77.2-75 75.2zm99-2.2l-35.2-35.2 24.1-24.4 11.1 11.1 77.2-77.2-77.2-77.2-26.5 26.5 53.1 52.9-24.4 24.4-77.2-77.2 75-75L432.2 255 306.5 380.6z\"]\n};\nvar faGit = {\n prefix: 'fab',\n iconName: 'git',\n icon: [512, 512, [], \"f1d3\", \"M216.29 158.39H137C97 147.9 6.51 150.63 6.51 233.18c0 30.09 15 51.23 35 61-25.1 23-37 33.85-37 49.21 0 11 4.47 21.14 17.89 26.81C8.13 383.61 0 393.35 0 411.65c0 32.11 28.05 50.82 101.63 50.82 70.75 0 111.79-26.42 111.79-73.18 0-58.66-45.16-56.5-151.63-63l13.43-21.55c27.27 7.58 118.7 10 118.7-67.89 0-18.7-7.73-31.71-15-41.07l37.41-2.84zm-63.42 241.9c0 32.06-104.89 32.1-104.89 2.43 0-8.14 5.27-15 10.57-21.54 77.71 5.3 94.32 3.37 94.32 19.11zm-50.81-134.58c-52.8 0-50.46-71.16 1.2-71.16 49.54 0 50.82 71.16-1.2 71.16zm133.3 100.51v-32.1c26.75-3.66 27.24-2 27.24-11V203.61c0-8.5-2.05-7.38-27.24-16.26l4.47-32.92H324v168.71c0 6.51.4 7.32 6.51 8.14l20.73 2.84v32.1zm52.45-244.31c-23.17 0-36.59-13.43-36.59-36.61s13.42-35.77 36.59-35.77c23.58 0 37 12.62 37 35.77s-13.42 36.61-37 36.61zM512 350.46c-17.49 8.53-43.1 16.26-66.28 16.26-48.38 0-66.67-19.5-66.67-65.46V194.75c0-5.42 1.05-4.06-31.71-4.06V154.5c35.78-4.07 50-22 54.47-66.27h38.63c0 65.83-1.34 61.81 3.26 61.81H501v40.65h-60.56v97.15c0 6.92-4.92 51.41 60.57 26.84z\"]\n};\nvar faGitAlt = {\n prefix: 'fab',\n iconName: 'git-alt',\n icon: [448, 512, [], \"f841\", \"M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z\"]\n};\nvar faGitSquare = {\n prefix: 'fab',\n iconName: 'git-square',\n icon: [448, 512, [], \"f1d2\", \"M100.59 334.24c48.57 3.31 58.95 2.11 58.95 11.94 0 20-65.55 20.06-65.55 1.52.01-5.09 3.29-9.4 6.6-13.46zm27.95-116.64c-32.29 0-33.75 44.47-.75 44.47 32.51 0 31.71-44.47.75-44.47zM448 80v352a48 48 0 0 1-48 48H48a48 48 0 0 1-48-48V80a48 48 0 0 1 48-48h352a48 48 0 0 1 48 48zm-227 69.31c0 14.49 8.38 22.88 22.86 22.88 14.74 0 23.13-8.39 23.13-22.88S258.62 127 243.88 127c-14.48 0-22.88 7.84-22.88 22.31zM199.18 195h-49.55c-25-6.55-81.56-4.85-81.56 46.75 0 18.8 9.4 32 21.85 38.11C74.23 294.23 66.8 301 66.8 310.6c0 6.87 2.79 13.22 11.18 16.76-8.9 8.4-14 14.48-14 25.92C64 373.35 81.53 385 127.52 385c44.22 0 69.87-16.51 69.87-45.73 0-36.67-28.23-35.32-94.77-39.38l8.38-13.43c17 4.74 74.19 6.23 74.19-42.43 0-11.69-4.83-19.82-9.4-25.67l23.38-1.78zm84.34 109.84l-13-1.78c-3.82-.51-4.07-1-4.07-5.09V192.52h-52.6l-2.79 20.57c15.75 5.55 17 4.86 17 10.17V298c0 5.62-.31 4.58-17 6.87v20.06h72.42zM384 315l-6.87-22.37c-40.93 15.37-37.85-12.41-37.85-16.73v-60.72h37.85v-25.41h-35.82c-2.87 0-2 2.52-2-38.63h-24.18c-2.79 27.7-11.68 38.88-34 41.42v22.62c20.47 0 19.82-.85 19.82 2.54v66.57c0 28.72 11.43 40.91 41.67 40.91 14.45 0 30.45-4.83 41.38-10.2z\"]\n};\nvar faGithub = {\n prefix: 'fab',\n iconName: 'github',\n icon: [496, 512, [], \"f09b\", \"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"]\n};\nvar faGithubAlt = {\n prefix: 'fab',\n iconName: 'github-alt',\n icon: [480, 512, [], \"f113\", \"M186.1 328.7c0 20.9-10.9 55.1-36.7 55.1s-36.7-34.2-36.7-55.1 10.9-55.1 36.7-55.1 36.7 34.2 36.7 55.1zM480 278.2c0 31.9-3.2 65.7-17.5 95-37.9 76.6-142.1 74.8-216.7 74.8-75.8 0-186.2 2.7-225.6-74.8-14.6-29-20.2-63.1-20.2-95 0-41.9 13.9-81.5 41.5-113.6-5.2-15.8-7.7-32.4-7.7-48.8 0-21.5 4.9-32.3 14.6-51.8 45.3 0 74.3 9 108.8 36 29-6.9 58.8-10 88.7-10 27 0 54.2 2.9 80.4 9.2 34-26.7 63-35.2 107.8-35.2 9.8 19.5 14.6 30.3 14.6 51.8 0 16.4-2.6 32.7-7.7 48.2 27.5 32.4 39 72.3 39 114.2zm-64.3 50.5c0-43.9-26.7-82.6-73.5-82.6-18.9 0-37 3.4-56 6-14.9 2.3-29.8 3.2-45.1 3.2-15.2 0-30.1-.9-45.1-3.2-18.7-2.6-37-6-56-6-46.8 0-73.5 38.7-73.5 82.6 0 87.8 80.4 101.3 150.4 101.3h48.2c70.3 0 150.6-13.4 150.6-101.3zm-82.6-55.1c-25.8 0-36.7 34.2-36.7 55.1s10.9 55.1 36.7 55.1 36.7-34.2 36.7-55.1-10.9-55.1-36.7-55.1z\"]\n};\nvar faGithubSquare = {\n prefix: 'fab',\n iconName: 'github-square',\n icon: [448, 512, [], \"f092\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM277.3 415.7c-8.4 1.5-11.5-3.7-11.5-8 0-5.4.2-33 .2-55.3 0-15.6-5.2-25.5-11.3-30.7 37-4.1 76-9.2 76-73.1 0-18.2-6.5-27.3-17.1-39 1.7-4.3 7.4-22-1.7-45-13.9-4.3-45.7 17.9-45.7 17.9-13.2-3.7-27.5-5.6-41.6-5.6-14.1 0-28.4 1.9-41.6 5.6 0 0-31.8-22.2-45.7-17.9-9.1 22.9-3.5 40.6-1.7 45-10.6 11.7-15.6 20.8-15.6 39 0 63.6 37.3 69 74.3 73.1-4.8 4.3-9.1 11.7-10.6 22.3-9.5 4.3-33.8 11.7-48.3-13.9-9.1-15.8-25.5-17.1-25.5-17.1-16.2-.2-1.1 10.2-1.1 10.2 10.8 5 18.4 24.2 18.4 24.2 9.7 29.7 56.1 19.7 56.1 19.7 0 13.9.2 36.5.2 40.6 0 4.3-3 9.5-11.5 8-66-22.1-112.2-84.9-112.2-158.3 0-91.8 70.2-161.5 162-161.5S388 165.6 388 257.4c.1 73.4-44.7 136.3-110.7 158.3zm-98.1-61.1c-1.9.4-3.7-.4-3.9-1.7-.2-1.5 1.1-2.8 3-3.2 1.9-.2 3.7.6 3.9 1.9.3 1.3-1 2.6-3 3zm-9.5-.9c0 1.3-1.5 2.4-3.5 2.4-2.2.2-3.7-.9-3.7-2.4 0-1.3 1.5-2.4 3.5-2.4 1.9-.2 3.7.9 3.7 2.4zm-13.7-1.1c-.4 1.3-2.4 1.9-4.1 1.3-1.9-.4-3.2-1.9-2.8-3.2.4-1.3 2.4-1.9 4.1-1.5 2 .6 3.3 2.1 2.8 3.4zm-12.3-5.4c-.9 1.1-2.8.9-4.3-.6-1.5-1.3-1.9-3.2-.9-4.1.9-1.1 2.8-.9 4.3.6 1.3 1.3 1.8 3.3.9 4.1zm-9.1-9.1c-.9.6-2.6 0-3.7-1.5s-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3 1.1 1.5 1.1 3.3 0 4.1zm-6.5-9.7c-.9.9-2.4.4-3.5-.6-1.1-1.3-1.3-2.8-.4-3.5.9-.9 2.4-.4 3.5.6 1.1 1.3 1.3 2.8.4 3.5zm-6.7-7.4c-.4.9-1.7 1.1-2.8.4-1.3-.6-1.9-1.7-1.5-2.6.4-.6 1.5-.9 2.8-.4 1.3.7 1.9 1.8 1.5 2.6z\"]\n};\nvar faGitkraken = {\n prefix: 'fab',\n iconName: 'gitkraken',\n icon: [592, 512, [], \"f3a6\", \"M565.7 118.1c-2.3-6.1-9.3-9.2-15.3-6.6-5.7 2.4-8.5 8.9-6.3 14.6 10.9 29 16.9 60.5 16.9 93.3 0 134.6-100.3 245.7-230.2 262.7V358.4c7.9-1.5 15.5-3.6 23-6.2v104c106.7-25.9 185.9-122.1 185.9-236.8 0-91.8-50.8-171.8-125.8-213.3-5.7-3.2-13-.9-15.9 5-2.7 5.5-.6 12.2 4.7 15.1 67.9 37.6 113.9 110 113.9 193.2 0 93.3-57.9 173.1-139.8 205.4v-92.2c14.2-4.5 24.9-17.7 24.9-33.5 0-13.1-6.8-24.4-17.3-30.5 8.3-79.5 44.5-58.6 44.5-83.9V170c0-38-87.9-161.8-129-164.7-2.5-.2-5-.2-7.6 0C251.1 8.3 163.2 132 163.2 170v14.8c0 25.3 36.3 4.3 44.5 83.9-10.6 6.1-17.3 17.4-17.3 30.5 0 15.8 10.6 29 24.8 33.5v92.2c-81.9-32.2-139.8-112-139.8-205.4 0-83.1 46-155.5 113.9-193.2 5.4-3 7.4-9.6 4.7-15.1-2.9-5.9-10.1-8.2-15.9-5-75 41.5-125.8 121.5-125.8 213.3 0 114.7 79.2 210.8 185.9 236.8v-104c7.6 2.5 15.1 4.6 23 6.2v123.7C131.4 465.2 31 354.1 31 219.5c0-32.8 6-64.3 16.9-93.3 2.2-5.8-.6-12.2-6.3-14.6-6-2.6-13 .4-15.3 6.6C14.5 149.7 8 183.8 8 219.5c0 155.1 122.6 281.6 276.3 287.8V361.4c6.8.4 15 .5 23.4 0v145.8C461.4 501.1 584 374.6 584 219.5c0-35.7-6.5-69.8-18.3-101.4zM365.9 275.5c13 0 23.7 10.5 23.7 23.7 0 13.1-10.6 23.7-23.7 23.7-13 0-23.7-10.5-23.7-23.7 0-13.1 10.6-23.7 23.7-23.7zm-139.8 47.3c-13.2 0-23.7-10.7-23.7-23.7s10.5-23.7 23.7-23.7c13.1 0 23.7 10.6 23.7 23.7 0 13-10.5 23.7-23.7 23.7z\"]\n};\nvar faGitlab = {\n prefix: 'fab',\n iconName: 'gitlab',\n icon: [512, 512, [], \"f296\", \"M105.2 24.9c-3.1-8.9-15.7-8.9-18.9 0L29.8 199.7h132c-.1 0-56.6-174.8-56.6-174.8zM.9 287.7c-2.6 8 .3 16.9 7.1 22l247.9 184-226.2-294zm160.8-88l94.3 294 94.3-294zm349.4 88l-28.8-88-226.3 294 247.9-184c6.9-5.1 9.7-14 7.2-22zM425.7 24.9c-3.1-8.9-15.7-8.9-18.9 0l-56.6 174.8h132z\"]\n};\nvar faGitter = {\n prefix: 'fab',\n iconName: 'gitter',\n icon: [384, 512, [], \"f426\", \"M66.4 322.5H16V0h50.4v322.5zM166.9 76.1h-50.4V512h50.4V76.1zm100.6 0h-50.4V512h50.4V76.1zM368 76h-50.4v247H368V76z\"]\n};\nvar faGlide = {\n prefix: 'fab',\n iconName: 'glide',\n icon: [448, 512, [], \"f2a5\", \"M252.8 148.6c0 8.8-1.6 17.7-3.4 26.4-5.8 27.8-11.6 55.8-17.3 83.6-1.4 6.3-8.3 4.9-13.7 4.9-23.8 0-30.5-26-30.5-45.5 0-29.3 11.2-68.1 38.5-83.1 4.3-2.5 9.2-4.2 14.1-4.2 11.4 0 12.3 8.3 12.3 17.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 187c0-5.1-20.8-37.7-25.5-39.5-2.2-.9-7.2-2.3-9.6-2.3-23.1 0-38.7 10.5-58.2 21.5l-.5-.5c4.3-29.4 14.6-57.2 14.6-87.4 0-44.6-23.8-62.7-67.5-62.7-71.7 0-108 70.8-108 123.5 0 54.7 32 85 86.3 85 7.5 0 6.9-.6 6.9 2.3-10.5 80.3-56.5 82.9-56.5 58.9 0-24.4 28-36.5 28.3-38-.2-7.6-29.3-17.2-36.7-17.2-21.1 0-32.7 33-32.7 50.6 0 32.3 20.4 54.7 53.3 54.7 48.2 0 83.4-49.7 94.3-91.7 9.4-37.7 7-39.4 12.3-42.1 20-10.1 35.8-16.8 58.4-16.8 11.1 0 19 2.3 36.7 5.2 1.8.1 4.1-1.7 4.1-3.5z\"]\n};\nvar faGlideG = {\n prefix: 'fab',\n iconName: 'glide-g',\n icon: [448, 512, [], \"f2a6\", \"M407.1 211.2c-3.5-1.4-11.6-3.8-15.4-3.8-37.1 0-62.2 16.8-93.5 34.5l-.9-.9c7-47.3 23.5-91.9 23.5-140.4C320.8 29.1 282.6 0 212.4 0 97.3 0 39 113.7 39 198.4 39 286.3 90.3 335 177.6 335c12 0 11-1 11 3.8-16.9 128.9-90.8 133.1-90.8 94.6 0-39.2 45-58.6 45.5-61-.3-12.2-47-27.6-58.9-27.6-33.9.1-52.4 51.2-52.4 79.3C32 476 64.8 512 117.5 512c77.4 0 134-77.8 151.4-145.4 15.1-60.5 11.2-63.3 19.7-67.6 32.2-16.2 57.5-27 93.8-27 17.8 0 30.5 3.7 58.9 8.4 2.9 0 6.7-2.9 6.7-5.8 0-8-33.4-60.5-40.9-63.4zm-175.3-84.4c-9.3 44.7-18.6 89.6-27.8 134.3-2.3 10.2-13.3 7.8-22 7.8-38.3 0-49-41.8-49-73.1 0-47 18-109.3 61.8-133.4 7-4.1 14.8-6.7 22.6-6.7 18.6 0 20 13.3 20 28.7-.1 14.3-2.7 28.5-5.6 42.4z\"]\n};\nvar faGofore = {\n prefix: 'fab',\n iconName: 'gofore',\n icon: [400, 512, [], \"f3a7\", \"M324 319.8h-13.2v34.7c-24.5 23.1-56.3 35.8-89.9 35.8-73.2 0-132.4-60.2-132.4-134.4 0-74.1 59.2-134.4 132.4-134.4 35.3 0 68.6 14 93.6 39.4l62.3-63.3C335 55.3 279.7 32 220.7 32 98 32 0 132.6 0 256c0 122.5 97 224 220.7 224 63.2 0 124.5-26.2 171-82.5-2-27.6-13.4-77.7-67.7-77.7zm-12.1-112.5H205.6v89H324c33.5 0 60.5 15.1 76 41.8v-30.6c0-65.2-40.4-100.2-88.1-100.2z\"]\n};\nvar faGoodreads = {\n prefix: 'fab',\n iconName: 'goodreads',\n icon: [448, 512, [], \"f3a8\", \"M299.9 191.2c5.1 37.3-4.7 79-35.9 100.7-22.3 15.5-52.8 14.1-70.8 5.7-37.1-17.3-49.5-58.6-46.8-97.2 4.3-60.9 40.9-87.9 75.3-87.5 46.9-.2 71.8 31.8 78.2 78.3zM448 88v336c0 30.9-25.1 56-56 56H56c-30.9 0-56-25.1-56-56V88c0-30.9 25.1-56 56-56h336c30.9 0 56 25.1 56 56zM330 313.2s-.1-34-.1-217.3h-29v40.3c-.8.3-1.2-.5-1.6-1.2-9.6-20.7-35.9-46.3-76-46-51.9.4-87.2 31.2-100.6 77.8-4.3 14.9-5.8 30.1-5.5 45.6 1.7 77.9 45.1 117.8 112.4 115.2 28.9-1.1 54.5-17 69-45.2.5-1 1.1-1.9 1.7-2.9.2.1.4.1.6.2.3 3.8.2 30.7.1 34.5-.2 14.8-2 29.5-7.2 43.5-7.8 21-22.3 34.7-44.5 39.5-17.8 3.9-35.6 3.8-53.2-1.2-21.5-6.1-36.5-19-41.1-41.8-.3-1.6-1.3-1.3-2.3-1.3h-26.8c.8 10.6 3.2 20.3 8.5 29.2 24.2 40.5 82.7 48.5 128.2 37.4 49.9-12.3 67.3-54.9 67.4-106.3z\"]\n};\nvar faGoodreadsG = {\n prefix: 'fab',\n iconName: 'goodreads-g',\n icon: [384, 512, [], \"f3a9\", \"M42.6 403.3h2.8c12.7 0 25.5 0 38.2.1 1.6 0 3.1-.4 3.6 2.1 7.1 34.9 30 54.6 62.9 63.9 26.9 7.6 54.1 7.8 81.3 1.8 33.8-7.4 56-28.3 68-60.4 8-21.5 10.7-43.8 11-66.5.1-5.8.3-47-.2-52.8l-.9-.3c-.8 1.5-1.7 2.9-2.5 4.4-22.1 43.1-61.3 67.4-105.4 69.1-103 4-169.4-57-172-176.2-.5-23.7 1.8-46.9 8.3-69.7C58.3 47.7 112.3.6 191.6 0c61.3-.4 101.5 38.7 116.2 70.3.5 1.1 1.3 2.3 2.4 1.9V10.6h44.3c0 280.3.1 332.2.1 332.2-.1 78.5-26.7 143.7-103 162.2-69.5 16.9-159 4.8-196-57.2-8-13.5-11.8-28.3-13-44.5zM188.9 36.5c-52.5-.5-108.5 40.7-115 133.8-4.1 59 14.8 122.2 71.5 148.6 27.6 12.9 74.3 15 108.3-8.7 47.6-33.2 62.7-97 54.8-154-9.7-71.1-47.8-120-119.6-119.7z\"]\n};\nvar faGoogle = {\n prefix: 'fab',\n iconName: 'google',\n icon: [488, 512, [], \"f1a0\", \"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"]\n};\nvar faGoogleDrive = {\n prefix: 'fab',\n iconName: 'google-drive',\n icon: [512, 512, [], \"f3aa\", \"M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z\"]\n};\nvar faGooglePay = {\n prefix: 'fab',\n iconName: 'google-pay',\n icon: [640, 512, [], \"e079\", \"M105.72,215v41.25h57.1a49.66,49.66,0,0,1-21.14,32.6c-9.54,6.55-21.72,10.28-36,10.28-27.6,0-50.93-18.91-59.3-44.22a65.61,65.61,0,0,1,0-41l0,0c8.37-25.46,31.7-44.37,59.3-44.37a56.43,56.43,0,0,1,40.51,16.08L176.47,155a101.24,101.24,0,0,0-70.75-27.84,105.55,105.55,0,0,0-94.38,59.11,107.64,107.64,0,0,0,0,96.18v.15a105.41,105.41,0,0,0,94.38,59c28.47,0,52.55-9.53,70-25.91,20-18.61,31.41-46.15,31.41-78.91A133.76,133.76,0,0,0,205.38,215Zm389.41-4c-10.13-9.38-23.93-14.14-41.39-14.14-22.46,0-39.34,8.34-50.5,24.86l20.85,13.26q11.45-17,31.26-17a34.05,34.05,0,0,1,22.75,8.79A28.14,28.14,0,0,1,487.79,248v5.51c-9.1-5.07-20.55-7.75-34.64-7.75-16.44,0-29.65,3.88-39.49,11.77s-14.82,18.31-14.82,31.56a39.74,39.74,0,0,0,13.94,31.27c9.25,8.34,21,12.51,34.79,12.51,16.29,0,29.21-7.3,39-21.89h1v17.72h22.61V250C510.25,233.45,505.26,220.34,495.13,211ZM475.9,300.3a37.32,37.32,0,0,1-26.57,11.16A28.61,28.61,0,0,1,431,305.21a19.41,19.41,0,0,1-7.77-15.63c0-7,3.22-12.81,9.54-17.42s14.53-7,24.07-7C470,265,480.3,268,487.64,273.94,487.64,284.07,483.68,292.85,475.9,300.3Zm-93.65-142A55.71,55.71,0,0,0,341.74,142H279.07V328.74H302.7V253.1h39c16,0,29.5-5.36,40.51-15.93.88-.89,1.76-1.79,2.65-2.68A54.45,54.45,0,0,0,382.25,158.26Zm-16.58,62.23a30.65,30.65,0,0,1-23.34,9.68H302.7V165h39.63a32,32,0,0,1,22.6,9.23A33.18,33.18,0,0,1,365.67,220.49ZM614.31,201,577.77,292.7h-.45L539.9,201H514.21L566,320.55l-29.35,64.32H561L640,201Z\"]\n};\nvar faGooglePlay = {\n prefix: 'fab',\n iconName: 'google-play',\n icon: [512, 512, [], \"f3ab\", \"M325.3 234.3L104.6 13l280.8 161.2-60.1 60.1zM47 0C34 6.8 25.3 19.2 25.3 35.3v441.3c0 16.1 8.7 28.5 21.7 35.3l256.6-256L47 0zm425.2 225.6l-58.9-34.1-65.7 64.5 65.7 64.5 60.1-34.1c18-14.3 18-46.5-1.2-60.8zM104.6 499l280.8-161.2-60.1-60.1L104.6 499z\"]\n};\nvar faGooglePlus = {\n prefix: 'fab',\n iconName: 'google-plus',\n icon: [512, 512, [], \"f2b3\", \"M256,8C119.1,8,8,119.1,8,256S119.1,504,256,504,504,392.9,504,256,392.9,8,256,8ZM185.3,380a124,124,0,0,1,0-248c31.3,0,60.1,11,83,32.3l-33.6,32.6c-13.2-12.9-31.3-19.1-49.4-19.1-42.9,0-77.2,35.5-77.2,78.1S142.3,334,185.3,334c32.6,0,64.9-19.1,70.1-53.3H185.3V238.1H302.2a109.2,109.2,0,0,1,1.9,20.7c0,70.8-47.5,121.2-118.8,121.2ZM415.5,273.8v35.5H380V273.8H344.5V238.3H380V202.8h35.5v35.5h35.2v35.5Z\"]\n};\nvar faGooglePlusG = {\n prefix: 'fab',\n iconName: 'google-plus-g',\n icon: [640, 512, [], \"f0d5\", \"M386.061 228.496c1.834 9.692 3.143 19.384 3.143 31.956C389.204 370.205 315.599 448 204.8 448c-106.084 0-192-85.915-192-192s85.916-192 192-192c51.864 0 95.083 18.859 128.611 50.292l-52.126 50.03c-14.145-13.621-39.028-29.599-76.485-29.599-65.484 0-118.92 54.221-118.92 121.277 0 67.056 53.436 121.277 118.92 121.277 75.961 0 104.513-54.745 108.965-82.773H204.8v-66.009h181.261zm185.406 6.437V179.2h-56.001v55.733h-55.733v56.001h55.733v55.733h56.001v-55.733H627.2v-56.001h-55.733z\"]\n};\nvar faGooglePlusSquare = {\n prefix: 'fab',\n iconName: 'google-plus-square',\n icon: [448, 512, [], \"f0d4\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM164 356c-55.3 0-100-44.7-100-100s44.7-100 100-100c27 0 49.5 9.8 67 26.2l-27.1 26.1c-7.4-7.1-20.3-15.4-39.8-15.4-34.1 0-61.9 28.2-61.9 63.2 0 34.9 27.8 63.2 61.9 63.2 39.6 0 54.4-28.5 56.8-43.1H164v-34.4h94.4c1 5 1.6 10.1 1.6 16.6 0 57.1-38.3 97.6-96 97.6zm220-81.8h-29v29h-29.2v-29h-29V245h29v-29H355v29h29v29.2z\"]\n};\nvar faGoogleWallet = {\n prefix: 'fab',\n iconName: 'google-wallet',\n icon: [448, 512, [], \"f1ee\", \"M156.8 126.8c37.6 60.6 64.2 113.1 84.3 162.5-8.3 33.8-18.8 66.5-31.3 98.3-13.2-52.3-26.5-101.3-56-148.5 6.5-36.4 2.3-73.6 3-112.3zM109.3 200H16.1c-6.5 0-10.5 7.5-6.5 12.7C51.8 267 81.3 330.5 101.3 400h103.5c-16.2-69.7-38.7-133.7-82.5-193.5-3-4-8-6.5-13-6.5zm47.8-88c68.5 108 130 234.5 138.2 368H409c-12-138-68.4-265-143.2-368H157.1zm251.8-68.5c-1.8-6.8-8.2-11.5-15.2-11.5h-88.3c-5.3 0-9 5-7.8 10.3 13.2 46.5 22.3 95.5 26.5 146 48.2 86.2 79.7 178.3 90.6 270.8 15.8-60.5 25.3-133.5 25.3-203 0-73.6-12.1-145.1-31.1-212.6z\"]\n};\nvar faGratipay = {\n prefix: 'fab',\n iconName: 'gratipay',\n icon: [496, 512, [], \"f184\", \"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm114.6 226.4l-113 152.7-112.7-152.7c-8.7-11.9-19.1-50.4 13.6-72 28.1-18.1 54.6-4.2 68.5 11.9 15.9 17.9 46.6 16.9 61.7 0 13.9-16.1 40.4-30 68.1-11.9 32.9 21.6 22.6 60 13.8 72z\"]\n};\nvar faGrav = {\n prefix: 'fab',\n iconName: 'grav',\n icon: [512, 512, [], \"f2d6\", \"M301.1 212c4.4 4.4 4.4 11.9 0 16.3l-9.7 9.7c-4.4 4.7-11.9 4.7-16.6 0l-10.5-10.5c-4.4-4.7-4.4-11.9 0-16.6l9.7-9.7c4.4-4.4 11.9-4.4 16.6 0l10.5 10.8zm-30.2-19.7c3-3 3-7.8 0-10.5-2.8-3-7.5-3-10.5 0-2.8 2.8-2.8 7.5 0 10.5 3.1 2.8 7.8 2.8 10.5 0zm-26 5.3c-3 2.8-3 7.5 0 10.2 2.8 3 7.5 3 10.5 0 2.8-2.8 2.8-7.5 0-10.2-3-3-7.7-3-10.5 0zm72.5-13.3c-19.9-14.4-33.8-43.2-11.9-68.1 21.6-24.9 40.7-17.2 59.8.8 11.9 11.3 29.3 24.9 17.2 48.2-12.5 23.5-45.1 33.2-65.1 19.1zm47.7-44.5c-8.9-10-23.3 6.9-15.5 16.1 7.4 9 32.1 2.4 15.5-16.1zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-66.2 42.6c2.5-16.1-20.2-16.6-25.2-25.7-13.6-24.1-27.7-36.8-54.5-30.4 11.6-8 23.5-6.1 23.5-6.1.3-6.4 0-13-9.4-24.9 3.9-12.5.3-22.4.3-22.4 15.5-8.6 26.8-24.4 29.1-43.2 3.6-31-18.8-59.2-49.8-62.8-22.1-2.5-43.7 7.7-54.3 25.7-23.2 40.1 1.4 70.9 22.4 81.4-14.4-1.4-34.3-11.9-40.1-34.3-6.6-25.7 2.8-49.8 8.9-61.4 0 0-4.4-5.8-8-8.9 0 0-13.8 0-24.6 5.3 11.9-15.2 25.2-14.4 25.2-14.4 0-6.4-.6-14.9-3.6-21.6-5.4-11-23.8-12.9-31.7 2.8.1-.2.3-.4.4-.5-5 11.9-1.1 55.9 16.9 87.2-2.5 1.4-9.1 6.1-13 10-21.6 9.7-56.2 60.3-56.2 60.3-28.2 10.8-77.2 50.9-70.6 79.7.3 3 1.4 5.5 3 7.5-2.8 2.2-5.5 5-8.3 8.3-11.9 13.8-5.3 35.2 17.7 24.4 15.8-7.2 29.6-20.2 36.3-30.4 0 0-5.5-5-16.3-4.4 27.7-6.6 34.3-9.4 46.2-9.1 8 3.9 8-34.3 8-34.3 0-14.7-2.2-31-11.1-41.5 12.5 12.2 29.1 32.7 28 60.6-.8 18.3-15.2 23-15.2 23-9.1 16.6-43.2 65.9-30.4 106 0 0-9.7-14.9-10.2-22.1-17.4 19.4-46.5 52.3-24.6 64.5 26.6 14.7 108.8-88.6 126.2-142.3 34.6-20.8 55.4-47.3 63.9-65 22 43.5 95.3 94.5 101.1 59z\"]\n};\nvar faGripfire = {\n prefix: 'fab',\n iconName: 'gripfire',\n icon: [384, 512, [], \"f3ac\", \"M112.5 301.4c0-73.8 105.1-122.5 105.1-203 0-47.1-34-88-39.1-90.4.4 3.3.6 6.7.6 10C179.1 110.1 32 171.9 32 286.6c0 49.8 32.2 79.2 66.5 108.3 65.1 46.7 78.1 71.4 78.1 86.6 0 10.1-4.8 17-4.8 22.3 13.1-16.7 17.4-31.9 17.5-46.4 0-29.6-21.7-56.3-44.2-86.5-16-22.3-32.6-42.6-32.6-69.5zm205.3-39c-12.1-66.8-78-124.4-94.7-130.9l4 7.2c2.4 5.1 3.4 10.9 3.4 17.1 0 44.7-54.2 111.2-56.6 116.7-2.2 5.1-3.2 10.5-3.2 15.8 0 20.1 15.2 42.1 17.9 42.1 2.4 0 56.6-55.4 58.1-87.7 6.4 11.7 9.1 22.6 9.1 33.4 0 41.2-41.8 96.9-41.8 96.9 0 11.6 31.9 53.2 35.5 53.2 1 0 2.2-1.4 3.2-2.4 37.9-39.3 67.3-85 67.3-136.8 0-8-.7-16.2-2.2-24.6z\"]\n};\nvar faGrunt = {\n prefix: 'fab',\n iconName: 'grunt',\n icon: [384, 512, [], \"f3ad\", \"M61.3 189.3c-1.1 10 5.2 19.1 5.2 19.1.7-7.5 2.2-12.8 4-16.6.4 10.3 3.2 23.5 12.8 34.1 6.9 7.6 35.6 23.3 54.9 6.1 1 2.4 2.1 5.3 3 8.5 2.9 10.3-2.7 25.3-2.7 25.3s15.1-17.1 13.9-32.5c10.8-.5 21.4-8.4 21.1-19.5 0 0-18.9 10.4-35.5-8.8-9.7-11.2-40.9-42-83.1-31.8 4.3 1 8.9 2.4 13.5 4.1h-.1c-4.2 2-6.5 7.1-7 12zm28.3-1.8c19.5 11 37.4 25.7 44.9 37-5.7 3.3-21.7 10.4-38-1.7-10.3-7.6-9.8-26.2-6.9-35.3zm142.1 45.8c-1.2 15.5 13.9 32.5 13.9 32.5s-5.6-15-2.7-25.3c.9-3.2 2-6 3-8.5 19.3 17.3 48 1.5 54.8-6.1 9.6-10.6 12.3-23.8 12.8-34.1 1.8 3.8 3.4 9.1 4 16.6 0 0 6.4-9.1 5.2-19.1-.6-5-2.9-10-7-11.8h-.1c4.6-1.8 9.2-3.2 13.5-4.1-42.3-10.2-73.4 20.6-83.1 31.8-16.7 19.2-35.5 8.8-35.5 8.8-.2 10.9 10.4 18.9 21.2 19.3zm62.7-45.8c3 9.1 3.4 27.7-7 35.4-16.3 12.1-32.2 5-37.9 1.6 7.5-11.4 25.4-26 44.9-37zM160 418.5h-29.4c-5.5 0-8.2 1.6-9.5 2.9-1.9 2-2.2 4.7-.9 8.1 3.5 9.1 11.4 16.5 13.7 18.6 3.1 2.7 7.5 4.3 11.8 4.3 4.4 0 8.3-1.7 11-4.6 7.5-8.2 11.9-17.1 13-19.8.6-1.5 1.3-4.5-.9-6.8-1.8-1.8-4.7-2.7-8.8-2.7zm189.2-101.2c-2.4 17.9-13 33.8-24.6 43.7-3.1-22.7-3.7-55.5-3.7-62.4 0-14.7 9.5-24.5 12.2-26.1 2.5-1.5 5.4-3 8.3-4.6 18-9.6 40.4-21.6 40.4-43.7 0-16.2-9.3-23.2-15.4-27.8-.8-.6-1.5-1.1-2.2-1.7-2.1-1.7-3.7-3-4.3-4.4-4.4-9.8-3.6-34.2-1.7-37.6.6-.6 16.7-20.9 11.8-39.2-2-7.4-6.9-13.3-14.1-17-5.3-2.7-11.9-4.2-19.5-4.5-.1-2-.5-3.9-.9-5.9-.6-2.6-1.1-5.3-.9-8.1.4-4.7.8-9 2.2-11.3 8.4-13.3 28.8-17.6 29-17.6l12.3-2.4-8.1-9.5c-.1-.2-17.3-17.5-46.3-17.5-7.9 0-16 1.3-24.1 3.9-24.2 7.8-42.9 30.5-49.4 39.3-3.1-1-6.3-1.9-9.6-2.7-4.2-15.8 9-38.5 9-38.5s-13.6-3-33.7 15.2c-2.6-6.5-8.1-20.5-1.8-37.2C184.6 10.1 177.2 26 175 40.4c-7.6-5.4-6.7-23.1-7.2-27.6-7.5.9-29.2 21.9-28.2 48.3-2 .5-3.9 1.1-5.9 1.7-6.5-8.8-25.1-31.5-49.4-39.3-7.9-2.2-16-3.5-23.9-3.5-29 0-46.1 17.3-46.3 17.5L6 46.9l12.3 2.4c.2 0 20.6 4.3 29 17.6 1.4 2.2 1.8 6.6 2.2 11.3.2 2.8-.4 5.5-.9 8.1-.4 1.9-.8 3.9-.9 5.9-7.7.3-14.2 1.8-19.5 4.5-7.2 3.7-12.1 9.6-14.1 17-5 18.2 11.2 38.5 11.8 39.2 1.9 3.4 2.7 27.8-1.7 37.6-.6 1.4-2.2 2.7-4.3 4.4-.7.5-1.4 1.1-2.2 1.7-6.1 4.6-15.4 11.7-15.4 27.8 0 22.1 22.4 34.1 40.4 43.7 3 1.6 5.8 3.1 8.3 4.6 2.7 1.6 12.2 11.4 12.2 26.1 0 6.9-.6 39.7-3.7 62.4-11.6-9.9-22.2-25.9-24.6-43.8 0 0-29.2 22.6-20.6 70.8 5.2 29.5 23.2 46.1 47 54.7 8.8 19.1 29.4 45.7 67.3 49.6C143 504.3 163 512 192.2 512h.2c29.1 0 49.1-7.7 63.6-19.5 37.9-3.9 58.5-30.5 67.3-49.6 23.8-8.7 41.7-25.2 47-54.7 8.2-48.4-21.1-70.9-21.1-70.9zM305.7 37.7c5.6-1.8 11.6-2.7 17.7-2.7 11 0 19.9 3 24.7 5-3.1 1.4-6.4 3.2-9.7 5.3-2.4-.4-5.6-.8-9.2-.8-10.5 0-20.5 3.1-28.7 8.9-12.3 8.7-18 16.9-20.7 22.4-2.2-1.3-4.5-2.5-7.1-3.7-1.6-.8-3.1-1.5-4.7-2.2 6.1-9.1 19.9-26.5 37.7-32.2zm21 18.2c-.8 1-1.6 2.1-2.3 3.2-3.3 5.2-3.9 11.6-4.4 17.8-.5 6.4-1.1 12.5-4.4 17-4.2.8-8.1 1.7-11.5 2.7-2.3-3.1-5.6-7-10.5-11.2 1.4-4.8 5.5-16.1 13.5-22.5 5.6-4.3 12.2-6.7 19.6-7zM45.6 45.3c-3.3-2.2-6.6-4-9.7-5.3 4.8-2 13.7-5 24.7-5 6.1 0 12 .9 17.7 2.7 17.8 5.8 31.6 23.2 37.7 32.1-1.6.7-3.2 1.4-4.8 2.2-2.5 1.2-4.9 2.5-7.1 3.7-2.6-5.4-8.3-13.7-20.7-22.4-8.3-5.8-18.2-8.9-28.8-8.9-3.4.1-6.6.5-9 .9zm44.7 40.1c-4.9 4.2-8.3 8-10.5 11.2-3.4-.9-7.3-1.9-11.5-2.7C65 89.5 64.5 83.4 64 77c-.5-6.2-1.1-12.6-4.4-17.8-.7-1.1-1.5-2.2-2.3-3.2 7.4.3 14 2.6 19.5 7 8 6.3 12.1 17.6 13.5 22.4zM58.1 259.9c-2.7-1.6-5.6-3.1-8.4-4.6-14.9-8-30.2-16.3-30.2-30.5 0-11.1 4.3-14.6 8.9-18.2l.5-.4c.7-.6 1.4-1.2 2.2-1.8-.9 7.2-1.9 13.3-2.7 14.9 0 0 12.1-15 15.7-44.3 1.4-11.5-1.1-34.3-5.1-43 .2 4.9 0 9.8-.3 14.4-.4-.8-.8-1.6-1.3-2.2-3.2-4-11.8-17.5-9.4-26.6.9-3.5 3.1-6 6.7-7.8 3.8-1.9 8.8-2.9 15.1-2.9 12.3 0 25.9 3.7 32.9 6 25.1 8 55.4 30.9 64.1 37.7.2.2.4.3.4.3l5.6 3.9-3.5-5.8c-.2-.3-19.1-31.4-53.2-46.5 2-2.9 7.4-8.1 21.6-15.1 21.4-10.5 46.5-15.8 74.3-15.8 27.9 0 52.9 5.3 74.3 15.8 14.2 6.9 19.6 12.2 21.6 15.1-34 15.1-52.9 46.2-53.1 46.5l-3.5 5.8 5.6-3.9s.2-.1.4-.3c8.7-6.8 39-29.8 64.1-37.7 7-2.2 20.6-6 32.9-6 6.3 0 11.3 1 15.1 2.9 3.5 1.8 5.7 4.4 6.7 7.8 2.5 9.1-6.1 22.6-9.4 26.6-.5.6-.9 1.3-1.3 2.2-.3-4.6-.5-9.5-.3-14.4-4 8.8-6.5 31.5-5.1 43 3.6 29.3 15.7 44.3 15.7 44.3-.8-1.6-1.8-7.7-2.7-14.9.7.6 1.5 1.2 2.2 1.8l.5.4c4.6 3.7 8.9 7.1 8.9 18.2 0 14.2-15.4 22.5-30.2 30.5-2.9 1.5-5.7 3.1-8.4 4.6-8.7 5-18 16.7-19.1 34.2-.9 14.6.9 49.9 3.4 75.9-12.4 4.8-26.7 6.4-39.7 6.8-2-4.1-3.9-8.5-5.5-13.1-.7-2-19.6-51.1-26.4-62.2 5.5 39 17.5 73.7 23.5 89.6-3.5-.5-7.3-.7-11.7-.7h-117c-4.4 0-8.3.3-11.7.7 6-15.9 18.1-50.6 23.5-89.6-6.8 11.2-25.7 60.3-26.4 62.2-1.6 4.6-3.5 9-5.5 13.1-13-.4-27.2-2-39.7-6.8 2.5-26 4.3-61.2 3.4-75.9-.9-17.4-10.3-29.2-19-34.2zM34.8 404.6c-12.1-20-8.7-54.1-3.7-59.1 10.9 34.4 47.2 44.3 74.4 45.4-2.7 4.2-5.2 7.6-7 10l-1.4 1.4c-7.2 7.8-8.6 18.5-4.1 31.8-22.7-.1-46.3-9.8-58.2-29.5zm45.7 43.5c6 1.1 12.2 1.9 18.6 2.4 3.5 8 7.4 15.9 12.3 23.1-14.4-5.9-24.4-16-30.9-25.5zM192 498.2c-60.6-.1-78.3-45.8-84.9-64.7-3.7-10.5-3.4-18.2.9-23.1 2.9-3.3 9.5-7.2 24.6-7.2h118.8c15.1 0 21.8 3.9 24.6 7.2 4.2 4.8 4.5 12.6.9 23.1-6.6 18.8-24.3 64.6-84.9 64.7zm80.6-24.6c4.9-7.2 8.8-15.1 12.3-23.1 6.4-.5 12.6-1.3 18.6-2.4-6.5 9.5-16.5 19.6-30.9 25.5zm76.6-69c-12 19.7-35.6 29.3-58.1 29.7 4.5-13.3 3.1-24.1-4.1-31.8-.4-.5-.9-1-1.4-1.5-1.8-2.4-4.3-5.8-7-10 27.2-1.2 63.5-11 74.4-45.4 5 5 8.4 39.1-3.8 59zM191.9 187.7h.2c12.7-.1 27.2-17.8 27.2-17.8-9.9 6-18.8 8.1-27.3 8.3-8.5-.2-17.4-2.3-27.3-8.3 0 0 14.5 17.6 27.2 17.8zm61.7 230.7h-29.4c-4.2 0-7.2.9-8.9 2.7-2.2 2.3-1.5 5.2-.9 6.7 1 2.6 5.5 11.3 13 19.3 2.7 2.9 6.6 4.5 11 4.5s8.7-1.6 11.8-4.2c2.3-2 10.2-9.2 13.7-18.1 1.3-3.3 1-6-.9-7.9-1.3-1.3-4-2.9-9.4-3z\"]\n};\nvar faGuilded = {\n prefix: 'fab',\n iconName: 'guilded',\n icon: [448, 512, [], \"e07e\", \"M443.427,64H4.571c0,103.26,22.192,180.06,43.418,222.358C112.046,414.135,224,448,225.256,448a312.824,312.824,0,0,0,140.55-103.477c25.907-33.923,53.1-87.19,65.916-145.761H171.833c4.14,36.429,22.177,67.946,45.1,86.944h88.589c-17.012,28.213-48.186,54.4-80.456,69.482-31.232-13.259-69.09-46.544-96.548-98.362-26.726-53.833-27.092-105.883-27.092-105.883H437.573A625.91,625.91,0,0,0,443.427,64Z\"]\n};\nvar faGulp = {\n prefix: 'fab',\n iconName: 'gulp',\n icon: [256, 512, [], \"f3ae\", \"M209.8 391.1l-14.1 24.6-4.6 80.2c0 8.9-28.3 16.1-63.1 16.1s-63.1-7.2-63.1-16.1l-5.8-79.4-14.9-25.4c41.2 17.3 126 16.7 165.6 0zm-196-253.3l13.6 125.5c5.9-20 20.8-47 40-55.2 6.3-2.7 12.7-2.7 18.7.9 5.2 3 9.6 9.3 10.1 11.8 1.2 6.5-2 9.1-4.5 9.1-3 0-5.3-4.6-6.8-7.3-4.1-7.3-10.3-7.6-16.9-2.8-6.9 5-12.9 13.4-17.1 20.7-5.1 8.8-9.4 18.5-12 28.2-1.5 5.6-2.9 14.6-.6 19.9 1 2.2 2.5 3.6 4.9 3.6 5 0 12.3-6.6 15.8-10.1 4.5-4.5 10.3-11.5 12.5-16l5.2-15.5c2.6-6.8 9.9-5.6 9.9 0 0 10.2-3.7 13.6-10 34.7-5.8 19.5-7.6 25.8-7.6 25.8-.7 2.8-3.4 7.5-6.3 7.5-1.2 0-2.1-.4-2.6-1.2-1-1.4-.9-5.3-.8-6.3.2-3.2 6.3-22.2 7.3-25.2-2 2.2-4.1 4.4-6.4 6.6-5.4 5.1-14.1 11.8-21.5 11.8-3.4 0-5.6-.9-7.7-2.4l7.6 79.6c2 5 39.2 17.1 88.2 17.1 49.1 0 86.3-12.2 88.2-17.1l10.9-94.6c-5.7 5.2-12.3 11.6-19.6 14.8-5.4 2.3-17.4 3.8-17.4-5.7 0-5.2 9.1-14.8 14.4-21.5 1.4-1.7 4.7-5.9 4.7-8.1 0-2.9-6-2.2-11.7 2.5-3.2 2.7-6.2 6.3-8.7 9.7-4.3 6-6.6 11.2-8.5 15.5-6.2 14.2-4.1 8.6-9.1 22-5 13.3-4.2 11.8-5.2 14-.9 1.9-2.2 3.5-4 4.5-1.9 1-4.5.9-6.1-.3-.9-.6-1.3-1.9-1.3-3.7 0-.9.1-1.8.3-2.7 1.5-6.1 7.8-18.1 15-34.3 1.6-3.7 1-2.6.8-2.3-6.2 6-10.9 8.9-14.4 10.5-5.8 2.6-13 2.6-14.5-4.1-.1-.4-.1-.8-.2-1.2-11.8 9.2-24.3 11.7-20-8.1-4.6 8.2-12.6 14.9-22.4 14.9-4.1 0-7.1-1.4-8.6-5.1-2.3-5.5 1.3-14.9 4.6-23.8 1.7-4.5 4-9.9 7.1-16.2 1.6-3.4 4.2-5.4 7.6-4.5.6.2 1.1.4 1.6.7 2.6 1.8 1.6 4.5.3 7.2-3.8 7.5-7.1 13-9.3 20.8-.9 3.3-2 9 1.5 9 2.4 0 4.7-.8 6.9-2.4 4.6-3.4 8.3-8.5 11.1-13.5 2-3.6 4.4-8.3 5.6-12.3.5-1.7 1.1-3.3 1.8-4.8 1.1-2.5 2.6-5.1 5.2-5.1 1.3 0 2.4.5 3.2 1.5 1.7 2.2 1.3 4.5.4 6.9-2 5.6-4.7 10.6-6.9 16.7-1.3 3.5-2.7 8-2.7 11.7 0 3.4 3.7 2.6 6.8 1.2 2.4-1.1 4.8-2.8 6.8-4.5 1.2-4.9.9-3.8 26.4-68.2 1.3-3.3 3.7-4.7 6.1-4.7 1.2 0 2.2.4 3.2 1.1 1.7 1.3 1.7 4.1 1 6.2-.7 1.9-.6 1.3-4.5 10.5-5.2 12.1-8.6 20.8-13.2 31.9-1.9 4.6-7.7 18.9-8.7 22.3-.6 2.2-1.3 5.8 1 5.8 5.4 0 19.3-13.1 23.1-17 .2-.3.5-.4.9-.6.6-1.9 1.2-3.7 1.7-5.5 1.4-3.8 2.7-8.2 5.3-11.3.8-1 1.7-1.6 2.7-1.6 2.8 0 4.2 1.2 4.2 4 0 1.1-.7 5.1-1.1 6.2 1.4-1.5 2.9-3 4.5-4.5 15-13.9 25.7-6.8 25.7.2 0 7.4-8.9 17.7-13.8 23.4-1.6 1.9-4.9 5.4-5 6.4 0 1.3.9 1.8 2.2 1.8 2 0 6.4-3.5 8-4.7 5-3.9 11.8-9.9 16.6-14.1l14.8-136.8c-30.5 17.1-197.6 17.2-228.3.2zm229.7-8.5c0 21-231.2 21-231.2 0 0-8.8 51.8-15.9 115.6-15.9 9 0 17.8.1 26.3.4l12.6-48.7L228.1.6c1.4-1.4 5.8-.2 9.9 3.5s6.6 7.9 5.3 9.3l-.1.1L185.9 74l-10 40.7c39.9 2.6 67.6 8.1 67.6 14.6zm-69.4 4.6c0-.8-.9-1.5-2.5-2.1l-.2.8c0 1.3-5 2.4-11.1 2.4s-11.1-1.1-11.1-2.4c0-.1 0-.2.1-.3l.2-.7c-1.8.6-3 1.4-3 2.3 0 2.1 6.2 3.7 13.7 3.7 7.7.1 13.9-1.6 13.9-3.7z\"]\n};\nvar faHackerNews = {\n prefix: 'fab',\n iconName: 'hacker-news',\n icon: [448, 512, [], \"f1d4\", \"M0 32v448h448V32H0zm21.2 197.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z\"]\n};\nvar faHackerNewsSquare = {\n prefix: 'fab',\n iconName: 'hacker-news-square',\n icon: [448, 512, [], \"f3af\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.2 229.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z\"]\n};\nvar faHackerrank = {\n prefix: 'fab',\n iconName: 'hackerrank',\n icon: [512, 512, [], \"f5f7\", \"M477.5 128C463 103.05 285.13 0 256.16 0S49.25 102.79 34.84 128s-14.49 230.8 0 256 192.38 128 221.32 128S463 409.08 477.49 384s14.51-231 .01-256zM316.13 414.22c-4 0-40.91-35.77-38-38.69.87-.87 6.26-1.48 17.55-1.83 0-26.23.59-68.59.94-86.32 0-2-.44-3.43-.44-5.85h-79.93c0 7.1-.46 36.2 1.37 72.88.23 4.54-1.58 6-5.74 5.94-10.13 0-20.27-.11-30.41-.08-4.1 0-5.87-1.53-5.74-6.11.92-33.44 3-84-.15-212.67v-3.17c-9.67-.35-16.38-1-17.26-1.84-2.92-2.92 34.54-38.69 38.49-38.69s41.17 35.78 38.27 38.69c-.87.87-7.9 1.49-16.77 1.84v3.16c-2.42 25.75-2 79.59-2.63 105.39h80.26c0-4.55.39-34.74-1.2-83.64-.1-3.39.95-5.17 4.21-5.2 11.07-.08 22.15-.13 33.23-.06 3.46 0 4.57 1.72 4.5 5.38C333 354.64 336 341.29 336 373.69c8.87.35 16.82 1 17.69 1.84 2.88 2.91-33.62 38.69-37.58 38.69z\"]\n};\nvar faHips = {\n prefix: 'fab',\n iconName: 'hips',\n icon: [640, 512, [], \"f452\", \"M251.6 157.6c0-1.9-.9-2.8-2.8-2.8h-40.9c-1.6 0-2.7 1.4-2.7 2.8v201.8c0 1.4 1.1 2.8 2.7 2.8h40.9c1.9 0 2.8-.9 2.8-2.8zM156.5 168c-16.1-11.8-36.3-17.9-60.3-18-18.1-.1-34.6 3.7-49.8 11.4V80.2c0-1.8-.9-2.7-2.8-2.7H2.7c-1.8 0-2.7.9-2.7 2.7v279.2c0 1.9.9 2.8 2.7 2.8h41c1.9 0 2.8-.9 2.8-2.8V223.3c0-.8-2.8-27 45.8-27 48.5 0 45.8 26.1 45.8 27v122.6c0 9 7.3 16.3 16.4 16.3h27.3c1.8 0 2.7-.9 2.7-2.8V223.3c0-23.4-9.3-41.8-28-55.3zm478.4 110.1c-6.8-15.7-18.4-27-34.9-34.1l-57.6-25.3c-8.6-3.6-9.2-11.2-2.6-16.1 7.4-5.5 44.3-13.9 84 6.8 1.7 1 4-.3 4-2.4v-44.7c0-1.3-.6-2.1-1.9-2.6-17.7-6.6-36.1-9.9-55.1-9.9-26.5 0-45.3 5.8-58.5 15.4-.5.4-28.4 20-22.7 53.7 3.4 19.6 15.8 34.2 37.2 43.6l53.6 23.5c11.6 5.1 15.2 13.3 12.2 21.2-3.7 9.1-13.2 13.6-36.5 13.6-24.3 0-44.7-8.9-58.4-19.1-2.1-1.4-4.4.2-4.4 2.3v34.4c0 10.4 4.9 17.3 14.6 20.7 15.6 5.5 31.6 8.2 48.2 8.2 12.7 0 25.8-1.2 36.3-4.3.7-.3 36-8.9 45.6-45.8 3.5-13.5 2.4-26.5-3.1-39.1zM376.2 149.8c-31.7 0-104.2 20.1-104.2 103.5v183.5c0 .8.6 2.7 2.7 2.7h40.9c1.9 0 2.8-.9 2.8-2.7V348c16.5 12.7 35.8 19.1 57.7 19.1 60.5 0 108.7-48.5 108.7-108.7.1-60.3-48.2-108.6-108.6-108.6zm0 170.9c-17.2 0-31.9-6.1-44-18.2-12.2-12.2-18.2-26.8-18.2-44 0-34.5 27.6-62.2 62.2-62.2 34.5 0 62.2 27.6 62.2 62.2.1 34.3-27.3 62.2-62.2 62.2zM228.3 72.5c-15.9 0-28.8 12.9-28.9 28.9 0 15.6 12.7 28.9 28.9 28.9s28.9-13.1 28.9-28.9c0-16.2-13-28.9-28.9-28.9z\"]\n};\nvar faHireAHelper = {\n prefix: 'fab',\n iconName: 'hire-a-helper',\n icon: [512, 512, [], \"f3b0\", \"M443.1 0H71.9C67.9 37.3 37.4 67.8 0 71.7v371.5c37.4 4.9 66 32.4 71.9 68.8h372.2c3-36.4 32.5-65.8 67.9-69.8V71.7c-36.4-5.9-65-35.3-68.9-71.7zm-37 404.9c-36.3 0-18.8-2-55.1-2-35.8 0-21 2-56.1 2-5.9 0-4.9-8.2 0-9.8 22.8-7.6 22.9-10.2 24.6-12.8 10.4-15.6 5.9-83 5.9-113 0-5.3-6.4-12.8-13.8-12.8H200.4c-7.4 0-13.8 7.5-13.8 12.8 0 30-4.5 97.4 5.9 113 1.7 2.5 1.8 5.2 24.6 12.8 4.9 1.6 6 9.8 0 9.8-35.1 0-20.3-2-56.1-2-36.3 0-18.8 2-55.1 2-7.9 0-5.8-10.8 0-10.8 10.2-3.4 13.5-3.5 21.7-13.8 7.7-12.9 7.9-44.4 7.9-127.8V151.3c0-22.2-12.2-28.3-28.6-32.4-8.8-2.2-4-11.8 1-11.8 36.5 0 20.6 2 57.1 2 32.7 0 16.5-2 49.2-2 3.3 0 8.5 8.3 1 10.8-4.9 1.6-27.6 3.7-27.6 39.3 0 45.6-.2 55.8 1 68.8 0 1.3 2.3 12.8 12.8 12.8h109.2c10.5 0 12.8-11.5 12.8-12.8 1.2-13 1-23.2 1-68.8 0-35.6-22.7-37.7-27.6-39.3-7.5-2.5-2.3-10.8 1-10.8 32.7 0 16.5 2 49.2 2 36.5 0 20.6-2 57.1-2 4.9 0 9.9 9.6 1 11.8-16.4 4.1-28.6 10.3-28.6 32.4v101.2c0 83.4.1 114.9 7.9 127.8 8.2 10.2 11.4 10.4 21.7 13.8 5.8 0 7.8 10.8 0 10.8z\"]\n};\nvar faHive = {\n prefix: 'fab',\n iconName: 'hive',\n icon: [512, 512, [], \"e07f\", \"M260.353,254.878,131.538,33.1a2.208,2.208,0,0,0-3.829.009L.3,254.887A2.234,2.234,0,0,0,.3,257.122L129.116,478.9a2.208,2.208,0,0,0,3.83-.009L260.358,257.113A2.239,2.239,0,0,0,260.353,254.878Zm39.078-25.713a2.19,2.19,0,0,0,1.9,1.111h66.509a2.226,2.226,0,0,0,1.9-3.341L259.115,33.111a2.187,2.187,0,0,0-1.9-1.111H190.707a2.226,2.226,0,0,0-1.9,3.341ZM511.7,254.886,384.9,33.112A2.2,2.2,0,0,0,382.99,32h-66.6a2.226,2.226,0,0,0-1.906,3.34L440.652,256,314.481,476.66a2.226,2.226,0,0,0,1.906,3.34h66.6a2.2,2.2,0,0,0,1.906-1.112L511.7,257.114A2.243,2.243,0,0,0,511.7,254.886ZM366.016,284.917H299.508a2.187,2.187,0,0,0-1.9,1.111l-108.8,190.631a2.226,2.226,0,0,0,1.9,3.341h66.509a2.187,2.187,0,0,0,1.9-1.111l108.8-190.631A2.226,2.226,0,0,0,366.016,284.917Z\"]\n};\nvar faHooli = {\n prefix: 'fab',\n iconName: 'hooli',\n icon: [640, 512, [], \"f427\", \"M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z\"]\n};\nvar faHornbill = {\n prefix: 'fab',\n iconName: 'hornbill',\n icon: [512, 512, [], \"f592\", \"M76.38 370.3a37.8 37.8 0 1 1-32.07-32.42c-78.28-111.35 52-190.53 52-190.53-5.86 43-8.24 91.16-8.24 91.16-67.31 41.49.93 64.06 39.81 72.87a140.38 140.38 0 0 0 131.66 91.94c1.92 0 3.77-.21 5.67-.28l.11 18.86c-99.22 1.39-158.7-29.14-188.94-51.6zm108-327.7A37.57 37.57 0 0 0 181 21.45a37.95 37.95 0 1 0-31.17 54.22c-22.55 29.91-53.83 89.57-52.42 190l21.84-.15c0-.9-.14-1.77-.14-2.68A140.42 140.42 0 0 1 207 132.71c8-37.71 30.7-114.3 73.8-44.29 0 0 48.14 2.38 91.18 8.24 0 0-77.84-128-187.59-54.06zm304.19 134.17a37.94 37.94 0 1 0-53.84-28.7C403 126.13 344.89 99 251.28 100.33l.14 22.5c2.7-.15 5.39-.41 8.14-.41a140.37 140.37 0 0 1 130.49 88.76c39.1 9 105.06 31.58 38.46 72.54 0 0-2.34 48.13-8.21 91.16 0 0 133.45-81.16 49-194.61a37.45 37.45 0 0 0 19.31-3.5zM374.06 436.24c21.43-32.46 46.42-89.69 45.14-179.66l-19.52.14c.08 2.06.3 4.07.3 6.15a140.34 140.34 0 0 1-91.39 131.45c-8.85 38.95-31.44 106.66-72.77 39.49 0 0-48.12-2.34-91.19-8.22 0 0 79.92 131.34 191.9 51a37.5 37.5 0 0 0 3.64 14 37.93 37.93 0 1 0 33.89-54.29z\"]\n};\nvar faHotjar = {\n prefix: 'fab',\n iconName: 'hotjar',\n icon: [448, 512, [], \"f3b1\", \"M414.9 161.5C340.2 29 121.1 0 121.1 0S222.2 110.4 93 197.7C11.3 252.8-21 324.4 14 402.6c26.8 59.9 83.5 84.3 144.6 93.4-29.2-55.1-6.6-122.4-4.1-129.6 57.1 86.4 165 0 110.8-93.9 71 15.4 81.6 138.6 27.1 215.5 80.5-25.3 134.1-88.9 148.8-145.6 15.5-59.3 3.7-127.9-26.3-180.9z\"]\n};\nvar faHouzz = {\n prefix: 'fab',\n iconName: 'houzz',\n icon: [448, 512, [], \"f27c\", \"M275.9 330.7H171.3V480H17V32h109.5v104.5l305.1 85.6V480H275.9z\"]\n};\nvar faHtml5 = {\n prefix: 'fab',\n iconName: 'html5',\n icon: [384, 512, [], \"f13b\", \"M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z\"]\n};\nvar faHubspot = {\n prefix: 'fab',\n iconName: 'hubspot',\n icon: [512, 512, [], \"f3b2\", \"M267.4 211.6c-25.1 23.7-40.8 57.3-40.8 94.6 0 29.3 9.7 56.3 26 78L203.1 434c-4.4-1.6-9.1-2.5-14-2.5-10.8 0-20.9 4.2-28.5 11.8-7.6 7.6-11.8 17.8-11.8 28.6s4.2 20.9 11.8 28.5c7.6 7.6 17.8 11.6 28.5 11.6 10.8 0 20.9-3.9 28.6-11.6 7.6-7.6 11.8-17.8 11.8-28.5 0-4.2-.6-8.2-1.9-12.1l50-50.2c22 16.9 49.4 26.9 79.3 26.9 71.9 0 130-58.3 130-130.2 0-65.2-47.7-119.2-110.2-128.7V116c17.5-7.4 28.2-23.8 28.2-42.9 0-26.1-20.9-47.9-47-47.9S311.2 47 311.2 73.1c0 19.1 10.7 35.5 28.2 42.9v61.2c-15.2 2.1-29.6 6.7-42.7 13.6-27.6-20.9-117.5-85.7-168.9-124.8 1.2-4.4 2-9 2-13.8C129.8 23.4 106.3 0 77.4 0 48.6 0 25.2 23.4 25.2 52.2c0 28.9 23.4 52.3 52.2 52.3 9.8 0 18.9-2.9 26.8-7.6l163.2 114.7zm89.5 163.6c-38.1 0-69-30.9-69-69s30.9-69 69-69 69 30.9 69 69-30.9 69-69 69z\"]\n};\nvar faIdeal = {\n prefix: 'fab',\n iconName: 'ideal',\n icon: [576, 512, [], \"e013\", \"M125.61,165.48a49.07,49.07,0,1,0,49.06,49.06A49.08,49.08,0,0,0,125.61,165.48ZM86.15,425.84h78.94V285.32H86.15Zm151.46-211.6c0-20-10-22.53-18.74-22.53H204.82V237.5h14.05C228.62,237.5,237.61,234.69,237.61,214.24Zm201.69,46V168.93h22.75V237.5h33.69C486.5,113.08,388.61,86.19,299.67,86.19H204.84V169h14c25.6,0,41.5,17.35,41.5,45.26,0,28.81-15.52,46-41.5,46h-14V425.88h94.83c144.61,0,194.94-67.16,196.72-165.64Zm-109.75,0H273.3V169h54.43v22.73H296v10.58h30V225H296V237.5h33.51Zm74.66,0-5.16-17.67H369.31l-5.18,17.67H340.47L368,168.92h32.35l27.53,91.34ZM299.65,32H32V480H299.65c161.85,0,251-79.73,251-224.52C550.62,172,518,32,299.65,32Zm0,426.92H53.07V53.07H299.65c142.1,0,229.9,64.61,229.9,202.41C529.55,389.57,448.55,458.92,299.65,458.92Zm83.86-264.85L376,219.88H392.4l-7.52-25.81Z\"]\n};\nvar faImdb = {\n prefix: 'fab',\n iconName: 'imdb',\n icon: [448, 512, [], \"f2d8\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.3 229.2H21c.1-.1.2-.3.3-.4zM97 319.8H64V192h33zm113.2 0h-28.7v-86.4l-11.6 86.4h-20.6l-12.2-84.5v84.5h-29V192h42.8c3.3 19.8 6 39.9 8.7 59.9l7.6-59.9h43zm11.4 0V192h24.6c17.6 0 44.7-1.6 49 20.9 1.7 7.6 1.4 16.3 1.4 24.4 0 88.5 11.1 82.6-75 82.5zm160.9-29.2c0 15.7-2.4 30.9-22.2 30.9-9 0-15.2-3-20.9-9.8l-1.9 8.1h-29.8V192h31.7v41.7c6-6.5 12-9.2 20.9-9.2 21.4 0 22.2 12.8 22.2 30.1zM265 229.9c0-9.7 1.6-16-10.3-16v83.7c12.2.3 10.3-8.7 10.3-18.4zm85.5 26.1c0-5.4 1.1-12.7-6.2-12.7-6 0-4.9 8.9-4.9 12.7 0 .6-1.1 39.6 1.1 44.7.8 1.6 2.2 2.4 3.8 2.4 7.8 0 6.2-9 6.2-14.4z\"]\n};\nvar faInnosoft = {\n prefix: 'fab',\n iconName: 'innosoft',\n icon: [448, 512, [], \"e080\", \"M422.559,159.71a27.379,27.379,0,0,0-13.866-23.337,26.42,26.42,0,0,0-26.211.133L73.943,314.647V176.261a11.955,11.955,0,0,1,6.047-10.34L218.066,86.208a12.153,12.153,0,0,1,11.922.025l32.656,18.853L112.581,191.723v56L359.642,105.086,241.129,36.679c-10.992-6.129-22.3-6.255-33.8-.27l-164.6,95.026c-10.634,6.12-16.771,16.39-17.29,29.124l0,191.5c.17,10.135,5.08,18.672,13.474,23.428a27.037,27.037,0,0,0,26.736-.045L374.057,197.376V335.657a11.976,11.976,0,0,1-5.92,10.368L230.025,425.77a12.175,12.175,0,0,1-11.937.062l-32.723-18.9,150.051-86.627v-56L88.367,406.932l118.794,68.583a33.88,33.88,0,0,0,34.25-.327l164.527-94.995c10.746-6.631,16.649-17.118,16.624-29.528Z\"]\n};\nvar faInstagram = {\n prefix: 'fab',\n iconName: 'instagram',\n icon: [448, 512, [], \"f16d\", \"M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z\"]\n};\nvar faInstagramSquare = {\n prefix: 'fab',\n iconName: 'instagram-square',\n icon: [448, 512, [], \"e055\", \"M224,202.66A53.34,53.34,0,1,0,277.36,256,53.38,53.38,0,0,0,224,202.66Zm124.71-41a54,54,0,0,0-30.41-30.41c-21-8.29-71-6.43-94.3-6.43s-73.25-1.93-94.31,6.43a54,54,0,0,0-30.41,30.41c-8.28,21-6.43,71.05-6.43,94.33S91,329.26,99.32,350.33a54,54,0,0,0,30.41,30.41c21,8.29,71,6.43,94.31,6.43s73.24,1.93,94.3-6.43a54,54,0,0,0,30.41-30.41c8.35-21,6.43-71.05,6.43-94.33S357.1,182.74,348.75,161.67ZM224,338a82,82,0,1,1,82-82A81.9,81.9,0,0,1,224,338Zm85.38-148.3a19.14,19.14,0,1,1,19.13-19.14A19.1,19.1,0,0,1,309.42,189.74ZM400,32H48A48,48,0,0,0,0,80V432a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V80A48,48,0,0,0,400,32ZM382.88,322c-1.29,25.63-7.14,48.34-25.85,67s-41.4,24.63-67,25.85c-26.41,1.49-105.59,1.49-132,0-25.63-1.29-48.26-7.15-67-25.85s-24.63-41.42-25.85-67c-1.49-26.42-1.49-105.61,0-132,1.29-25.63,7.07-48.34,25.85-67s41.47-24.56,67-25.78c26.41-1.49,105.59-1.49,132,0,25.63,1.29,48.33,7.15,67,25.85s24.63,41.42,25.85,67.05C384.37,216.44,384.37,295.56,382.88,322Z\"]\n};\nvar faInstalod = {\n prefix: 'fab',\n iconName: 'instalod',\n icon: [512, 512, [], \"e081\", \"M153.384,480H387.113L502.554,275.765,204.229,333.211ZM504.726,240.078,387.113,32H155.669L360.23,267.9ZM124.386,48.809,7.274,256,123.236,461.154,225.627,165.561Z\"]\n};\nvar faIntercom = {\n prefix: 'fab',\n iconName: 'intercom',\n icon: [448, 512, [], \"f7af\", \"M392 32H56C25.1 32 0 57.1 0 88v336c0 30.9 25.1 56 56 56h336c30.9 0 56-25.1 56-56V88c0-30.9-25.1-56-56-56zm-108.3 82.1c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zm-74.6-7.5c0-19.8 29.9-19.8 29.9 0v216.5c0 19.8-29.9 19.8-29.9 0V106.6zm-74.7 7.5c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zM59.7 144c0-19.8 29.9-19.8 29.9 0v134.3c0 19.8-29.9 19.8-29.9 0V144zm323.4 227.8c-72.8 63-241.7 65.4-318.1 0-15-12.8 4.4-35.5 19.4-22.7 65.9 55.3 216.1 53.9 279.3 0 14.9-12.9 34.3 9.8 19.4 22.7zm5.2-93.5c0 19.8-29.9 19.8-29.9 0V144c0-19.8 29.9-19.8 29.9 0v134.3z\"]\n};\nvar faInternetExplorer = {\n prefix: 'fab',\n iconName: 'internet-explorer',\n icon: [512, 512, [], \"f26b\", \"M483.049 159.706c10.855-24.575 21.424-60.438 21.424-87.871 0-72.722-79.641-98.371-209.673-38.577-107.632-7.181-211.221 73.67-237.098 186.457 30.852-34.862 78.271-82.298 121.977-101.158C125.404 166.85 79.128 228.002 43.992 291.725 23.246 329.651 0 390.94 0 436.747c0 98.575 92.854 86.5 180.251 42.006 31.423 15.43 66.559 15.573 101.695 15.573 97.124 0 184.249-54.294 216.814-146.022H377.927c-52.509 88.593-196.819 52.996-196.819-47.436H509.9c6.407-43.581-1.655-95.715-26.851-141.162zM64.559 346.877c17.711 51.15 53.703 95.871 100.266 123.304-88.741 48.94-173.267 29.096-100.266-123.304zm115.977-108.873c2-55.151 50.276-94.871 103.98-94.871 53.418 0 101.981 39.72 103.981 94.871H180.536zm184.536-187.6c21.425-10.287 48.563-22.003 72.558-22.003 31.422 0 54.274 21.717 54.274 53.722 0 20.003-7.427 49.007-14.569 67.867-26.28-42.292-65.986-81.584-112.263-99.586z\"]\n};\nvar faInvision = {\n prefix: 'fab',\n iconName: 'invision',\n icon: [448, 512, [], \"f7b0\", \"M407.4 32H40.6C18.2 32 0 50.2 0 72.6v366.8C0 461.8 18.2 480 40.6 480h366.8c22.4 0 40.6-18.2 40.6-40.6V72.6c0-22.4-18.2-40.6-40.6-40.6zM176.1 145.6c.4 23.4-22.4 27.3-26.6 27.4-14.9 0-27.1-12-27.1-27 .1-35.2 53.1-35.5 53.7-.4zM332.8 377c-65.6 0-34.1-74-25-106.6 14.1-46.4-45.2-59-59.9.7l-25.8 103.3H177l8.1-32.5c-31.5 51.8-94.6 44.4-94.6-4.3.1-14.3.9-14 23-104.1H81.7l9.7-35.6h76.4c-33.6 133.7-32.6 126.9-32.9 138.2 0 20.9 40.9 13.5 57.4-23.2l19.8-79.4h-32.3l9.7-35.6h68.8l-8.9 40.5c40.5-75.5 127.9-47.8 101.8 38-14.2 51.1-14.6 50.7-14.9 58.8 0 15.5 17.5 22.6 31.8-16.9L386 325c-10.5 36.7-29.4 52-53.2 52z\"]\n};\nvar faIoxhost = {\n prefix: 'fab',\n iconName: 'ioxhost',\n icon: [640, 512, [], \"f208\", \"M616 160h-67.3C511.2 70.7 422.9 8 320 8 183 8 72 119 72 256c0 16.4 1.6 32.5 4.7 48H24c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h67.3c37.5 89.3 125.8 152 228.7 152 137 0 248-111 248-248 0-16.4-1.6-32.5-4.7-48H616c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24zm-96 96c0 110.5-89.5 200-200 200-75.7 0-141.6-42-175.5-104H424c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24H125.8c-3.8-15.4-5.8-31.4-5.8-48 0-110.5 89.5-200 200-200 75.7 0 141.6 42 175.5 104H216c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h298.2c3.8 15.4 5.8 31.4 5.8 48zm-304-24h208c13.3 0 24 10.7 24 24 0 13.2-10.7 24-24 24H216c-13.3 0-24-10.7-24-24 0-13.2 10.7-24 24-24z\"]\n};\nvar faItchIo = {\n prefix: 'fab',\n iconName: 'itch-io',\n icon: [512, 512, [], \"f83a\", \"M71.92 34.77C50.2 47.67 7.4 96.84 7 109.73v21.34c0 27.06 25.29 50.84 48.25 50.84 27.57 0 50.54-22.85 50.54-50 0 27.12 22.18 50 49.76 50s49-22.85 49-50c0 27.12 23.59 50 51.16 50h.5c27.57 0 51.16-22.85 51.16-50 0 27.12 21.47 50 49 50s49.76-22.85 49.76-50c0 27.12 23 50 50.54 50 23 0 48.25-23.78 48.25-50.84v-21.34c-.4-12.9-43.2-62.07-64.92-75C372.56 32.4 325.76 32 256 32S91.14 33.1 71.92 34.77zm132.32 134.39c-22 38.4-77.9 38.71-99.85.25-13.17 23.14-43.17 32.07-56 27.66-3.87 40.15-13.67 237.13 17.73 269.15 80 18.67 302.08 18.12 379.76 0 31.65-32.27 21.32-232 17.75-269.15-12.92 4.44-42.88-4.6-56-27.66-22 38.52-77.85 38.1-99.85-.24-7.1 12.49-23.05 28.94-51.76 28.94a57.54 57.54 0 0 1-51.75-28.94zm-41.58 53.77c16.47 0 31.09 0 49.22 19.78a436.91 436.91 0 0 1 88.18 0C318.22 223 332.85 223 349.31 223c52.33 0 65.22 77.53 83.87 144.45 17.26 62.15-5.52 63.67-33.95 63.73-42.15-1.57-65.49-32.18-65.49-62.79-39.25 6.43-101.93 8.79-155.55 0 0 30.61-23.34 61.22-65.49 62.79-28.42-.06-51.2-1.58-33.94-63.73 18.67-67 31.56-144.45 83.88-144.45zM256 270.79s-44.38 40.77-52.35 55.21l29-1.17v25.32c0 1.55 21.34.16 23.33.16 11.65.54 23.31 1 23.31-.16v-25.28l29 1.17c-8-14.48-52.35-55.24-52.35-55.24z\"]\n};\nvar faItunes = {\n prefix: 'fab',\n iconName: 'itunes',\n icon: [448, 512, [], \"f3b4\", \"M223.6 80.3C129 80.3 52.5 157 52.5 251.5S129 422.8 223.6 422.8s171.2-76.7 171.2-171.2c0-94.6-76.7-171.3-171.2-171.3zm79.4 240c-3.2 13.6-13.5 21.2-27.3 23.8-12.1 2.2-22.2 2.8-31.9-5-11.8-10-12-26.4-1.4-36.8 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 3.2-3.6 2.2-2 2.2-80.8 0-5.6-2.7-7.1-8.4-6.1-4 .7-91.9 17.1-91.9 17.1-5 1.1-6.7 2.6-6.7 8.3 0 116.1.5 110.8-1.2 118.5-2.1 9-7.6 15.8-14.9 19.6-8.3 4.6-23.4 6.6-31.4 5.2-21.4-4-28.9-28.7-14.4-42.9 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 5-5.7.9-127 2.6-133.7.4-2.6 1.5-4.8 3.5-6.4 2.1-1.7 5.8-2.7 6.7-2.7 101-19 113.3-21.4 115.1-21.4 5.7-.4 9 3 9 8.7-.1 170.6.4 161.4-1 167.6zM345.2 32H102.8C45.9 32 0 77.9 0 134.8v242.4C0 434.1 45.9 480 102.8 480h242.4c57 0 102.8-45.9 102.8-102.8V134.8C448 77.9 402.1 32 345.2 32zM223.6 444c-106.3 0-192.5-86.2-192.5-192.5S117.3 59 223.6 59s192.5 86.2 192.5 192.5S329.9 444 223.6 444z\"]\n};\nvar faItunesNote = {\n prefix: 'fab',\n iconName: 'itunes-note',\n icon: [384, 512, [], \"f3b5\", \"M381.9 388.2c-6.4 27.4-27.2 42.8-55.1 48-24.5 4.5-44.9 5.6-64.5-10.2-23.9-20.1-24.2-53.4-2.7-74.4 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 6.4-7.2 4.4-4.1 4.4-163.2 0-11.2-5.5-14.3-17-12.3-8.2 1.4-185.7 34.6-185.7 34.6-10.2 2.2-13.4 5.2-13.4 16.7 0 234.7 1.1 223.9-2.5 239.5-4.2 18.2-15.4 31.9-30.2 39.5-16.8 9.3-47.2 13.4-63.4 10.4-43.2-8.1-58.4-58-29.1-86.6 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 10.1-11.5 1.8-256.6 5.2-270.2.8-5.2 3-9.6 7.1-12.9 4.2-3.5 11.8-5.5 13.4-5.5 204-38.2 228.9-43.1 232.4-43.1 11.5-.8 18.1 6 18.1 17.6.2 344.5 1.1 326-1.8 338.5z\"]\n};\nvar faJava = {\n prefix: 'fab',\n iconName: 'java',\n icon: [384, 512, [], \"f4e4\", \"M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z\"]\n};\nvar faJediOrder = {\n prefix: 'fab',\n iconName: 'jedi-order',\n icon: [448, 512, [], \"f50e\", \"M398.5 373.6c95.9-122.1 17.2-233.1 17.2-233.1 45.4 85.8-41.4 170.5-41.4 170.5 105-171.5-60.5-271.5-60.5-271.5 96.9 72.7-10.1 190.7-10.1 190.7 85.8 158.4-68.6 230.1-68.6 230.1s-.4-16.9-2.2-85.7c4.3 4.5 34.5 36.2 34.5 36.2l-24.2-47.4 62.6-9.1-62.6-9.1 20.2-55.5-31.4 45.9c-2.2-87.7-7.8-305.1-7.9-306.9v-2.4 1-1 2.4c0 1-5.6 219-7.9 306.9l-31.4-45.9 20.2 55.5-62.6 9.1 62.6 9.1-24.2 47.4 34.5-36.2c-1.8 68.8-2.2 85.7-2.2 85.7s-154.4-71.7-68.6-230.1c0 0-107-118.1-10.1-190.7 0 0-165.5 99.9-60.5 271.5 0 0-86.8-84.8-41.4-170.5 0 0-78.7 111 17.2 233.1 0 0-26.2-16.1-49.4-77.7 0 0 16.9 183.3 222 185.7h4.1c205-2.4 222-185.7 222-185.7-23.6 61.5-49.9 77.7-49.9 77.7z\"]\n};\nvar faJenkins = {\n prefix: 'fab',\n iconName: 'jenkins',\n icon: [512, 512, [], \"f3b6\", \"M487.1 425c-1.4-11.2-19-23.1-28.2-31.9-5.1-5-29-23.1-30.4-29.9-1.4-6.6 9.7-21.5 13.3-28.9 5.1-10.7 8.8-23.7 11.3-32.6 18.8-66.1 20.7-156.9-6.2-211.2-10.2-20.6-38.6-49-56.4-62.5-42-31.7-119.6-35.3-170.1-16.6-14.1 5.2-27.8 9.8-40.1 17.1-33.1 19.4-68.3 32.5-78.1 71.6-24.2 10.8-31.5 41.8-30.3 77.8.2 7 4.1 15.8 2.7 22.4-.7 3.3-5.2 7.6-6.1 9.8-11.6 27.7-2.3 64 11.1 83.7 8.1 11.9 21.5 22.4 39.2 25.2.7 10.6 3.3 19.7 8.2 30.4 3.1 6.8 14.7 19 10.4 27.7-2.2 4.4-21 13.8-27.3 17.6C89 407.2 73.7 415 54.2 429c-12.6 9-32.3 10.2-29.2 31.1 2.1 14.1 10.1 31.6 14.7 45.8.7 2 1.4 4.1 2.1 6h422c4.9-15.3 9.7-30.9 14.6-47.2 3.4-11.4 10.2-27.8 8.7-39.7zM205.9 33.7c1.8-.5 3.4.7 4.9 2.4-.2 5.2-5.4 5.1-8.9 6.8-5.4 6.7-13.4 9.8-20 17.2-6.8 7.5-14.4 27.7-23.4 30-4.5 1.1-9.7-.8-13.6-.5-10.4.7-17.7 6-28.3 7.5 13.6-29.9 56.1-54 89.3-63.4zm-104.8 93.6c13.5-14.9 32.1-24.1 54.8-25.9 11.7 29.7-8.4 65-.9 97.6 2.3 9.9 10.2 25.4-2.4 25.7.3-28.3-34.8-46.3-61.3-29.6-1.8-21.5-4.9-51.7 9.8-67.8zm36.7 200.2c-1-4.1-2.7-12.9-2.3-15.1 1.6-8.7 17.1-12.5 11-24.7-11.3-.1-13.8 10.2-24.1 11.3-26.7 2.6-45.6-35.4-44.4-58.4 1-19.5 17.6-38.2 40.1-35.8 16 1.8 21.4 19.2 24.5 34.7 9.2.5 22.5-.4 26.9-7.6-.6-17.5-8.8-31.6-8.2-47.7 1-30.3 17.5-57.6 4.8-87.4 13.6-30.9 53.5-55.3 83.1-70 36.6-18.3 94.9-3.7 129.3 15.8 19.7 11.1 34.4 32.7 48.3 50.7-19.5-5.8-36.1 4.2-33.1 20.3 16.3-14.9 44.2-.2 52.5 16.4 7.9 15.8 7.8 39.3 9 62.8 2.9 57-10.4 115.9-39.1 157.1-7.7 11-14.1 23-24.9 30.6-26 18.2-65.4 34.7-99.2 23.4-44.7-15-65-44.8-89.5-78.8.7 18.7 13.8 34.1 26.8 48.4 11.3 12.5 25 26.6 39.7 32.4-12.3-2.9-31.1-3.8-36.2 7.2-28.6-1.9-55.1-4.8-68.7-24.2-10.6-15.4-21.4-41.4-26.3-61.4zm222 124.1c4.1-3 11.1-2.9 17.4-3.6-5.4-2.7-13-3.7-19.3-2.2-.1-4.2-2-6.8-3.2-10.2 10.6-3.8 35.5-28.5 49.6-20.3 6.7 3.9 9.5 26.2 10.1 37 .4 9-.8 18-4.5 22.8-18.8-.6-35.8-2.8-50.7-7 .9-6.1-1-12.1.6-16.5zm-17.2-20c-16.8.8-26-1.2-38.3-10.8.2-.8 1.4-.5 1.5-1.4 18 8 40.8-3.3 59-4.9-7.9 5.1-14.6 11.6-22.2 17.1zm-12.1 33.2c-1.6-9.4-3.5-12-2.8-20.2 25-16.6 29.7 28.6 2.8 20.2zM226 438.6c-11.6-.7-48.1-14-38.5-23.7 9.4 6.5 27.5 4.9 41.3 7.3.8 4.4-2.8 10.2-2.8 16.4zM57.7 497.1c-4.3-12.7-9.2-25.1-14.8-36.9 30.8-23.8 65.3-48.9 102.2-63.5 2.8-1.1 23.2 25.4 26.2 27.6 16.5 11.7 37 21 56.2 30.2 1.2 8.8 3.9 20.2 8.7 35.5.7 2.3 1.4 4.7 2.2 7.2H57.7zm240.6 5.7h-.8c.3-.2.5-.4.8-.5v.5zm7.5-5.7c2.1-1.4 4.3-2.8 6.4-4.3 1.1 1.4 2.2 2.8 3.2 4.3h-9.6zm15.1-24.7c-10.8 7.3-20.6 18.3-33.3 25.2-6 3.3-27 11.7-33.4 10.2-3.6-.8-3.9-5.3-5.4-9.5-3.1-9-10.1-23.4-10.8-37-.8-17.2-2.5-46 16-42.4 14.9 2.9 32.3 9.7 43.9 16.1 7.1 3.9 11.1 8.6 21.9 9.5-.1 1.4-.1 2.8-.2 4.3-5.9 3.9-15.3 3.8-21.8 7.1 9.5.4 17 2.7 23.5 5.9-.1 3.4-.3 7-.4 10.6zm53.4 24.7h-14c-.1-3.2-2.8-5.8-6.1-5.8s-5.9 2.6-6.1 5.8h-17.4c-2.8-4.4-5.7-8.6-8.9-12.5 2.1-2.2 4-4.7 6-6.9 9 3.7 14.8-4.9 21.7-4.2 7.9.8 14.2 11.7 25.4 11l-.6 12.6zm8.7 0c.2-4 .4-7.8.6-11.5 15.6-7.3 29 1.3 35.7 11.5H383zm83.4-37c-2.3 11.2-5.8 24-9.9 37.1-.2-.1-.4-.1-.6-.1H428c.6-1.1 1.2-2.2 1.9-3.3-2.6-6.1-9-8.7-10.9-15.5 12.1-22.7 6.5-93.4-24.2-78.5 4.3-6.3 15.6-11.5 20.8-19.3 13 10.4 20.8 20.3 33.2 31.4 6.8 6 20 13.3 21.4 23.1.8 5.5-2.6 18.9-3.8 25.1zM222.2 130.5c5.4-14.9 27.2-34.7 45-32 7.7 1.2 18 8.2 12.2 17.7-30.2-7-45.2 12.6-54.4 33.1-8.1-2-4.9-13.1-2.8-18.8zm184.1 63.1c8.2-3.6 22.4-.7 29.6-5.3-4.2-11.5-10.3-21.4-9.3-37.7.5 0 1 0 1.4.1 6.8 14.2 12.7 29.2 21.4 41.7-5.7 13.5-43.6 25.4-43.1 1.2zm20.4-43zm-117.2 45.7c-6.8-10.9-19-32.5-14.5-45.3 6.5 11.9 8.6 24.4 17.8 33.3 4.1 4 12.2 9 8.2 20.2-.9 2.7-7.8 8.6-11.7 9.7-14.4 4.3-47.9.9-36.6-17.1 11.9.7 27.9 7.8 36.8-.8zm27.3 70c3.8 6.6 1.4 18.7 12.1 20.6 20.2 3.4 43.6-12.3 58.1-17.8 9-15.2-.8-20.7-8.9-30.5-16.6-20-38.8-44.8-38-74.7 6.7-4.9 7.3 7.4 8.2 9.7 8.7 20.3 30.4 46.2 46.3 63.5 3.9 4.3 10.3 8.4 11 11.2 2.1 8.2-5.4 18-4.5 23.5-21.7 13.9-45.8 29.1-81.4 25.6-7.4-6.7-10.3-21.4-2.9-31.1zm-201.3-9.2c-6.8-3.9-8.4-21-16.4-21.4-11.4-.7-9.3 22.2-9.3 35.5-7.8-7.1-9.2-29.1-3.5-40.3-6.6-3.2-9.5 3.6-13.1 5.9 4.7-34.1 49.8-15.8 42.3 20.3zm299.6 28.8c-10.1 19.2-24.4 40.4-54 41-.6-6.2-1.1-15.6 0-19.4 22.7-2.2 36.6-13.7 54-21.6zm-141.9 12.4c18.9 9.9 53.6 11 79.3 10.2 1.4 5.6 1.3 12.6 1.4 19.4-33 1.8-72-6.4-80.7-29.6zm92.2 46.7c-1.7 4.3-5.3 9.3-9.8 11.1-12.1 4.9-45.6 8.7-62.4-.3-10.7-5.7-17.5-18.5-23.4-26-2.8-3.6-16.9-12.9-.2-12.9 13.1 32.7 58 29 95.8 28.1z\"]\n};\nvar faJira = {\n prefix: 'fab',\n iconName: 'jira',\n icon: [496, 512, [], \"f7b1\", \"M490 241.7C417.1 169 320.6 71.8 248.5 0 83 164.9 6 241.7 6 241.7c-7.9 7.9-7.9 20.7 0 28.7C138.8 402.7 67.8 331.9 248.5 512c379.4-378 15.7-16.7 241.5-241.7 8-7.9 8-20.7 0-28.6zm-241.5 90l-76-75.7 76-75.7 76 75.7-76 75.7z\"]\n};\nvar faJoget = {\n prefix: 'fab',\n iconName: 'joget',\n icon: [496, 512, [], \"f3b7\", \"M378.1 45C337.6 19.9 292.6 8 248.2 8 165 8 83.8 49.9 36.9 125.9c-71.9 116.6-35.6 269.3 81 341.2s269.3 35.6 341.2-80.9c71.9-116.6 35.6-269.4-81-341.2zm51.8 323.2c-40.4 65.5-110.4 101.5-182 101.5-6.8 0-13.6-.4-20.4-1-9-13.6-19.9-33.3-23.7-42.4-5.7-13.7-27.2-45.6 31.2-67.1 51.7-19.1 176.7-16.5 208.8-17.6-4 9-8.6 17.9-13.9 26.6zm-200.8-86.3c-55.5-1.4-81.7-20.8-58.5-48.2s51.1-40.7 68.9-51.2c17.9-10.5 27.3-33.7-23.6-29.7C87.3 161.5 48.6 252.1 37.6 293c-8.8-49.7-.1-102.7 28.5-149.1C128 43.4 259.6 12.2 360.1 74.1c74.8 46.1 111.2 130.9 99.3 212.7-24.9-.5-179.3-3.6-230.3-4.9zm183.8-54.8c-22.7-6-57 11.3-86.7 27.2-29.7 15.8-31.1 8.2-31.1 8.2s40.2-28.1 50.7-34.5 31.9-14 13.4-24.6c-3.2-1.8-6.7-2.7-10.4-2.7-17.8 0-41.5 18.7-67.5 35.6-31.5 20.5-65.3 31.3-65.3 31.3l169.5-1.6 46.5-23.4s3.6-9.5-19.1-15.5z\"]\n};\nvar faJoomla = {\n prefix: 'fab',\n iconName: 'joomla',\n icon: [448, 512, [], \"f1aa\", \"M.6 92.1C.6 58.8 27.4 32 60.4 32c30 0 54.5 21.9 59.2 50.2 32.6-7.6 67.1.6 96.5 30l-44.3 44.3c-20.5-20.5-42.6-16.3-55.4-3.5-14.3 14.3-14.3 37.9 0 52.2l99.5 99.5-44 44.3c-87.7-87.2-49.7-49.7-99.8-99.7-26.8-26.5-35-64.8-24.8-98.9C20.4 144.6.6 120.7.6 92.1zm129.5 116.4l44.3 44.3c10-10 89.7-89.7 99.7-99.8 14.3-14.3 37.6-14.3 51.9 0 12.8 12.8 17 35-3.5 55.4l44 44.3c31.2-31.2 38.5-67.6 28.9-101.2 29.2-4.1 51.9-29.2 51.9-59.5 0-33.2-26.8-60.1-59.8-60.1-30.3 0-55.4 22.5-59.5 51.6-33.8-9.9-71.7-1.5-98.3 25.1-18.3 19.1-71.1 71.5-99.6 99.9zm266.3 152.2c8.2-32.7-.9-68.5-26.3-93.9-11.8-12.2 5 4.7-99.5-99.7l-44.3 44.3 99.7 99.7c14.3 14.3 14.3 37.6 0 51.9-12.8 12.8-35 17-55.4-3.5l-44 44.3c27.6 30.2 68 38.8 102.7 28 5.5 27.4 29.7 48.1 58.9 48.1 33 0 59.8-26.8 59.8-60.1 0-30.2-22.5-55-51.6-59.1zm-84.3-53.1l-44-44.3c-87 86.4-50.4 50.4-99.7 99.8-14.3 14.3-37.6 14.3-51.9 0-13.1-13.4-16.9-35.3 3.2-55.4l-44-44.3c-30.2 30.2-38 65.2-29.5 98.3-26.7 6-46.2 29.9-46.2 58.2C0 453.2 26.8 480 59.8 480c28.6 0 52.5-19.8 58.6-46.7 32.7 8.2 68.5-.6 94.2-26 32.1-32 12.2-12.4 99.5-99.7z\"]\n};\nvar faJs = {\n prefix: 'fab',\n iconName: 'js',\n icon: [448, 512, [], \"f3b8\", \"M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"]\n};\nvar faJsSquare = {\n prefix: 'fab',\n iconName: 'js-square',\n icon: [448, 512, [], \"f3b9\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"]\n};\nvar faJsfiddle = {\n prefix: 'fab',\n iconName: 'jsfiddle',\n icon: [576, 512, [], \"f1cc\", \"M510.634 237.462c-4.727-2.621-5.664-5.748-6.381-10.776-2.352-16.488-3.539-33.619-9.097-49.095-35.895-99.957-153.99-143.386-246.849-91.646-27.37 15.25-48.971 36.369-65.493 63.903-3.184-1.508-5.458-2.71-7.824-3.686-30.102-12.421-59.049-10.121-85.331 9.167-25.531 18.737-36.422 44.548-32.676 76.408.355 3.025-1.967 7.621-4.514 9.545-39.712 29.992-56.031 78.065-41.902 124.615 13.831 45.569 57.514 79.796 105.608 81.433 30.291 1.031 60.637.546 90.959.539 84.041-.021 168.09.531 252.12-.48 52.664-.634 96.108-36.873 108.212-87.293 11.54-48.074-11.144-97.3-56.832-122.634zm21.107 156.88c-18.23 22.432-42.343 35.253-71.28 35.65-56.874.781-113.767.23-170.652.23 0 .7-163.028.159-163.728.154-43.861-.332-76.739-19.766-95.175-59.995-18.902-41.245-4.004-90.848 34.186-116.106 9.182-6.073 12.505-11.566 10.096-23.136-5.49-26.361 4.453-47.956 26.42-62.981 22.987-15.723 47.422-16.146 72.034-3.083 10.269 5.45 14.607 11.564 22.198-2.527 14.222-26.399 34.557-46.727 60.671-61.294 97.46-54.366 228.37 7.568 230.24 132.697.122 8.15 2.412 12.428 9.848 15.894 57.56 26.829 74.456 96.122 35.142 144.497zm-87.789-80.499c-5.848 31.157-34.622 55.096-66.666 55.095-16.953-.001-32.058-6.545-44.079-17.705-27.697-25.713-71.141-74.98-95.937-93.387-20.056-14.888-41.99-12.333-60.272 3.782-49.996 44.071 15.859 121.775 67.063 77.188 4.548-3.96 7.84-9.543 12.744-12.844 8.184-5.509 20.766-.884 13.168 10.622-17.358 26.284-49.33 38.197-78.863 29.301-28.897-8.704-48.84-35.968-48.626-70.179 1.225-22.485 12.364-43.06 35.414-55.965 22.575-12.638 46.369-13.146 66.991 2.474C295.68 280.7 320.467 323.97 352.185 343.47c24.558 15.099 54.254 7.363 68.823-17.506 28.83-49.209-34.592-105.016-78.868-63.46-3.989 3.744-6.917 8.932-11.41 11.72-10.975 6.811-17.333-4.113-12.809-10.353 20.703-28.554 50.464-40.44 83.271-28.214 31.429 11.714 49.108 44.366 42.76 78.186z\"]\n};\nvar faKaggle = {\n prefix: 'fab',\n iconName: 'kaggle',\n icon: [320, 512, [], \"f5fa\", \"M304.2 501.5L158.4 320.3 298.2 185c2.6-2.7 1.7-10.5-5.3-10.5h-69.2c-3.5 0-7 1.8-10.5 5.3L80.9 313.5V7.5q0-7.5-7.5-7.5H21.5Q14 0 14 7.5v497q0 7.5 7.5 7.5h51.9q7.5 0 7.5-7.5v-109l30.8-29.3 110.5 140.6c3 3.5 6.5 5.3 10.5 5.3h66.9q5.25 0 6-3z\"]\n};\nvar faKeybase = {\n prefix: 'fab',\n iconName: 'keybase',\n icon: [448, 512, [], \"f4f5\", \"M286.17 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18zm111.92-147.6c-9.5-14.62-39.37-52.45-87.26-73.71q-9.1-4.06-18.38-7.27a78.43 78.43 0 0 0-47.88-104.13c-12.41-4.1-23.33-6-32.41-5.77-.6-2-1.89-11 9.4-35L198.66 32l-5.48 7.56c-8.69 12.06-16.92 23.55-24.34 34.89a51 51 0 0 0-8.29-1.25c-41.53-2.45-39-2.33-41.06-2.33-50.61 0-50.75 52.12-50.75 45.88l-2.36 36.68c-1.61 27 19.75 50.21 47.63 51.85l8.93.54a214 214 0 0 0-46.29 35.54C14 304.66 14 374 14 429.77v33.64l23.32-29.8a148.6 148.6 0 0 0 14.56 37.56c5.78 10.13 14.87 9.45 19.64 7.33 4.21-1.87 10-6.92 3.75-20.11a178.29 178.29 0 0 1-15.76-53.13l46.82-59.83-24.66 74.11c58.23-42.4 157.38-61.76 236.25-38.59 34.2 10.05 67.45.69 84.74-23.84.72-1 1.2-2.16 1.85-3.22a156.09 156.09 0 0 1 2.8 28.43c0 23.3-3.69 52.93-14.88 81.64-2.52 6.46 1.76 14.5 8.6 15.74 7.42 1.57 15.33-3.1 18.37-11.15C429 443 434 414 434 382.32c0-38.58-13-77.46-35.91-110.92zM142.37 128.58l-15.7-.93-1.39 21.79 13.13.78a93 93 0 0 0 .32 19.57l-22.38-1.34a12.28 12.28 0 0 1-11.76-12.79L107 119c1-12.17 13.87-11.27 13.26-11.32l29.11 1.73a144.35 144.35 0 0 0-7 19.17zm148.42 172.18a10.51 10.51 0 0 1-14.35-1.39l-9.68-11.49-34.42 27a8.09 8.09 0 0 1-11.13-1.08l-15.78-18.64a7.38 7.38 0 0 1 1.34-10.34l34.57-27.18-14.14-16.74-17.09 13.45a7.75 7.75 0 0 1-10.59-1s-3.72-4.42-3.8-4.53a7.38 7.38 0 0 1 1.37-10.34L214 225.19s-18.51-22-18.6-22.14a9.56 9.56 0 0 1 1.74-13.42 10.38 10.38 0 0 1 14.3 1.37l81.09 96.32a9.58 9.58 0 0 1-1.74 13.44zM187.44 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18z\"]\n};\nvar faKeycdn = {\n prefix: 'fab',\n iconName: 'keycdn',\n icon: [512, 512, [], \"f3ba\", \"M63.8 409.3l60.5-59c32.1 42.8 71.1 66 126.6 67.4 30.5.7 60.3-7 86.4-22.4 5.1 5.3 18.5 19.5 20.9 22-32.2 20.7-69.6 31.1-108.1 30.2-43.3-1.1-84.6-16.7-117.7-44.4.3-.6-38.2 37.5-38.6 37.9 9.5 29.8-13.1 62.4-46.3 62.4C20.7 503.3 0 481.7 0 454.9c0-34.3 33.1-56.6 63.8-45.6zm354.9-252.4c19.1 31.3 29.6 67.4 28.7 104-1.1 44.8-19 87.5-48.6 121 .3.3 23.8 25.2 24.1 25.5 9.6-1.3 19.2 2 25.9 9.1 11.3 12 10.9 30.9-1.1 42.4-12 11.3-30.9 10.9-42.4-1.1-6.7-7-9.4-16.8-7.6-26.3-24.9-26.6-44.4-47.2-44.4-47.2 42.7-34.1 63.3-79.6 64.4-124.2.7-28.9-7.2-57.2-21.1-82.2l22.1-21zM104 53.1c6.7 7 9.4 16.8 7.6 26.3l45.9 48.1c-4.7 3.8-13.3 10.4-22.8 21.3-25.4 28.5-39.6 64.8-40.7 102.9-.7 28.9 6.1 57.2 20 82.4l-22 21.5C72.7 324 63.1 287.9 64.2 250.9c1-44.6 18.3-87.6 47.5-121.1l-25.3-26.4c-9.6 1.3-19.2-2-25.9-9.1-11.3-12-10.9-30.9 1.1-42.4C73.5 40.7 92.2 41 104 53.1zM464.9 8c26 0 47.1 22.4 47.1 48.3S490.9 104 464.9 104c-6.3.1-14-1.1-15.9-1.8l-62.9 59.7c-32.7-43.6-76.7-65.9-126.9-67.2-30.5-.7-60.3 6.8-86.2 22.4l-21.1-22C184.1 74.3 221.5 64 260 64.9c43.3 1.1 84.6 16.7 117.7 44.6l41.1-38.6c-1.5-4.7-2.2-9.6-2.2-14.5C416.5 29.7 438.9 8 464.9 8zM256.7 113.4c5.5 0 10.9.4 16.4 1.1 78.1 9.8 133.4 81.1 123.8 159.1-9.8 78.1-81.1 133.4-159.1 123.8-78.1-9.8-133.4-81.1-123.8-159.2 9.3-72.4 70.1-124.6 142.7-124.8zm-59 119.4c.6 22.7 12.2 41.8 32.4 52.2l-11 51.7h73.7l-11-51.7c20.1-10.9 32.1-29 32.4-52.2-.4-32.8-25.8-57.5-58.3-58.3-32.1.8-57.3 24.8-58.2 58.3zM256 160\"]\n};\nvar faKickstarter = {\n prefix: 'fab',\n iconName: 'kickstarter',\n icon: [448, 512, [], \"f3bb\", \"M400 480H48c-26.4 0-48-21.6-48-48V80c0-26.4 21.6-48 48-48h352c26.4 0 48 21.6 48 48v352c0 26.4-21.6 48-48 48zM199.6 178.5c0-30.7-17.6-45.1-39.7-45.1-25.8 0-40 19.8-40 44.5v154.8c0 25.8 13.7 45.6 40.5 45.6 21.5 0 39.2-14 39.2-45.6v-41.8l60.6 75.7c12.3 14.9 39 16.8 55.8 0 14.6-15.1 14.8-36.8 4-50.4l-49.1-62.8 40.5-58.7c9.4-13.5 9.5-34.5-5.6-49.1-16.4-15.9-44.6-17.3-61.4 7l-44.8 64.7v-38.8z\"]\n};\nvar faKickstarterK = {\n prefix: 'fab',\n iconName: 'kickstarter-k',\n icon: [384, 512, [], \"f3bc\", \"M147.3 114.4c0-56.2-32.5-82.4-73.4-82.4C26.2 32 0 68.2 0 113.4v283c0 47.3 25.3 83.4 74.9 83.4 39.8 0 72.4-25.6 72.4-83.4v-76.5l112.1 138.3c22.7 27.2 72.1 30.7 103.2 0 27-27.6 27.3-67.4 7.4-92.2l-90.8-114.8 74.9-107.4c17.4-24.7 17.5-63.1-10.4-89.8-30.3-29-82.4-31.6-113.6 12.8L147.3 185v-70.6z\"]\n};\nvar faKorvue = {\n prefix: 'fab',\n iconName: 'korvue',\n icon: [446, 512, [], \"f42f\", \"M386.5 34h-327C26.8 34 0 60.8 0 93.5v327.1C0 453.2 26.8 480 59.5 480h327.1c33 0 59.5-26.8 59.5-59.5v-327C446 60.8 419.2 34 386.5 34zM87.1 120.8h96v116l61.8-116h110.9l-81.2 132H87.1v-132zm161.8 272.1l-65.7-113.6v113.6h-96V262.1h191.5l88.6 130.8H248.9z\"]\n};\nvar faLaravel = {\n prefix: 'fab',\n iconName: 'laravel',\n icon: [512, 512, [], \"f3bd\", \"M504.4,115.83a5.72,5.72,0,0,0-.28-.68,8.52,8.52,0,0,0-.53-1.25,6,6,0,0,0-.54-.71,9.36,9.36,0,0,0-.72-.94c-.23-.22-.52-.4-.77-.6a8.84,8.84,0,0,0-.9-.68L404.4,55.55a8,8,0,0,0-8,0L300.12,111h0a8.07,8.07,0,0,0-.88.69,7.68,7.68,0,0,0-.78.6,8.23,8.23,0,0,0-.72.93c-.17.24-.39.45-.54.71a9.7,9.7,0,0,0-.52,1.25c-.08.23-.21.44-.28.68a8.08,8.08,0,0,0-.28,2.08V223.18l-80.22,46.19V63.44a7.8,7.8,0,0,0-.28-2.09c-.06-.24-.2-.45-.28-.68a8.35,8.35,0,0,0-.52-1.24c-.14-.26-.37-.47-.54-.72a9.36,9.36,0,0,0-.72-.94,9.46,9.46,0,0,0-.78-.6,9.8,9.8,0,0,0-.88-.68h0L115.61,1.07a8,8,0,0,0-8,0L11.34,56.49h0a6.52,6.52,0,0,0-.88.69,7.81,7.81,0,0,0-.79.6,8.15,8.15,0,0,0-.71.93c-.18.25-.4.46-.55.72a7.88,7.88,0,0,0-.51,1.24,6.46,6.46,0,0,0-.29.67,8.18,8.18,0,0,0-.28,2.1v329.7a8,8,0,0,0,4,6.95l192.5,110.84a8.83,8.83,0,0,0,1.33.54c.21.08.41.2.63.26a7.92,7.92,0,0,0,4.1,0c.2-.05.37-.16.55-.22a8.6,8.6,0,0,0,1.4-.58L404.4,400.09a8,8,0,0,0,4-6.95V287.88l92.24-53.11a8,8,0,0,0,4-7V117.92A8.63,8.63,0,0,0,504.4,115.83ZM111.6,17.28h0l80.19,46.15-80.2,46.18L31.41,63.44Zm88.25,60V278.6l-46.53,26.79-33.69,19.4V123.5l46.53-26.79Zm0,412.78L23.37,388.5V77.32L57.06,96.7l46.52,26.8V338.68a6.94,6.94,0,0,0,.12.9,8,8,0,0,0,.16,1.18h0a5.92,5.92,0,0,0,.38.9,6.38,6.38,0,0,0,.42,1v0a8.54,8.54,0,0,0,.6.78,7.62,7.62,0,0,0,.66.84l0,0c.23.22.52.38.77.58a8.93,8.93,0,0,0,.86.66l0,0,0,0,92.19,52.18Zm8-106.17-80.06-45.32,84.09-48.41,92.26-53.11,80.13,46.13-58.8,33.56Zm184.52,4.57L215.88,490.11V397.8L346.6,323.2l45.77-26.15Zm0-119.13L358.68,250l-46.53-26.79V131.79l33.69,19.4L392.37,178Zm8-105.28-80.2-46.17,80.2-46.16,80.18,46.15Zm8,105.28V178L455,151.19l33.68-19.4v91.39h0Z\"]\n};\nvar faLastfm = {\n prefix: 'fab',\n iconName: 'lastfm',\n icon: [512, 512, [], \"f202\", \"M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z\"]\n};\nvar faLastfmSquare = {\n prefix: 'fab',\n iconName: 'lastfm-square',\n icon: [448, 512, [], \"f203\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-92.2 312.9c-63.4 0-85.4-28.6-97.1-64.1-16.3-51-21.5-84.3-63-84.3-22.4 0-45.1 16.1-45.1 61.2 0 35.2 18 57.2 43.3 57.2 28.6 0 47.6-21.3 47.6-21.3l11.7 31.9s-19.8 19.4-61.2 19.4c-51.3 0-79.9-30.1-79.9-85.8 0-57.9 28.6-92 82.5-92 73.5 0 80.8 41.4 100.8 101.9 8.8 26.8 24.2 46.2 61.2 46.2 24.9 0 38.1-5.5 38.1-19.1 0-19.9-21.8-22-49.9-28.6-30.4-7.3-42.5-23.1-42.5-48 0-40 32.3-52.4 65.2-52.4 37.4 0 60.1 13.6 63 46.6l-36.7 4.4c-1.5-15.8-11-22.4-28.6-22.4-16.1 0-26 7.3-26 19.8 0 11 4.8 17.6 20.9 21.3 32.7 7.1 71.8 12 71.8 57.5.1 36.7-30.7 50.6-76.1 50.6z\"]\n};\nvar faLeanpub = {\n prefix: 'fab',\n iconName: 'leanpub',\n icon: [576, 512, [], \"f212\", \"M386.539 111.485l15.096 248.955-10.979-.275c-36.232-.824-71.64 8.783-102.657 27.997-31.016-19.214-66.424-27.997-102.657-27.997-45.564 0-82.07 10.705-123.516 27.723L93.117 129.6c28.546-11.803 61.484-18.115 92.226-18.115 41.173 0 73.836 13.175 102.657 42.544 27.723-28.271 59.013-41.721 98.539-42.544zM569.07 448c-25.526 0-47.485-5.215-70.542-15.645-34.31-15.645-69.993-24.978-107.871-24.978-38.977 0-74.934 12.901-102.657 40.623-27.723-27.723-63.68-40.623-102.657-40.623-37.878 0-73.561 9.333-107.871 24.978C55.239 442.236 32.731 448 8.303 448H6.93L49.475 98.859C88.726 76.626 136.486 64 181.775 64 218.83 64 256.984 71.685 288 93.095 319.016 71.685 357.17 64 394.225 64c45.289 0 93.049 12.626 132.3 34.859L569.07 448zm-43.368-44.741l-34.036-280.246c-30.742-13.999-67.248-21.41-101.009-21.41-38.428 0-74.385 12.077-102.657 38.702-28.272-26.625-64.228-38.702-102.657-38.702-33.761 0-70.267 7.411-101.009 21.41L50.298 403.259c47.211-19.487 82.894-33.486 135.045-33.486 37.604 0 70.817 9.606 102.657 29.644 31.84-20.038 65.052-29.644 102.657-29.644 52.151 0 87.834 13.999 135.045 33.486z\"]\n};\nvar faLess = {\n prefix: 'fab',\n iconName: 'less',\n icon: [640, 512, [], \"f41d\", \"M612.7 219c0-20.5 3.2-32.6 3.2-54.6 0-34.2-12.6-45.2-40.5-45.2h-20.5v24.2h6.3c14.2 0 17.3 4.7 17.3 22.1 0 16.3-1.6 32.6-1.6 51.5 0 24.2 7.9 33.6 23.6 37.3v1.6c-15.8 3.7-23.6 13.1-23.6 37.3 0 18.9 1.6 34.2 1.6 51.5 0 17.9-3.7 22.6-17.3 22.6v.5h-6.3V393h20.5c27.8 0 40.5-11 40.5-45.2 0-22.6-3.2-34.2-3.2-54.6 0-11 6.8-22.6 27.3-23.6v-27.3c-20.5-.7-27.3-12.3-27.3-23.3zm-105.6 32c-15.8-6.3-30.5-10-30.5-20.5 0-7.9 6.3-12.6 17.9-12.6s22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-21 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51s-22.5-41-43-47.8zm-358.9 59.4c-3.7 0-8.4-3.2-8.4-13.1V119.1H65.2c-28.4 0-41 11-41 45.2 0 22.6 3.2 35.2 3.2 54.6 0 11-6.8 22.6-27.3 23.6v27.3c20.5.5 27.3 12.1 27.3 23.1 0 19.4-3.2 31-3.2 53.6 0 34.2 12.6 45.2 40.5 45.2h20.5v-24.2h-6.3c-13.1 0-17.3-5.3-17.3-22.6s1.6-32.1 1.6-51.5c0-24.2-7.9-33.6-23.6-37.3v-1.6c15.8-3.7 23.6-13.1 23.6-37.3 0-18.9-1.6-34.2-1.6-51.5s3.7-22.1 17.3-22.1H93v150.8c0 32.1 11 53.1 43.1 53.1 10 0 17.9-1.6 23.6-3.7l-5.3-34.2c-3.1.8-4.6.8-6.2.8zM379.9 251c-16.3-6.3-31-10-31-20.5 0-7.9 6.3-12.6 17.9-12.6 11.6 0 22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-20.5 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51 .1-28.9-22.5-41-43-47.8zm-155-68.8c-38.4 0-75.1 32.1-74.1 82.5 0 52 34.2 82.5 79.3 82.5 18.9 0 39.9-6.8 56.2-17.9l-15.8-27.8c-11.6 6.8-22.6 10-34.2 10-21 0-37.3-10-41.5-34.2H290c.5-3.7 1.6-11 1.6-19.4.6-42.6-22.6-75.7-66.7-75.7zm-30 66.2c3.2-21 15.8-31 30.5-31 18.9 0 26.3 13.1 26.3 31h-56.8z\"]\n};\nvar faLine = {\n prefix: 'fab',\n iconName: 'line',\n icon: [448, 512, [], \"f3c0\", \"M272.1 204.2v71.1c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.1 0-2.1-.6-2.6-1.3l-32.6-44v42.2c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.8 0-3.2-1.4-3.2-3.2v-71.1c0-1.8 1.4-3.2 3.2-3.2H219c1 0 2.1.5 2.6 1.4l32.6 44v-42.2c0-1.8 1.4-3.2 3.2-3.2h11.4c1.8-.1 3.3 1.4 3.3 3.1zm-82-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 1.8 1.4 3.2 3.2 3.2h11.4c1.8 0 3.2-1.4 3.2-3.2v-71.1c0-1.7-1.4-3.2-3.2-3.2zm-27.5 59.6h-31.1v-56.4c0-1.8-1.4-3.2-3.2-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 .9.3 1.6.9 2.2.6.5 1.3.9 2.2.9h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.7-1.4-3.2-3.1-3.2zM332.1 201h-45.7c-1.7 0-3.2 1.4-3.2 3.2v71.1c0 1.7 1.4 3.2 3.2 3.2h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2V234c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2v-11.4c-.1-1.7-1.5-3.2-3.2-3.2zM448 113.7V399c-.1 44.8-36.8 81.1-81.7 81H81c-44.8-.1-81.1-36.9-81-81.7V113c.1-44.8 36.9-81.1 81.7-81H367c44.8.1 81.1 36.8 81 81.7zm-61.6 122.6c0-73-73.2-132.4-163.1-132.4-89.9 0-163.1 59.4-163.1 132.4 0 65.4 58 120.2 136.4 130.6 19.1 4.1 16.9 11.1 12.6 36.8-.7 4.1-3.3 16.1 14.1 8.8 17.4-7.3 93.9-55.3 128.2-94.7 23.6-26 34.9-52.3 34.9-81.5z\"]\n};\nvar faLinkedin = {\n prefix: 'fab',\n iconName: 'linkedin',\n icon: [448, 512, [], \"f08c\", \"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z\"]\n};\nvar faLinkedinIn = {\n prefix: 'fab',\n iconName: 'linkedin-in',\n icon: [448, 512, [], \"f0e1\", \"M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z\"]\n};\nvar faLinode = {\n prefix: 'fab',\n iconName: 'linode',\n icon: [448, 512, [], \"f2b8\", \"M437.4 226.3c-.3-.9-.9-1.4-1.4-2l-70-38.6c-.9-.6-2-.6-3.1 0l-58.9 36c-.9.6-1.4 1.7-1.4 2.6l-.9 31.4-24-16c-.9-.6-2.3-.6-3.1 0L240 260.9l-1.4-35.1c0-.9-.6-2-1.4-2.3l-36-24.3 33.7-17.4c1.1-.6 1.7-1.7 1.7-2.9l-5.7-132.3c0-.9-.9-2-1.7-2.6L138.6.3c-.9-.3-1.7-.3-2.3-.3L12.6 38.6c-1.4.6-2.3 2-2 3.7L38 175.4c.9 3.4 34 27.4 38.6 30.9l-26.9 12.9c-1.4.9-2 2.3-1.7 3.4l20.6 100.3c.6 2.9 23.7 23.1 27.1 26.3l-17.4 10.6c-.9.6-1.7 2-1.4 3.1 1.4 7.1 15.4 77.7 16.9 79.1l65.1 69.1c.6.6 1.4.6 2.3.9.6 0 1.1-.3 1.7-.6l83.7-66.9c.9-.6 1.1-1.4 1.1-2.3l-2-46 28 23.7c1.1.9 2.9.9 4 0l66.9-53.4c.9-.6 1.1-1.4 1.1-2.3l2.3-33.4 20.3 14c1.1.9 2.6.9 3.7 0l54.6-43.7c.6-.3 1.1-1.1 1.1-2 .9-6.5 10.3-70.8 9.7-72.8zm-204.8 4.8l4 92.6-90.6 61.2-14-96.6 100.6-57.2zm-7.7-180l5.4 126-106.6 55.4L104 97.7l120.9-46.6zM44 173.1L18 48l79.7 49.4 19.4 132.9L44 173.1zm30.6 147.8L55.7 230l70 58.3 13.7 93.4-64.8-60.8zm24.3 117.7l-13.7-67.1 61.7 60.9 9.7 67.4-57.7-61.2zm64.5 64.5l-10.6-70.9 85.7-61.4 3.1 70-78.2 62.3zm82-115.1c0-3.4.9-22.9-2-25.1l-24.3-20 22.3-14.9c2.3-1.7 1.1-5.7 1.1-8l29.4 22.6.6 68.3-27.1-22.9zm94.3-25.4l-60.9 48.6-.6-68.6 65.7-46.9-4.2 66.9zm27.7-25.7l-19.1-13.4 2-34c.3-.9-.3-2-1.1-2.6L308 259.7l.6-30 64.6 40.6-5.8 66.6zm54.6-39.8l-48.3 38.3 5.7-65.1 51.1-36.6-8.5 63.4z\"]\n};\nvar faLinux = {\n prefix: 'fab',\n iconName: 'linux',\n icon: [448, 512, [], \"f17c\", \"M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.1-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z\"]\n};\nvar faLyft = {\n prefix: 'fab',\n iconName: 'lyft',\n icon: [512, 512, [], \"f3c3\", \"M0 81.1h77.8v208.7c0 33.1 15 52.8 27.2 61-12.7 11.1-51.2 20.9-80.2-2.8C7.8 334 0 310.7 0 289V81.1zm485.9 173.5v-22h23.8v-76.8h-26.1c-10.1-46.3-51.2-80.7-100.3-80.7-56.6 0-102.7 46-102.7 102.7V357c16 2.3 35.4-.3 51.7-14 17.1-14 24.8-37.2 24.8-59v-6.7h38.8v-76.8h-38.8v-23.3c0-34.6 52.2-34.6 52.2 0v77.1c0 56.6 46 102.7 102.7 102.7v-76.5c-14.5 0-26.1-11.7-26.1-25.9zm-294.3-99v113c0 15.4-23.8 15.4-23.8 0v-113H91v132.7c0 23.8 8 54 45 63.9 37 9.8 58.2-10.6 58.2-10.6-2.1 13.4-14.5 23.3-34.9 25.3-15.5 1.6-35.2-3.6-45-7.8v70.3c25.1 7.5 51.5 9.8 77.6 4.7 47.1-9.1 76.8-48.4 76.8-100.8V155.1h-77.1v.5z\"]\n};\nvar faMagento = {\n prefix: 'fab',\n iconName: 'magento',\n icon: [448, 512, [], \"f3c4\", \"M445.7 127.9V384l-63.4 36.5V164.7L223.8 73.1 65.2 164.7l.4 255.9L2.3 384V128.1L224.2 0l221.5 127.9zM255.6 420.5L224 438.9l-31.8-18.2v-256l-63.3 36.6.1 255.9 94.9 54.9 95.1-54.9v-256l-63.4-36.6v255.9z\"]\n};\nvar faMailchimp = {\n prefix: 'fab',\n iconName: 'mailchimp',\n icon: [448, 512, [], \"f59e\", \"M330.61 243.52a36.15 36.15 0 0 1 9.3 0c1.66-3.83 1.95-10.43.45-17.61-2.23-10.67-5.25-17.14-11.48-16.13s-6.47 8.74-4.24 19.42c1.26 6 3.49 11.14 6 14.32zM277.05 252c4.47 2 7.2 3.26 8.28 2.13 1.89-1.94-3.48-9.39-12.12-13.09a31.44 31.44 0 0 0-30.61 3.68c-3 2.18-5.81 5.22-5.41 7.06.85 3.74 10-2.71 22.6-3.48 7-.44 12.8 1.75 17.26 3.71zm-9 5.13c-9.07 1.42-15 6.53-13.47 10.1.9.34 1.17.81 5.21-.81a37 37 0 0 1 18.72-1.95c2.92.34 4.31.52 4.94-.49 1.46-2.22-5.71-8-15.39-6.85zm54.17 17.1c3.38-6.87-10.9-13.93-14.3-7s10.92 13.88 14.32 6.97zm15.66-20.47c-7.66-.13-7.95 15.8-.26 15.93s7.98-15.81.28-15.96zm-218.79 78.9c-1.32.31-6 1.45-8.47-2.35-5.2-8 11.11-20.38 3-35.77-9.1-17.47-27.82-13.54-35.05-5.54-8.71 9.6-8.72 23.54-5 24.08 4.27.57 4.08-6.47 7.38-11.63a12.83 12.83 0 0 1 17.85-3.72c11.59 7.59 1.37 17.76 2.28 28.62 1.39 16.68 18.42 16.37 21.58 9a2.08 2.08 0 0 0-.2-2.33c.03.89.68-1.3-3.35-.39zm299.72-17.07c-3.35-11.73-2.57-9.22-6.78-20.52 2.45-3.67 15.29-24-3.07-43.25-10.4-10.92-33.9-16.54-41.1-18.54-1.5-11.39 4.65-58.7-21.52-83 20.79-21.55 33.76-45.29 33.73-65.65-.06-39.16-48.15-51-107.42-26.47l-12.55 5.33c-.06-.05-22.71-22.27-23.05-22.57C169.5-18-41.77 216.81 25.78 273.85l14.76 12.51a72.49 72.49 0 0 0-4.1 33.5c3.36 33.4 36 60.42 67.53 60.38 57.73 133.06 267.9 133.28 322.29 3 1.74-4.47 9.11-24.61 9.11-42.38s-10.09-25.27-16.53-25.27zm-316 48.16c-22.82-.61-47.46-21.15-49.91-45.51-6.17-61.31 74.26-75.27 84-12.33 4.54 29.64-4.67 58.49-34.12 57.81zM84.3 249.55C69.14 252.5 55.78 261.09 47.6 273c-4.88-4.07-14-12-15.59-15-13.01-24.85 14.24-73 33.3-100.21C112.42 90.56 186.19 39.68 220.36 48.91c5.55 1.57 23.94 22.89 23.94 22.89s-34.15 18.94-65.8 45.35c-42.66 32.85-74.89 80.59-94.2 132.4zM323.18 350.7s-35.74 5.3-69.51-7.07c6.21-20.16 27 6.1 96.4-13.81 15.29-4.38 35.37-13 51-25.35a102.85 102.85 0 0 1 7.12 24.28c3.66-.66 14.25-.52 11.44 18.1-3.29 19.87-11.73 36-25.93 50.84A106.86 106.86 0 0 1 362.55 421a132.45 132.45 0 0 1-20.34 8.58c-53.51 17.48-108.3-1.74-126-43a66.33 66.33 0 0 1-3.55-9.74c-7.53-27.2-1.14-59.83 18.84-80.37 1.23-1.31 2.48-2.85 2.48-4.79a8.45 8.45 0 0 0-1.92-4.54c-7-10.13-31.19-27.4-26.33-60.83 3.5-24 24.49-40.91 44.07-39.91l5 .29c8.48.5 15.89 1.59 22.88 1.88 11.69.5 22.2-1.19 34.64-11.56 4.2-3.5 7.57-6.54 13.26-7.51a17.45 17.45 0 0 1 13.6 2.24c10 6.64 11.4 22.73 11.92 34.49.29 6.72 1.1 23 1.38 27.63.63 10.67 3.43 12.17 9.11 14 3.19 1.05 6.15 1.83 10.51 3.06 13.21 3.71 21 7.48 26 12.31a16.38 16.38 0 0 1 4.74 9.29c1.56 11.37-8.82 25.4-36.31 38.16-46.71 21.68-93.68 14.45-100.48 13.68-20.15-2.71-31.63 23.32-19.55 41.15 22.64 33.41 122.4 20 151.37-21.35.69-1 .12-1.59-.73-1-41.77 28.58-97.06 38.21-128.46 26-4.77-1.85-14.73-6.44-15.94-16.67 43.6 13.49 71 .74 71 .74s2.03-2.79-.56-2.53zm-68.47-5.7zm-83.4-187.5c16.74-19.35 37.36-36.18 55.83-45.63a.73.73 0 0 1 1 1c-1.46 2.66-4.29 8.34-5.19 12.65a.75.75 0 0 0 1.16.79c11.49-7.83 31.48-16.22 49-17.3a.77.77 0 0 1 .52 1.38 41.86 41.86 0 0 0-7.71 7.74.75.75 0 0 0 .59 1.19c12.31.09 29.66 4.4 41 10.74.76.43.22 1.91-.64 1.72-69.55-15.94-123.08 18.53-134.5 26.83a.76.76 0 0 1-1-1.12z\"]\n};\nvar faMandalorian = {\n prefix: 'fab',\n iconName: 'mandalorian',\n icon: [448, 512, [], \"f50f\", \"M232.27 511.89c-1-3.26-1.69-15.83-1.39-24.58.55-15.89 1-24.72 1.4-28.76.64-6.2 2.87-20.72 3.28-21.38.6-1 .4-27.87-.24-33.13-.31-2.58-.63-11.9-.69-20.73-.13-16.47-.53-20.12-2.73-24.76-1.1-2.32-1.23-3.84-1-11.43a92.38 92.38 0 0 0-.34-12.71c-2-13-3.46-27.7-3.25-33.9s.43-7.15 2.06-9.67c3.05-4.71 6.51-14 8.62-23.27 2.26-9.86 3.88-17.18 4.59-20.74a109.54 109.54 0 0 1 4.42-15.05c2.27-6.25 2.49-15.39.37-15.39-.3 0-1.38 1.22-2.41 2.71s-4.76 4.8-8.29 7.36c-8.37 6.08-11.7 9.39-12.66 12.58s-1 7.23-.16 7.76c.34.21 1.29 2.4 2.11 4.88a28.83 28.83 0 0 1 .72 15.36c-.39 1.77-1 5.47-1.46 8.23s-1 6.46-1.25 8.22a9.85 9.85 0 0 1-1.55 4.26c-1 1-1.14.91-2.05-.53a14.87 14.87 0 0 1-1.44-4.75c-.25-1.74-1.63-7.11-3.08-11.93-3.28-10.9-3.52-16.15-1-21a14.24 14.24 0 0 0 1.67-4.61c0-2.39-2.2-5.32-7.41-9.89-7-6.18-8.63-7.92-10.23-11.3-1.71-3.6-3.06-4.06-4.54-1.54-1.78 3-2.6 9.11-3 22l-.34 12.19 2 2.25c3.21 3.7 12.07 16.45 13.78 19.83 3.41 6.74 4.34 11.69 4.41 23.56s.95 22.75 2 24.71c.36.66.51 1.35.34 1.52s.41 2.09 1.29 4.27a38.14 38.14 0 0 1 2.06 9 91 91 0 0 0 1.71 10.37c2.23 9.56 2.77 14.08 2.39 20.14-.2 3.27-.53 11.07-.73 17.32-1.31 41.76-1.85 58-2 61.21-.12 2-.39 11.51-.6 21.07-.36 16.3-1.3 27.37-2.42 28.65-.64.73-8.07-4.91-12.52-9.49-3.75-3.87-4-4.79-2.83-9.95.7-3 2.26-18.29 3.33-32.62.36-4.78.81-10.5 1-12.71.83-9.37 1.66-20.35 2.61-34.78.56-8.46 1.33-16.44 1.72-17.73s.89-9.89 1.13-19.11l.43-16.77-2.26-4.3c-1.72-3.28-4.87-6.94-13.22-15.34-6-6.07-11.84-12.3-12.91-13.85l-1.95-2.81.75-10.9c1.09-15.71 1.1-48.57 0-59.06l-.89-8.7-3.28-4.52c-5.86-8.08-5.8-7.75-6.22-33.27-.1-6.07-.38-11.5-.63-12.06-.83-1.87-3.05-2.66-8.54-3.05-8.86-.62-11-1.9-23.85-14.55-6.15-6-12.34-12-13.75-13.19-2.81-2.42-2.79-2-.56-9.63l1.35-4.65-1.69-3a32.22 32.22 0 0 0-2.59-4.07c-1.33-1.51-5.5-10.89-6-13.49a4.24 4.24 0 0 1 .87-3.9c2.23-2.86 3.4-5.68 4.45-10.73 2.33-11.19 7.74-26.09 10.6-29.22 3.18-3.47 7.7-1 9.41 5 1.34 4.79 1.37 9.79.1 18.55a101.2 101.2 0 0 0-1 11.11c0 4 .19 4.69 2.25 7.39 3.33 4.37 7.73 7.41 15.2 10.52a18.67 18.67 0 0 1 4.72 2.85c11.17 10.72 18.62 16.18 22.95 16.85 5.18.8 8 4.54 10 13.39 1.31 5.65 4 11.14 5.46 11.14a9.38 9.38 0 0 0 3.33-1.39c2-1.22 2.25-1.73 2.25-4.18a132.88 132.88 0 0 0-2-17.84c-.37-1.66-.78-4.06-.93-5.35s-.61-3.85-1-5.69c-2.55-11.16-3.65-15.46-4.1-16-1.55-2-4.08-10.2-4.93-15.92-1.64-11.11-4-14.23-12.91-17.39A43.15 43.15 0 0 1 165.24 78c-1.15-1-4-3.22-6.35-5.06s-4.41-3.53-4.6-3.76a22.7 22.7 0 0 0-2.69-2c-6.24-4.22-8.84-7-11.26-12l-2.44-5-.22-13-.22-13 6.91-6.55c3.95-3.75 8.48-7.35 10.59-8.43 3.31-1.69 4.45-1.89 11.37-2 8.53-.19 10.12 0 11.66 1.56s1.36 6.4-.29 8.5a6.66 6.66 0 0 0-1.34 2.32c0 .58-2.61 4.91-5.42 9a30.39 30.39 0 0 0-2.37 6.82c20.44 13.39 21.55 3.77 14.07 29L194 66.92c3.11-8.66 6.47-17.26 8.61-26.22.29-7.63-12-4.19-15.4-8.68-2.33-5.93 3.13-14.18 6.06-19.2 1.6-2.34 6.62-4.7 8.82-4.15.88.22 4.16-.35 7.37-1.28a45.3 45.3 0 0 1 7.55-1.68 29.57 29.57 0 0 0 6-1.29c3.65-1.11 4.5-1.17 6.35-.4a29.54 29.54 0 0 0 5.82 1.36 18.18 18.18 0 0 1 6 1.91 22.67 22.67 0 0 0 5 2.17c2.51.68 3 .57 7.05-1.67l4.35-2.4L268.32 5c10.44-.4 10.81-.47 15.26-2.68L288.16 0l2.46 1.43c1.76 1 3.14 2.73 4.85 6 2.36 4.51 2.38 4.58 1.37 7.37-.88 2.44-.89 3.3-.1 6.39a35.76 35.76 0 0 0 2.1 5.91 13.55 13.55 0 0 1 1.31 4c.31 4.33 0 5.3-2.41 6.92-2.17 1.47-7 7.91-7 9.34a14.77 14.77 0 0 1-1.07 3c-5 11.51-6.76 13.56-14.26 17-9.2 4.2-12.3 5.19-16.21 5.19-3.1 0-4 .25-4.54 1.26a18.33 18.33 0 0 1-4.09 3.71 13.62 13.62 0 0 0-4.38 4.78 5.89 5.89 0 0 1-2.49 2.91 6.88 6.88 0 0 0-2.45 1.71 67.62 67.62 0 0 1-7 5.38c-3.33 2.34-6.87 5-7.87 6A7.27 7.27 0 0 1 224 100a5.76 5.76 0 0 0-2.13 1.65c-1.31 1.39-1.49 2.11-1.14 4.6a36.45 36.45 0 0 0 1.42 5.88c1.32 3.8 1.31 7.86 0 10.57s-.89 6.65 1.35 9.59c2 2.63 2.16 4.56.71 8.84a33.45 33.45 0 0 0-1.06 8.91c0 4.88.22 6.28 1.46 8.38s1.82 2.48 3.24 2.32c2-.23 2.3-1.05 4.71-12.12 2.18-10 3.71-11.92 13.76-17.08 2.94-1.51 7.46-4 10-5.44s6.79-3.69 9.37-4.91a40.09 40.09 0 0 0 15.22-11.67c7.11-8.79 10-16.22 12.85-33.3a18.37 18.37 0 0 1 2.86-7.73 20.39 20.39 0 0 0 2.89-7.31c1-5.3 2.85-9.08 5.58-11.51 4.7-4.18 6-1.09 4.59 10.87-.46 3.86-1.1 10.33-1.44 14.38l-.61 7.36 4.45 4.09 4.45 4.09.11 8.42c.06 4.63.47 9.53.92 10.89l.82 2.47-6.43 6.28c-8.54 8.33-12.88 13.93-16.76 21.61-1.77 3.49-3.74 7.11-4.38 8-2.18 3.11-6.46 13-8.76 20.26l-2.29 7.22-7 6.49c-3.83 3.57-8 7.25-9.17 8.17-3.05 2.32-4.26 5.15-4.26 10a14.62 14.62 0 0 0 1.59 7.26 42 42 0 0 1 2.09 4.83 9.28 9.28 0 0 0 1.57 2.89c1.4 1.59 1.92 16.12.83 23.22-.68 4.48-3.63 12-4.7 12-1.79 0-4.06 9.27-5.07 20.74-.18 2-.62 5.94-1 8.7s-1 10-1.35 16.05c-.77 12.22-.19 18.77 2 23.15 3.41 6.69.52 12.69-11 22.84l-4 3.49.07 5.19a40.81 40.81 0 0 0 1.14 8.87c4.61 16 4.73 16.92 4.38 37.13-.46 26.4-.26 40.27.63 44.15a61.31 61.31 0 0 1 1.08 7c.17 2 .66 5.33 1.08 7.36.47 2.26.78 11 .79 22.74v19.06l-1.81 2.63c-2.71 3.91-15.11 13.54-15.49 12.29zm29.53-45.11c-.18-.3-.33-6.87-.33-14.59 0-14.06-.89-27.54-2.26-34.45-.4-2-.81-9.7-.9-17.06-.15-11.93-1.4-24.37-2.64-26.38-.66-1.07-3-17.66-3-21.3 0-4.23 1-6 5.28-9.13s4.86-3.14 5.48-.72c.28 1.1 1.45 5.62 2.6 10 3.93 15.12 4.14 16.27 4.05 21.74-.1 5.78-.13 6.13-1.74 17.73-1 7.07-1.17 12.39-1 28.43.17 19.4-.64 35.73-2 41.27-.71 2.78-2.8 5.48-3.43 4.43zm-71-37.58a101 101 0 0 1-1.73-10.79 100.5 100.5 0 0 0-1.73-10.79 37.53 37.53 0 0 1-1-6.49c-.31-3.19-.91-7.46-1.33-9.48-1-4.79-3.35-19.35-3.42-21.07 0-.74-.34-4.05-.7-7.36-.67-6.21-.84-27.67-.22-28.29 1-1 6.63 2.76 11.33 7.43l5.28 5.25-.45 6.47c-.25 3.56-.6 10.23-.78 14.83s-.49 9.87-.67 11.71-.61 9.36-.94 16.72c-.79 17.41-1.94 31.29-2.65 32a.62.62 0 0 1-1-.14zm-87.18-266.59c21.07 12.79 17.84 14.15 28.49 17.66 13 4.29 18.87 7.13 23.15 16.87C111.6 233.28 86.25 255 78.55 268c-31 52-6 101.59 62.75 87.21-14.18 29.23-78 28.63-98.68-4.9-24.68-39.95-22.09-118.3 61-187.66zm210.79 179c56.66 6.88 82.32-37.74 46.54-89.23 0 0-26.87-29.34-64.28-68 3-15.45 9.49-32.12 30.57-53.82 89.2 63.51 92 141.61 92.46 149.36 4.3 70.64-78.7 91.18-105.29 61.71z\"]\n};\nvar faMarkdown = {\n prefix: 'fab',\n iconName: 'markdown',\n icon: [640, 512, [], \"f60f\", \"M593.8 59.1H46.2C20.7 59.1 0 79.8 0 105.2v301.5c0 25.5 20.7 46.2 46.2 46.2h547.7c25.5 0 46.2-20.7 46.1-46.1V105.2c0-25.4-20.7-46.1-46.2-46.1zM338.5 360.6H277v-120l-61.5 76.9-61.5-76.9v120H92.3V151.4h61.5l61.5 76.9 61.5-76.9h61.5v209.2zm135.3 3.1L381.5 256H443V151.4h61.5V256H566z\"]\n};\nvar faMastodon = {\n prefix: 'fab',\n iconName: 'mastodon',\n icon: [448, 512, [], \"f4f6\", \"M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z\"]\n};\nvar faMaxcdn = {\n prefix: 'fab',\n iconName: 'maxcdn',\n icon: [512, 512, [], \"f136\", \"M461.1 442.7h-97.4L415.6 200c2.3-10.2.9-19.5-4.4-25.7-5-6.1-13.7-9.6-24.2-9.6h-49.3l-59.5 278h-97.4l59.5-278h-83.4l-59.5 278H0l59.5-278-44.6-95.4H387c39.4 0 75.3 16.3 98.3 44.9 23.3 28.6 31.8 67.4 23.6 105.9l-47.8 222.6z\"]\n};\nvar faMdb = {\n prefix: 'fab',\n iconName: 'mdb',\n icon: [576, 512, [], \"f8ca\", \"M17.37 160.41L7 352h43.91l5.59-79.83L84.43 352h44.71l25.54-77.43 4.79 77.43H205l-12.79-191.59H146.7L106 277.74 63.67 160.41zm281 0h-47.9V352h47.9s95 .8 94.2-95.79c-.78-94.21-94.18-95.78-94.18-95.78zm-1.2 146.46V204.78s46 4.27 46.8 50.57-46.78 51.54-46.78 51.54zm238.29-74.24a56.16 56.16 0 0 0 8-38.31c-5.34-35.76-55.08-34.32-55.08-34.32h-51.9v191.58H482s87 4.79 87-63.85c0-43.14-33.52-55.08-33.52-55.08zm-51.9-31.94s13.57-1.59 16 9.59c1.43 6.66-4 12-4 12h-12v-21.57zm-.1 109.46l.1-24.92V267h.08s41.58-4.73 41.19 22.43c-.33 25.65-41.35 20.74-41.35 20.74z\"]\n};\nvar faMedapps = {\n prefix: 'fab',\n iconName: 'medapps',\n icon: [320, 512, [], \"f3c6\", \"M118.3 238.4c3.5-12.5 6.9-33.6 13.2-33.6 8.3 1.8 9.6 23.4 18.6 36.6 4.6-23.5 5.3-85.1 14.1-86.7 9-.7 19.7 66.5 22 77.5 9.9 4.1 48.9 6.6 48.9 6.6 1.9 7.3-24 7.6-40 7.8-4.6 14.8-5.4 27.7-11.4 28-4.7.2-8.2-28.8-17.5-49.6l-9.4 65.5c-4.4 13-15.5-22.5-21.9-39.3-3.3-.1-62.4-1.6-47.6-7.8l31-5zM228 448c21.2 0 21.2-32 0-32H92c-21.2 0-21.2 32 0 32h136zm-24 64c21.2 0 21.2-32 0-32h-88c-21.2 0-21.2 32 0 32h88zm34.2-141.5c3.2-18.9 5.2-36.4 11.9-48.8 7.9-14.7 16.1-28.1 24-41 24.6-40.4 45.9-75.2 45.9-125.5C320 69.6 248.2 0 160 0S0 69.6 0 155.2c0 50.2 21.3 85.1 45.9 125.5 7.9 12.9 16 26.3 24 41 6.7 12.5 8.7 29.8 11.9 48.9 3.5 21 36.1 15.7 32.6-5.1-3.6-21.7-5.6-40.7-15.3-58.6C66.5 246.5 33 211.3 33 155.2 33 87.3 90 32 160 32s127 55.3 127 123.2c0 56.1-33.5 91.3-66.1 151.6-9.7 18-11.7 37.4-15.3 58.6-3.4 20.6 29 26.4 32.6 5.1z\"]\n};\nvar faMedium = {\n prefix: 'fab',\n iconName: 'medium',\n icon: [448, 512, [], \"f23a\", \"M0 32v448h448V32H0zm372.2 106.1l-24 23c-2.1 1.6-3.1 4.2-2.7 6.7v169.3c-.4 2.6.6 5.2 2.7 6.7l23.5 23v5.1h-118V367l24.3-23.6c2.4-2.4 2.4-3.1 2.4-6.7V199.8l-67.6 171.6h-9.1L125 199.8v115c-.7 4.8 1 9.7 4.4 13.2l31.6 38.3v5.1H71.2v-5.1l31.6-38.3c3.4-3.5 4.9-8.4 4.1-13.2v-133c.4-3.7-1-7.3-3.8-9.8L75 138.1V133h87.3l67.4 148L289 133.1h83.2v5z\"]\n};\nvar faMediumM = {\n prefix: 'fab',\n iconName: 'medium-m',\n icon: [512, 512, [], \"f3c7\", \"M71.5 142.3c.6-5.9-1.7-11.8-6.1-15.8L20.3 72.1V64h140.2l108.4 237.7L364.2 64h133.7v8.1l-38.6 37c-3.3 2.5-5 6.7-4.3 10.8v272c-.7 4.1 1 8.3 4.3 10.8l37.7 37v8.1H307.3v-8.1l39.1-37.9c3.8-3.8 3.8-5 3.8-10.8V171.2L241.5 447.1h-14.7L100.4 171.2v184.9c-1.1 7.8 1.5 15.6 7 21.2l50.8 61.6v8.1h-144v-8L65 377.3c5.4-5.6 7.9-13.5 6.5-21.2V142.3z\"]\n};\nvar faMedrt = {\n prefix: 'fab',\n iconName: 'medrt',\n icon: [544, 512, [], \"f3c8\", \"M113.7 256c0 121.8 83.9 222.8 193.5 241.1-18.7 4.5-38.2 6.9-58.2 6.9C111.4 504 0 393 0 256S111.4 8 248.9 8c20.1 0 39.6 2.4 58.2 6.9C197.5 33.2 113.7 134.2 113.7 256m297.4 100.3c-77.7 55.4-179.6 47.5-240.4-14.6 5.5 14.1 12.7 27.7 21.7 40.5 61.6 88.2 182.4 109.3 269.7 47 87.3-62.3 108.1-184.3 46.5-272.6-9-12.9-19.3-24.3-30.5-34.2 37.4 78.8 10.7 178.5-67 233.9m-218.8-244c-1.4 1-2.7 2.1-4 3.1 64.3-17.8 135.9 4 178.9 60.5 35.7 47 42.9 106.6 24.4 158 56.7-56.2 67.6-142.1 22.3-201.8-50-65.5-149.1-74.4-221.6-19.8M296 224c-4.4 0-8-3.6-8-8v-40c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v40c0 4.4-3.6 8-8 8h-40c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h40c4.4 0 8 3.6 8 8v40c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-40c0-4.4 3.6-8 8-8h40c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-40z\"]\n};\nvar faMeetup = {\n prefix: 'fab',\n iconName: 'meetup',\n icon: [512, 512, [], \"f2e0\", \"M99 414.3c1.1 5.7-2.3 11.1-8 12.3-5.4 1.1-10.9-2.3-12-8-1.1-5.4 2.3-11.1 7.7-12.3 5.4-1.2 11.1 2.3 12.3 8zm143.1 71.4c-6.3 4.6-8 13.4-3.7 20 4.6 6.6 13.4 8.3 20 3.7 6.3-4.6 8-13.4 3.4-20-4.2-6.5-13.1-8.3-19.7-3.7zm-86-462.3c6.3-1.4 10.3-7.7 8.9-14-1.1-6.6-7.4-10.6-13.7-9.1-6.3 1.4-10.3 7.7-9.1 14 1.4 6.6 7.6 10.6 13.9 9.1zM34.4 226.3c-10-6.9-23.7-4.3-30.6 6-6.9 10-4.3 24 5.7 30.9 10 7.1 23.7 4.6 30.6-5.7 6.9-10.4 4.3-24.1-5.7-31.2zm272-170.9c10.6-6.3 13.7-20 7.7-30.3-6.3-10.6-19.7-14-30-7.7s-13.7 20-7.4 30.6c6 10.3 19.4 13.7 29.7 7.4zm-191.1 58c7.7-5.4 9.4-16 4.3-23.7s-15.7-9.4-23.1-4.3c-7.7 5.4-9.4 16-4.3 23.7 5.1 7.8 15.6 9.5 23.1 4.3zm372.3 156c-7.4 1.7-12.3 9.1-10.6 16.9 1.4 7.4 8.9 12.3 16.3 10.6 7.4-1.4 12.3-8.9 10.6-16.6-1.5-7.4-8.9-12.3-16.3-10.9zm39.7-56.8c-1.1-5.7-6.6-9.1-12-8-5.7 1.1-9.1 6.9-8 12.6 1.1 5.4 6.6 9.1 12.3 8 5.4-1.5 9.1-6.9 7.7-12.6zM447 138.9c-8.6 6-10.6 17.7-4.9 26.3 5.7 8.6 17.4 10.6 26 4.9 8.3-6 10.3-17.7 4.6-26.3-5.7-8.7-17.4-10.9-25.7-4.9zm-6.3 139.4c26.3 43.1 15.1 100-26.3 129.1-17.4 12.3-37.1 17.7-56.9 17.1-12 47.1-69.4 64.6-105.1 32.6-1.1.9-2.6 1.7-3.7 2.9-39.1 27.1-92.3 17.4-119.4-22.3-9.7-14.3-14.6-30.6-15.1-46.9-65.4-10.9-90-94-41.1-139.7-28.3-46.9.6-107.4 53.4-114.9C151.6 70 234.1 38.6 290.1 82c67.4-22.3 136.3 29.4 130.9 101.1 41.1 12.6 52.8 66.9 19.7 95.2zm-70 74.3c-3.1-20.6-40.9-4.6-43.1-27.1-3.1-32 43.7-101.1 40-128-3.4-24-19.4-29.1-33.4-29.4-13.4-.3-16.9 2-21.4 4.6-2.9 1.7-6.6 4.9-11.7-.3-6.3-6-11.1-11.7-19.4-12.9-12.3-2-17.7 2-26.6 9.7-3.4 2.9-12 12.9-20 9.1-3.4-1.7-15.4-7.7-24-11.4-16.3-7.1-40 4.6-48.6 20-12.9 22.9-38 113.1-41.7 125.1-8.6 26.6 10.9 48.6 36.9 47.1 11.1-.6 18.3-4.6 25.4-17.4 4-7.4 41.7-107.7 44.6-112.6 2-3.4 8.9-8 14.6-5.1 5.7 3.1 6.9 9.4 6 15.1-1.1 9.7-28 70.9-28.9 77.7-3.4 22.9 26.9 26.6 38.6 4 3.7-7.1 45.7-92.6 49.4-98.3 4.3-6.3 7.4-8.3 11.7-8 3.1 0 8.3.9 7.1 10.9-1.4 9.4-35.1 72.3-38.9 87.7-4.6 20.6 6.6 41.4 24.9 50.6 11.4 5.7 62.5 15.7 58.5-11.1zm5.7 92.3c-10.3 7.4-12.9 22-5.7 32.6 7.1 10.6 21.4 13.1 32 6 10.6-7.4 13.1-22 6-32.6-7.4-10.6-21.7-13.5-32.3-6z\"]\n};\nvar faMegaport = {\n prefix: 'fab',\n iconName: 'megaport',\n icon: [496, 512, [], \"f5a3\", \"M214.5 209.6v66.2l33.5 33.5 33.3-33.3v-66.4l-33.4-33.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm145.1 414.4L367 441.6l-26-19.2v-65.5l-33.4-33.4-33.4 33.4v65.5L248 441.6l-26.1-19.2v-65.5l-33.4-33.4-33.5 33.4v65.5l-26.1 19.2-26.1-19.2v-87l59.5-59.5V188l59.5-59.5V52.9l26.1-19.2L274 52.9v75.6l59.5 59.5v87.6l59.7 59.7v87.1z\"]\n};\nvar faMendeley = {\n prefix: 'fab',\n iconName: 'mendeley',\n icon: [640, 512, [], \"f7b3\", \"M624.6 325.2c-12.3-12.4-29.7-19.2-48.4-17.2-43.3-1-49.7-34.9-37.5-98.8 22.8-57.5-14.9-131.5-87.4-130.8-77.4.7-81.7 82-130.9 82-48.1 0-54-81.3-130.9-82-72.9-.8-110.1 73.3-87.4 130.8 12.2 63.9 5.8 97.8-37.5 98.8-21.2-2.3-37 6.5-53 22.5-19.9 19.7-19.3 94.8 42.6 102.6 47.1 5.9 81.6-42.9 61.2-87.8-47.3-103.7 185.9-106.1 146.5-8.2-.1.1-.2.2-.3.4-26.8 42.8 6.8 97.4 58.8 95.2 52.1 2.1 85.4-52.6 58.8-95.2-.1-.2-.2-.3-.3-.4-39.4-97.9 193.8-95.5 146.5 8.2-4.6 10-6.7 21.3-5.7 33 4.9 53.4 68.7 74.1 104.9 35.2 17.8-14.8 23.1-65.6 0-88.3zm-303.9-19.1h-.6c-43.4 0-62.8-37.5-62.8-62.8 0-34.7 28.2-62.8 62.8-62.8h.6c34.7 0 62.8 28.1 62.8 62.8 0 25-19.2 62.8-62.8 62.8z\"]\n};\nvar faMicroblog = {\n prefix: 'fab',\n iconName: 'microblog',\n icon: [448, 512, [], \"e01a\", \"M399.36,362.23c29.49-34.69,47.1-78.34,47.1-125.79C446.46,123.49,346.86,32,224,32S1.54,123.49,1.54,236.44,101.14,440.87,224,440.87a239.28,239.28,0,0,0,79.44-13.44,7.18,7.18,0,0,1,8.12,2.56c18.58,25.09,47.61,42.74,79.89,49.92a4.42,4.42,0,0,0,5.22-3.43,4.37,4.37,0,0,0-.85-3.62,87,87,0,0,1,3.69-110.69ZM329.52,212.4l-57.3,43.49L293,324.75a6.5,6.5,0,0,1-9.94,7.22L224,290.92,164.94,332a6.51,6.51,0,0,1-9.95-7.22l20.79-68.86-57.3-43.49a6.5,6.5,0,0,1,3.8-11.68l71.88-1.51,23.66-67.92a6.5,6.5,0,0,1,12.28,0l23.66,67.92,71.88,1.51a6.5,6.5,0,0,1,3.88,11.68Z\"]\n};\nvar faMicrosoft = {\n prefix: 'fab',\n iconName: 'microsoft',\n icon: [448, 512, [], \"f3ca\", \"M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z\"]\n};\nvar faMix = {\n prefix: 'fab',\n iconName: 'mix',\n icon: [448, 512, [], \"f3cb\", \"M0 64v348.9c0 56.2 88 58.1 88 0V174.3c7.9-52.9 88-50.4 88 6.5v175.3c0 57.9 96 58 96 0V240c5.3-54.7 88-52.5 88 4.3v23.8c0 59.9 88 56.6 88 0V64H0z\"]\n};\nvar faMixcloud = {\n prefix: 'fab',\n iconName: 'mixcloud',\n icon: [640, 512, [], \"f289\", \"M424.43 219.729C416.124 134.727 344.135 68 256.919 68c-72.266 0-136.224 46.516-159.205 114.074-54.545 8.029-96.63 54.822-96.63 111.582 0 62.298 50.668 112.966 113.243 112.966h289.614c52.329 0 94.969-42.362 94.969-94.693 0-45.131-32.118-83.063-74.48-92.2zm-20.489 144.53H114.327c-39.04 0-70.881-31.564-70.881-70.604s31.841-70.604 70.881-70.604c18.827 0 36.548 7.475 49.838 20.766 19.963 19.963 50.133-10.227 30.18-30.18-14.675-14.398-32.672-24.365-52.053-29.349 19.935-44.3 64.79-73.926 114.628-73.926 69.496 0 125.979 56.483 125.979 125.702 0 13.568-2.215 26.857-6.369 39.594-8.943 27.517 32.133 38.939 40.147 13.29 2.769-8.306 4.984-16.889 6.369-25.472 19.381 7.476 33.502 26.303 33.502 48.453 0 28.795-23.535 52.33-52.607 52.33zm235.069-52.33c0 44.024-12.737 86.386-37.102 122.657-4.153 6.092-10.798 9.414-17.72 9.414-16.317 0-27.127-18.826-17.443-32.949 19.381-29.349 29.903-63.682 29.903-99.122s-10.521-69.773-29.903-98.845c-15.655-22.831 19.361-47.24 35.163-23.534 24.366 35.993 37.102 78.356 37.102 122.379zm-70.88 0c0 31.565-9.137 62.021-26.857 88.325-4.153 6.091-10.798 9.136-17.72 9.136-17.201 0-27.022-18.979-17.443-32.948 13.013-19.104 19.658-41.255 19.658-64.513 0-22.981-6.645-45.408-19.658-64.512-15.761-22.986 19.008-47.095 35.163-23.535 17.719 26.026 26.857 56.483 26.857 88.047z\"]\n};\nvar faMixer = {\n prefix: 'fab',\n iconName: 'mixer',\n icon: [512, 512, [], \"e056\", \"M114.57,76.07a45.71,45.71,0,0,0-67.51-6.41c-17.58,16.18-19,43.52-4.75,62.77l91.78,123L41.76,379.58c-14.23,19.25-13.11,46.59,4.74,62.77A45.71,45.71,0,0,0,114,435.94L242.89,262.7a12.14,12.14,0,0,0,0-14.23ZM470.24,379.58,377.91,255.45l91.78-123c14.22-19.25,12.83-46.59-4.75-62.77a45.71,45.71,0,0,0-67.51,6.41l-128,172.12a12.14,12.14,0,0,0,0,14.23L398,435.94a45.71,45.71,0,0,0,67.51,6.41C483.35,426.17,484.47,398.83,470.24,379.58Z\"]\n};\nvar faMizuni = {\n prefix: 'fab',\n iconName: 'mizuni',\n icon: [496, 512, [], \"f3cc\", \"M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm-80 351.9c-31.4 10.6-58.8 27.3-80 48.2V136c0-22.1 17.9-40 40-40s40 17.9 40 40v223.9zm120-9.9c-12.9-2-26.2-3.1-39.8-3.1-13.8 0-27.2 1.1-40.2 3.1V136c0-22.1 17.9-40 40-40s40 17.9 40 40v214zm120 57.7c-21.2-20.8-48.6-37.4-80-48V136c0-22.1 17.9-40 40-40s40 17.9 40 40v271.7z\"]\n};\nvar faModx = {\n prefix: 'fab',\n iconName: 'modx',\n icon: [448, 512, [], \"f285\", \"M356 241.8l36.7 23.7V480l-133-83.8L356 241.8zM440 75H226.3l-23 37.8 153.5 96.5L440 75zm-89 142.8L55.2 32v214.5l46 29L351 217.8zM97 294.2L8 437h213.7l125-200.5L97 294.2z\"]\n};\nvar faMonero = {\n prefix: 'fab',\n iconName: 'monero',\n icon: [496, 512, [], \"f3d0\", \"M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z\"]\n};\nvar faNapster = {\n prefix: 'fab',\n iconName: 'napster',\n icon: [496, 512, [], \"f3d2\", \"M298.3 373.6c-14.2 13.6-31.3 24.1-50.4 30.5-19-6.4-36.2-16.9-50.3-30.5h100.7zm44-199.6c20-16.9 43.6-29.2 69.6-36.2V299c0 219.4-328 217.6-328 .3V137.7c25.9 6.9 49.6 19.6 69.5 36.4 56.8-40 132.5-39.9 188.9-.1zm-208.8-58.5c64.4-60 164.3-60.1 228.9-.2-7.1 3.5-13.9 7.3-20.6 11.5-58.7-30.5-129.2-30.4-187.9.1-6.3-4-13.9-8.2-20.4-11.4zM43.8 93.2v69.3c-58.4 36.5-58.4 121.1.1 158.3 26.4 245.1 381.7 240.3 407.6 1.5l.3-1.7c58.7-36.3 58.9-121.7.2-158.2V93.2c-17.3.5-34 3-50.1 7.4-82-91.5-225.5-91.5-307.5.1-16.3-4.4-33.1-7-50.6-7.5zM259.2 352s36-.3 61.3-1.5c10.2-.5 21.1-4 25.5-6.5 26.3-15.1 25.4-39.2 26.2-47.4-79.5-.6-99.9-3.9-113 55.4zm-135.5-55.3c.8 8.2-.1 32.3 26.2 47.4 4.4 2.5 15.2 6 25.5 6.5 25.3 1.1 61.3 1.5 61.3 1.5-13.2-59.4-33.7-56.1-113-55.4zm169.1 123.4c-3.2-5.3-6.9-7.3-6.9-7.3-24.8 7.3-52.2 6.9-75.9 0 0 0-2.9 1.5-6.4 6.6-2.8 4.1-3.7 9.6-3.7 9.6 29.1 17.6 67.1 17.6 96.2 0-.1-.1-.3-4-3.3-8.9z\"]\n};\nvar faNeos = {\n prefix: 'fab',\n iconName: 'neos',\n icon: [512, 512, [], \"f612\", \"M415.44 512h-95.11L212.12 357.46v91.1L125.69 512H28V29.82L68.47 0h108.05l123.74 176.13V63.45L386.69 0h97.69v461.5zM38.77 35.27V496l72-52.88V194l215.5 307.64h84.79l52.35-38.17h-78.27L69 13zm82.54 466.61l80-58.78v-101l-79.76-114.4v220.94L49 501.89h72.34zM80.63 10.77l310.6 442.57h82.37V10.77h-79.75v317.56L170.91 10.77zM311 191.65l72 102.81V15.93l-72 53v122.72z\"]\n};\nvar faNimblr = {\n prefix: 'fab',\n iconName: 'nimblr',\n icon: [384, 512, [], \"f5a8\", \"M246.6 299.29c15.57 0 27.15 11.46 27.15 27s-11.62 27-27.15 27c-15.7 0-27.15-11.57-27.15-27s11.55-27 27.15-27zM113 326.25c0-15.61 11.68-27 27.15-27s27.15 11.46 27.15 27-11.47 27-27.15 27c-15.44 0-27.15-11.31-27.15-27M191.76 159C157 159 89.45 178.77 59.25 227L14 0v335.48C14 433.13 93.61 512 191.76 512s177.76-78.95 177.76-176.52S290.13 159 191.76 159zm0 308.12c-73.27 0-132.51-58.9-132.51-131.59s59.24-131.59 132.51-131.59 132.51 58.86 132.51 131.54S265 467.07 191.76 467.07z\"]\n};\nvar faNode = {\n prefix: 'fab',\n iconName: 'node',\n icon: [640, 512, [], \"f419\", \"M316.3 452c-2.1 0-4.2-.6-6.1-1.6L291 439c-2.9-1.6-1.5-2.2-.5-2.5 3.8-1.3 4.6-1.6 8.7-4 .4-.2 1-.1 1.4.1l14.8 8.8c.5.3 1.3.3 1.8 0L375 408c.5-.3.9-.9.9-1.6v-66.7c0-.7-.3-1.3-.9-1.6l-57.8-33.3c-.5-.3-1.2-.3-1.8 0l-57.8 33.3c-.6.3-.9 1-.9 1.6v66.7c0 .6.4 1.2.9 1.5l15.8 9.1c8.6 4.3 13.9-.8 13.9-5.8v-65.9c0-.9.7-1.7 1.7-1.7h7.3c.9 0 1.7.7 1.7 1.7v65.9c0 11.5-6.2 18-17.1 18-3.3 0-6 0-13.3-3.6l-15.2-8.7c-3.7-2.2-6.1-6.2-6.1-10.5v-66.7c0-4.3 2.3-8.4 6.1-10.5l57.8-33.4c3.7-2.1 8.5-2.1 12.1 0l57.8 33.4c3.7 2.2 6.1 6.2 6.1 10.5v66.7c0 4.3-2.3 8.4-6.1 10.5l-57.8 33.4c-1.7 1.1-3.8 1.7-6 1.7zm46.7-65.8c0-12.5-8.4-15.8-26.2-18.2-18-2.4-19.8-3.6-19.8-7.8 0-3.5 1.5-8.1 14.8-8.1 11.9 0 16.3 2.6 18.1 10.6.2.8.8 1.3 1.6 1.3h7.5c.5 0 .9-.2 1.2-.5.3-.4.5-.8.4-1.3-1.2-13.8-10.3-20.2-28.8-20.2-16.5 0-26.3 7-26.3 18.6 0 12.7 9.8 16.1 25.6 17.7 18.9 1.9 20.4 4.6 20.4 8.3 0 6.5-5.2 9.2-17.4 9.2-15.3 0-18.7-3.8-19.8-11.4-.1-.8-.8-1.4-1.7-1.4h-7.5c-.9 0-1.7.7-1.7 1.7 0 9.7 5.3 21.3 30.6 21.3 18.5 0 29-7.2 29-19.8zm54.5-50.1c0 6.1-5 11.1-11.1 11.1s-11.1-5-11.1-11.1c0-6.3 5.2-11.1 11.1-11.1 6-.1 11.1 4.8 11.1 11.1zm-1.8 0c0-5.2-4.2-9.3-9.4-9.3-5.1 0-9.3 4.1-9.3 9.3 0 5.2 4.2 9.4 9.3 9.4 5.2-.1 9.4-4.3 9.4-9.4zm-4.5 6.2h-2.6c-.1-.6-.5-3.8-.5-3.9-.2-.7-.4-1.1-1.3-1.1h-2.2v5h-2.4v-12.5h4.3c1.5 0 4.4 0 4.4 3.3 0 2.3-1.5 2.8-2.4 3.1 1.7.1 1.8 1.2 2.1 2.8.1 1 .3 2.7.6 3.3zm-2.8-8.8c0-1.7-1.2-1.7-1.8-1.7h-2v3.5h1.9c1.6 0 1.9-1.1 1.9-1.8zM137.3 191c0-2.7-1.4-5.1-3.7-6.4l-61.3-35.3c-1-.6-2.2-.9-3.4-1h-.6c-1.2 0-2.3.4-3.4 1L3.7 184.6C1.4 185.9 0 188.4 0 191l.1 95c0 1.3.7 2.5 1.8 3.2 1.1.7 2.5.7 3.7 0L42 268.3c2.3-1.4 3.7-3.8 3.7-6.4v-44.4c0-2.6 1.4-5.1 3.7-6.4l15.5-8.9c1.2-.7 2.4-1 3.7-1 1.3 0 2.6.3 3.7 1l15.5 8.9c2.3 1.3 3.7 3.8 3.7 6.4v44.4c0 2.6 1.4 5.1 3.7 6.4l36.4 20.9c1.1.7 2.6.7 3.7 0 1.1-.6 1.8-1.9 1.8-3.2l.2-95zM472.5 87.3v176.4c0 2.6-1.4 5.1-3.7 6.4l-61.3 35.4c-2.3 1.3-5.1 1.3-7.4 0l-61.3-35.4c-2.3-1.3-3.7-3.8-3.7-6.4v-70.8c0-2.6 1.4-5.1 3.7-6.4l61.3-35.4c2.3-1.3 5.1-1.3 7.4 0l15.3 8.8c1.7 1 3.9-.3 3.9-2.2v-94c0-2.8 3-4.6 5.5-3.2l36.5 20.4c2.3 1.2 3.8 3.7 3.8 6.4zm-46 128.9c0-.7-.4-1.3-.9-1.6l-21-12.2c-.6-.3-1.3-.3-1.9 0l-21 12.2c-.6.3-.9.9-.9 1.6v24.3c0 .7.4 1.3.9 1.6l21 12.1c.6.3 1.3.3 1.8 0l21-12.1c.6-.3.9-.9.9-1.6v-24.3zm209.8-.7c2.3-1.3 3.7-3.8 3.7-6.4V192c0-2.6-1.4-5.1-3.7-6.4l-60.9-35.4c-2.3-1.3-5.1-1.3-7.4 0l-61.3 35.4c-2.3 1.3-3.7 3.8-3.7 6.4v70.8c0 2.7 1.4 5.1 3.7 6.4l60.9 34.7c2.2 1.3 5 1.3 7.3 0l36.8-20.5c2.5-1.4 2.5-5 0-6.4L550 241.6c-1.2-.7-1.9-1.9-1.9-3.2v-22.2c0-1.3.7-2.5 1.9-3.2l19.2-11.1c1.1-.7 2.6-.7 3.7 0l19.2 11.1c1.1.7 1.9 1.9 1.9 3.2v17.4c0 2.8 3.1 4.6 5.6 3.2l36.7-21.3zM559 219c-.4.3-.7.7-.7 1.2v13.6c0 .5.3 1 .7 1.2l11.8 6.8c.4.3 1 .3 1.4 0L584 235c.4-.3.7-.7.7-1.2v-13.6c0-.5-.3-1-.7-1.2l-11.8-6.8c-.4-.3-1-.3-1.4 0L559 219zm-254.2 43.5v-70.4c0-2.6-1.6-5.1-3.9-6.4l-61.1-35.2c-2.1-1.2-5-1.4-7.4 0l-61.1 35.2c-2.3 1.3-3.9 3.7-3.9 6.4v70.4c0 2.8 1.9 5.2 4 6.4l61.2 35.2c2.4 1.4 5.2 1.3 7.4 0l61-35.2c1.8-1 3.1-2.7 3.6-4.7.1-.5.2-1.1.2-1.7zm-74.3-124.9l-.8.5h1.1l-.3-.5zm76.2 130.2l-.4-.7v.9l.4-.2z\"]\n};\nvar faNodeJs = {\n prefix: 'fab',\n iconName: 'node-js',\n icon: [448, 512, [], \"f3d3\", \"M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z\"]\n};\nvar faNpm = {\n prefix: 'fab',\n iconName: 'npm',\n icon: [576, 512, [], \"f3d4\", \"M288 288h-32v-64h32v64zm288-128v192H288v32H160v-32H0V160h576zm-416 32H32v128h64v-96h32v96h32V192zm160 0H192v160h64v-32h64V192zm224 0H352v128h64v-96h32v96h32v-96h32v96h32V192z\"]\n};\nvar faNs8 = {\n prefix: 'fab',\n iconName: 'ns8',\n icon: [640, 512, [], \"f3d5\", \"M104.324,269.172h26.067V242.994H104.324Zm52.466-26.178-.055-26.178v-.941a39.325,39.325,0,0,0-78.644.941v.166h26.4v-.166a12.98,12.98,0,0,1,25.956,0v26.178Zm52.356,25.846a91.1,91.1,0,0,1-91.1,91.1h-.609a91.1,91.1,0,0,1-91.1-91.1H0v.166A117.33,117.33,0,0,0,117.44,386.28h.775A117.331,117.331,0,0,0,235.49,268.84V242.828H209.146Zm-157.233,0a65.362,65.362,0,0,0,130.723,0H156.292a39.023,39.023,0,0,1-78.035,0V242.883H51.968v-26.62A65.42,65.42,0,0,1,182.8,217.48v25.293h26.344V217.48a91.761,91.761,0,0,0-183.522,0v25.4H51.913Zm418.4-71.173c13.67,0,24.573,6.642,30.052,18.264l.719,1.549,23.245-11.511-.609-1.439c-8.025-19.26-28.5-31.27-53.407-31.27-23.134,0-43.611,11.4-50.972,28.447-.123,26.876-.158,23.9,0,24.85,4.7,11.013,14.555,19.37,28.668,24.241a102.033,102.033,0,0,0,19.813,3.984c5.479.72,10.626,1.384,15.829,3.1,6.364,2.1,10.46,5.257,12.84,9.851v9.851c-3.708,7.527-13.781,12.342-25.791,12.342-14.334,0-25.956-6.918-31.933-19.039l-.72-1.494L415.026,280.9l.553,1.439c7.915,19.426,29.609,32.044,55.289,32.044,23.632,0,44.608-11.4,52.3-28.447l.166-25.9-.166-.664c-4.87-11.014-15.219-19.647-28.944-24.241-7.693-2.712-14.335-3.6-20.7-4.427a83.777,83.777,0,0,1-14.832-2.878c-6.31-1.937-10.4-5.092-12.619-9.63v-8.412C449.45,202.427,458.969,197.667,470.315,197.667ZM287.568,311.344h26.067v-68.4H287.568Zm352.266-53.3c-2.933-6.254-8.3-12.01-15.441-16.714A37.99,37.99,0,0,0,637.4,226l.166-25.347-.166-.664C630.038,184,610.667,173.26,589.25,173.26S548.461,184,541.1,199.992l-.166,25.347.166.664a39.643,39.643,0,0,0,13.006,15.331c-7.2,4.7-12.508,10.46-15.441,16.714l-.166,28.889.166.72c7.582,15.994,27.893,26.731,50.585,26.731s43.057-10.737,50.584-26.731l.166-28.89Zm-73.22-50.806c3.6-6.31,12.563-10.516,22.58-10.516s19.038,4.206,22.636,10.516v13.725c-3.542,6.2-12.563,10.349-22.636,10.349s-19.094-4.15-22.58-10.349Zm47.319,72.169c-3.764,6.641-13.338,10.9-24.683,10.9-11.125,0-20.976-4.372-24.684-10.9V263.25c3.708-6.309,13.5-10.515,24.684-10.515,11.345,0,20.919,4.15,24.683,10.515ZM376.4,265.962l-59.827-89.713h-29v40.623h26.51v.387l62.539,94.085H402.3V176.249H376.4Z\"]\n};\nvar faNutritionix = {\n prefix: 'fab',\n iconName: 'nutritionix',\n icon: [400, 512, [], \"f3d6\", \"M88 8.1S221.4-.1 209 112.5c0 0 19.1-74.9 103-40.6 0 0-17.7 74-88 56 0 0 14.6-54.6 66.1-56.6 0 0-39.9-10.3-82.1 48.8 0 0-19.8-94.5-93.6-99.7 0 0 75.2 19.4 77.6 107.5 0 .1-106.4 7-104-119.8zm312 315.6c0 48.5-9.7 95.3-32 132.3-42.2 30.9-105 48-168 48-62.9 0-125.8-17.1-168-48C9.7 419 0 372.2 0 323.7 0 275.3 17.7 229 40 192c42.2-30.9 97.1-48.6 160-48.6 63 0 117.8 17.6 160 48.6 22.3 37 40 83.3 40 131.7zM120 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM192 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM264 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM336 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm24-39.6c-4.8-22.3-7.4-36.9-16-56-38.8-19.9-90.5-32-144-32S94.8 180.1 56 200c-8.8 19.5-11.2 33.9-16 56 42.2-7.9 98.7-14.8 160-14.8s117.8 6.9 160 14.8z\"]\n};\nvar faOctopusDeploy = {\n prefix: 'fab',\n iconName: 'octopus-deploy',\n icon: [512, 512, [], \"e082\", \"M455.6,349.2c-45.891-39.09-36.67-77.877-16.095-128.11C475.16,134.04,415.967,34.14,329.93,8.3,237.04-19.6,134.252,24.341,99.677,117.147a180.862,180.862,0,0,0-10.988,73.544c1.733,29.543,14.717,52.97,24.09,80.3,17.2,50.161-28.1,92.743-66.662,117.582-46.806,30.2-36.319,39.857-8.428,41.858,23.378,1.68,44.478-4.548,65.265-15.045,9.2-4.647,40.687-18.931,45.13-28.588C135.9,413.388,111.122,459.5,126.621,488.9c19.1,36.229,67.112-31.77,76.709-45.812,8.591-12.572,42.963-81.279,63.627-46.926,18.865,31.361,8.6,76.391,35.738,104.622,32.854,34.2,51.155-18.312,51.412-44.221.163-16.411-6.1-95.852,29.9-59.944C405.428,418,436.912,467.8,472.568,463.642c38.736-4.516-22.123-67.967-28.262-78.695,5.393,4.279,53.665,34.128,53.818,9.52C498.234,375.678,468.039,359.8,455.6,349.2Z\"]\n};\nvar faOdnoklassniki = {\n prefix: 'fab',\n iconName: 'odnoklassniki',\n icon: [320, 512, [], \"f263\", \"M275.1 334c-27.4 17.4-65.1 24.3-90 26.9l20.9 20.6 76.3 76.3c27.9 28.6-17.5 73.3-45.7 45.7-19.1-19.4-47.1-47.4-76.3-76.6L84 503.4c-28.2 27.5-73.6-17.6-45.4-45.7 19.4-19.4 47.1-47.4 76.3-76.3l20.6-20.6c-24.6-2.6-62.9-9.1-90.6-26.9-32.6-21-46.9-33.3-34.3-59 7.4-14.6 27.7-26.9 54.6-5.7 0 0 36.3 28.9 94.9 28.9s94.9-28.9 94.9-28.9c26.9-21.1 47.1-8.9 54.6 5.7 12.4 25.7-1.9 38-34.5 59.1zM30.3 129.7C30.3 58 88.6 0 160 0s129.7 58 129.7 129.7c0 71.4-58.3 129.4-129.7 129.4s-129.7-58-129.7-129.4zm66 0c0 35.1 28.6 63.7 63.7 63.7s63.7-28.6 63.7-63.7c0-35.4-28.6-64-63.7-64s-63.7 28.6-63.7 64z\"]\n};\nvar faOdnoklassnikiSquare = {\n prefix: 'fab',\n iconName: 'odnoklassniki-square',\n icon: [448, 512, [], \"f264\", \"M184.2 177.1c0-22.1 17.9-40 39.8-40s39.8 17.9 39.8 40c0 22-17.9 39.8-39.8 39.8s-39.8-17.9-39.8-39.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-305.1 97.1c0 44.6 36.4 80.9 81.1 80.9s81.1-36.2 81.1-80.9c0-44.8-36.4-81.1-81.1-81.1s-81.1 36.2-81.1 81.1zm174.5 90.7c-4.6-9.1-17.3-16.8-34.1-3.6 0 0-22.7 18-59.3 18s-59.3-18-59.3-18c-16.8-13.2-29.5-5.5-34.1 3.6-7.9 16.1 1.1 23.7 21.4 37 17.3 11.1 41.2 15.2 56.6 16.8l-12.9 12.9c-18.2 18-35.5 35.5-47.7 47.7-17.6 17.6 10.7 45.8 28.4 28.6l47.7-47.9c18.2 18.2 35.7 35.7 47.7 47.9 17.6 17.2 46-10.7 28.6-28.6l-47.7-47.7-13-12.9c15.5-1.6 39.1-5.9 56.2-16.8 20.4-13.3 29.3-21 21.5-37z\"]\n};\nvar faOldRepublic = {\n prefix: 'fab',\n iconName: 'old-republic',\n icon: [496, 512, [], \"f510\", \"M235.76 10.23c7.5-.31 15-.28 22.5-.09 3.61.14 7.2.4 10.79.73 4.92.27 9.79 1.03 14.67 1.62 2.93.43 5.83.98 8.75 1.46 7.9 1.33 15.67 3.28 23.39 5.4 12.24 3.47 24.19 7.92 35.76 13.21 26.56 12.24 50.94 29.21 71.63 49.88 20.03 20.09 36.72 43.55 48.89 69.19 1.13 2.59 2.44 5.1 3.47 7.74 2.81 6.43 5.39 12.97 7.58 19.63 4.14 12.33 7.34 24.99 9.42 37.83.57 3.14 1.04 6.3 1.4 9.47.55 3.83.94 7.69 1.18 11.56.83 8.34.84 16.73.77 25.1-.07 4.97-.26 9.94-.75 14.89-.24 3.38-.51 6.76-.98 10.12-.39 2.72-.63 5.46-1.11 8.17-.9 5.15-1.7 10.31-2.87 15.41-4.1 18.5-10.3 36.55-18.51 53.63-15.77 32.83-38.83 62.17-67.12 85.12a246.503 246.503 0 0 1-56.91 34.86c-6.21 2.68-12.46 5.25-18.87 7.41-3.51 1.16-7.01 2.38-10.57 3.39-6.62 1.88-13.29 3.64-20.04 5-4.66.91-9.34 1.73-14.03 2.48-5.25.66-10.5 1.44-15.79 1.74-6.69.66-13.41.84-20.12.81-6.82.03-13.65-.12-20.45-.79-3.29-.23-6.57-.5-9.83-.95-2.72-.39-5.46-.63-8.17-1.11-4.12-.72-8.25-1.37-12.35-2.22-4.25-.94-8.49-1.89-12.69-3.02-8.63-2.17-17.08-5.01-25.41-8.13-10.49-4.12-20.79-8.75-30.64-14.25-2.14-1.15-4.28-2.29-6.35-3.57-11.22-6.58-21.86-14.1-31.92-22.34-34.68-28.41-61.41-66.43-76.35-108.7-3.09-8.74-5.71-17.65-7.8-26.68-1.48-6.16-2.52-12.42-3.58-18.66-.4-2.35-.61-4.73-.95-7.09-.6-3.96-.75-7.96-1.17-11.94-.8-9.47-.71-18.99-.51-28.49.14-3.51.34-7.01.7-10.51.31-3.17.46-6.37.92-9.52.41-2.81.65-5.65 1.16-8.44.7-3.94 1.3-7.9 2.12-11.82 3.43-16.52 8.47-32.73 15.26-48.18 1.15-2.92 2.59-5.72 3.86-8.59 8.05-16.71 17.9-32.56 29.49-47.06 20-25.38 45.1-46.68 73.27-62.47 7.5-4.15 15.16-8.05 23.07-11.37 15.82-6.88 32.41-11.95 49.31-15.38 3.51-.67 7.04-1.24 10.56-1.85 2.62-.47 5.28-.7 7.91-1.08 3.53-.53 7.1-.68 10.65-1.04 2.46-.24 4.91-.36 7.36-.51m8.64 24.41c-9.23.1-18.43.99-27.57 2.23-7.3 1.08-14.53 2.6-21.71 4.3-13.91 3.5-27.48 8.34-40.46 14.42-10.46 4.99-20.59 10.7-30.18 17.22-4.18 2.92-8.4 5.8-12.34 9.03-5.08 3.97-9.98 8.17-14.68 12.59-2.51 2.24-4.81 4.7-7.22 7.06-28.22 28.79-48.44 65.39-57.5 104.69-2.04 8.44-3.54 17.02-4.44 25.65-1.1 8.89-1.44 17.85-1.41 26.8.11 7.14.38 14.28 1.22 21.37.62 7.12 1.87 14.16 3.2 21.18 1.07 4.65 2.03 9.32 3.33 13.91 6.29 23.38 16.5 45.7 30.07 65.75 8.64 12.98 18.78 24.93 29.98 35.77 16.28 15.82 35.05 29.04 55.34 39.22 7.28 3.52 14.66 6.87 22.27 9.63 5.04 1.76 10.06 3.57 15.22 4.98 11.26 3.23 22.77 5.6 34.39 7.06 2.91.29 5.81.61 8.72.9 13.82 1.08 27.74 1 41.54-.43 4.45-.6 8.92-.99 13.35-1.78 3.63-.67 7.28-1.25 10.87-2.1 4.13-.98 8.28-1.91 12.36-3.07 26.5-7.34 51.58-19.71 73.58-36.2 15.78-11.82 29.96-25.76 42.12-41.28 3.26-4.02 6.17-8.31 9.13-12.55 3.39-5.06 6.58-10.25 9.6-15.54 2.4-4.44 4.74-8.91 6.95-13.45 5.69-12.05 10.28-24.62 13.75-37.49 2.59-10.01 4.75-20.16 5.9-30.45 1.77-13.47 1.94-27.1 1.29-40.65-.29-3.89-.67-7.77-1-11.66-2.23-19.08-6.79-37.91-13.82-55.8-5.95-15.13-13.53-29.63-22.61-43.13-12.69-18.8-28.24-35.68-45.97-49.83-25.05-20-54.47-34.55-85.65-42.08-7.78-1.93-15.69-3.34-23.63-4.45-3.91-.59-7.85-.82-11.77-1.24-7.39-.57-14.81-.72-22.22-.58zM139.26 83.53c13.3-8.89 28.08-15.38 43.3-20.18-3.17 1.77-6.44 3.38-9.53 5.29-11.21 6.68-21.52 14.9-30.38 24.49-6.8 7.43-12.76 15.73-17.01 24.89-3.29 6.86-5.64 14.19-6.86 21.71-.93 4.85-1.3 9.81-1.17 14.75.13 13.66 4.44 27.08 11.29 38.82 5.92 10.22 13.63 19.33 22.36 27.26 4.85 4.36 10.24 8.09 14.95 12.6 2.26 2.19 4.49 4.42 6.43 6.91 2.62 3.31 4.89 6.99 5.99 11.1.9 3.02.66 6.2.69 9.31.02 4.1-.04 8.2.03 12.3.14 3.54-.02 7.09.11 10.63.08 2.38.02 4.76.05 7.14.16 5.77.06 11.53.15 17.3.11 2.91.02 5.82.13 8.74.03 1.63.13 3.28-.03 4.91-.91.12-1.82.18-2.73.16-10.99 0-21.88-2.63-31.95-6.93-6-2.7-11.81-5.89-17.09-9.83-5.75-4.19-11.09-8.96-15.79-14.31-6.53-7.24-11.98-15.39-16.62-23.95-1.07-2.03-2.24-4.02-3.18-6.12-1.16-2.64-2.62-5.14-3.67-7.82-4.05-9.68-6.57-19.94-8.08-30.31-.49-4.44-1.09-8.88-1.2-13.35-.7-15.73.84-31.55 4.67-46.82 2.12-8.15 4.77-16.18 8.31-23.83 6.32-14.2 15.34-27.18 26.3-38.19 6.28-6.2 13.13-11.84 20.53-16.67zm175.37-20.12c2.74.74 5.41 1.74 8.09 2.68 6.36 2.33 12.68 4.84 18.71 7.96 13.11 6.44 25.31 14.81 35.82 24.97 10.2 9.95 18.74 21.6 25.14 34.34 1.28 2.75 2.64 5.46 3.81 8.26 6.31 15.1 10 31.26 11.23 47.57.41 4.54.44 9.09.45 13.64.07 11.64-1.49 23.25-4.3 34.53-1.97 7.27-4.35 14.49-7.86 21.18-3.18 6.64-6.68 13.16-10.84 19.24-6.94 10.47-15.6 19.87-25.82 27.22-10.48 7.64-22.64 13.02-35.4 15.38-3.51.69-7.08 1.08-10.66 1.21-1.85.06-3.72.16-5.56-.1-.28-2.15 0-4.31-.01-6.46-.03-3.73.14-7.45.1-11.17.19-7.02.02-14.05.21-21.07.03-2.38-.03-4.76.03-7.14.17-5.07-.04-10.14.14-15.21.1-2.99-.24-6.04.51-8.96.66-2.5 1.78-4.86 3.09-7.08 4.46-7.31 11.06-12.96 17.68-18.26 5.38-4.18 10.47-8.77 15.02-13.84 7.68-8.37 14.17-17.88 18.78-28.27 2.5-5.93 4.52-12.1 5.55-18.46.86-4.37 1.06-8.83 1.01-13.27-.02-7.85-1.4-15.65-3.64-23.17-1.75-5.73-4.27-11.18-7.09-16.45-3.87-6.93-8.65-13.31-13.96-19.2-9.94-10.85-21.75-19.94-34.6-27.1-1.85-1.02-3.84-1.82-5.63-2.97zm-100.8 58.45c.98-1.18 1.99-2.33 3.12-3.38-.61.93-1.27 1.81-1.95 2.68-3.1 3.88-5.54 8.31-7.03 13.06-.87 3.27-1.68 6.6-1.73 10-.07 2.52-.08 5.07.32 7.57 1.13 7.63 4.33 14.85 8.77 21.12 2 2.7 4.25 5.27 6.92 7.33 1.62 1.27 3.53 2.09 5.34 3.05 3.11 1.68 6.32 3.23 9.07 5.48 2.67 2.09 4.55 5.33 4.4 8.79-.01 73.67 0 147.34-.01 221.02 0 1.35-.08 2.7.04 4.04.13 1.48.82 2.83 1.47 4.15.86 1.66 1.78 3.34 3.18 4.62.85.77 1.97 1.4 3.15 1.24 1.5-.2 2.66-1.35 3.45-2.57.96-1.51 1.68-3.16 2.28-4.85.76-2.13.44-4.42.54-6.63.14-4.03-.02-8.06.14-12.09.03-5.89.03-11.77.06-17.66.14-3.62.03-7.24.11-10.86.15-4.03-.02-8.06.14-12.09.03-5.99.03-11.98.07-17.97.14-3.62.02-7.24.11-10.86.14-3.93-.02-7.86.14-11.78.03-5.99.03-11.98.06-17.97.16-3.94-.01-7.88.19-11.82.29 1.44.13 2.92.22 4.38.19 3.61.42 7.23.76 10.84.32 3.44.44 6.89.86 10.32.37 3.1.51 6.22.95 9.31.57 4.09.87 8.21 1.54 12.29 1.46 9.04 2.83 18.11 5.09 26.99 1.13 4.82 2.4 9.61 4 14.3 2.54 7.9 5.72 15.67 10.31 22.62 1.73 2.64 3.87 4.98 6.1 7.21.27.25.55.51.88.71.6.25 1.31-.07 1.7-.57.71-.88 1.17-1.94 1.7-2.93 4.05-7.8 8.18-15.56 12.34-23.31.7-1.31 1.44-2.62 2.56-3.61 1.75-1.57 3.84-2.69 5.98-3.63 2.88-1.22 5.9-2.19 9.03-2.42 6.58-.62 13.11.75 19.56 1.85 3.69.58 7.4 1.17 11.13 1.41 3.74.1 7.48.05 11.21-.28 8.55-.92 16.99-2.96 24.94-6.25 5.3-2.24 10.46-4.83 15.31-7.93 11.46-7.21 21.46-16.57 30.04-27.01 1.17-1.42 2.25-2.9 3.46-4.28-1.2 3.24-2.67 6.37-4.16 9.48-1.25 2.9-2.84 5.61-4.27 8.42-5.16 9.63-11.02 18.91-17.75 27.52-4.03 5.21-8.53 10.05-13.33 14.57-6.64 6.05-14.07 11.37-22.43 14.76-8.21 3.37-17.31 4.63-26.09 3.29-3.56-.58-7.01-1.69-10.41-2.88-2.79-.97-5.39-2.38-8.03-3.69-3.43-1.71-6.64-3.81-9.71-6.08 2.71 3.06 5.69 5.86 8.7 8.61 4.27 3.76 8.74 7.31 13.63 10.23 3.98 2.45 8.29 4.4 12.84 5.51 1.46.37 2.96.46 4.45.6-1.25 1.1-2.63 2.04-3.99 2.98-9.61 6.54-20.01 11.86-30.69 16.43-20.86 8.7-43.17 13.97-65.74 15.34-4.66.24-9.32.36-13.98.36-4.98-.11-9.97-.13-14.92-.65-11.2-.76-22.29-2.73-33.17-5.43-10.35-2.71-20.55-6.12-30.3-10.55-8.71-3.86-17.12-8.42-24.99-13.79-1.83-1.31-3.74-2.53-5.37-4.08 6.6-1.19 13.03-3.39 18.99-6.48 5.74-2.86 10.99-6.66 15.63-11.07 2.24-2.19 4.29-4.59 6.19-7.09-3.43 2.13-6.93 4.15-10.62 5.78-4.41 2.16-9.07 3.77-13.81 5.02-5.73 1.52-11.74 1.73-17.61 1.14-8.13-.95-15.86-4.27-22.51-8.98-4.32-2.94-8.22-6.43-11.96-10.06-9.93-10.16-18.2-21.81-25.66-33.86-3.94-6.27-7.53-12.75-11.12-19.22-1.05-2.04-2.15-4.05-3.18-6.1 2.85 2.92 5.57 5.97 8.43 8.88 8.99 8.97 18.56 17.44 29.16 24.48 7.55 4.9 15.67 9.23 24.56 11.03 3.11.73 6.32.47 9.47.81 2.77.28 5.56.2 8.34.3 5.05.06 10.11.04 15.16-.16 3.65-.16 7.27-.66 10.89-1.09 2.07-.25 4.11-.71 6.14-1.2 3.88-.95 8.11-.96 11.83.61 4.76 1.85 8.44 5.64 11.38 9.71 2.16 3.02 4.06 6.22 5.66 9.58 1.16 2.43 2.46 4.79 3.55 7.26 1 2.24 2.15 4.42 3.42 6.52.67 1.02 1.4 2.15 2.62 2.55 1.06-.75 1.71-1.91 2.28-3.03 2.1-4.16 3.42-8.65 4.89-13.05 2.02-6.59 3.78-13.27 5.19-20.02 2.21-9.25 3.25-18.72 4.54-28.13.56-3.98.83-7.99 1.31-11.97.87-10.64 1.9-21.27 2.24-31.94.08-1.86.24-3.71.25-5.57.01-4.35.25-8.69.22-13.03-.01-2.38-.01-4.76 0-7.13.05-5.07-.2-10.14-.22-15.21-.2-6.61-.71-13.2-1.29-19.78-.73-5.88-1.55-11.78-3.12-17.51-2.05-7.75-5.59-15.03-9.8-21.82-3.16-5.07-6.79-9.88-11.09-14.03-3.88-3.86-8.58-7.08-13.94-8.45-1.5-.41-3.06-.45-4.59-.64.07-2.99.7-5.93 1.26-8.85 1.59-7.71 3.8-15.3 6.76-22.6 1.52-4.03 3.41-7.9 5.39-11.72 3.45-6.56 7.62-12.79 12.46-18.46zm31.27 1.7c.35-.06.71-.12 1.07-.19.19 1.79.09 3.58.1 5.37v38.13c-.01 1.74.13 3.49-.15 5.22-.36-.03-.71-.05-1.06-.05-.95-3.75-1.72-7.55-2.62-11.31-.38-1.53-.58-3.09-1.07-4.59-1.7-.24-3.43-.17-5.15-.2-5.06-.01-10.13 0-15.19-.01-1.66-.01-3.32.09-4.98-.03-.03-.39-.26-.91.16-1.18 1.28-.65 2.72-.88 4.06-1.35 3.43-1.14 6.88-2.16 10.31-3.31 1.39-.48 2.9-.72 4.16-1.54.04-.56.02-1.13-.05-1.68-1.23-.55-2.53-.87-3.81-1.28-3.13-1.03-6.29-1.96-9.41-3.02-1.79-.62-3.67-1-5.41-1.79-.03-.37-.07-.73-.11-1.09 5.09-.19 10.2.06 15.3-.12 3.36-.13 6.73.08 10.09-.07.12-.39.26-.77.37-1.16 1.08-4.94 2.33-9.83 3.39-14.75zm5.97-.2c.36.05.72.12 1.08.2.98 3.85 1.73 7.76 2.71 11.61.36 1.42.56 2.88 1.03 4.27 2.53.18 5.07-.01 7.61.05 5.16.12 10.33.12 15.49.07.76-.01 1.52.03 2.28.08-.04.36-.07.72-.1 1.08-1.82.83-3.78 1.25-5.67 1.89-3.73 1.23-7.48 2.39-11.22 3.57-.57.17-1.12.42-1.67.64-.15.55-.18 1.12-.12 1.69.87.48 1.82.81 2.77 1.09 4.88 1.52 9.73 3.14 14.63 4.6.38.13.78.27 1.13.49.4.27.23.79.15 1.18-1.66.13-3.31.03-4.97.04-5.17.01-10.33-.01-15.5.01-1.61.03-3.22-.02-4.82.21-.52 1.67-.72 3.42-1.17 5.11-.94 3.57-1.52 7.24-2.54 10.78-.36.01-.71.02-1.06.06-.29-1.73-.15-3.48-.15-5.22v-38.13c.02-1.78-.08-3.58.11-5.37zM65.05 168.33c1.12-2.15 2.08-4.4 3.37-6.46-1.82 7.56-2.91 15.27-3.62 23-.8 7.71-.85 15.49-.54 23.23 1.05 19.94 5.54 39.83 14.23 57.88 2.99 5.99 6.35 11.83 10.5 17.11 6.12 7.47 12.53 14.76 19.84 21.09 4.8 4.1 9.99 7.78 15.54 10.8 3.27 1.65 6.51 3.39 9.94 4.68 5.01 2.03 10.19 3.61 15.42 4.94 3.83.96 7.78 1.41 11.52 2.71 5 1.57 9.47 4.61 13.03 8.43 4.93 5.23 8.09 11.87 10.2 18.67.99 2.9 1.59 5.91 2.17 8.92.15.75.22 1.52.16 2.29-6.5 2.78-13.26 5.06-20.26 6.18-4.11.78-8.29.99-12.46 1.08-10.25.24-20.47-1.76-30.12-5.12-3.74-1.42-7.49-2.85-11.03-4.72-8.06-3.84-15.64-8.7-22.46-14.46-2.92-2.55-5.83-5.13-8.4-8.03-9.16-9.83-16.3-21.41-21.79-33.65-2.39-5.55-4.61-11.18-6.37-16.96-1.17-3.94-2.36-7.89-3.26-11.91-.75-2.94-1.22-5.95-1.87-8.92-.46-2.14-.69-4.32-1.03-6.48-.85-5.43-1.28-10.93-1.33-16.43.11-6.18.25-12.37 1.07-18.5.4-2.86.67-5.74 1.15-8.6.98-5.7 2.14-11.37 3.71-16.93 3.09-11.65 7.48-22.95 12.69-33.84zm363.73-6.44c1.1 1.66 1.91 3.48 2.78 5.26 2.1 4.45 4.24 8.9 6.02 13.49 7.61 18.76 12.3 38.79 13.04 59.05.02 1.76.07 3.52.11 5.29.13 9.57-1.27 19.09-3.18 28.45-.73 3.59-1.54 7.17-2.58 10.69-4.04 14.72-10 29-18.41 41.78-8.21 12.57-19.01 23.55-31.84 31.41-5.73 3.59-11.79 6.64-18.05 9.19-5.78 2.19-11.71 4.03-17.8 5.11-6.4 1.05-12.91 1.52-19.4 1.23-7.92-.48-15.78-2.07-23.21-4.85-1.94-.8-3.94-1.46-5.84-2.33-.21-1.51.25-2.99.53-4.46 1.16-5.74 3.03-11.36 5.7-16.58 2.37-4.51 5.52-8.65 9.46-11.9 2.43-2.05 5.24-3.61 8.16-4.83 3.58-1.5 7.47-1.97 11.24-2.83 7.23-1.71 14.37-3.93 21.15-7 10.35-4.65 19.71-11.38 27.65-19.46 1.59-1.61 3.23-3.18 4.74-4.87 3.37-3.76 6.71-7.57 9.85-11.53 7.48-10.07 12.82-21.59 16.71-33.48 1.58-5.3 3.21-10.6 4.21-16.05.63-2.87 1.04-5.78 1.52-8.68.87-6.09 1.59-12.22 1.68-18.38.12-6.65.14-13.32-.53-19.94-.73-7.99-1.87-15.96-3.71-23.78z\"]\n};\nvar faOpencart = {\n prefix: 'fab',\n iconName: 'opencart',\n icon: [640, 512, [], \"f23d\", \"M423.3 440.7c0 25.3-20.3 45.6-45.6 45.6s-45.8-20.3-45.8-45.6 20.6-45.8 45.8-45.8c25.4 0 45.6 20.5 45.6 45.8zm-253.9-45.8c-25.3 0-45.6 20.6-45.6 45.8s20.3 45.6 45.6 45.6 45.8-20.3 45.8-45.6-20.5-45.8-45.8-45.8zm291.7-270C158.9 124.9 81.9 112.1 0 25.7c34.4 51.7 53.3 148.9 373.1 144.2 333.3-5 130 86.1 70.8 188.9 186.7-166.7 319.4-233.9 17.2-233.9z\"]\n};\nvar faOpenid = {\n prefix: 'fab',\n iconName: 'openid',\n icon: [448, 512, [], \"f19b\", \"M271.5 432l-68 32C88.5 453.7 0 392.5 0 318.2c0-71.5 82.5-131 191.7-144.3v43c-71.5 12.5-124 53-124 101.3 0 51 58.5 93.3 135.7 103v-340l68-33.2v384zM448 291l-131.3-28.5 36.8-20.7c-19.5-11.5-43.5-20-70-24.8v-43c46.2 5.5 87.7 19.5 120.3 39.3l35-19.8L448 291z\"]\n};\nvar faOpera = {\n prefix: 'fab',\n iconName: 'opera',\n icon: [496, 512, [], \"f26a\", \"M313.9 32.7c-170.2 0-252.6 223.8-147.5 355.1 36.5 45.4 88.6 75.6 147.5 75.6 36.3 0 70.3-11.1 99.4-30.4-43.8 39.2-101.9 63-165.3 63-3.9 0-8 0-11.9-.3C104.6 489.6 0 381.1 0 248 0 111 111 0 248 0h.8c63.1.3 120.7 24.1 164.4 63.1-29-19.4-63.1-30.4-99.3-30.4zm101.8 397.7c-40.9 24.7-90.7 23.6-132-5.8 56.2-20.5 97.7-91.6 97.7-176.6 0-84.7-41.2-155.8-97.4-176.6 41.8-29.2 91.2-30.3 132.9-5 105.9 98.7 105.5 265.7-1.2 364z\"]\n};\nvar faOptinMonster = {\n prefix: 'fab',\n iconName: 'optin-monster',\n icon: [576, 512, [], \"f23c\", \"M572.6 421.4c5.6-9.5 4.7-15.2-5.4-11.6-3-4.9-7-9.5-11.1-13.8 2.9-9.7-.7-14.2-10.8-9.2-4.6-3.2-10.3-6.5-15.9-9.2 0-15.1-11.6-11.6-17.6-5.7-10.4-1.5-18.7-.3-26.8 5.7.3-6.5.3-13 .3-19.7 12.6 0 40.2-11 45.9-36.2 1.4-6.8 1.6-13.8-.3-21.9-3-13.5-14.3-21.3-25.1-25.7-.8-5.9-7.6-14.3-14.9-15.9s-12.4 4.9-14.1 10.3c-8.5 0-19.2 2.8-21.1 8.4-5.4-.5-11.1-1.4-16.8-1.9 2.7-1.9 5.4-3.5 8.4-4.6 5.4-9.2 14.6-11.4 25.7-11.6V256c19.5-.5 43-5.9 53.8-18.1 12.7-13.8 14.6-37.3 12.4-55.1-2.4-17.3-9.7-37.6-24.6-48.1-8.4-5.9-21.6-.8-22.7 9.5-2.2 19.6 1.2 30-38.6 25.1-10.3-23.8-24.6-44.6-42.7-60C341 49.6 242.9 55.5 166.4 71.7c19.7 4.6 41.1 8.6 59.7 16.5-26.2 2.4-52.7 11.3-76.2 23.2-32.8 17-44 29.9-56.7 42.4 14.9-2.2 28.9-5.1 43.8-3.8-9.7 5.4-18.4 12.2-26.5 20-25.8.9-23.8-5.3-26.2-25.9-1.1-10.5-14.3-15.4-22.7-9.7-28.1 19.9-33.5 79.9-12.2 103.5 10.8 12.2 35.1 17.3 54.9 17.8-.3 1.1-.3 1.9-.3 2.7 10.8.5 19.5 2.7 24.6 11.6 3 1.1 5.7 2.7 8.1 4.6-5.4.5-11.1 1.4-16.5 1.9-3.3-6.6-13.7-8.1-21.1-8.1-1.6-5.7-6.5-12.2-14.1-10.3-6.8 1.9-14.1 10-14.9 15.9-22.5 9.5-30.1 26.8-25.1 47.6 5.3 24.8 33 36.2 45.9 36.2v19.7c-6.6-5-14.3-7.5-26.8-5.7-5.5-5.5-17.3-10.1-17.3 5.7-5.9 2.7-11.4 5.9-15.9 9.2-9.8-4.9-13.6-1.7-11.1 9.2-4.1 4.3-7.8 8.6-11.1 13.8-10.2-3.7-11 2.2-5.4 11.6-1.1 3.5-1.6 7-1.9 10.8-.5 31.6 44.6 64 73.5 65.1 17.3.5 34.6-8.4 43-23.5 113.2 4.9 226.7 4.1 340.2 0 8.1 15.1 25.4 24.3 42.7 23.5 29.2-1.1 74.3-33.5 73.5-65.1.2-3.7-.7-7.2-1.7-10.7zm-73.8-254c1.1-3 2.4-8.4 2.4-14.6 0-5.9 6.8-8.1 14.1-.8 11.1 11.6 14.9 40.5 13.8 51.1-4.1-13.6-13-29-30.3-35.7zm-4.6 6.7c19.5 6.2 28.6 27.6 29.7 48.9-1.1 2.7-3 5.4-4.9 7.6-5.7 5.9-15.4 10-26.2 12.2 4.3-21.3.3-47.3-12.7-63 4.9-.8 10.9-2.4 14.1-5.7zm-24.1 6.8c13.8 11.9 20 39.2 14.1 63.5-4.1.5-8.1.8-11.6.8-1.9-21.9-6.8-44-14.3-64.6 3.7.3 8.1.3 11.8.3zM47.5 203c-1.1-10.5 2.4-39.5 13.8-51.1 7-7.3 14.1-5.1 14.1.8 0 6.2 1.4 11.6 2.4 14.6-17.3 6.8-26.2 22.2-30.3 35.7zm9.7 27.6c-1.9-2.2-3.5-4.9-4.9-7.6 1.4-21.3 10.3-42.7 29.7-48.9 3.2 3.2 9.2 4.9 14.1 5.7-13 15.7-17 41.6-12.7 63-10.8-2.2-20.5-6-26.2-12.2zm47.9 14.6c-4.1 0-8.1-.3-12.7-.8-4.6-18.6-1.9-38.9 5.4-53v.3l12.2-5.1c4.9-1.9 9.7-3.8 14.9-4.9-10.7 19.7-17.4 41.3-19.8 63.5zm184-162.7c41.9 0 76.2 34 76.2 75.9 0 42.2-34.3 76.2-76.2 76.2s-76.2-34-76.2-76.2c0-41.8 34.3-75.9 76.2-75.9zm115.6 174.3c-.3 17.8-7 48.9-23 57-13.2 6.6-6.5-7.5-16.5-58.1 13.3.3 26.6.3 39.5 1.1zm-54-1.6c.8 4.9 3.8 40.3-1.6 41.9-11.6 3.5-40 4.3-51.1-1.1-4.1-3-4.6-35.9-4.3-41.1v.3c18.9-.3 38.1-.3 57 0zM278.3 309c-13 3.5-41.6 4.1-54.6-1.6-6.5-2.7-3.8-42.4-1.9-51.6 19.2-.5 38.4-.5 57.8-.8v.3c1.1 8.3 3.3 51.2-1.3 53.7zm-106.5-51.1c12.2-.8 24.6-1.4 36.8-1.6-2.4 15.4-3 43.5-4.9 52.2-1.1 6.8-4.3 6.8-9.7 4.3-21.9-9.8-27.6-35.2-22.2-54.9zm-35.4 31.3c7.8-1.1 15.7-1.9 23.5-2.7 1.6 6.2 3.8 11.9 7 17.6 10 17 44 35.7 45.1 7 6.2 14.9 40.8 12.2 54.9 10.8 15.7-1.4 23.8-1.4 26.8-14.3 12.4 4.3 30.8 4.1 44 3 11.3-.8 20.8-.5 24.6-8.9 1.1 5.1 1.9 11.6 4.6 16.8 10.8 21.3 37.3 1.4 46.8-31.6 8.6.8 17.6 1.9 26.5 2.7-.4 1.3-3.8 7.3 7.3 11.6-47.6 47-95.7 87.8-163.2 107-63.2-20.8-112.1-59.5-155.9-106.5 9.6-3.4 10.4-8.8 8-12.5zm-21.6 172.5c-3.8 17.8-21.9 29.7-39.7 28.9-19.2-.8-46.5-17-59.2-36.5-2.7-31.1 43.8-61.3 66.2-54.6 14.9 4.3 27.8 30.8 33.5 54 0 3-.3 5.7-.8 8.2zm-8.7-66c-.5-13.5-.5-27-.3-40.5h.3c2.7-1.6 5.7-3.8 7.8-6.5 6.5-1.6 13-5.1 15.1-9.2 3.3-7.1-7-7.5-5.4-12.4 2.7-1.1 5.7-2.2 7.8-3.5 29.2 29.2 58.6 56.5 97.3 77-36.8 11.3-72.4 27.6-105.9 47-1.2-18.6-7.7-35.9-16.7-51.9zm337.6 64.6c-103 3.5-206.2 4.1-309.4 0 0 .3 0 .3-.3.3v-.3h.3c35.1-21.6 72.2-39.2 112.4-50.8 11.6 5.1 23 9.5 34.9 13.2 2.2.8 2.2.8 4.3 0 14.3-4.1 28.4-9.2 42.2-15.4 41.5 11.7 78.8 31.7 115.6 53zm10.5-12.4c-35.9-19.5-73-35.9-111.9-47.6 38.1-20 71.9-47.3 103.5-76.7 2.2 1.4 4.6 2.4 7.6 3.2 0 .8.3 1.9.5 2.4-4.6 2.7-7.8 6.2-5.9 10.3 2.2 3.8 8.6 7.6 15.1 8.9 2.4 2.7 5.1 5.1 8.1 6.8 0 13.8-.3 27.6-.8 41.3l.3-.3c-9.3 15.9-15.5 37-16.5 51.7zm105.9 6.2c-12.7 19.5-40 35.7-59.2 36.5-19.3.9-40.5-13.2-40.5-37 5.7-23.2 18.9-49.7 33.5-54 22.7-6.9 69.2 23.4 66.2 54.5zM372.9 75.2c-3.8-72.1-100.8-79.7-126-23.5 44.6-24.3 90.3-15.7 126 23.5zM74.8 407.1c-15.7 1.6-49.5 25.4-49.5 43.2 0 11.6 15.7 19.5 32.2 14.9 12.2-3.2 31.1-17.6 35.9-27.3 6-11.6-3.7-32.7-18.6-30.8zm215.9-176.2c28.6 0 51.9-21.6 51.9-48.4 0-36.1-40.5-58.1-72.2-44.3 9.5 3 16.5 11.6 16.5 21.6 0 23.3-33.3 32-46.5 11.3-7.3 34.1 19.4 59.8 50.3 59.8zM68 474.1c.5 6.5 12.2 12.7 21.6 9.5 6.8-2.7 14.6-10.5 17.3-16.2 3-7-1.1-20-9.7-18.4-8.9 1.6-29.7 16.7-29.2 25.1zm433.2-67c-14.9-1.9-24.6 19.2-18.9 30.8 4.9 9.7 24.1 24.1 36.2 27.3 16.5 4.6 32.2-3.2 32.2-14.9 0-17.8-33.8-41.6-49.5-43.2zM478.8 449c-8.4-1.6-12.4 11.3-9.5 18.4 2.4 5.7 10.3 13.5 17.3 16.2 9.2 3.2 21.1-3 21.3-9.5.9-8.4-20.2-23.5-29.1-25.1z\"]\n};\nvar faOrcid = {\n prefix: 'fab',\n iconName: 'orcid',\n icon: [512, 512, [], \"f8d2\", \"M294.75 188.19h-45.92V342h47.47c67.62 0 83.12-51.34 83.12-76.91 0-41.64-26.54-76.9-84.67-76.9zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-80.79 360.76h-29.84v-207.5h29.84zm-14.92-231.14a19.57 19.57 0 1 1 19.57-19.57 19.64 19.64 0 0 1-19.57 19.57zM300 369h-81V161.26h80.6c76.73 0 110.44 54.83 110.44 103.85C410 318.39 368.38 369 300 369z\"]\n};\nvar faOsi = {\n prefix: 'fab',\n iconName: 'osi',\n icon: [512, 512, [], \"f41a\", \"M8 266.44C10.3 130.64 105.4 34 221.8 18.34c138.8-18.6 255.6 75.8 278 201.1 21.3 118.8-44 230-151.6 274-9.3 3.8-14.4 1.7-18-7.7q-26.7-69.45-53.4-139c-3.1-8.1-1-13.2 7-16.8 24.2-11 39.3-29.4 43.3-55.8a71.47 71.47 0 0 0-64.5-82.2c-39-3.4-71.8 23.7-77.5 59.7-5.2 33 11.1 63.7 41.9 77.7 9.6 4.4 11.5 8.6 7.8 18.4q-26.85 69.9-53.7 139.9c-2.6 6.9-8.3 9.3-15.5 6.5-52.6-20.3-101.4-61-130.8-119-24.9-49.2-25.2-87.7-26.8-108.7zm20.9-1.9c.4 6.6.6 14.3 1.3 22.1 6.3 71.9 49.6 143.5 131 183.1 3.2 1.5 4.4.8 5.6-2.3q22.35-58.65 45-117.3c1.3-3.3.6-4.8-2.4-6.7-31.6-19.9-47.3-48.5-45.6-86 1-21.6 9.3-40.5 23.8-56.3 30-32.7 77-39.8 115.5-17.6a91.64 91.64 0 0 1 45.2 90.4c-3.6 30.6-19.3 53.9-45.7 69.8-2.7 1.6-3.5 2.9-2.3 6q22.8 58.8 45.2 117.7c1.2 3.1 2.4 3.8 5.6 2.3 35.5-16.6 65.2-40.3 88.1-72 34.8-48.2 49.1-101.9 42.3-161-13.7-117.5-119.4-214.8-255.5-198-106.1 13-195.3 102.5-197.1 225.8z\"]\n};\nvar faPage4 = {\n prefix: 'fab',\n iconName: 'page4',\n icon: [496, 512, [], \"f3d7\", \"M248 504C111 504 0 393 0 256S111 8 248 8c20.9 0 41.3 2.6 60.7 7.5L42.3 392H248v112zm0-143.6V146.8L98.6 360.4H248zm96 31.6v92.7c45.7-19.2 84.5-51.7 111.4-92.7H344zm57.4-138.2l-21.2 8.4 21.2 8.3v-16.7zm-20.3 54.5c-6.7 0-8 6.3-8 12.9v7.7h16.2v-10c0-5.9-2.3-10.6-8.2-10.6zM496 256c0 37.3-8.2 72.7-23 104.4H344V27.3C433.3 64.8 496 153.1 496 256zM360.4 143.6h68.2V96h-13.9v32.6h-13.9V99h-13.9v29.6h-12.7V96h-13.9v47.6zm68.1 185.3H402v-11c0-15.4-5.6-25.2-20.9-25.2-15.4 0-20.7 10.6-20.7 25.9v25.3h68.2v-15zm0-103l-68.2 29.7V268l68.2 29.5v-16.6l-14.4-5.7v-26.5l14.4-5.9v-16.9zm-4.8-68.5h-35.6V184H402v-12.2h11c8.6 15.8 1.3 35.3-18.6 35.3-22.5 0-28.3-25.3-15.5-37.7l-11.6-10.6c-16.2 17.5-12.2 63.9 27.1 63.9 34 0 44.7-35.9 29.3-65.3z\"]\n};\nvar faPagelines = {\n prefix: 'fab',\n iconName: 'pagelines',\n icon: [384, 512, [], \"f18c\", \"M384 312.7c-55.1 136.7-187.1 54-187.1 54-40.5 81.8-107.4 134.4-184.6 134.7-16.1 0-16.6-24.4 0-24.4 64.4-.3 120.5-42.7 157.2-110.1-41.1 15.9-118.6 27.9-161.6-82.2 109-44.9 159.1 11.2 178.3 45.5 9.9-24.4 17-50.9 21.6-79.7 0 0-139.7 21.9-149.5-98.1 119.1-47.9 152.6 76.7 152.6 76.7 1.6-16.7 3.3-52.6 3.3-53.4 0 0-106.3-73.7-38.1-165.2 124.6 43 61.4 162.4 61.4 162.4.5 1.6.5 23.8 0 33.4 0 0 45.2-89 136.4-57.5-4.2 134-141.9 106.4-141.9 106.4-4.4 27.4-11.2 53.4-20 77.5 0 0 83-91.8 172-20z\"]\n};\nvar faPalfed = {\n prefix: 'fab',\n iconName: 'palfed',\n icon: [576, 512, [], \"f3d8\", \"M384.9 193.9c0-47.4-55.2-44.2-95.4-29.8-1.3 39.4-2.5 80.7-3 119.8.7 2.8 2.6 6.2 15.1 6.2 36.8 0 83.4-42.8 83.3-96.2zm-194.5 72.2c.2 0 6.5-2.7 11.2-2.7 26.6 0 20.7 44.1-14.4 44.1-21.5 0-37.1-18.1-37.1-43 0-42 42.9-95.6 100.7-126.5 1-12.4 3-22 10.5-28.2 11.2-9 26.6-3.5 29.5 11.1 72.2-22.2 135.2 1 135.2 72 0 77.9-79.3 152.6-140.1 138.2-.1 39.4.9 74.4 2.7 100v.2c.2 3.4.6 12.5-5.3 19.1-9.6 10.6-33.4 10-36.4-22.3-4.1-44.4.2-206.1 1.4-242.5-21.5 15-58.5 50.3-58.5 75.9.2 2.5.4 4 .6 4.6zM8 181.1s-.1 37.4 38.4 37.4h30l22.4 217.2s0 44.3 44.7 44.3h288.9s44.7-.4 44.7-44.3l22.4-217.2h30s38.4 1.2 38.4-37.4c0 0 .1-37.4-38.4-37.4h-30.1c-7.3-25.6-30.2-74.3-119.4-74.3h-28V50.3s-2.7-18.4-21.1-18.4h-85.8s-21.1 0-21.1 18.4v19.1h-28.1s-105 4.2-120.5 74.3h-29S8 142.5 8 181.1z\"]\n};\nvar faPatreon = {\n prefix: 'fab',\n iconName: 'patreon',\n icon: [512, 512, [], \"f3d9\", \"M512 194.8c0 101.3-82.4 183.8-183.8 183.8-101.7 0-184.4-82.4-184.4-183.8 0-101.6 82.7-184.3 184.4-184.3C429.6 10.5 512 93.2 512 194.8zM0 501.5h90v-491H0v491z\"]\n};\nvar faPaypal = {\n prefix: 'fab',\n iconName: 'paypal',\n icon: [384, 512, [], \"f1ed\", \"M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z\"]\n};\nvar faPennyArcade = {\n prefix: 'fab',\n iconName: 'penny-arcade',\n icon: [640, 512, [], \"f704\", \"M421.91 164.27c-4.49 19.45-1.4 6.06-15.1 65.29l39.73-10.61c-22.34-49.61-17.29-38.41-24.63-54.68zm-206.09 51.11c-20.19 5.4-11.31 3.03-39.63 10.58l4.46 46.19c28.17-7.59 20.62-5.57 34.82-9.34 42.3-9.79 32.85-56.42.35-47.43zm326.16-26.19l-45.47-99.2c-5.69-12.37-19.46-18.84-32.62-15.33-70.27 18.75-38.72 10.32-135.59 36.23a27.618 27.618 0 0 0-18.89 17.41C144.26 113.27 0 153.75 0 226.67c0 33.5 30.67 67.11 80.9 95.37l1.74 17.88a27.891 27.891 0 0 0-17.77 28.67l4.3 44.48c1.39 14.31 13.43 25.21 27.8 25.2 5.18-.01-3.01 1.78 122.53-31.76 12.57-3.37 21.12-15.02 20.58-28.02 216.59 45.5 401.99-5.98 399.89-84.83.01-28.15-22.19-66.56-97.99-104.47zM255.14 298.3l-21.91 5.88-48.44 12.91 2.46 23.55 20.53-5.51 4.51 44.51-115.31 30.78-4.3-44.52 20.02-5.35-11.11-114.64-20.12 5.39-4.35-44.5c178.15-47.54 170.18-46.42 186.22-46.65 56.66-1.13 64.15 71.84 42.55 104.43a86.7 86.7 0 0 1-50.75 33.72zm199.18 16.62l-3.89-39.49 14.9-3.98-6.61-14.68-57.76 15.42-4.1 17.54 19.2-5.12 4.05 39.54-112.85 30.07-4.46-44.43 20.99-5.59 33.08-126.47-17.15 4.56-4.2-44.48c93.36-24.99 65.01-17.41 135.59-36.24l66.67 145.47 20.79-5.56 4.3 44.48-108.55 28.96z\"]\n};\nvar faPerbyte = {\n prefix: 'fab',\n iconName: 'perbyte',\n icon: [448, 512, [], \"e083\", \"M305.314,284.578H246.6V383.3h58.711q24.423,0,38.193-13.77t13.77-36.11q0-21.826-14.032-35.335T305.314,284.578ZM149.435,128.7H90.724v98.723h58.711q24.42,0,38.19-13.773t13.77-36.107q0-21.826-14.029-35.338T149.435,128.7ZM366.647,32H81.353A81.445,81.445,0,0,0,0,113.352V398.647A81.445,81.445,0,0,0,81.353,480H366.647A81.445,81.445,0,0,0,448,398.647V113.352A81.445,81.445,0,0,0,366.647,32Zm63.635,366.647a63.706,63.706,0,0,1-63.635,63.635H81.353a63.706,63.706,0,0,1-63.635-63.635V113.352A63.706,63.706,0,0,1,81.353,49.718H366.647a63.706,63.706,0,0,1,63.635,63.634ZM305.314,128.7H246.6v98.723h58.711q24.423,0,38.193-13.773t13.77-36.107q0-21.826-14.032-35.338T305.314,128.7Z\"]\n};\nvar faPeriscope = {\n prefix: 'fab',\n iconName: 'periscope',\n icon: [448, 512, [], \"f3da\", \"M370 63.6C331.4 22.6 280.5 0 226.6 0 111.9 0 18.5 96.2 18.5 214.4c0 75.1 57.8 159.8 82.7 192.7C137.8 455.5 192.6 512 226.6 512c41.6 0 112.9-94.2 120.9-105 24.6-33.1 82-118.3 82-192.6 0-56.5-21.1-110.1-59.5-150.8zM226.6 493.9c-42.5 0-190-167.3-190-279.4 0-107.4 83.9-196.3 190-196.3 100.8 0 184.7 89 184.7 196.3.1 112.1-147.4 279.4-184.7 279.4zM338 206.8c0 59.1-51.1 109.7-110.8 109.7-100.6 0-150.7-108.2-92.9-181.8v.4c0 24.5 20.1 44.4 44.8 44.4 24.7 0 44.8-19.9 44.8-44.4 0-18.2-11.1-33.8-26.9-40.7 76.6-19.2 141 39.3 141 112.4z\"]\n};\nvar faPhabricator = {\n prefix: 'fab',\n iconName: 'phabricator',\n icon: [496, 512, [], \"f3db\", \"M323 262.1l-.1-13s21.7-19.8 21.1-21.2l-9.5-20c-.6-1.4-29.5-.5-29.5-.5l-9.4-9.3s.2-28.5-1.2-29.1l-20.1-9.2c-1.4-.6-20.7 21-20.7 21l-13.1-.2s-20.5-21.4-21.9-20.8l-20 8.3c-1.4.5.2 28.9.2 28.9l-9.1 9.1s-29.2-.9-29.7.4l-8.1 19.8c-.6 1.4 21 21 21 21l.1 12.9s-21.7 19.8-21.1 21.2l9.5 20c.6 1.4 29.5.5 29.5.5l9.4 9.3s-.2 31.8 1.2 32.3l20.1 8.3c1.4.6 20.7-23.5 20.7-23.5l13.1.2s20.5 23.8 21.8 23.3l20-7.5c1.4-.6-.2-32.1-.2-32.1l9.1-9.1s29.2.9 29.7-.5l8.1-19.8c.7-1.1-20.9-20.7-20.9-20.7zm-44.9-8.7c.7 17.1-12.8 31.6-30.1 32.4-17.3.8-32.1-12.5-32.8-29.6-.7-17.1 12.8-31.6 30.1-32.3 17.3-.8 32.1 12.5 32.8 29.5zm201.2-37.9l-97-97-.1.1c-75.1-73.3-195.4-72.8-269.8 1.6-50.9 51-27.8 27.9-95.7 95.3-22.3 22.3-22.3 58.7 0 81 69.9 69.4 46.4 46 97.4 97l.1-.1c75.1 73.3 195.4 72.9 269.8-1.6 51-50.9 27.9-27.9 95.3-95.3 22.3-22.3 22.3-58.7 0-81zM140.4 363.8c-59.6-59.5-59.6-156 0-215.5 59.5-59.6 156-59.5 215.6 0 59.5 59.5 59.6 156 0 215.6-59.6 59.5-156 59.4-215.6-.1z\"]\n};\nvar faPhoenixFramework = {\n prefix: 'fab',\n iconName: 'phoenix-framework',\n icon: [640, 512, [], \"f3dc\", \"M212.9 344.3c3.8-.1 22.8-1.4 25.6-2.2-2.4-2.6-43.6-1-68-49.6-4.3-8.6-7.5-17.6-6.4-27.6 2.9-25.5 32.9-30 52-18.5 36 21.6 63.3 91.3 113.7 97.5 37 4.5 84.6-17 108.2-45.4-.6-.1-.8-.2-1-.1-.4.1-.8.2-1.1.3-33.3 12.1-94.3 9.7-134.7-14.8-37.6-22.8-53.1-58.7-51.8-74.6 1.8-21.3 22.9-23.2 35.9-19.6 14.4 3.9 24.4 17.6 38.9 27.4 15.6 10.4 32.9 13.7 51.3 10.3 14.9-2.7 34.4-12.3 36.5-14.5-1.1-.1-1.8-.1-2.5-.2-6.2-.6-12.4-.8-18.5-1.7C279.8 194.5 262.1 47.4 138.5 37.9 94.2 34.5 39.1 46 2.2 72.9c-.8.6-1.5 1.2-2.2 1.8.1.2.1.3.2.5.8 0 1.6-.1 2.4-.2 6.3-1 12.5-.8 18.7.3 23.8 4.3 47.7 23.1 55.9 76.5 5.3 34.3-.7 50.8 8 86.1 19 77.1 91 107.6 127.7 106.4zM75.3 64.9c-.9-1-.9-1.2-1.3-2 12.1-2.6 24.2-4.1 36.6-4.8-1.1 14.7-22.2 21.3-35.3 6.8zm196.9 350.5c-42.8 1.2-92-26.7-123.5-61.4-4.6-5-16.8-20.2-18.6-23.4l.4-.4c6.6 4.1 25.7 18.6 54.8 27 24.2 7 48.1 6.3 71.6-3.3 22.7-9.3 41-.5 43.1 2.9-18.5 3.8-20.1 4.4-24 7.9-5.1 4.4-4.6 11.7 7 17.2 26.2 12.4 63-2.8 97.2 25.4 2.4 2 8.1 7.8 10.1 10.7-.1.2-.3.3-.4.5-4.8-1.5-16.4-7.5-40.2-9.3-24.7-2-46.3 5.3-77.5 6.2zm174.8-252c16.4-5.2 41.3-13.4 66.5-3.3 16.1 6.5 26.2 18.7 32.1 34.6 3.5 9.4 5.1 19.7 5.1 28.7-.2 0-.4 0-.6.1-.2-.4-.4-.9-.5-1.3-5-22-29.9-43.8-67.6-29.9-50.2 18.6-130.4 9.7-176.9-48-.7-.9-2.4-1.7-1.3-3.2.1-.2 2.1.6 3 1.3 18.1 13.4 38.3 21.9 60.3 26.2 30.5 6.1 54.6 2.9 79.9-5.2zm102.7 117.5c-32.4.2-33.8 50.1-103.6 64.4-18.2 3.7-38.7 4.6-44.9 4.2v-.4c2.8-1.5 14.7-2.6 29.7-16.6 7.9-7.3 15.3-15.1 22.8-22.9 19.5-20.2 41.4-42.2 81.9-39 23.1 1.8 29.3 8.2 36.1 12.7.3.2.4.5.7.9-.5 0-.7.1-.9 0-7-2.7-14.3-3.3-21.8-3.3zm-12.3-24.1c-.1.2-.1.4-.2.6-28.9-4.4-48-7.9-68.5 4-17 9.9-31.4 20.5-62 24.4-27.1 3.4-45.1 2.4-66.1-8-.3-.2-.6-.4-1-.6 0-.2.1-.3.1-.5 24.9 3.8 36.4 5.1 55.5-5.8 22.3-12.9 40.1-26.6 71.3-31 29.6-4.1 51.3 2.5 70.9 16.9zM268.6 97.3c-.6-.6-1.1-1.2-2.1-2.3 7.6 0 29.7-1.2 53.4 8.4 19.7 8 32.2 21 50.2 32.9 11.1 7.3 23.4 9.3 36.4 8.1 4.3-.4 8.5-1.2 12.8-1.7.4-.1.9 0 1.5.3-.6.4-1.2.9-1.8 1.2-8.1 4-16.7 6.3-25.6 7.1-26.1 2.6-50.3-3.7-73.4-15.4-19.3-9.9-36.4-22.9-51.4-38.6zM640 335.7c-3.5 3.1-22.7 11.6-42.7 5.3-12.3-3.9-19.5-14.9-31.6-24.1-10-7.6-20.9-7.9-28.1-8.4.6-.8.9-1.2 1.2-1.4 14.8-9.2 30.5-12.2 47.3-6.5 12.5 4.2 19.2 13.5 30.4 24.2 10.8 10.4 21 9.9 23.1 10.5.1-.1.2 0 .4.4zm-212.5 137c2.2 1.2 1.6 1.5 1.5 2-18.5-1.4-33.9-7.6-46.8-22.2-21.8-24.7-41.7-27.9-48.6-29.7.5-.2.8-.4 1.1-.4 13.1.1 26.1.7 38.9 3.9 25.3 6.4 35 25.4 41.6 35.3 3.2 4.8 7.3 8.3 12.3 11.1z\"]\n};\nvar faPhoenixSquadron = {\n prefix: 'fab',\n iconName: 'phoenix-squadron',\n icon: [512, 512, [], \"f511\", \"M96 63.38C142.49 27.25 201.55 7.31 260.51 8.81c29.58-.38 59.11 5.37 86.91 15.33-24.13-4.63-49-6.34-73.38-2.45C231.17 27 191 48.84 162.21 80.87c5.67-1 10.78-3.67 16-5.86 18.14-7.87 37.49-13.26 57.23-14.83 19.74-2.13 39.64-.43 59.28 1.92-14.42 2.79-29.12 4.57-43 9.59-34.43 11.07-65.27 33.16-86.3 62.63-13.8 19.71-23.63 42.86-24.67 67.13-.35 16.49 5.22 34.81 19.83 44a53.27 53.27 0 0 0 37.52 6.74c15.45-2.46 30.07-8.64 43.6-16.33 11.52-6.82 22.67-14.55 32-24.25 3.79-3.22 2.53-8.45 2.62-12.79-2.12-.34-4.38-1.11-6.3.3a203 203 0 0 1-35.82 15.37c-20 6.17-42.16 8.46-62.1.78 12.79 1.73 26.06.31 37.74-5.44 20.23-9.72 36.81-25.2 54.44-38.77a526.57 526.57 0 0 1 88.9-55.31c25.71-12 52.94-22.78 81.57-24.12-15.63 13.72-32.15 26.52-46.78 41.38-14.51 14-27.46 29.5-40.11 45.18-3.52 4.6-8.95 6.94-13.58 10.16a150.7 150.7 0 0 0-51.89 60.1c-9.33 19.68-14.5 41.85-11.77 63.65 1.94 13.69 8.71 27.59 20.9 34.91 12.9 8 29.05 8.07 43.48 5.1 32.8-7.45 61.43-28.89 81-55.84 20.44-27.52 30.52-62.2 29.16-96.35-.52-7.5-1.57-15-1.66-22.49 8 19.48 14.82 39.71 16.65 60.83 2 14.28.75 28.76-1.62 42.9-1.91 11-5.67 21.51-7.78 32.43a165 165 0 0 0 39.34-81.07 183.64 183.64 0 0 0-14.21-104.64c20.78 32 32.34 69.58 35.71 107.48.49 12.73.49 25.51 0 38.23A243.21 243.21 0 0 1 482 371.34c-26.12 47.34-68 85.63-117.19 108-78.29 36.23-174.68 31.32-248-14.68A248.34 248.34 0 0 1 25.36 366 238.34 238.34 0 0 1 0 273.08v-31.34C3.93 172 40.87 105.82 96 63.38m222 80.33a79.13 79.13 0 0 0 16-4.48c5-1.77 9.24-5.94 10.32-11.22-8.96 4.99-17.98 9.92-26.32 15.7z\"]\n};\nvar faPhp = {\n prefix: 'fab',\n iconName: 'php',\n icon: [640, 512, [], \"f457\", \"M320 104.5c171.4 0 303.2 72.2 303.2 151.5S491.3 407.5 320 407.5c-171.4 0-303.2-72.2-303.2-151.5S148.7 104.5 320 104.5m0-16.8C143.3 87.7 0 163 0 256s143.3 168.3 320 168.3S640 349 640 256 496.7 87.7 320 87.7zM218.2 242.5c-7.9 40.5-35.8 36.3-70.1 36.3l13.7-70.6c38 0 63.8-4.1 56.4 34.3zM97.4 350.3h36.7l8.7-44.8c41.1 0 66.6 3 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7h-70.7L97.4 350.3zm185.7-213.6h36.5l-8.7 44.8c31.5 0 60.7-2.3 74.8 10.7 14.8 13.6 7.7 31-8.3 113.1h-37c15.4-79.4 18.3-86 12.7-92-5.4-5.8-17.7-4.6-47.4-4.6l-18.8 96.6h-36.5l32.7-168.6zM505 242.5c-8 41.1-36.7 36.3-70.1 36.3l13.7-70.6c38.2 0 63.8-4.1 56.4 34.3zM384.2 350.3H421l8.7-44.8c43.2 0 67.1 2.5 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7H417l-32.8 168.7z\"]\n};\nvar faPiedPiper = {\n prefix: 'fab',\n iconName: 'pied-piper',\n icon: [480, 512, [], \"f2ae\", \"M455.93,23.2C429.23,30,387.79,51.69,341.35,90.66A206,206,0,0,0,240,64C125.13,64,32,157.12,32,272s93.13,208,208,208,208-93.13,208-208a207.25,207.25,0,0,0-58.75-144.81,155.35,155.35,0,0,0-17,27.4A176.16,176.16,0,0,1,417.1,272c0,97.66-79.44,177.11-177.09,177.11a175.81,175.81,0,0,1-87.63-23.4c82.94-107.33,150.79-37.77,184.31-226.65,5.79-32.62,28-94.26,126.23-160.18C471,33.45,465.35,20.8,455.93,23.2ZM125,406.4A176.66,176.66,0,0,1,62.9,272C62.9,174.34,142.35,94.9,240,94.9a174,174,0,0,1,76.63,17.75C250.64,174.76,189.77,265.52,125,406.4Z\"]\n};\nvar faPiedPiperAlt = {\n prefix: 'fab',\n iconName: 'pied-piper-alt',\n icon: [576, 512, [], \"f1a8\", \"M244 246c-3.2-2-6.3-2.9-10.1-2.9-6.6 0-12.6 3.2-19.3 3.7l1.7 4.9zm135.9 197.9c-19 0-64.1 9.5-79.9 19.8l6.9 45.1c35.7 6.1 70.1 3.6 106-9.8-4.8-10-23.5-55.1-33-55.1zM340.8 177c6.6 2.8 11.5 9.2 22.7 22.1 2-1.4 7.5-5.2 7.5-8.6 0-4.9-11.8-13.2-13.2-23 11.2-5.7 25.2-6 37.6-8.9 68.1-16.4 116.3-52.9 146.8-116.7C548.3 29.3 554 16.1 554.6 2l-2 2.6c-28.4 50-33 63.2-81.3 100-31.9 24.4-69.2 40.2-106.6 54.6l-6.3-.3v-21.8c-19.6 1.6-19.7-14.6-31.6-23-18.7 20.6-31.6 40.8-58.9 51.1-12.7 4.8-19.6 10-25.9 21.8 34.9-16.4 91.2-13.5 98.8-10zM555.5 0l-.6 1.1-.3.9.6-.6zm-59.2 382.1c-33.9-56.9-75.3-118.4-150-115.5l-.3-6c-1.1-13.5 32.8 3.2 35.1-31l-14.4 7.2c-19.8-45.7-8.6-54.3-65.5-54.3-14.7 0-26.7 1.7-41.4 4.6 2.9 18.6 2.2 36.7-10.9 50.3l19.5 5.5c-1.7 3.2-2.9 6.3-2.9 9.8 0 21 42.8 2.9 42.8 33.6 0 18.4-36.8 60.1-54.9 60.1-8 0-53.7-50-53.4-60.1l.3-4.6 52.3-11.5c13-2.6 12.3-22.7-2.9-22.7-3.7 0-43.1 9.2-49.4 10.6-2-5.2-7.5-14.1-13.8-14.1-3.2 0-6.3 3.2-9.5 4-9.2 2.6-31 2.9-21.5 20.1L15.9 298.5c-5.5 1.1-8.9 6.3-8.9 11.8 0 6 5.5 10.9 11.5 10.9 8 0 131.3-28.4 147.4-32.2 2.6 3.2 4.6 6.3 7.8 8.6 20.1 14.4 59.8 85.9 76.4 85.9 24.1 0 58-22.4 71.3-41.9 3.2-4.3 6.9-7.5 12.4-6.9.6 13.8-31.6 34.2-33 43.7-1.4 10.2-1 35.2-.3 41.1 26.7 8.1 52-3.6 77.9-2.9 4.3-21 10.6-41.9 9.8-63.5l-.3-9.5c-1.4-34.2-10.9-38.5-34.8-58.6-1.1-1.1-2.6-2.6-3.7-4 2.2-1.4 1.1-1 4.6-1.7 88.5 0 56.3 183.6 111.5 229.9 33.1-15 72.5-27.9 103.5-47.2-29-25.6-52.6-45.7-72.7-79.9zm-196.2 46.1v27.2l11.8-3.4-2.9-23.8zm-68.7-150.4l24.1 61.2 21-13.8-31.3-50.9zm84.4 154.9l2 12.4c9-1.5 58.4-6.6 58.4-14.1 0-1.4-.6-3.2-.9-4.6-26.8 0-36.9 3.8-59.5 6.3z\"]\n};\nvar faPiedPiperHat = {\n prefix: 'fab',\n iconName: 'pied-piper-hat',\n icon: [640, 512, [], \"f4e5\", \"M640 24.9c-80.8 53.6-89.4 92.5-96.4 104.4-6.7 12.2-11.7 60.3-23.3 83.6-11.7 23.6-54.2 42.2-66.1 50-11.7 7.8-28.3 38.1-41.9 64.2-108.1-4.4-167.4 38.8-259.2 93.6 29.4-9.7 43.3-16.7 43.3-16.7 94.2-36 139.3-68.3 281.1-49.2 1.1 0 1.9.6 2.8.8 3.9 2.2 5.3 6.9 3.1 10.8l-53.9 95.8c-2.5 4.7-7.8 7.2-13.1 6.1-126.8-23.8-226.9 17.3-318.9 18.6C24.1 488 0 453.4 0 451.8c0-1.1.6-1.7 1.7-1.7 0 0 38.3 0 103.1-15.3C178.4 294.5 244 245.4 315.4 245.4c0 0 71.7 0 90.6 61.9 22.8-39.7 28.3-49.2 28.3-49.2 5.3-9.4 35-77.2 86.4-141.4 51.5-64 90.4-79.9 119.3-91.8z\"]\n};\nvar faPiedPiperPp = {\n prefix: 'fab',\n iconName: 'pied-piper-pp',\n icon: [448, 512, [], \"f1a7\", \"M205.3 174.6c0 21.1-14.2 38.1-31.7 38.1-7.1 0-12.8-1.2-17.2-3.7v-68c4.4-2.7 10.1-4.2 17.2-4.2 17.5 0 31.7 16.9 31.7 37.8zm52.6 67c-7.1 0-12.8 1.5-17.2 4.2v68c4.4 2.5 10.1 3.7 17.2 3.7 17.4 0 31.7-16.9 31.7-37.8 0-21.1-14.3-38.1-31.7-38.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM185 255.1c41 0 74.2-35.6 74.2-79.6 0-44-33.2-79.6-74.2-79.6-12 0-24.1 3.2-34.6 8.8h-45.7V311l51.8-10.1v-50.6c8.6 3.1 18.1 4.8 28.5 4.8zm158.4 25.3c0-44-33.2-79.6-73.9-79.6-3.2 0-6.4.2-9.6.7-3.7 12.5-10.1 23.8-19.2 33.4-13.8 15-32.2 23.8-51.8 24.8V416l51.8-10.1v-50.6c8.6 3.2 18.2 4.7 28.7 4.7 40.8 0 74-35.6 74-79.6z\"]\n};\nvar faPiedPiperSquare = {\n prefix: 'fab',\n iconName: 'pied-piper-square',\n icon: [448, 512, [], \"e01e\", \"M32 419L0 479.2l.8-328C.8 85.3 54 32 120 32h327.2c-93 28.9-189.9 94.2-253.9 168.6C122.7 282 82.6 338 32 419M448 32S305.2 98.8 261.6 199.1c-23.2 53.6-28.9 118.1-71 158.6-28.9 27.8-69.8 38.2-105.3 56.3-23.2 12-66.4 40.5-84.9 66h328.4c66 0 119.3-53.3 119.3-119.2-.1 0-.1-328.8-.1-328.8z\"]\n};\nvar faPinterest = {\n prefix: 'fab',\n iconName: 'pinterest',\n icon: [496, 512, [], \"f0d2\", \"M496 256c0 137-111 248-248 248-25.6 0-50.2-3.9-73.4-11.1 10.1-16.5 25.2-43.5 30.8-65 3-11.6 15.4-59 15.4-59 8.1 15.4 31.7 28.5 56.8 28.5 74.8 0 128.7-68.8 128.7-154.3 0-81.9-66.9-143.2-152.9-143.2-107 0-163.9 71.8-163.9 150.1 0 36.4 19.4 81.7 50.3 96.1 4.7 2.2 7.2 1.2 8.3-3.3.8-3.4 5-20.3 6.9-28.1.6-2.5.3-4.7-1.7-7.1-10.1-12.5-18.3-35.3-18.3-56.6 0-54.7 41.4-107.6 112-107.6 60.9 0 103.6 41.5 103.6 100.9 0 67.1-33.9 113.6-78 113.6-24.3 0-42.6-20.1-36.7-44.8 7-29.5 20.5-61.3 20.5-82.6 0-19-10.2-34.9-31.4-34.9-24.9 0-44.9 25.7-44.9 60.2 0 22 7.4 36.8 7.4 36.8s-24.5 103.8-29 123.2c-5 21.4-3 51.6-.9 71.2C65.4 450.9 0 361.1 0 256 0 119 111 8 248 8s248 111 248 248z\"]\n};\nvar faPinterestP = {\n prefix: 'fab',\n iconName: 'pinterest-p',\n icon: [384, 512, [], \"f231\", \"M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z\"]\n};\nvar faPinterestSquare = {\n prefix: 'fab',\n iconName: 'pinterest-square',\n icon: [448, 512, [], \"f0d3\", \"M448 80v352c0 26.5-21.5 48-48 48H154.4c9.8-16.4 22.4-40 27.4-59.3 3-11.5 15.3-58.4 15.3-58.4 8 15.3 31.4 28.2 56.3 28.2 74.1 0 127.4-68.1 127.4-152.7 0-81.1-66.2-141.8-151.4-141.8-106 0-162.2 71.1-162.2 148.6 0 36 19.2 80.8 49.8 95.1 4.7 2.2 7.1 1.2 8.2-3.3.8-3.4 5-20.1 6.8-27.8.6-2.5.3-4.6-1.7-7-10.1-12.3-18.3-34.9-18.3-56 0-54.2 41-106.6 110.9-106.6 60.3 0 102.6 41.1 102.6 99.9 0 66.4-33.5 112.4-77.2 112.4-24.1 0-42.1-19.9-36.4-44.4 6.9-29.2 20.3-60.7 20.3-81.8 0-53-75.5-45.7-75.5 25 0 21.7 7.3 36.5 7.3 36.5-31.4 132.8-36.1 134.5-29.6 192.6l2.2.8H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48z\"]\n};\nvar faPlaystation = {\n prefix: 'fab',\n iconName: 'playstation',\n icon: [576, 512, [], \"f3df\", \"M570.9 372.3c-11.3 14.2-38.8 24.3-38.8 24.3L327 470.2v-54.3l150.9-53.8c17.1-6.1 19.8-14.8 5.8-19.4-13.9-4.6-39.1-3.3-56.2 2.9L327 381.1v-56.4c23.2-7.8 47.1-13.6 75.7-16.8 40.9-4.5 90.9.6 130.2 15.5 44.2 14 49.2 34.7 38 48.9zm-224.4-92.5v-139c0-16.3-3-31.3-18.3-35.6-11.7-3.8-19 7.1-19 23.4v347.9l-93.8-29.8V32c39.9 7.4 98 24.9 129.2 35.4C424.1 94.7 451 128.7 451 205.2c0 74.5-46 102.8-104.5 74.6zM43.2 410.2c-45.4-12.8-53-39.5-32.3-54.8 19.1-14.2 51.7-24.9 51.7-24.9l134.5-47.8v54.5l-96.8 34.6c-17.1 6.1-19.7 14.8-5.8 19.4 13.9 4.6 39.1 3.3 56.2-2.9l46.4-16.9v48.8c-51.6 9.3-101.4 7.3-153.9-10z\"]\n};\nvar faProductHunt = {\n prefix: 'fab',\n iconName: 'product-hunt',\n icon: [512, 512, [], \"f288\", \"M326.3 218.8c0 20.5-16.7 37.2-37.2 37.2h-70.3v-74.4h70.3c20.5 0 37.2 16.7 37.2 37.2zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-128.1-37.2c0-47.9-38.9-86.8-86.8-86.8H169.2v248h49.6v-74.4h70.3c47.9 0 86.8-38.9 86.8-86.8z\"]\n};\nvar faPushed = {\n prefix: 'fab',\n iconName: 'pushed',\n icon: [432, 512, [], \"f3e1\", \"M407 111.9l-98.5-9 14-33.4c10.4-23.5-10.8-40.4-28.7-37L22.5 76.9c-15.1 2.7-26 18.3-21.4 36.6l105.1 348.3c6.5 21.3 36.7 24.2 47.7 7l35.3-80.8 235.2-231.3c16.4-16.8 4.3-42.9-17.4-44.8zM297.6 53.6c5.1-.7 7.5 2.5 5.2 7.4L286 100.9 108.6 84.6l189-31zM22.7 107.9c-3.1-5.1 1-10 6.1-9.1l248.7 22.7-96.9 230.7L22.7 107.9zM136 456.4c-2.6 4-7.9 3.1-9.4-1.2L43.5 179.7l127.7 197.6c-7 15-35.2 79.1-35.2 79.1zm272.8-314.5L210.1 337.3l89.7-213.7 106.4 9.7c4 1.1 5.7 5.3 2.6 8.6z\"]\n};\nvar faPython = {\n prefix: 'fab',\n iconName: 'python',\n icon: [448, 512, [], \"f3e2\", \"M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z\"]\n};\nvar faQq = {\n prefix: 'fab',\n iconName: 'qq',\n icon: [448, 512, [], \"f1d6\", \"M433.754 420.445c-11.526 1.393-44.86-52.741-44.86-52.741 0 31.345-16.136 72.247-51.051 101.786 16.842 5.192 54.843 19.167 45.803 34.421-7.316 12.343-125.51 7.881-159.632 4.037-34.122 3.844-152.316 8.306-159.632-4.037-9.045-15.25 28.918-29.214 45.783-34.415-34.92-29.539-51.059-70.445-51.059-101.792 0 0-33.334 54.134-44.859 52.741-5.37-.65-12.424-29.644 9.347-99.704 10.261-33.024 21.995-60.478 40.144-105.779C60.683 98.063 108.982.006 224 0c113.737.006 163.156 96.133 160.264 214.963 18.118 45.223 29.912 72.85 40.144 105.778 21.768 70.06 14.716 99.053 9.346 99.704z\"]\n};\nvar faQuinscape = {\n prefix: 'fab',\n iconName: 'quinscape',\n icon: [512, 512, [], \"f459\", \"M313.6 474.6h-1a158.1 158.1 0 0 1 0-316.2c94.9 0 168.2 83.1 157 176.6 4 5.1 8.2 9.6 11.2 15.3 13.4-30.3 20.3-62.4 20.3-97.7C501.1 117.5 391.6 8 256.5 8S12 117.5 12 252.6s109.5 244.6 244.5 244.6a237.36 237.36 0 0 0 70.4-10.1c-5.2-3.5-8.9-8.1-13.3-12.5zm-.1-.1l.4.1zm78.4-168.9a99.2 99.2 0 1 0 99.2 99.2 99.18 99.18 0 0 0-99.2-99.2z\"]\n};\nvar faQuora = {\n prefix: 'fab',\n iconName: 'quora',\n icon: [448, 512, [], \"f2c4\", \"M440.5 386.7h-29.3c-1.5 13.5-10.5 30.8-33 30.8-20.5 0-35.3-14.2-49.5-35.8 44.2-34.2 74.7-87.5 74.7-153C403.5 111.2 306.8 32 205 32 105.3 32 7.3 111.7 7.3 228.7c0 134.1 131.3 221.6 249 189C276 451.3 302 480 351.5 480c81.8 0 90.8-75.3 89-93.3zM297 329.2C277.5 300 253.3 277 205.5 277c-30.5 0-54.3 10-69 22.8l12.2 24.3c6.2-3 13-4 19.8-4 35.5 0 53.7 30.8 69.2 61.3-10 3-20.7 4.2-32.7 4.2-75 0-107.5-53-107.5-156.7C97.5 124.5 130 71 205 71c76.2 0 108.7 53.5 108.7 157.7.1 41.8-5.4 75.6-16.7 100.5z\"]\n};\nvar faRProject = {\n prefix: 'fab',\n iconName: 'r-project',\n icon: [581, 512, [], \"f4f7\", \"M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z\"]\n};\nvar faRaspberryPi = {\n prefix: 'fab',\n iconName: 'raspberry-pi',\n icon: [407, 512, [], \"f7bb\", \"M372 232.5l-3.7-6.5c.1-46.4-21.4-65.3-46.5-79.7 7.6-2 15.4-3.6 17.6-13.2 13.1-3.3 15.8-9.4 17.1-15.8 3.4-2.3 14.8-8.7 13.6-19.7 6.4-4.4 10-10.1 8.1-18.1 6.9-7.5 8.7-13.7 5.8-19.4 8.3-10.3 4.6-15.6 1.1-20.9 6.2-11.2.7-23.2-16.6-21.2-6.9-10.1-21.9-7.8-24.2-7.8-2.6-3.2-6-6-16.5-4.7-6.8-6.1-14.4-5-22.3-2.1-9.3-7.3-15.5-1.4-22.6.8C271.6.6 269 5.5 263.5 7.6c-12.3-2.6-16.1 3-22 8.9l-6.9-.1c-18.6 10.8-27.8 32.8-31.1 44.1-3.3-11.3-12.5-33.3-31.1-44.1l-6.9.1c-5.9-5.9-9.7-11.5-22-8.9-5.6-2-8.1-7-19.4-3.4-4.6-1.4-8.9-4.4-13.9-4.3-2.6.1-5.5 1-8.7 3.5-7.9-3-15.5-4-22.3 2.1-10.5-1.3-14 1.4-16.5 4.7-2.3 0-17.3-2.3-24.2 7.8C21.2 16 15.8 28 22 39.2c-3.5 5.4-7.2 10.7 1.1 20.9-2.9 5.7-1.1 11.9 5.8 19.4-1.8 8 1.8 13.7 8.1 18.1-1.2 11 10.2 17.4 13.6 19.7 1.3 6.4 4 12.4 17.1 15.8 2.2 9.5 10 11.2 17.6 13.2-25.1 14.4-46.6 33.3-46.5 79.7l-3.7 6.5c-28.8 17.2-54.7 72.7-14.2 117.7 2.6 14.1 7.1 24.2 11 35.4 5.9 45.2 44.5 66.3 54.6 68.8 14.9 11.2 30.8 21.8 52.2 29.2C159 504.2 181 512 203 512h1c22.1 0 44-7.8 64.2-28.4 21.5-7.4 37.3-18 52.2-29.2 10.2-2.5 48.7-23.6 54.6-68.8 3.9-11.2 8.4-21.3 11-35.4 40.6-45.1 14.7-100.5-14-117.7zm-22.2-8c-1.5 18.7-98.9-65.1-82.1-67.9 45.7-7.5 83.6 19.2 82.1 67.9zm-43 93.1c-24.5 15.8-59.8 5.6-78.8-22.8s-14.6-64.2 9.9-80c24.5-15.8 59.8-5.6 78.8 22.8s14.6 64.2-9.9 80zM238.9 29.3c.8 4.2 1.8 6.8 2.9 7.6 5.4-5.8 9.8-11.7 16.8-17.3 0 3.3-1.7 6.8 2.5 9.4 3.7-5 8.8-9.5 15.5-13.3-3.2 5.6-.6 7.3 1.2 9.6 5.1-4.4 10-8.8 19.4-12.3-2.6 3.1-6.2 6.2-2.4 9.8 5.3-3.3 10.6-6.6 23.1-8.9-2.8 3.1-8.7 6.3-5.1 9.4 6.6-2.5 14-4.4 22.1-5.4-3.9 3.2-7.1 6.3-3.9 8.8 7.1-2.2 16.9-5.1 26.4-2.6l-6 6.1c-.7.8 14.1.6 23.9.8-3.6 5-7.2 9.7-9.3 18.2 1 1 5.8.4 10.4 0-4.7 9.9-12.8 12.3-14.7 16.6 2.9 2.2 6.8 1.6 11.2.1-3.4 6.9-10.4 11.7-16 17.3 1.4 1 3.9 1.6 9.7.9-5.2 5.5-11.4 10.5-18.8 15 1.3 1.5 5.8 1.5 10 1.6-6.7 6.5-15.3 9.9-23.4 14.2 4 2.7 6.9 2.1 10 2.1-5.7 4.7-15.4 7.1-24.4 10 1.7 2.7 3.4 3.4 7.1 4.1-9.5 5.3-23.2 2.9-27 5.6.9 2.7 3.6 4.4 6.7 5.8-15.4.9-57.3-.6-65.4-32.3 15.7-17.3 44.4-37.5 93.7-62.6-38.4 12.8-73 30-102 53.5-34.3-15.9-10.8-55.9 5.8-71.8zm-34.4 114.6c24.2-.3 54.1 17.8 54 34.7-.1 15-21 27.1-53.8 26.9-32.1-.4-53.7-15.2-53.6-29.8 0-11.9 26.2-32.5 53.4-31.8zm-123-12.8c3.7-.7 5.4-1.5 7.1-4.1-9-2.8-18.7-5.3-24.4-10 3.1 0 6 .7 10-2.1-8.1-4.3-16.7-7.7-23.4-14.2 4.2-.1 8.7 0 10-1.6-7.4-4.5-13.6-9.5-18.8-15 5.8.7 8.3.1 9.7-.9-5.6-5.6-12.7-10.4-16-17.3 4.3 1.5 8.3 2 11.2-.1-1.9-4.2-10-6.7-14.7-16.6 4.6.4 9.4 1 10.4 0-2.1-8.5-5.8-13.3-9.3-18.2 9.8-.1 24.6 0 23.9-.8l-6-6.1c9.5-2.5 19.3.4 26.4 2.6 3.2-2.5-.1-5.6-3.9-8.8 8.1 1.1 15.4 2.9 22.1 5.4 3.5-3.1-2.3-6.3-5.1-9.4 12.5 2.3 17.8 5.6 23.1 8.9 3.8-3.6.2-6.7-2.4-9.8 9.4 3.4 14.3 7.9 19.4 12.3 1.7-2.3 4.4-4 1.2-9.6 6.7 3.8 11.8 8.3 15.5 13.3 4.1-2.6 2.5-6.2 2.5-9.4 7 5.6 11.4 11.5 16.8 17.3 1.1-.8 2-3.4 2.9-7.6 16.6 15.9 40.1 55.9 6 71.8-29-23.5-63.6-40.7-102-53.5 49.3 25 78 45.3 93.7 62.6-8 31.8-50 33.2-65.4 32.3 3.1-1.4 5.8-3.2 6.7-5.8-4-2.8-17.6-.4-27.2-5.6zm60.1 24.1c16.8 2.8-80.6 86.5-82.1 67.9-1.5-48.7 36.5-75.5 82.1-67.9zM38.2 342c-23.7-18.8-31.3-73.7 12.6-98.3 26.5-7 9 107.8-12.6 98.3zm91 98.2c-13.3 7.9-45.8 4.7-68.8-27.9-15.5-27.4-13.5-55.2-2.6-63.4 16.3-9.8 41.5 3.4 60.9 25.6 16.9 20 24.6 55.3 10.5 65.7zm-26.4-119.7c-24.5-15.8-28.9-51.6-9.9-80s54.3-38.6 78.8-22.8 28.9 51.6 9.9 80c-19.1 28.4-54.4 38.6-78.8 22.8zM205 496c-29.4 1.2-58.2-23.7-57.8-32.3-.4-12.7 35.8-22.6 59.3-22 23.7-1 55.6 7.5 55.7 18.9.5 11-28.8 35.9-57.2 35.4zm58.9-124.9c.2 29.7-26.2 53.8-58.8 54-32.6.2-59.2-23.8-59.4-53.4v-.6c-.2-29.7 26.2-53.8 58.8-54 32.6-.2 59.2 23.8 59.4 53.4v.6zm82.2 42.7c-25.3 34.6-59.6 35.9-72.3 26.3-13.3-12.4-3.2-50.9 15.1-72 20.9-23.3 43.3-38.5 58.9-26.6 10.5 10.3 16.7 49.1-1.7 72.3zm22.9-73.2c-21.5 9.4-39-105.3-12.6-98.3 43.9 24.7 36.3 79.6 12.6 98.3z\"]\n};\nvar faRavelry = {\n prefix: 'fab',\n iconName: 'ravelry',\n icon: [512, 512, [], \"f2d9\", \"M498.252,234.223c-1.208-10.34-1.7-20.826-3.746-31a310.306,310.306,0,0,0-9.622-36.6,184.068,184.068,0,0,0-30.874-57.5,251.154,251.154,0,0,0-18.818-21.689,237.362,237.362,0,0,0-47.113-36.116A240.8,240.8,0,0,0,331.356,26.65c-11.018-3.1-22.272-5.431-33.515-7.615-6.78-1.314-13.749-1.667-20.627-2.482-.316-.036-.6-.358-.9-.553q-16.143.009-32.288.006c-2.41.389-4.808.925-7.236,1.15a179.331,179.331,0,0,0-34.256,7.1,221.5,221.5,0,0,0-39.768,16.355,281.385,281.385,0,0,0-38.08,24.158c-6.167,4.61-12.268,9.36-17.974,14.518C96.539,88.494,86.34,97.72,76.785,107.555a243.878,243.878,0,0,0-33.648,43.95,206.488,206.488,0,0,0-20.494,44.6,198.2,198.2,0,0,0-7.691,34.759A201.13,201.13,0,0,0,13.4,266.385a299.716,299.716,0,0,0,4.425,40.24,226.865,226.865,0,0,0,16.73,53.3,210.543,210.543,0,0,0,24,39.528,213.589,213.589,0,0,0,26.358,28.416A251.313,251.313,0,0,0,126.7,458.455a287.831,287.831,0,0,0,55.9,25.277,269.5,269.5,0,0,0,40.641,9.835c6.071,1.01,12.275,1.253,18.412,1.873a4.149,4.149,0,0,1,1.19.56h32.289c2.507-.389,5-.937,7.527-1.143,16.336-1.332,32.107-5.335,47.489-10.717A219.992,219.992,0,0,0,379.1,460.322c9.749-6.447,19.395-13.077,28.737-20.1,5.785-4.348,10.988-9.5,16.3-14.457,3.964-3.7,7.764-7.578,11.51-11.5a232.162,232.162,0,0,0,31.427-41.639c9.542-16.045,17.355-32.905,22.3-50.926,2.859-10.413,4.947-21.045,7.017-31.652,1.032-5.279,1.251-10.723,1.87-16.087.036-.317.358-.6.552-.9V236.005A9.757,9.757,0,0,1,498.252,234.223Zm-161.117-1.15s-16.572-2.98-28.47-2.98c-27.2,0-33.57,14.9-33.57,37.04V360.8H201.582V170.062H275.1v31.931c8.924-26.822,26.771-36.189,62.04-36.189Z\"]\n};\nvar faReact = {\n prefix: 'fab',\n iconName: 'react',\n icon: [512, 512, [], \"f41b\", \"M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z\"]\n};\nvar faReacteurope = {\n prefix: 'fab',\n iconName: 'reacteurope',\n icon: [576, 512, [], \"f75d\", \"M250.6 211.74l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm63.7 0l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.2-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm-91.3 50.5h-3.4c-4.8 0-3.8 4-3.8 12.1 0 4.7-2.3 6.1-5.8 6.1s-5.8-1.4-5.8-6.1v-36.6c0-4.7 2.3-6.1 5.8-6.1s5.8 1.4 5.8 6.1c0 7.2-.7 10.5 3.8 10.5h3.4c4.7-.1 3.8-3.9 3.8-12.3 0-9.9-6.7-14.1-16.8-14.1h-.2c-10.1 0-16.8 4.2-16.8 14.1V276c0 10.4 6.7 14.1 16.8 14.1h.2c10.1 0 16.8-3.8 16.8-14.1 0-9.86 1.1-13.76-3.8-13.76zm-80.7 17.4h-14.7v-19.3H139c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-11.4v-18.3H142c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-21.7c-2.4-.1-3.7 1.3-3.7 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h21.9c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8zm-42-18.5c4.6-2 7.3-6 7.3-12.4v-11.9c0-10.1-6.7-14.1-16.8-14.1H77.4c-2.5 0-3.8 1.3-3.8 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5 0 3.8-1.3 3.8-3.8v-22.9h5.6l7.4 23.5a4.1 4.1 0 0 0 4.3 3.2h3.3c2.8 0 4-1.8 3.2-4.4zm-3.8-14c0 4.8-2.5 6.1-6.1 6.1h-5.8v-20.9h5.8c3.6 0 6.1 1.3 6.1 6.1zM176 226a3.82 3.82 0 0 0-4.2-3.4h-6.9a3.68 3.68 0 0 0-4 3.4l-11 59.2c-.5 2.7.9 4.1 3.4 4.1h3a3.74 3.74 0 0 0 4.1-3.5l1.8-11.3h12.2l1.8 11.3a3.74 3.74 0 0 0 4.1 3.5h3.5c2.6 0 3.9-1.4 3.4-4.1zm-12.3 39.3l4.7-29.7 4.7 29.7zm89.3 20.2v-53.2h7.5c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-25.8c-2.5 0-3.8 1.3-3.8 3.8v2.1c0 2.5 1.3 3.8 3.8 3.8h7.3v53.2c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5.04 3.8-1.3 3.8-3.76zm248-.8h-19.4V258h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9H501a1.81 1.81 0 0 0 2-1.9v-.8a1.84 1.84 0 0 0-2-1.96zm-93.1-62.9h-.8c-10.1 0-15.3 4.7-15.3 14.1V276c0 9.3 5.2 14.1 15.3 14.1h.8c10.1 0 15.3-4.8 15.3-14.1v-40.1c0-9.36-5.2-14.06-15.3-14.06zm10.2 52.4c-.1 8-3 11.1-10.5 11.1s-10.5-3.1-10.5-11.1v-36.6c0-7.9 3-11.1 10.5-11.1s10.5 3.2 10.5 11.1zm-46.5-14.5c6.1-1.6 9.2-6.1 9.2-13.3v-9.7c0-9.4-5.2-14.1-15.3-14.1h-13.7a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.9h11.6l10.4 27.2a2.32 2.32 0 0 0 2.3 1.5h1.5c1.4 0 2-1 1.5-2.3zm-6.4-3.9H355v-28.5h10.2c7.5 0 10.5 3.1 10.5 11.1v6.4c0 7.84-3 11.04-10.5 11.04zm85.9-33.1h-13.7a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.1h10.6c10.1 0 15.3-4.8 15.3-14.1v-10.5c0-9.4-5.2-14.1-15.3-14.1zm10.2 22.8c0 7.9-3 11.1-10.5 11.1h-10.2v-29.2h10.2c7.5-.1 10.5 3.1 10.5 11zM259.5 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm227.6-136.1a364.42 364.42 0 0 0-35.6-11.3c19.6-78 11.6-134.7-22.3-153.9C394.7-12.66 343.3 11 291 61.94q5.1 4.95 10.2 10.2c82.5-80 119.6-53.5 120.9-52.8 22.4 12.7 36 55.8 15.5 137.8a587.83 587.83 0 0 0-84.6-13C281.1 43.64 212.4 2 170.8 2 140 2 127 23 123.2 29.74c-18.1 32-13.3 84.2.1 133.8-70.5 20.3-120.7 54.1-120.3 95 .5 59.6 103.2 87.8 122.1 92.8-20.5 81.9-10.1 135.6 22.3 153.9 28 15.8 75.1 6 138.2-55.2q-5.1-4.95-10.2-10.2c-82.5 80-119.7 53.5-120.9 52.8-22.3-12.6-36-55.6-15.5-137.9 12.4 2.9 41.8 9.5 84.6 13 71.9 100.4 140.6 142 182.1 142 30.8 0 43.8-21 47.6-27.7 18-31.9 13.3-84.1-.1-133.8 152.3-43.8 156.2-130.2 33.9-176.3zM135.9 36.84c2.9-5.1 11.9-20.3 34.9-20.3 36.8 0 98.8 39.6 163.3 126.2a714 714 0 0 0-93.9.9 547.76 547.76 0 0 1 42.2-52.4Q277.3 86 272.2 81a598.25 598.25 0 0 0-50.7 64.2 569.69 569.69 0 0 0-84.4 14.6c-.2-1.4-24.3-82.2-1.2-123zm304.8 438.3c-2.9 5.1-11.8 20.3-34.9 20.3-36.7 0-98.7-39.4-163.3-126.2a695.38 695.38 0 0 0 93.9-.9 547.76 547.76 0 0 1-42.2 52.4q5.1 5.25 10.2 10.2a588.47 588.47 0 0 0 50.7-64.2c47.3-4.7 80.3-13.5 84.4-14.6 22.7 84.4 4.5 117 1.2 123zm9.1-138.6c-3.6-11.9-7.7-24.1-12.4-36.4a12.67 12.67 0 0 1-10.7-5.7l-.1.1a19.61 19.61 0 0 1-5.4 3.6c5.7 14.3 10.6 28.4 14.7 42.2a535.3 535.3 0 0 1-72 13c3.5-5.3 17.2-26.2 32.2-54.2a24.6 24.6 0 0 1-6-3.2c-1.1 1.2-3.6 4.2-10.9 4.2-6.2 11.2-17.4 30.9-33.9 55.2a711.91 711.91 0 0 1-112.4 1c-7.9-11.2-21.5-31.1-36.8-57.8a21 21 0 0 1-3-1.5c-1.9 1.6-3.9 3.2-12.6 3.2 6.3 11.2 17.5 30.7 33.8 54.6a548.81 548.81 0 0 1-72.2-11.7q5.85-21 14.1-42.9c-3.2 0-5.4.2-8.4-1a17.58 17.58 0 0 1-6.9 1c-4.9 13.4-9.1 26.5-12.7 39.4C-31.7 297-12.1 216 126.7 175.64c3.6 11.9 7.7 24.1 12.4 36.4 10.4 0 12.9 3.4 14.4 5.3a12 12 0 0 1 2.3-2.2c-5.8-14.7-10.9-29.2-15.2-43.3 7-1.8 32.4-8.4 72-13-15.9 24.3-26.7 43.9-32.8 55.3a14.22 14.22 0 0 1 6.4 8 23.42 23.42 0 0 1 10.2-8.4c6.5-11.7 17.9-31.9 34.8-56.9a711.72 711.72 0 0 1 112.4-1c31.5 44.6 28.9 48.1 42.5 64.5a21.42 21.42 0 0 1 10.4-7.4c-6.4-11.4-17.6-31-34.3-55.5 40.4 4.1 65 10 72.2 11.7-4 14.4-8.9 29.2-14.6 44.2a20.74 20.74 0 0 1 6.8 4.3l.1.1a12.72 12.72 0 0 1 8.9-5.6c4.9-13.4 9.2-26.6 12.8-39.5a359.71 359.71 0 0 1 34.5 11c106.1 39.9 74 87.9 72.6 90.4-19.8 35.1-80.1 55.2-105.7 62.5zm-114.4-114h-1.2a1.74 1.74 0 0 0-1.9 1.9v49.8c0 7.9-2.6 11.1-10.1 11.1s-10.1-3.1-10.1-11.1v-49.8a1.69 1.69 0 0 0-1.9-1.9H309a1.81 1.81 0 0 0-2 1.9v51.5c0 9.6 5 14.1 15.1 14.1h.4c10.1 0 15.1-4.6 15.1-14.1v-51.5a2 2 0 0 0-2.2-1.9zM321.7 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm-31.1 7.4l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm5.1-30.8h-19.4v-26.7h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h22.5a1.77 1.77 0 0 0 2-1.9v-.8a1.83 1.83 0 0 0-2-2.06zm-7.4-99.4L286 192l-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1z\"]\n};\nvar faReadme = {\n prefix: 'fab',\n iconName: 'readme',\n icon: [576, 512, [], \"f4d5\", \"M528.3 46.5H388.5c-48.1 0-89.9 33.3-100.4 80.3-10.6-47-52.3-80.3-100.4-80.3H48c-26.5 0-48 21.5-48 48v245.8c0 26.5 21.5 48 48 48h89.7c102.2 0 132.7 24.4 147.3 75 .7 2.8 5.2 2.8 6 0 14.7-50.6 45.2-75 147.3-75H528c26.5 0 48-21.5 48-48V94.6c0-26.4-21.3-47.9-47.7-48.1zM242 311.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5V289c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V251zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm259.3 121.7c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5V228c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.8c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V190z\"]\n};\nvar faRebel = {\n prefix: 'fab',\n iconName: 'rebel',\n icon: [512, 512, [], \"f1d0\", \"M256.5 504C117.2 504 9 387.8 13.2 249.9 16 170.7 56.4 97.7 129.7 49.5c.3 0 1.9-.6 1.1.8-5.8 5.5-111.3 129.8-14.1 226.4 49.8 49.5 90 2.5 90 2.5 38.5-50.1-.6-125.9-.6-125.9-10-24.9-45.7-40.1-45.7-40.1l28.8-31.8c24.4 10.5 43.2 38.7 43.2 38.7.8-29.6-21.9-61.4-21.9-61.4L255.1 8l44.3 50.1c-20.5 28.8-21.9 62.6-21.9 62.6 13.8-23 43.5-39.3 43.5-39.3l28.5 31.8c-27.4 8.9-45.4 39.9-45.4 39.9-15.8 28.5-27.1 89.4.6 127.3 32.4 44.6 87.7-2.8 87.7-2.8 102.7-91.9-10.5-225-10.5-225-6.1-5.5.8-2.8.8-2.8 50.1 36.5 114.6 84.4 116.2 204.8C500.9 400.2 399 504 256.5 504z\"]\n};\nvar faRedRiver = {\n prefix: 'fab',\n iconName: 'red-river',\n icon: [448, 512, [], \"f3e3\", \"M353.2 32H94.8C42.4 32 0 74.4 0 126.8v258.4C0 437.6 42.4 480 94.8 480h258.4c52.4 0 94.8-42.4 94.8-94.8V126.8c0-52.4-42.4-94.8-94.8-94.8zM144.9 200.9v56.3c0 27-21.9 48.9-48.9 48.9V151.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9h-56.3c-12.3-.6-24.6 11.6-24 24zm176.3 72h-56.3c-12.3-.6-24.6 11.6-24 24v56.3c0 27-21.9 48.9-48.9 48.9V247.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9z\"]\n};\nvar faReddit = {\n prefix: 'fab',\n iconName: 'reddit',\n icon: [512, 512, [], \"f1a1\", \"M201.5 305.5c-13.8 0-24.9-11.1-24.9-24.6 0-13.8 11.1-24.9 24.9-24.9 13.6 0 24.6 11.1 24.6 24.9 0 13.6-11.1 24.6-24.6 24.6zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-132.3-41.2c-9.4 0-17.7 3.9-23.8 10-22.4-15.5-52.6-25.5-86.1-26.6l17.4-78.3 55.4 12.5c0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.3 24.9-24.9s-11.1-24.9-24.9-24.9c-9.7 0-18 5.8-22.1 13.8l-61.2-13.6c-3-.8-6.1 1.4-6.9 4.4l-19.1 86.4c-33.2 1.4-63.1 11.3-85.5 26.8-6.1-6.4-14.7-10.2-24.1-10.2-34.9 0-46.3 46.9-14.4 62.8-1.1 5-1.7 10.2-1.7 15.5 0 52.6 59.2 95.2 132 95.2 73.1 0 132.3-42.6 132.3-95.2 0-5.3-.6-10.8-1.9-15.8 31.3-16 19.8-62.5-14.9-62.5zM302.8 331c-18.2 18.2-76.1 17.9-93.6 0-2.2-2.2-6.1-2.2-8.3 0-2.5 2.5-2.5 6.4 0 8.6 22.8 22.8 87.3 22.8 110.2 0 2.5-2.2 2.5-6.1 0-8.6-2.2-2.2-6.1-2.2-8.3 0zm7.7-75c-13.6 0-24.6 11.1-24.6 24.9 0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.1 24.9-24.6 0-13.8-11-24.9-24.9-24.9z\"]\n};\nvar faRedditAlien = {\n prefix: 'fab',\n iconName: 'reddit-alien',\n icon: [512, 512, [], \"f281\", \"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"]\n};\nvar faRedditSquare = {\n prefix: 'fab',\n iconName: 'reddit-square',\n icon: [448, 512, [], \"f1a2\", \"M283.2 345.5c2.7 2.7 2.7 6.8 0 9.2-24.5 24.5-93.8 24.6-118.4 0-2.7-2.4-2.7-6.5 0-9.2 2.4-2.4 6.5-2.4 8.9 0 18.7 19.2 81 19.6 100.5 0 2.4-2.3 6.6-2.3 9 0zm-91.3-53.8c0-14.9-11.9-26.8-26.5-26.8-14.9 0-26.8 11.9-26.8 26.8 0 14.6 11.9 26.5 26.8 26.5 14.6 0 26.5-11.9 26.5-26.5zm90.7-26.8c-14.6 0-26.5 11.9-26.5 26.8 0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-11.9 26.8-26.5 0-14.9-11.9-26.8-26.8-26.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-99.7 140.6c-10.1 0-19 4.2-25.6 10.7-24.1-16.7-56.5-27.4-92.5-28.6l18.7-84.2 59.5 13.4c0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-12.2 26.8-26.8 0-14.6-11.9-26.8-26.8-26.8-10.4 0-19.3 6.2-23.8 14.9l-65.7-14.6c-3.3-.9-6.5 1.5-7.4 4.8l-20.5 92.8c-35.7 1.5-67.8 12.2-91.9 28.9-6.5-6.8-15.8-11-25.9-11-37.5 0-49.8 50.4-15.5 67.5-1.2 5.4-1.8 11-1.8 16.7 0 56.5 63.7 102.3 141.9 102.3 78.5 0 142.2-45.8 142.2-102.3 0-5.7-.6-11.6-2.1-17 33.6-17.2 21.2-67.2-16.1-67.2z\"]\n};\nvar faRedhat = {\n prefix: 'fab',\n iconName: 'redhat',\n icon: [512, 512, [], \"f7bc\", \"M341.52 285.56c33.65 0 82.34-6.94 82.34-47 .22-6.74.86-1.82-20.88-96.24-4.62-19.15-8.68-27.84-42.31-44.65-26.09-13.34-82.92-35.37-99.73-35.37-15.66 0-20.2 20.17-38.87 20.17-18 0-31.31-15.06-48.12-15.06-16.14 0-26.66 11-34.78 33.62-27.5 77.55-26.28 74.27-26.12 78.27 0 24.8 97.64 106.11 228.47 106.11M429 254.84c4.65 22 4.65 24.35 4.65 27.25 0 37.66-42.33 58.56-98 58.56-125.74.08-235.91-73.65-235.91-122.33a49.55 49.55 0 0 1 4.06-19.72C58.56 200.86 0 208.93 0 260.63c0 84.67 200.63 189 359.49 189 121.79 0 152.51-55.08 152.51-98.58 0-34.21-29.59-73.05-82.93-96.24\"]\n};\nvar faRenren = {\n prefix: 'fab',\n iconName: 'renren',\n icon: [512, 512, [], \"f18b\", \"M214 169.1c0 110.4-61 205.4-147.6 247.4C30 373.2 8 317.7 8 256.6 8 133.9 97.1 32.2 214 12.5v156.6zM255 504c-42.9 0-83.3-11-118.5-30.4C193.7 437.5 239.9 382.9 255 319c15.5 63.9 61.7 118.5 118.8 154.7C338.7 493 298.3 504 255 504zm190.6-87.5C359 374.5 298 279.6 298 169.1V12.5c116.9 19.7 206 121.4 206 244.1 0 61.1-22 116.6-58.4 159.9z\"]\n};\nvar faReplyd = {\n prefix: 'fab',\n iconName: 'replyd',\n icon: [448, 512, [], \"f3e6\", \"M320 480H128C57.6 480 0 422.4 0 352V160C0 89.6 57.6 32 128 32h192c70.4 0 128 57.6 128 128v192c0 70.4-57.6 128-128 128zM193.4 273.2c-6.1-2-11.6-3.1-16.4-3.1-7.2 0-13.5 1.9-18.9 5.6-5.4 3.7-9.6 9-12.8 15.8h-1.1l-4.2-18.3h-28v138.9h36.1v-89.7c1.5-5.4 4.4-9.8 8.7-13.2 4.3-3.4 9.8-5.1 16.2-5.1 4.6 0 9.8 1 15.6 3.1l4.8-34zm115.2 103.4c-3.2 2.4-7.7 4.8-13.7 7.1-6 2.3-12.8 3.5-20.4 3.5-12.2 0-21.1-3-26.5-8.9-5.5-5.9-8.5-14.7-9-26.4h83.3c.9-4.8 1.6-9.4 2.1-13.9.5-4.4.7-8.6.7-12.5 0-10.7-1.6-19.7-4.7-26.9-3.2-7.2-7.3-13-12.5-17.2-5.2-4.3-11.1-7.3-17.8-9.2-6.7-1.8-13.5-2.8-20.6-2.8-21.1 0-37.5 6.1-49.2 18.3s-17.5 30.5-17.5 55c0 22.8 5.2 40.7 15.6 53.7 10.4 13.1 26.8 19.6 49.2 19.6 10.7 0 20.9-1.5 30.4-4.6 9.5-3.1 17.1-6.8 22.6-11.2l-12-23.6zm-21.8-70.3c3.8 5.4 5.3 13.1 4.6 23.1h-51.7c.9-9.4 3.7-17 8.2-22.6 4.5-5.6 11.5-8.5 21-8.5 8.2-.1 14.1 2.6 17.9 8zm79.9 2.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4s2 11.7 6.1 15.6zm0 100.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4 0 6.6 2 11.7 6.1 15.6z\"]\n};\nvar faResearchgate = {\n prefix: 'fab',\n iconName: 'researchgate',\n icon: [448, 512, [], \"f4f8\", \"M0 32v448h448V32H0zm262.2 334.4c-6.6 3-33.2 6-50-14.2-9.2-10.6-25.3-33.3-42.2-63.6-8.9 0-14.7 0-21.4-.6v46.4c0 23.5 6 21.2 25.8 23.9v8.1c-6.9-.3-23.1-.8-35.6-.8-13.1 0-26.1.6-33.6.8v-8.1c15.5-2.9 22-1.3 22-23.9V225c0-22.6-6.4-21-22-23.9V193c25.8 1 53.1-.6 70.9-.6 31.7 0 55.9 14.4 55.9 45.6 0 21.1-16.7 42.2-39.2 47.5 13.6 24.2 30 45.6 42.2 58.9 7.2 7.8 17.2 14.7 27.2 14.7v7.3zm22.9-135c-23.3 0-32.2-15.7-32.2-32.2V167c0-12.2 8.8-30.4 34-30.4s30.4 17.9 30.4 17.9l-10.7 7.2s-5.5-12.5-19.7-12.5c-7.9 0-19.7 7.3-19.7 19.7v26.8c0 13.4 6.6 23.3 17.9 23.3 14.1 0 21.5-10.9 21.5-26.8h-17.9v-10.7h30.4c0 20.5 4.7 49.9-34 49.9zm-116.5 44.7c-9.4 0-13.6-.3-20-.8v-69.7c6.4-.6 15-.6 22.5-.6 23.3 0 37.2 12.2 37.2 34.5 0 21.9-15 36.6-39.7 36.6z\"]\n};\nvar faResolving = {\n prefix: 'fab',\n iconName: 'resolving',\n icon: [496, 512, [], \"f3e7\", \"M281.2 278.2c46-13.3 49.6-23.5 44-43.4L314 195.5c-6.1-20.9-18.4-28.1-71.1-12.8L54.7 236.8l28.6 98.6 197.9-57.2zM248.5 8C131.4 8 33.2 88.7 7.2 197.5l221.9-63.9c34.8-10.2 54.2-11.7 79.3-8.2 36.3 6.1 52.7 25 61.4 55.2l10.7 37.8c8.2 28.1 1 50.6-23.5 73.6-19.4 17.4-31.2 24.5-61.4 33.2L203 351.8l220.4 27.1 9.7 34.2-48.1 13.3-286.8-37.3 23 80.2c36.8 22 80.3 34.7 126.3 34.7 137 0 248.5-111.4 248.5-248.3C497 119.4 385.5 8 248.5 8zM38.3 388.6L0 256.8c0 48.5 14.3 93.4 38.3 131.8z\"]\n};\nvar faRev = {\n prefix: 'fab',\n iconName: 'rev',\n icon: [448, 512, [], \"f5b2\", \"M289.67 274.89a65.57 65.57 0 1 1-65.56-65.56 65.64 65.64 0 0 1 65.56 65.56zm139.55-5.05h-.13a204.69 204.69 0 0 0-74.32-153l-45.38 26.2a157.07 157.07 0 0 1 71.81 131.84C381.2 361.5 310.73 432 224.11 432S67 361.5 67 274.88c0-81.88 63-149.27 143-156.43v39.12l108.77-62.79L210 32v38.32c-106.7 7.25-191 96-191 204.57 0 111.59 89.12 202.29 200.06 205v.11h210.16V269.84z\"]\n};\nvar faRocketchat = {\n prefix: 'fab',\n iconName: 'rocketchat',\n icon: [576, 512, [], \"f3e8\", \"M284.046,224.8a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,284.046,224.8Zm-110.45,0a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,173.6,224.8Zm220.923,0a34.114,34.114,0,1,0,34.317,34.113A34.215,34.215,0,0,0,394.519,224.8Zm153.807-55.319c-15.535-24.172-37.31-45.57-64.681-63.618-52.886-34.817-122.374-54-195.666-54a405.975,405.975,0,0,0-72.032,6.357,238.524,238.524,0,0,0-49.51-36.588C99.684-11.7,40.859.711,11.135,11.421A14.291,14.291,0,0,0,5.58,34.782C26.542,56.458,61.222,99.3,52.7,138.252c-33.142,33.9-51.112,74.776-51.112,117.337,0,43.372,17.97,84.248,51.112,118.148,8.526,38.956-26.154,81.816-47.116,103.491a14.284,14.284,0,0,0,5.555,23.34c29.724,10.709,88.549,23.147,155.324-10.2a238.679,238.679,0,0,0,49.51-36.589A405.972,405.972,0,0,0,288,460.14c73.313,0,142.8-19.159,195.667-53.975,27.371-18.049,49.145-39.426,64.679-63.619,17.309-26.923,26.07-55.916,26.07-86.125C574.394,225.4,565.634,196.43,548.326,169.485ZM284.987,409.9a345.65,345.65,0,0,1-89.446-11.5l-20.129,19.393a184.366,184.366,0,0,1-37.138,27.585,145.767,145.767,0,0,1-52.522,14.87c.983-1.771,1.881-3.563,2.842-5.356q30.258-55.68,16.325-100.078c-32.992-25.962-52.778-59.2-52.778-95.4,0-83.1,104.254-150.469,232.846-150.469s232.867,67.373,232.867,150.469C517.854,342.525,413.6,409.9,284.987,409.9Z\"]\n};\nvar faRockrms = {\n prefix: 'fab',\n iconName: 'rockrms',\n icon: [496, 512, [], \"f3e9\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm157.4 419.5h-90l-112-131.3c-17.9-20.4-3.9-56.1 26.6-56.1h75.3l-84.6-99.3-84.3 98.9h-90L193.5 67.2c14.4-18.4 41.3-17.3 54.5 0l157.7 185.1c19 22.8 2 57.2-27.6 56.1-.6 0-74.2.2-74.2.2l101.5 118.9z\"]\n};\nvar faRust = {\n prefix: 'fab',\n iconName: 'rust',\n icon: [512, 512, [], \"e07a\", \"M508.52,249.75,486.7,236.24c-.17-2-.34-3.93-.55-5.88l18.72-17.5a7.35,7.35,0,0,0-2.44-12.25l-24-9c-.54-1.88-1.08-3.78-1.67-5.64l15-20.83a7.35,7.35,0,0,0-4.79-11.54l-25.42-4.15c-.9-1.73-1.79-3.45-2.73-5.15l10.68-23.42a7.35,7.35,0,0,0-6.95-10.39l-25.82.91q-1.79-2.22-3.61-4.4L439,81.84A7.36,7.36,0,0,0,430.16,73L405,78.93q-2.17-1.83-4.4-3.61l.91-25.82a7.35,7.35,0,0,0-10.39-7L367.7,53.23c-1.7-.94-3.43-1.84-5.15-2.73L358.4,25.08a7.35,7.35,0,0,0-11.54-4.79L326,35.26c-1.86-.59-3.75-1.13-5.64-1.67l-9-24a7.35,7.35,0,0,0-12.25-2.44l-17.5,18.72c-1.95-.21-3.91-.38-5.88-.55L262.25,3.48a7.35,7.35,0,0,0-12.5,0L236.24,25.3c-2,.17-3.93.34-5.88.55L212.86,7.13a7.35,7.35,0,0,0-12.25,2.44l-9,24c-1.89.55-3.79,1.08-5.66,1.68l-20.82-15a7.35,7.35,0,0,0-11.54,4.79l-4.15,25.41c-1.73.9-3.45,1.79-5.16,2.73L120.88,42.55a7.35,7.35,0,0,0-10.39,7l.92,25.81c-1.49,1.19-3,2.39-4.42,3.61L81.84,73A7.36,7.36,0,0,0,73,81.84L78.93,107c-1.23,1.45-2.43,2.93-3.62,4.41l-25.81-.91a7.42,7.42,0,0,0-6.37,3.26,7.35,7.35,0,0,0-.57,7.13l10.66,23.41c-.94,1.7-1.83,3.43-2.73,5.16L25.08,153.6a7.35,7.35,0,0,0-4.79,11.54l15,20.82c-.59,1.87-1.13,3.77-1.68,5.66l-24,9a7.35,7.35,0,0,0-2.44,12.25l18.72,17.5c-.21,1.95-.38,3.91-.55,5.88L3.48,249.75a7.35,7.35,0,0,0,0,12.5L25.3,275.76c.17,2,.34,3.92.55,5.87L7.13,299.13a7.35,7.35,0,0,0,2.44,12.25l24,9c.55,1.89,1.08,3.78,1.68,5.65l-15,20.83a7.35,7.35,0,0,0,4.79,11.54l25.42,4.15c.9,1.72,1.79,3.45,2.73,5.14L42.56,391.12a7.35,7.35,0,0,0,.57,7.13,7.13,7.13,0,0,0,6.37,3.26l25.83-.91q1.77,2.22,3.6,4.4L73,430.16A7.36,7.36,0,0,0,81.84,439L107,433.07q2.18,1.83,4.41,3.61l-.92,25.82a7.35,7.35,0,0,0,10.39,6.95l23.43-10.68c1.69.94,3.42,1.83,5.14,2.73l4.15,25.42a7.34,7.34,0,0,0,11.54,4.78l20.83-15c1.86.6,3.76,1.13,5.65,1.68l9,24a7.36,7.36,0,0,0,12.25,2.44l17.5-18.72c1.95.21,3.92.38,5.88.55l13.51,21.82a7.35,7.35,0,0,0,12.5,0l13.51-21.82c2-.17,3.93-.34,5.88-.56l17.5,18.73a7.36,7.36,0,0,0,12.25-2.44l9-24c1.89-.55,3.78-1.08,5.65-1.68l20.82,15a7.34,7.34,0,0,0,11.54-4.78l4.15-25.42c1.72-.9,3.45-1.79,5.15-2.73l23.42,10.68a7.35,7.35,0,0,0,10.39-6.95l-.91-25.82q2.22-1.79,4.4-3.61L430.16,439a7.36,7.36,0,0,0,8.84-8.84L433.07,405q1.83-2.17,3.61-4.4l25.82.91a7.23,7.23,0,0,0,6.37-3.26,7.35,7.35,0,0,0,.58-7.13L458.77,367.7c.94-1.7,1.83-3.43,2.73-5.15l25.42-4.15a7.35,7.35,0,0,0,4.79-11.54l-15-20.83c.59-1.87,1.13-3.76,1.67-5.65l24-9a7.35,7.35,0,0,0,2.44-12.25l-18.72-17.5c.21-1.95.38-3.91.55-5.87l21.82-13.51a7.35,7.35,0,0,0,0-12.5Zm-151,129.08A13.91,13.91,0,0,0,341,389.51l-7.64,35.67A187.51,187.51,0,0,1,177,424.44l-7.64-35.66a13.87,13.87,0,0,0-16.46-10.68l-31.51,6.76a187.38,187.38,0,0,1-16.26-19.21H258.3c1.72,0,2.89-.29,2.89-1.91V309.55c0-1.57-1.17-1.91-2.89-1.91H213.47l.05-34.35H262c4.41,0,23.66,1.28,29.79,25.87,1.91,7.55,6.17,32.14,9.06,40,2.89,8.82,14.6,26.46,27.1,26.46H407a187.3,187.3,0,0,1-17.34,20.09Zm25.77,34.49A15.24,15.24,0,1,1,368,398.08h.44A15.23,15.23,0,0,1,383.24,413.32Zm-225.62-.68a15.24,15.24,0,1,1-15.25-15.25h.45A15.25,15.25,0,0,1,157.62,412.64ZM69.57,234.15l32.83-14.6a13.88,13.88,0,0,0,7.06-18.33L102.69,186h26.56V305.73H75.65A187.65,187.65,0,0,1,69.57,234.15ZM58.31,198.09a15.24,15.24,0,0,1,15.23-15.25H74a15.24,15.24,0,1,1-15.67,15.24Zm155.16,24.49.05-35.32h63.26c3.28,0,23.07,3.77,23.07,18.62,0,12.29-15.19,16.7-27.68,16.7ZM399,306.71c-9.8,1.13-20.63-4.12-22-10.09-5.78-32.49-15.39-39.4-30.57-51.4,18.86-11.95,38.46-29.64,38.46-53.26,0-25.52-17.49-41.59-29.4-49.48-16.76-11-35.28-13.23-40.27-13.23H116.32A187.49,187.49,0,0,1,221.21,70.06l23.47,24.6a13.82,13.82,0,0,0,19.6.44l26.26-25a187.51,187.51,0,0,1,128.37,91.43l-18,40.57A14,14,0,0,0,408,220.43l34.59,15.33a187.12,187.12,0,0,1,.4,32.54H423.71c-1.91,0-2.69,1.27-2.69,3.13v8.82C421,301,409.31,305.58,399,306.71ZM240,60.21A15.24,15.24,0,0,1,255.21,45h.45A15.24,15.24,0,1,1,240,60.21ZM436.84,214a15.24,15.24,0,1,1,0-30.48h.44a15.24,15.24,0,0,1-.44,30.48Z\"]\n};\nvar faSafari = {\n prefix: 'fab',\n iconName: 'safari',\n icon: [512, 512, [], \"f267\", \"M274.69,274.69l-37.38-37.38L166,346ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM411.85,182.79l14.78-6.13A8,8,0,0,1,437.08,181h0a8,8,0,0,1-4.33,10.46L418,197.57a8,8,0,0,1-10.45-4.33h0A8,8,0,0,1,411.85,182.79ZM314.43,94l6.12-14.78A8,8,0,0,1,331,74.92h0a8,8,0,0,1,4.33,10.45l-6.13,14.78a8,8,0,0,1-10.45,4.33h0A8,8,0,0,1,314.43,94ZM256,60h0a8,8,0,0,1,8,8V84a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V68A8,8,0,0,1,256,60ZM181,74.92a8,8,0,0,1,10.46,4.33L197.57,94a8,8,0,1,1-14.78,6.12l-6.13-14.78A8,8,0,0,1,181,74.92Zm-63.58,42.49h0a8,8,0,0,1,11.31,0L140,128.72A8,8,0,0,1,140,140h0a8,8,0,0,1-11.31,0l-11.31-11.31A8,8,0,0,1,117.41,117.41ZM60,256h0a8,8,0,0,1,8-8H84a8,8,0,0,1,8,8h0a8,8,0,0,1-8,8H68A8,8,0,0,1,60,256Zm40.15,73.21-14.78,6.13A8,8,0,0,1,74.92,331h0a8,8,0,0,1,4.33-10.46L94,314.43a8,8,0,0,1,10.45,4.33h0A8,8,0,0,1,100.15,329.21Zm4.33-136h0A8,8,0,0,1,94,197.57l-14.78-6.12A8,8,0,0,1,74.92,181h0a8,8,0,0,1,10.45-4.33l14.78,6.13A8,8,0,0,1,104.48,193.24ZM197.57,418l-6.12,14.78a8,8,0,0,1-14.79-6.12l6.13-14.78A8,8,0,1,1,197.57,418ZM264,444a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V428a8,8,0,0,1,8-8h0a8,8,0,0,1,8,8Zm67-6.92h0a8,8,0,0,1-10.46-4.33L314.43,418a8,8,0,0,1,4.33-10.45h0a8,8,0,0,1,10.45,4.33l6.13,14.78A8,8,0,0,1,331,437.08Zm63.58-42.49h0a8,8,0,0,1-11.31,0L372,383.28A8,8,0,0,1,372,372h0a8,8,0,0,1,11.31,0l11.31,11.31A8,8,0,0,1,394.59,394.59ZM286.25,286.25,110.34,401.66,225.75,225.75,401.66,110.34ZM437.08,331h0a8,8,0,0,1-10.45,4.33l-14.78-6.13a8,8,0,0,1-4.33-10.45h0A8,8,0,0,1,418,314.43l14.78,6.12A8,8,0,0,1,437.08,331ZM444,264H428a8,8,0,0,1-8-8h0a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8h0A8,8,0,0,1,444,264Z\"]\n};\nvar faSalesforce = {\n prefix: 'fab',\n iconName: 'salesforce',\n icon: [640, 512, [], \"f83b\", \"M248.89 245.64h-26.35c.69-5.16 3.32-14.12 13.64-14.12 6.75 0 11.97 3.82 12.71 14.12zm136.66-13.88c-.47 0-14.11-1.77-14.11 20s13.63 20 14.11 20c13 0 14.11-13.54 14.11-20 0-21.76-13.66-20-14.11-20zm-243.22 23.76a8.63 8.63 0 0 0-3.29 7.29c0 4.78 2.08 6.05 3.29 7.05 4.7 3.7 15.07 2.12 20.93.95v-16.94c-5.32-1.07-16.73-1.96-20.93 1.65zM640 232c0 87.58-80 154.39-165.36 136.43-18.37 33-70.73 70.75-132.2 41.63-41.16 96.05-177.89 92.18-213.81-5.17C8.91 428.78-50.19 266.52 53.36 205.61 18.61 126.18 76 32 167.67 32a124.24 124.24 0 0 1 98.56 48.7c20.7-21.4 49.4-34.81 81.15-34.81 42.34 0 79 23.52 98.8 58.57C539 63.78 640 132.69 640 232zm-519.55 31.8c0-11.76-11.69-15.17-17.87-17.17-5.27-2.11-13.41-3.51-13.41-8.94 0-9.46 17-6.66 25.17-2.12 0 0 1.17.71 1.64-.47.24-.7 2.36-6.58 2.59-7.29a1.13 1.13 0 0 0-.7-1.41c-12.33-7.63-40.7-8.51-40.7 12.7 0 12.46 11.49 15.44 17.88 17.17 4.72 1.58 13.17 3 13.17 8.7 0 4-3.53 7.06-9.17 7.06a31.76 31.76 0 0 1-19-6.35c-.47-.23-1.42-.71-1.65.71l-2.4 7.47c-.47.94.23 1.18.23 1.41 1.75 1.4 10.3 6.59 22.82 6.59 13.17 0 21.4-7.06 21.4-18.11zm32-42.58c-10.13 0-18.66 3.17-21.4 5.18a1 1 0 0 0-.24 1.41l2.59 7.06a1 1 0 0 0 1.18.7c.65 0 6.8-4 16.93-4 4 0 7.06.71 9.18 2.36 3.6 2.8 3.06 8.29 3.06 10.58-4.79-.3-19.11-3.44-29.41 3.76a16.92 16.92 0 0 0-7.34 14.54c0 5.9 1.51 10.4 6.59 14.35 12.24 8.16 36.28 2 38.1 1.41 1.58-.32 3.53-.66 3.53-1.88v-33.88c.04-4.61.32-21.64-22.78-21.64zM199 200.24a1.11 1.11 0 0 0-1.18-1.18H188a1.11 1.11 0 0 0-1.17 1.18v79a1.11 1.11 0 0 0 1.17 1.18h9.88a1.11 1.11 0 0 0 1.18-1.18zm55.75 28.93c-2.1-2.31-6.79-7.53-17.65-7.53-3.51 0-14.16.23-20.7 8.94-6.35 7.63-6.58 18.11-6.58 21.41 0 3.12.15 14.26 7.06 21.17 2.64 2.91 9.06 8.23 22.81 8.23 10.82 0 16.47-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.35-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.94-16.7h37.17a1.23 1.23 0 0 0 1.17-.94c-.29 0 2.07-14.7-6.09-24.23zm36.69 52.69c13.17 0 21.41-7.06 21.41-18.11 0-11.76-11.7-15.17-17.88-17.17-4.14-1.66-13.41-3.38-13.41-8.94 0-3.76 3.29-6.35 8.47-6.35a38.11 38.11 0 0 1 16.7 4.23s1.18.71 1.65-.47c.23-.7 2.35-6.58 2.58-7.29a1.13 1.13 0 0 0-.7-1.41c-7.91-4.9-16.74-4.94-20.23-4.94-12 0-20.46 7.29-20.46 17.64 0 12.46 11.48 15.44 17.87 17.17 6.11 2 13.17 3.26 13.17 8.7 0 4-3.52 7.06-9.17 7.06a31.8 31.8 0 0 1-19-6.35 1 1 0 0 0-1.65.71l-2.35 7.52c-.47.94.23 1.18.23 1.41 1.72 1.4 10.33 6.59 22.79 6.59zM357.09 224c0-.71-.24-1.18-1.18-1.18h-11.76c0-.14.94-8.94 4.47-12.47 4.16-4.15 11.76-1.64 12-1.64 1.17.47 1.41 0 1.64-.47l2.83-7.77c.7-.94 0-1.17-.24-1.41-5.09-2-17.35-2.87-24.46 4.24-5.48 5.48-7 13.92-8 19.52h-8.47a1.28 1.28 0 0 0-1.17 1.18l-1.42 7.76c0 .7.24 1.17 1.18 1.17h8.23c-8.51 47.9-8.75 50.21-10.35 55.52-1.08 3.62-3.29 6.9-5.88 7.76-.09 0-3.88 1.68-9.64-.24 0 0-.94-.47-1.41.71-.24.71-2.59 6.82-2.83 7.53s0 1.41.47 1.41c5.11 2 13 1.77 17.88 0 6.28-2.28 9.72-7.89 11.53-12.94 2.75-7.71 2.81-9.79 11.76-59.74h12.23a1.29 1.29 0 0 0 1.18-1.18zm53.39 16c-.56-1.68-5.1-18.11-25.17-18.11-15.25 0-23 10-25.16 18.11-1 3-3.18 14 0 23.52.09.3 4.41 18.12 25.16 18.12 14.95 0 22.9-9.61 25.17-18.12 3.21-9.61 1.01-20.52 0-23.52zm45.4-16.7c-5-1.65-16.62-1.9-22.11 5.41v-4.47a1.11 1.11 0 0 0-1.18-1.17h-9.4a1.11 1.11 0 0 0-1.18 1.17v55.28a1.12 1.12 0 0 0 1.18 1.18h9.64a1.12 1.12 0 0 0 1.18-1.18v-27.77c0-2.91.05-11.37 4.46-15.05 4.9-4.9 12-3.36 13.41-3.06a1.57 1.57 0 0 0 1.41-.94 74 74 0 0 0 3.06-8 1.16 1.16 0 0 0-.47-1.41zm46.81 54.1l-2.12-7.29c-.47-1.18-1.41-.71-1.41-.71-4.23 1.82-10.15 1.89-11.29 1.89-4.64 0-17.17-1.13-17.17-19.76 0-6.23 1.85-19.76 16.47-19.76a34.85 34.85 0 0 1 11.52 1.65s.94.47 1.18-.71c.94-2.59 1.64-4.47 2.59-7.53.23-.94-.47-1.17-.71-1.17-11.59-3.87-22.34-2.53-27.76 0-1.59.74-16.23 6.49-16.23 27.52 0 2.9-.58 30.11 28.94 30.11a44.45 44.45 0 0 0 15.52-2.83 1.3 1.3 0 0 0 .47-1.42zm53.87-39.52c-.8-3-5.37-16.23-22.35-16.23-16 0-23.52 10.11-25.64 18.59a38.58 38.58 0 0 0-1.65 11.76c0 25.87 18.84 29.4 29.88 29.4 10.82 0 16.46-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.36-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.93-16.7h37.16a1.25 1.25 0 0 0 1.18-.94c-.24-.01.94-7.07-1.41-15.54zm-23.29-6.35c-10.33 0-13 9-13.64 14.12H546c-.88-11.92-7.62-14.13-12.73-14.13z\"]\n};\nvar faSass = {\n prefix: 'fab',\n iconName: 'sass',\n icon: [640, 512, [], \"f41e\", \"M301.84 378.92c-.3.6-.6 1.08 0 0zm249.13-87a131.16 131.16 0 0 0-58 13.5c-5.9-11.9-12-22.3-13-30.1-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.3-6.7-24 2.5-25.29 5.9a122.83 122.83 0 0 0-5.3 19.1c-2.3 11.7-25.79 53.5-39.09 75.3-4.4-8.5-8.1-16-8.9-22-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.29-6.7-24 2.5-25.3 5.9-2.7 11.4-5.3 19.1-33.89 77.3-42.08 95.4c-4.2 9.2-7.8 16.6-10.4 21.6-.4.8-.7 1.3-.9 1.7.3-.5.5-1 .5-.8-2.2 4.3-3.5 6.7-3.5 6.7v.1c-1.7 3.2-3.6 6.1-4.5 6.1-.6 0-1.9-8.4.3-19.9 4.7-24.2 15.8-61.8 15.7-63.1-.1-.7 2.1-7.2-7.3-10.7-9.1-3.3-12.4 2.2-13.2 2.2s-1.4 2-1.4 2 10.1-42.4-19.39-42.4c-18.4 0-44 20.2-56.58 38.5-7.9 4.3-25 13.6-43 23.5-6.9 3.8-14 7.7-20.7 11.4-.5-.5-.9-1-1.4-1.5-35.79-38.2-101.87-65.2-99.07-116.5 1-18.7 7.5-67.8 127.07-127.4 98-48.8 176.35-35.4 189.84-5.6 19.4 42.5-41.89 121.6-143.66 133-38.79 4.3-59.18-10.7-64.28-16.3-5.3-5.9-6.1-6.2-8.1-5.1-3.3 1.8-1.2 7 0 10.1 3 7.9 15.5 21.9 36.79 28.9 18.7 6.1 64.18 9.5 119.17-11.8 61.78-23.8 109.87-90.1 95.77-145.6C386.52 18.32 293-.18 204.57 31.22c-52.69 18.7-109.67 48.1-150.66 86.4-48.69 45.6-56.48 85.3-53.28 101.9 11.39 58.9 92.57 97.3 125.06 125.7-1.6.9-3.1 1.7-4.5 2.5-16.29 8.1-78.18 40.5-93.67 74.7-17.5 38.8 2.9 66.6 16.29 70.4 41.79 11.6 84.58-9.3 107.57-43.6s20.2-79.1 9.6-99.5c-.1-.3-.3-.5-.4-.8 4.2-2.5 8.5-5 12.8-7.5 8.29-4.9 16.39-9.4 23.49-13.3-4 10.8-6.9 23.8-8.4 42.6-1.8 22 7.3 50.5 19.1 61.7 5.2 4.9 11.49 5 15.39 5 13.8 0 20-11.4 26.89-25 8.5-16.6 16-35.9 16-35.9s-9.4 52.2 16.3 52.2c9.39 0 18.79-12.1 23-18.3v.1s.2-.4.7-1.2c1-1.5 1.5-2.4 1.5-2.4v-.3c3.8-6.5 12.1-21.4 24.59-46 16.2-31.8 31.69-71.5 31.69-71.5a201.24 201.24 0 0 0 6.2 25.8c2.8 9.5 8.7 19.9 13.4 30-3.8 5.2-6.1 8.2-6.1 8.2a.31.31 0 0 0 .1.2c-3 4-6.4 8.3-9.9 12.5-12.79 15.2-28 32.6-30 37.6-2.4 5.9-1.8 10.3 2.8 13.7 3.4 2.6 9.4 3 15.69 2.5 11.5-.8 19.6-3.6 23.5-5.4a82.2 82.2 0 0 0 20.19-10.6c12.5-9.2 20.1-22.4 19.4-39.8-.4-9.6-3.5-19.2-7.3-28.2 1.1-1.6 2.3-3.3 3.4-5C434.8 301.72 450.1 270 450.1 270a201.24 201.24 0 0 0 6.2 25.8c2.4 8.1 7.09 17 11.39 25.7-18.59 15.1-30.09 32.6-34.09 44.1-7.4 21.3-1.6 30.9 9.3 33.1 4.9 1 11.9-1.3 17.1-3.5a79.46 79.46 0 0 0 21.59-11.1c12.5-9.2 24.59-22.1 23.79-39.6-.3-7.9-2.5-15.8-5.4-23.4 15.7-6.6 36.09-10.2 62.09-7.2 55.68 6.5 66.58 41.3 64.48 55.8s-13.8 22.6-17.7 25-5.1 3.3-4.8 5.1c.5 2.6 2.3 2.5 5.6 1.9 4.6-.8 29.19-11.8 30.29-38.7 1.6-34-31.09-71.4-89-71.1zm-429.18 144.7c-18.39 20.1-44.19 27.7-55.28 21.3C54.61 451 59.31 421.42 82 400c13.8-13 31.59-25 43.39-32.4 2.7-1.6 6.6-4 11.4-6.9.8-.5 1.2-.7 1.2-.7.9-.6 1.9-1.1 2.9-1.7 8.29 30.4.3 57.2-19.1 78.3zm134.36-91.4c-6.4 15.7-19.89 55.7-28.09 53.6-7-1.8-11.3-32.3-1.4-62.3 5-15.1 15.6-33.1 21.9-40.1 10.09-11.3 21.19-14.9 23.79-10.4 3.5 5.9-12.2 49.4-16.2 59.2zm111 53c-2.7 1.4-5.2 2.3-6.4 1.6-.9-.5 1.1-2.4 1.1-2.4s13.9-14.9 19.4-21.7c3.2-4 6.9-8.7 10.89-13.9 0 .5.1 1 .1 1.6-.13 17.9-17.32 30-25.12 34.8zm85.58-19.5c-2-1.4-1.7-6.1 5-20.7 2.6-5.7 8.59-15.3 19-24.5a36.18 36.18 0 0 1 1.9 10.8c-.1 22.5-16.2 30.9-25.89 34.4z\"]\n};\nvar faSchlix = {\n prefix: 'fab',\n iconName: 'schlix',\n icon: [448, 512, [], \"f3ea\", \"M350.5 157.7l-54.2-46.1 73.4-39 78.3 44.2-97.5 40.9zM192 122.1l45.7-28.2 34.7 34.6-55.4 29-25-35.4zm-65.1 6.6l31.9-22.1L176 135l-36.7 22.5-12.4-28.8zm-23.3 88.2l-8.8-34.8 29.6-18.3 13.1 35.3-33.9 17.8zm-21.2-83.7l23.9-18.1 8.9 24-26.7 18.3-6.1-24.2zM59 206.5l-3.6-28.4 22.3-15.5 6.1 28.7L59 206.5zm-30.6 16.6l20.8-12.8 3.3 33.4-22.9 12-1.2-32.6zM1.4 268l19.2-10.2.4 38.2-21 8.8L1.4 268zm59.1 59.3l-28.3 8.3-1.6-46.8 25.1-10.7 4.8 49.2zM99 263.2l-31.1 13-5.2-40.8L90.1 221l8.9 42.2zM123.2 377l-41.6 5.9-8.1-63.5 35.2-10.8 14.5 68.4zm28.5-139.9l21.2 57.1-46.2 13.6-13.7-54.1 38.7-16.6zm85.7 230.5l-70.9-3.3-24.3-95.8 55.2-8.6 40 107.7zm-84.9-279.7l42.2-22.4 28 45.9-50.8 21.3-19.4-44.8zm41 94.9l61.3-18.7 52.8 86.6-79.8 11.3-34.3-79.2zm51.4-85.6l67.3-28.8 65.5 65.4-88.6 26.2-44.2-62.8z\"]\n};\nvar faScribd = {\n prefix: 'fab',\n iconName: 'scribd',\n icon: [384, 512, [], \"f28a\", \"M42.3 252.7c-16.1-19-24.7-45.9-24.8-79.9 0-100.4 75.2-153.1 167.2-153.1 98.6-1.6 156.8 49 184.3 70.6l-50.5 72.1-37.3-24.6 26.9-38.6c-36.5-24-79.4-36.5-123-35.8-50.7-.8-111.7 27.2-111.7 76.2 0 18.7 11.2 20.7 28.6 15.6 23.3-5.3 41.9.6 55.8 14 26.4 24.3 23.2 67.6-.7 91.9-29.2 29.5-85.2 27.3-114.8-8.4zm317.7 5.9c-15.5-18.8-38.9-29.4-63.2-28.6-38.1-2-71.1 28-70.5 67.2-.7 16.8 6 33 18.4 44.3 14.1 13.9 33 19.7 56.3 14.4 17.4-5.1 28.6-3.1 28.6 15.6 0 4.3-.5 8.5-1.4 12.7-16.7 40.9-59.5 64.4-121.4 64.4-51.9.2-102.4-16.4-144.1-47.3l33.7-39.4-35.6-27.4L0 406.3l15.4 13.8c52.5 46.8 120.4 72.5 190.7 72.2 51.4 0 94.4-10.5 133.6-44.1 57.1-51.4 54.2-149.2 20.3-189.6z\"]\n};\nvar faSearchengin = {\n prefix: 'fab',\n iconName: 'searchengin',\n icon: [460, 512, [], \"f3eb\", \"M220.6 130.3l-67.2 28.2V43.2L98.7 233.5l54.7-24.2v130.3l67.2-209.3zm-83.2-96.7l-1.3 4.7-15.2 52.9C80.6 106.7 52 145.8 52 191.5c0 52.3 34.3 95.9 83.4 105.5v53.6C57.5 340.1 0 272.4 0 191.6c0-80.5 59.8-147.2 137.4-158zm311.4 447.2c-11.2 11.2-23.1 12.3-28.6 10.5-5.4-1.8-27.1-19.9-60.4-44.4-33.3-24.6-33.6-35.7-43-56.7-9.4-20.9-30.4-42.6-57.5-52.4l-9.7-14.7c-24.7 16.9-53 26.9-81.3 28.7l2.1-6.6 15.9-49.5c46.5-11.9 80.9-54 80.9-104.2 0-54.5-38.4-102.1-96-107.1V32.3C254.4 37.4 320 106.8 320 191.6c0 33.6-11.2 64.7-29 90.4l14.6 9.6c9.8 27.1 31.5 48 52.4 57.4s32.2 9.7 56.8 43c24.6 33.2 42.7 54.9 44.5 60.3s.7 17.3-10.5 28.5zm-9.9-17.9c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8 8-3.6 8-8z\"]\n};\nvar faSellcast = {\n prefix: 'fab',\n iconName: 'sellcast',\n icon: [448, 512, [], \"f2da\", \"M353.4 32H94.7C42.6 32 0 74.6 0 126.6v258.7C0 437.4 42.6 480 94.7 480h258.7c52.1 0 94.7-42.6 94.7-94.6V126.6c0-52-42.6-94.6-94.7-94.6zm-50 316.4c-27.9 48.2-89.9 64.9-138.2 37.2-22.9 39.8-54.9 8.6-42.3-13.2l15.7-27.2c5.9-10.3 19.2-13.9 29.5-7.9 18.6 10.8-.1-.1 18.5 10.7 27.6 15.9 63.4 6.3 79.4-21.3 15.9-27.6 6.3-63.4-21.3-79.4-17.8-10.2-.6-.4-18.6-10.6-24.6-14.2-3.4-51.9 21.6-37.5 18.6 10.8-.1-.1 18.5 10.7 48.4 28 65.1 90.3 37.2 138.5zm21.8-208.8c-17 29.5-16.3 28.8-19 31.5-6.5 6.5-16.3 8.7-26.5 3.6-18.6-10.8.1.1-18.5-10.7-27.6-15.9-63.4-6.3-79.4 21.3s-6.3 63.4 21.3 79.4c0 0 18.5 10.6 18.6 10.6 24.6 14.2 3.4 51.9-21.6 37.5-18.6-10.8.1.1-18.5-10.7-48.2-27.8-64.9-90.1-37.1-138.4 27.9-48.2 89.9-64.9 138.2-37.2l4.8-8.4c14.3-24.9 52-3.3 37.7 21.5z\"]\n};\nvar faSellsy = {\n prefix: 'fab',\n iconName: 'sellsy',\n icon: [640, 512, [], \"f213\", \"M539.71 237.308c3.064-12.257 4.29-24.821 4.29-37.384C544 107.382 468.618 32 376.076 32c-77.22 0-144.634 53.012-163.02 127.781-15.322-13.176-34.934-20.53-55.157-20.53-46.271 0-83.962 37.69-83.962 83.961 0 7.354.92 15.015 3.065 22.369-42.9 20.225-70.785 63.738-70.785 111.234C6.216 424.843 61.68 480 129.401 480h381.198c67.72 0 123.184-55.157 123.184-123.184.001-56.384-38.916-106.025-94.073-119.508zM199.88 401.554c0 8.274-7.048 15.321-15.321 15.321H153.61c-8.274 0-15.321-7.048-15.321-15.321V290.626c0-8.273 7.048-15.321 15.321-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v110.928zm89.477 0c0 8.274-7.048 15.321-15.322 15.321h-30.949c-8.274 0-15.321-7.048-15.321-15.321V270.096c0-8.274 7.048-15.321 15.321-15.321h30.949c8.274 0 15.322 7.048 15.322 15.321v131.458zm89.477 0c0 8.274-7.047 15.321-15.321 15.321h-30.949c-8.274 0-15.322-7.048-15.322-15.321V238.84c0-8.274 7.048-15.321 15.322-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v162.714zm87.027 0c0 8.274-7.048 15.321-15.322 15.321h-28.497c-8.274 0-15.321-7.048-15.321-15.321V176.941c0-8.579 7.047-15.628 15.321-15.628h28.497c8.274 0 15.322 7.048 15.322 15.628v224.613z\"]\n};\nvar faServicestack = {\n prefix: 'fab',\n iconName: 'servicestack',\n icon: [496, 512, [], \"f3ec\", \"M88 216c81.7 10.2 273.7 102.3 304 232H0c99.5-8.1 184.5-137 88-232zm32-152c32.3 35.6 47.7 83.9 46.4 133.6C249.3 231.3 373.7 321.3 400 448h96C455.3 231.9 222.8 79.5 120 64z\"]\n};\nvar faShirtsinbulk = {\n prefix: 'fab',\n iconName: 'shirtsinbulk',\n icon: [448, 512, [], \"f214\", \"M100 410.3l30.6 13.4 4.4-9.9-30.6-13.4zm39.4 17.5l30.6 13.4 4.4-9.9-30.6-13.4zm172.1-14l4.4 9.9 30.6-13.4-4.4-9.9zM179.1 445l30.3 13.7 4.4-9.9-30.3-13.4zM60.4 392.8L91 406.2l4.4-9.6-30.6-13.7zm211.4 38.5l4.4 9.9 30.6-13.4-4.4-9.9zm-39.3 17.5l4.4 9.9 30.6-13.7-4.4-9.6zm118.4-52.2l4.4 9.6 30.6-13.4-4.4-9.9zM170 46.6h-33.5v10.5H170zm-47.2 0H89.2v10.5h33.5zm-47.3 0H42.3v10.5h33.3zm141.5 0h-33.2v10.5H217zm94.5 0H278v10.5h33.5zm47.3 0h-33.5v10.5h33.5zm-94.6 0H231v10.5h33.2zm141.5 0h-33.3v10.5h33.3zM52.8 351.1H42v33.5h10.8zm70-215.9H89.2v10.5h33.5zm-70 10.6h22.8v-10.5H42v33.5h10.8zm168.9 228.6c50.5 0 91.3-40.8 91.3-91.3 0-50.2-40.8-91.3-91.3-91.3-50.2 0-91.3 41.1-91.3 91.3 0 50.5 41.1 91.3 91.3 91.3zm-48.2-111.1c0-25.4 29.5-31.8 49.6-31.8 16.9 0 29.2 5.8 44.3 12l-8.8 16.9h-.9c-6.4-9.9-24.8-13.1-35.6-13.1-9 0-29.8 1.8-29.8 14.9 0 21.6 78.5-10.2 78.5 37.9 0 25.4-31.5 31.2-51 31.2-18.1 0-32.4-2.9-47.2-12.2l9-18.4h.9c6.1 12.2 23.6 14.9 35.9 14.9 8.7 0 32.7-1.2 32.7-14.3 0-26.1-77.6 6.3-77.6-38zM52.8 178.4H42V212h10.8zm342.4 206.2H406v-33.5h-10.8zM52.8 307.9H42v33.5h10.8zM0 3.7v406l221.7 98.6L448 409.7V3.7zm418.8 387.1L222 476.5 29.2 390.8V120.7h389.7v270.1zm0-299.3H29.2V32.9h389.7v58.6zm-366 130.1H42v33.5h10.8zm0 43.2H42v33.5h10.8zM170 135.2h-33.5v10.5H170zm225.2 163.1H406v-33.5h-10.8zm0-43.2H406v-33.5h-10.8zM217 135.2h-33.2v10.5H217zM395.2 212H406v-33.5h-10.8zm0 129.5H406V308h-10.8zm-131-206.3H231v10.5h33.2zm47.3 0H278v10.5h33.5zm83.7 33.6H406v-33.5h-33.5v10.5h22.8zm-36.4-33.6h-33.5v10.5h33.5z\"]\n};\nvar faShopify = {\n prefix: 'fab',\n iconName: 'shopify',\n icon: [448, 512, [], \"e057\", \"M388.32,104.1a4.66,4.66,0,0,0-4.4-4c-2,0-37.23-.8-37.23-.8s-21.61-20.82-29.62-28.83V503.2L442.76,472S388.72,106.5,388.32,104.1ZM288.65,70.47a116.67,116.67,0,0,0-7.21-17.61C271,32.85,255.42,22,237,22a15,15,0,0,0-4,.4c-.4-.8-1.2-1.2-1.6-2C223.4,11.63,213,7.63,200.58,8c-24,.8-48,18-67.25,48.83-13.61,21.62-24,48.84-26.82,70.06-27.62,8.4-46.83,14.41-47.23,14.81-14,4.4-14.41,4.8-16,18-1.2,10-38,291.82-38,291.82L307.86,504V65.67a41.66,41.66,0,0,0-4.4.4S297.86,67.67,288.65,70.47ZM233.41,87.69c-16,4.8-33.63,10.4-50.84,15.61,4.8-18.82,14.41-37.63,25.62-50,4.4-4.4,10.41-9.61,17.21-12.81C232.21,54.86,233.81,74.48,233.41,87.69ZM200.58,24.44A27.49,27.49,0,0,1,215,28c-6.4,3.2-12.81,8.41-18.81,14.41-15.21,16.42-26.82,42-31.62,66.45-14.42,4.41-28.83,8.81-42,12.81C131.33,83.28,163.75,25.24,200.58,24.44ZM154.15,244.61c1.6,25.61,69.25,31.22,73.25,91.66,2.8,47.64-25.22,80.06-65.65,82.47-48.83,3.2-75.65-25.62-75.65-25.62l10.4-44s26.82,20.42,48.44,18.82c14-.8,19.22-12.41,18.81-20.42-2-33.62-57.24-31.62-60.84-86.86-3.2-46.44,27.22-93.27,94.47-97.68,26-1.6,39.23,4.81,39.23,4.81L221.4,225.39s-17.21-8-37.63-6.4C154.15,221,153.75,239.8,154.15,244.61ZM249.42,82.88c0-12-1.6-29.22-7.21-43.63,18.42,3.6,27.22,24,31.23,36.43Q262.63,78.68,249.42,82.88Z\"]\n};\nvar faShopware = {\n prefix: 'fab',\n iconName: 'shopware',\n icon: [512, 512, [], \"f5b5\", \"M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z\"]\n};\nvar faSimplybuilt = {\n prefix: 'fab',\n iconName: 'simplybuilt',\n icon: [512, 512, [], \"f215\", \"M481.2 64h-106c-14.5 0-26.6 11.8-26.6 26.3v39.6H163.3V90.3c0-14.5-12-26.3-26.6-26.3h-106C16.1 64 4.3 75.8 4.3 90.3v331.4c0 14.5 11.8 26.3 26.6 26.3h450.4c14.8 0 26.6-11.8 26.6-26.3V90.3c-.2-14.5-12-26.3-26.7-26.3zM149.8 355.8c-36.6 0-66.4-29.7-66.4-66.4 0-36.9 29.7-66.6 66.4-66.6 36.9 0 66.6 29.7 66.6 66.6 0 36.7-29.7 66.4-66.6 66.4zm212.4 0c-36.9 0-66.6-29.7-66.6-66.6 0-36.6 29.7-66.4 66.6-66.4 36.6 0 66.4 29.7 66.4 66.4 0 36.9-29.8 66.6-66.4 66.6z\"]\n};\nvar faSistrix = {\n prefix: 'fab',\n iconName: 'sistrix',\n icon: [448, 512, [], \"f3ee\", \"M448 449L301.2 300.2c20-27.9 31.9-62.2 31.9-99.2 0-93.1-74.7-168.9-166.5-168.9C74.7 32 0 107.8 0 200.9s74.7 168.9 166.5 168.9c39.8 0 76.3-14.2 105-37.9l146 148.1 30.5-31zM166.5 330.8c-70.6 0-128.1-58.3-128.1-129.9S95.9 71 166.5 71s128.1 58.3 128.1 129.9-57.4 129.9-128.1 129.9z\"]\n};\nvar faSith = {\n prefix: 'fab',\n iconName: 'sith',\n icon: [448, 512, [], \"f512\", \"M0 32l69.71 118.75-58.86-11.52 69.84 91.03a146.741 146.741 0 0 0 0 51.45l-69.84 91.03 58.86-11.52L0 480l118.75-69.71-11.52 58.86 91.03-69.84c17.02 3.04 34.47 3.04 51.48 0l91.03 69.84-11.52-58.86L448 480l-69.71-118.78 58.86 11.52-69.84-91.03c3.03-17.01 3.04-34.44 0-51.45l69.84-91.03-58.86 11.52L448 32l-118.75 69.71 11.52-58.9-91.06 69.87c-8.5-1.52-17.1-2.29-25.71-2.29s-17.21.78-25.71 2.29l-91.06-69.87 11.52 58.9L0 32zm224 99.78c31.8 0 63.6 12.12 87.85 36.37 48.5 48.5 48.49 127.21 0 175.7s-127.2 48.46-175.7-.03c-48.5-48.5-48.49-127.21 0-175.7 24.24-24.25 56.05-36.34 87.85-36.34zm0 36.66c-22.42 0-44.83 8.52-61.92 25.61-34.18 34.18-34.19 89.68 0 123.87s89.65 34.18 123.84 0c34.18-34.18 34.19-89.68 0-123.87-17.09-17.09-39.5-25.61-61.92-25.61z\"]\n};\nvar faSketch = {\n prefix: 'fab',\n iconName: 'sketch',\n icon: [512, 512, [], \"f7c6\", \"M27.5 162.2L9 187.1h90.5l6.9-130.7-78.9 105.8zM396.3 45.7L267.7 32l135.7 147.2-7.1-133.5zM112.2 218.3l-11.2-22H9.9L234.8 458zm2-31.2h284l-81.5-88.5L256.3 33zm297.3 9.1L277.6 458l224.8-261.7h-90.9zM415.4 69L406 56.4l.9 17.3 6.1 113.4h90.3zM113.5 93.5l-4.6 85.6L244.7 32 116.1 45.7zm287.7 102.7h-290l42.4 82.9L256.3 480l144.9-283.8z\"]\n};\nvar faSkyatlas = {\n prefix: 'fab',\n iconName: 'skyatlas',\n icon: [640, 512, [], \"f216\", \"M640 329.3c0 65.9-52.5 114.4-117.5 114.4-165.9 0-196.6-249.7-359.7-249.7-146.9 0-147.1 212.2 5.6 212.2 42.5 0 90.9-17.8 125.3-42.5 5.6-4.1 16.9-16.3 22.8-16.3s10.9 5 10.9 10.9c0 7.8-13.1 19.1-18.7 24.1-40.9 35.6-100.3 61.2-154.7 61.2-83.4.1-154-59-154-144.9s67.5-149.1 152.8-149.1c185.3 0 222.5 245.9 361.9 245.9 99.9 0 94.8-139.7 3.4-139.7-17.5 0-35 11.6-46.9 11.6-8.4 0-15.9-7.2-15.9-15.6 0-11.6 5.3-23.7 5.3-36.3 0-66.6-50.9-114.7-116.9-114.7-53.1 0-80 36.9-88.8 36.9-6.2 0-11.2-5-11.2-11.2 0-5.6 4.1-10.3 7.8-14.4 25.3-28.8 64.7-43.7 102.8-43.7 79.4 0 139.1 58.4 139.1 137.8 0 6.9-.3 13.7-1.2 20.6 11.9-3.1 24.1-4.7 35.9-4.7 60.7 0 111.9 45.3 111.9 107.2z\"]\n};\nvar faSkype = {\n prefix: 'fab',\n iconName: 'skype',\n icon: [448, 512, [], \"f17e\", \"M424.7 299.8c2.9-14 4.7-28.9 4.7-43.8 0-113.5-91.9-205.3-205.3-205.3-14.9 0-29.7 1.7-43.8 4.7C161.3 40.7 137.7 32 112 32 50.2 32 0 82.2 0 144c0 25.7 8.7 49.3 23.3 68.2-2.9 14-4.7 28.9-4.7 43.8 0 113.5 91.9 205.3 205.3 205.3 14.9 0 29.7-1.7 43.8-4.7 19 14.6 42.6 23.3 68.2 23.3 61.8 0 112-50.2 112-112 .1-25.6-8.6-49.2-23.2-68.1zm-194.6 91.5c-65.6 0-120.5-29.2-120.5-65 0-16 9-30.6 29.5-30.6 31.2 0 34.1 44.9 88.1 44.9 25.7 0 42.3-11.4 42.3-26.3 0-18.7-16-21.6-42-28-62.5-15.4-117.8-22-117.8-87.2 0-59.2 58.6-81.1 109.1-81.1 55.1 0 110.8 21.9 110.8 55.4 0 16.9-11.4 31.8-30.3 31.8-28.3 0-29.2-33.5-75-33.5-25.7 0-42 7-42 22.5 0 19.8 20.8 21.8 69.1 33 41.4 9.3 90.7 26.8 90.7 77.6 0 59.1-57.1 86.5-112 86.5z\"]\n};\nvar faSlack = {\n prefix: 'fab',\n iconName: 'slack',\n icon: [448, 512, [], \"f198\", \"M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z\"]\n};\nvar faSlackHash = {\n prefix: 'fab',\n iconName: 'slack-hash',\n icon: [448, 512, [], \"f3ef\", \"M446.2 270.4c-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-30.3-90 45.4-15.1c19.1-6.2 29.1-26.8 23-45.9-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-93.4 31.2-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-45.3 15c-19.1 6.2-29.1 26.8-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l30.3 90L78 354.8c-19 6.2-29.1 26.9-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 93.6-31.3 15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 45.4-15.1c19-6 29.1-26.7 22.9-45.7zm-254.1 47.2l-30.3-90.2 93.5-31.3 30.3 90.2-93.5 31.3z\"]\n};\nvar faSlideshare = {\n prefix: 'fab',\n iconName: 'slideshare',\n icon: [512, 512, [], \"f1e7\", \"M187.7 153.7c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7s61.7-26 61.7-57.7c0-32-27.7-57.7-61.7-57.7zm143.4 0c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7 34.3 0 61.7-26 61.7-57.7.1-32-27.4-57.7-61.7-57.7zm156.6 90l-6 4.3V49.7c0-27.4-20.6-49.7-46-49.7H76.6c-25.4 0-46 22.3-46 49.7V248c-2-1.4-4.3-2.9-6.3-4.3-15.1-10.6-25.1 4-16 17.7 18.3 22.6 53.1 50.3 106.3 72C58.3 525.1 252 555.7 248.9 457.5c0-.7.3-56.6.3-96.6 5.1 1.1 9.4 2.3 13.7 3.1 0 39.7.3 92.8.3 93.5-3.1 98.3 190.6 67.7 134.3-124 53.1-21.7 88-49.4 106.3-72 9.1-13.8-.9-28.3-16.1-17.8zm-30.5 19.2c-68.9 37.4-128.3 31.1-160.6 29.7-23.7-.9-32.6 9.1-33.7 24.9-10.3-7.7-18.6-15.5-20.3-17.1-5.1-5.4-13.7-8-27.1-7.7-31.7 1.1-89.7 7.4-157.4-28V72.3c0-34.9 8.9-45.7 40.6-45.7h317.7c30.3 0 40.9 12.9 40.9 45.7v190.6z\"]\n};\nvar faSnapchat = {\n prefix: 'fab',\n iconName: 'snapchat',\n icon: [496, 512, [], \"f2ab\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm169.5 338.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C183.1 100 230.7 96 244.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z\"]\n};\nvar faSnapchatGhost = {\n prefix: 'fab',\n iconName: 'snapchat-ghost',\n icon: [512, 512, [], \"f2ac\", \"M510.846 392.673c-5.211 12.157-27.239 21.089-67.36 27.318-2.064 2.786-3.775 14.686-6.507 23.956-1.625 5.566-5.623 8.869-12.128 8.869l-.297-.005c-9.395 0-19.203-4.323-38.852-4.323-26.521 0-35.662 6.043-56.254 20.588-21.832 15.438-42.771 28.764-74.027 27.399-31.646 2.334-58.025-16.908-72.871-27.404-20.714-14.643-29.828-20.582-56.241-20.582-18.864 0-30.736 4.72-38.852 4.72-8.073 0-11.213-4.922-12.422-9.04-2.703-9.189-4.404-21.263-6.523-24.13-20.679-3.209-67.31-11.344-68.498-32.15a10.627 10.627 0 0 1 8.877-11.069c69.583-11.455 100.924-82.901 102.227-85.934.074-.176.155-.344.237-.515 3.713-7.537 4.544-13.849 2.463-18.753-5.05-11.896-26.872-16.164-36.053-19.796-23.715-9.366-27.015-20.128-25.612-27.504 2.437-12.836 21.725-20.735 33.002-15.453 8.919 4.181 16.843 6.297 23.547 6.297 5.022 0 8.212-1.204 9.96-2.171-2.043-35.936-7.101-87.29 5.687-115.969C158.122 21.304 229.705 15.42 250.826 15.42c.944 0 9.141-.089 10.11-.089 52.148 0 102.254 26.78 126.723 81.643 12.777 28.65 7.749 79.792 5.695 116.009 1.582.872 4.357 1.942 8.599 2.139 6.397-.286 13.815-2.389 22.069-6.257 6.085-2.846 14.406-2.461 20.48.058l.029.01c9.476 3.385 15.439 10.215 15.589 17.87.184 9.747-8.522 18.165-25.878 25.018-2.118.835-4.694 1.655-7.434 2.525-9.797 3.106-24.6 7.805-28.616 17.271-2.079 4.904-1.256 11.211 2.46 18.748.087.168.166.342.239.515 1.301 3.03 32.615 74.46 102.23 85.934 6.427 1.058 11.163 7.877 7.725 15.859z\"]\n};\nvar faSnapchatSquare = {\n prefix: 'fab',\n iconName: 'snapchat-square',\n icon: [448, 512, [], \"f2ad\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6.5 314.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C159.1 100 206.7 96 220.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z\"]\n};\nvar faSoundcloud = {\n prefix: 'fab',\n iconName: 'soundcloud',\n icon: [640, 512, [], \"f1be\", \"M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2.8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1.6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7.6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3.1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z\"]\n};\nvar faSourcetree = {\n prefix: 'fab',\n iconName: 'sourcetree',\n icon: [448, 512, [], \"f7d3\", \"M427.2 203c0-112.1-90.9-203-203-203C112.1-.2 21.2 90.6 21 202.6A202.86 202.86 0 0 0 161.5 396v101.7a14.3 14.3 0 0 0 14.3 14.3h96.4a14.3 14.3 0 0 0 14.3-14.3V396.1A203.18 203.18 0 0 0 427.2 203zm-271.6 0c0-90.8 137.3-90.8 137.3 0-.1 89.9-137.3 91-137.3 0z\"]\n};\nvar faSpeakap = {\n prefix: 'fab',\n iconName: 'speakap',\n icon: [448, 512, [], \"f3f3\", \"M64 391.78C-15.41 303.59-8 167.42 80.64 87.64s224.8-73 304.21 15.24 72 224.36-16.64 304.14c-18.74 16.87 64 43.09 42 52.26-82.06 34.21-253.91 35-346.23-67.5zm213.31-211.6l38.5-40.86c-9.61-8.89-32-26.83-76.17-27.6-52.33-.91-95.86 28.3-96.77 80-.2 11.33.29 36.72 29.42 54.83 34.46 21.42 86.52 21.51 86 52.26-.37 21.28-26.42 25.81-38.59 25.6-3-.05-30.23-.46-47.61-24.62l-40 42.61c28.16 27 59 32.62 83.49 33.05 10.23.18 96.42.33 97.84-81 .28-15.81-2.07-39.72-28.86-56.59-34.36-21.64-85-19.45-84.43-49.75.41-23.25 31-25.37 37.53-25.26.43 0 26.62.26 39.62 17.37z\"]\n};\nvar faSpeakerDeck = {\n prefix: 'fab',\n iconName: 'speaker-deck',\n icon: [512, 512, [], \"f83c\", \"M213.86 296H100a100 100 0 0 1 0-200h132.84a40 40 0 0 1 0 80H98c-26.47 0-26.45 40 0 40h113.82a100 100 0 0 1 0 200H40a40 40 0 0 1 0-80h173.86c26.48 0 26.46-40 0-40zM298 416a120.21 120.21 0 0 0 51.11-80h64.55a19.83 19.83 0 0 0 19.66-20V196a19.83 19.83 0 0 0-19.66-20H296.42a60.77 60.77 0 0 0 0-80h136.93c43.44 0 78.65 35.82 78.65 80v160c0 44.18-35.21 80-78.65 80z\"]\n};\nvar faSpotify = {\n prefix: 'fab',\n iconName: 'spotify',\n icon: [496, 512, [], \"f1bc\", \"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z\"]\n};\nvar faSquarespace = {\n prefix: 'fab',\n iconName: 'squarespace',\n icon: [512, 512, [], \"f5be\", \"M186.12 343.34c-9.65 9.65-9.65 25.29 0 34.94 9.65 9.65 25.29 9.65 34.94 0L378.24 221.1c19.29-19.29 50.57-19.29 69.86 0s19.29 50.57 0 69.86L293.95 445.1c19.27 19.29 50.53 19.31 69.82.04l.04-.04 119.25-119.24c38.59-38.59 38.59-101.14 0-139.72-38.59-38.59-101.15-38.59-139.72 0l-157.22 157.2zm244.53-104.8c-9.65-9.65-25.29-9.65-34.93 0l-157.2 157.18c-19.27 19.29-50.53 19.31-69.82.05l-.05-.05c-9.64-9.64-25.27-9.65-34.92-.01l-.01.01c-9.65 9.64-9.66 25.28-.02 34.93l.02.02c38.58 38.57 101.14 38.57 139.72 0l157.2-157.2c9.65-9.65 9.65-25.29.01-34.93zm-261.99 87.33l157.18-157.18c9.64-9.65 9.64-25.29 0-34.94-9.64-9.64-25.27-9.64-34.91 0L133.72 290.93c-19.28 19.29-50.56 19.3-69.85.01l-.01-.01c-19.29-19.28-19.31-50.54-.03-69.84l.03-.03L218.03 66.89c-19.28-19.29-50.55-19.3-69.85-.02l-.02.02L28.93 186.14c-38.58 38.59-38.58 101.14 0 139.72 38.6 38.59 101.13 38.59 139.73.01zm-87.33-52.4c9.64 9.64 25.27 9.64 34.91 0l157.21-157.19c19.28-19.29 50.55-19.3 69.84-.02l.02.02c9.65 9.65 25.29 9.65 34.93 0 9.65-9.65 9.65-25.29 0-34.93-38.59-38.59-101.13-38.59-139.72 0L81.33 238.54c-9.65 9.64-9.65 25.28-.01 34.93h.01z\"]\n};\nvar faStackExchange = {\n prefix: 'fab',\n iconName: 'stack-exchange',\n icon: [448, 512, [], \"f18d\", \"M17.7 332.3h412.7v22c0 37.7-29.3 68-65.3 68h-19L259.3 512v-89.7H83c-36 0-65.3-30.3-65.3-68v-22zm0-23.6h412.7v-85H17.7v85zm0-109.4h412.7v-85H17.7v85zM365 0H83C47 0 17.7 30.3 17.7 67.7V90h412.7V67.7C430.3 30.3 401 0 365 0z\"]\n};\nvar faStackOverflow = {\n prefix: 'fab',\n iconName: 'stack-overflow',\n icon: [384, 512, [], \"f16c\", \"M290.7 311L95 269.7 86.8 309l195.7 41zm51-87L188.2 95.7l-25.5 30.8 153.5 128.3zm-31.2 39.7L129.2 179l-16.7 36.5L293.7 300zM262 32l-32 24 119.3 160.3 32-24zm20.5 328h-200v39.7h200zm39.7 80H42.7V320h-40v160h359.5V320h-40z\"]\n};\nvar faStackpath = {\n prefix: 'fab',\n iconName: 'stackpath',\n icon: [448, 512, [], \"f842\", \"M244.6 232.4c0 8.5-4.26 20.49-21.34 20.49h-19.61v-41.47h19.61c17.13 0 21.34 12.36 21.34 20.98zM448 32v448H0V32zM151.3 287.84c0-21.24-12.12-34.54-46.72-44.85-20.57-7.41-26-10.91-26-18.63s7-14.61 20.41-14.61c14.09 0 20.79 8.45 20.79 18.35h30.7l.19-.57c.5-19.57-15.06-41.65-51.12-41.65-23.37 0-52.55 10.75-52.55 38.29 0 19.4 9.25 31.29 50.74 44.37 17.26 6.15 21.91 10.4 21.91 19.48 0 15.2-19.13 14.23-19.47 14.23-20.4 0-25.65-9.1-25.65-21.9h-30.8l-.18.56c-.68 31.32 28.38 45.22 56.63 45.22 29.98 0 51.12-13.55 51.12-38.29zm125.38-55.63c0-25.3-18.43-45.46-53.42-45.46h-51.78v138.18h32.17v-47.36h19.61c30.25 0 53.42-15.95 53.42-45.36zM297.94 325L347 186.78h-31.09L268 325zm106.52-138.22h-31.09L325.46 325h29.94z\"]\n};\nvar faStaylinked = {\n prefix: 'fab',\n iconName: 'staylinked',\n icon: [440, 512, [], \"f3f5\", \"M382.7 292.5l2.7 2.7-170-167.3c-3.5-3.5-9.7-3.7-13.8-.5L144.3 171c-4.2 3.2-4.6 8.7-1.1 12.2l68.1 64.3c3.6 3.5 9.9 3.7 14 .5l.1-.1c4.1-3.2 10.4-3 14 .5l84 81.3c3.6 3.5 3.2 9-.9 12.2l-93.2 74c-4.2 3.3-10.5 3.1-14.2-.4L63.2 268c-3.5-3.5-9.7-3.7-13.9-.5L3.5 302.4c-4.2 3.2-4.7 8.7-1.2 12.2L211 510.7s7.4 6.8 17.3-.8l198-163.9c4-3.2 4.4-8.7.7-12.2zm54.5-83.4L226.7 2.5c-1.5-1.2-8-5.5-16.3 1.1L3.6 165.7c-4.2 3.2-4.8 8.7-1.2 12.2l42.3 41.7 171.7 165.1c3.7 3.5 10.1 3.7 14.3.4l50.2-38.8-.3-.3 7.7-6c4.2-3.2 4.6-8.7.9-12.2l-57.1-54.4c-3.6-3.5-10-3.7-14.2-.5l-.1.1c-4.2 3.2-10.5 3.1-14.2-.4L109 180.8c-3.6-3.5-3.1-8.9 1.1-12.2l92.2-71.5c4.1-3.2 10.3-3 13.9.5l160.4 159c3.7 3.5 10 3.7 14.1.5l45.8-35.8c4.1-3.2 4.4-8.7.7-12.2z\"]\n};\nvar faSteam = {\n prefix: 'fab',\n iconName: 'steam',\n icon: [496, 512, [], \"f1b6\", \"M496 256c0 137-111.2 248-248.4 248-113.8 0-209.6-76.3-239-180.4l95.2 39.3c6.4 32.1 34.9 56.4 68.9 56.4 39.2 0 71.9-32.4 70.2-73.5l84.5-60.2c52.1 1.3 95.8-40.9 95.8-93.5 0-51.6-42-93.5-93.7-93.5s-93.7 42-93.7 93.5v1.2L176.6 279c-15.5-.9-30.7 3.4-43.5 12.1L0 236.1C10.2 108.4 117.1 8 247.6 8 384.8 8 496 119 496 256zM155.7 384.3l-30.5-12.6a52.79 52.79 0 0 0 27.2 25.8c26.9 11.2 57.8-1.6 69-28.4 5.4-13 5.5-27.3.1-40.3-5.4-13-15.5-23.2-28.5-28.6-12.9-5.4-26.7-5.2-38.9-.6l31.5 13c19.8 8.2 29.2 30.9 20.9 50.7-8.3 19.9-31 29.2-50.8 21zm173.8-129.9c-34.4 0-62.4-28-62.4-62.3s28-62.3 62.4-62.3 62.4 28 62.4 62.3-27.9 62.3-62.4 62.3zm.1-15.6c25.9 0 46.9-21 46.9-46.8 0-25.9-21-46.8-46.9-46.8s-46.9 21-46.9 46.8c.1 25.8 21.1 46.8 46.9 46.8z\"]\n};\nvar faSteamSquare = {\n prefix: 'fab',\n iconName: 'steam-square',\n icon: [448, 512, [], \"f1b7\", \"M185.2 356.5c7.7-18.5-1-39.7-19.6-47.4l-29.5-12.2c11.4-4.3 24.3-4.5 36.4.5 12.2 5.1 21.6 14.6 26.7 26.7 5 12.2 5 25.6-.1 37.7-10.5 25.1-39.4 37-64.6 26.5-11.6-4.8-20.4-13.6-25.4-24.2l28.5 11.8c18.6 7.8 39.9-.9 47.6-19.4zM400 32H48C21.5 32 0 53.5 0 80v160.7l116.6 48.1c12-8.2 26.2-12.1 40.7-11.3l55.4-80.2v-1.1c0-48.2 39.3-87.5 87.6-87.5s87.6 39.3 87.6 87.5c0 49.2-40.9 88.7-89.6 87.5l-79 56.3c1.6 38.5-29.1 68.8-65.7 68.8-31.8 0-58.5-22.7-64.5-52.7L0 319.2V432c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-99.7 222.5c-32.2 0-58.4-26.1-58.4-58.3s26.2-58.3 58.4-58.3 58.4 26.2 58.4 58.3-26.2 58.3-58.4 58.3zm.1-14.6c24.2 0 43.9-19.6 43.9-43.8 0-24.2-19.6-43.8-43.9-43.8-24.2 0-43.9 19.6-43.9 43.8 0 24.2 19.7 43.8 43.9 43.8z\"]\n};\nvar faSteamSymbol = {\n prefix: 'fab',\n iconName: 'steam-symbol',\n icon: [448, 512, [], \"f3f6\", \"M395.5 177.5c0 33.8-27.5 61-61 61-33.8 0-61-27.3-61-61s27.3-61 61-61c33.5 0 61 27.2 61 61zm52.5.2c0 63-51 113.8-113.7 113.8L225 371.3c-4 43-40.5 76.8-84.5 76.8-40.5 0-74.7-28.8-83-67L0 358V250.7L97.2 290c15.1-9.2 32.2-13.3 52-11.5l71-101.7c.5-62.3 51.5-112.8 114-112.8C397 64 448 115 448 177.7zM203 363c0-34.7-27.8-62.5-62.5-62.5-4.5 0-9 .5-13.5 1.5l26 10.5c25.5 10.2 38 39 27.7 64.5-10.2 25.5-39.2 38-64.7 27.5-10.2-4-20.5-8.3-30.7-12.2 10.5 19.7 31.2 33.2 55.2 33.2 34.7 0 62.5-27.8 62.5-62.5zm207.5-185.3c0-42-34.3-76.2-76.2-76.2-42.3 0-76.5 34.2-76.5 76.2 0 42.2 34.3 76.2 76.5 76.2 41.9.1 76.2-33.9 76.2-76.2z\"]\n};\nvar faStickerMule = {\n prefix: 'fab',\n iconName: 'sticker-mule',\n icon: [576, 512, [], \"f3f7\", \"M561.7 199.6c-1.3.3.3 0 0 0zm-6.2-77.4c-7.7-22.3-5.1-7.2-13.4-36.9-1.6-6.5-3.6-14.5-6.2-20-4.4-8.7-4.6-7.5-4.6-9.5 0-5.3 30.7-45.3 19-46.9-5.7-.6-12.2 11.6-20.6 17-8.6 4.2-8 5-10.3 5-2.6 0-5.7-3-6.2-5-2-5.7 1.9-25.9-3.6-25.9-3.6 0-12.3 24.8-17 25.8-5.2 1.3-27.9-11.4-75.1 18-25.3 13.2-86.9 65.2-87 65.3-6.7 4.7-20 4.7-35.5 16-44.4 30.1-109.6 9.4-110.7 9-110.6-26.8-128-15.2-159 11.5-20.8 17.9-23.7 36.5-24.2 38.9-4.2 20.4 5.2 48.3 6.7 64.3 1.8 19.3-2.7 17.7 7.7 98.3.5 1 4.1 0 5.1 1.5 0 8.4-3.8 12.1-4.1 13-1.5 4.5-1.5 10.5 0 16 2.3 8.2 8.2 37.2 8.2 46.9 0 41.8.4 44 2.6 49.4 3.9 10 12.5 9.1 17 12 3.1 3.5-.5 8.5 1 12.5.5 2 3.6 4 6.2 5 9.2 3.6 27 .3 29.9-2.5 1.6-1.5.5-4.5 3.1-5 5.1 0 10.8-.5 14.4-2.5 5.1-2.5 4.1-6 1.5-10.5-.4-.8-7-13.3-9.8-16-2.1-2-5.1-3-7.2-4.5-5.8-4.9-10.3-19.4-10.3-19.5-4.6-19.4-10.3-46.3-4.1-66.8 4.6-17.2 39.5-87.7 39.6-87.8 4.1-6.5 17-11.5 27.3-7 6 1.9 19.3 22 65.4 30.9 47.9 8.7 97.4-2 112.2-2 2.8 2-1.9 13-.5 38.9 0 26.4-.4 13.7-4.1 29.9-2.2 9.7 3.4 23.2-1.5 46.9-1.4 9.8-9.9 32.7-8.2 43.4.5 1 1 2 1.5 3.5.5 4.5 1.5 8.5 4.6 10 7.3 3.6 12-3.5 9.8 11.5-.7 3.1-2.6 12 1.5 15 4.4 3.7 30.6 3.4 36.5.5 2.6-1.5 1.6-4.5 6.4-7.4 1.9-.9 11.3-.4 11.3-6.5.3-1.8-9.2-19.9-9.3-20-2.6-3.5-9.2-4.5-11.3-8-6.9-10.1-1.7-52.6.5-59.4 3-11 5.6-22.4 8.7-32.4 11-42.5 10.3-50.6 16.5-68.3.8-1.8 6.4-23.1 10.3-29.9 9.3-17 21.7-32.4 33.5-47.4 18-22.9 34-46.9 52-69.8 6.1-7 8.2-13.7 18-8 10.8 5.7 21.6 7 31.9 17 14.6 12.8 10.2 18.2 11.8 22.9 1.5 5 7.7 10.5 14.9 9.5 10.4-2 13-2.5 13.4-2.5 2.6-.5 5.7-5 7.2-8 3.1-5.5 7.2-9 7.2-16.5 0-7.7-.4-2.8-20.6-52.9z\"]\n};\nvar faStrava = {\n prefix: 'fab',\n iconName: 'strava',\n icon: [384, 512, [], \"f428\", \"M158.4 0L7 292h89.2l62.2-116.1L220.1 292h88.5zm150.2 292l-43.9 88.2-44.6-88.2h-67.6l112.2 220 111.5-220z\"]\n};\nvar faStripe = {\n prefix: 'fab',\n iconName: 'stripe',\n icon: [640, 512, [], \"f429\", \"M165 144.7l-43.3 9.2-.2 142.4c0 26.3 19.8 43.3 46.1 43.3 14.6 0 25.3-2.7 31.2-5.9v-33.8c-5.7 2.3-33.7 10.5-33.7-15.7V221h33.7v-37.8h-33.7zm89.1 51.6l-2.7-13.1H213v153.2h44.3V233.3c10.5-13.8 28.2-11.1 33.9-9.3v-40.8c-6-2.1-26.7-6-37.1 13.1zm92.3-72.3l-44.6 9.5v36.2l44.6-9.5zM44.9 228.3c0-6.9 5.8-9.6 15.1-9.7 13.5 0 30.7 4.1 44.2 11.4v-41.8c-14.7-5.8-29.4-8.1-44.1-8.1-36 0-60 18.8-60 50.2 0 49.2 67.5 41.2 67.5 62.4 0 8.2-7.1 10.9-17 10.9-14.7 0-33.7-6.1-48.6-14.2v40c16.5 7.1 33.2 10.1 48.5 10.1 36.9 0 62.3-15.8 62.3-47.8 0-52.9-67.9-43.4-67.9-63.4zM640 261.6c0-45.5-22-81.4-64.2-81.4s-67.9 35.9-67.9 81.1c0 53.5 30.3 78.2 73.5 78.2 21.2 0 37.1-4.8 49.2-11.5v-33.4c-12.1 6.1-26 9.8-43.6 9.8-17.3 0-32.5-6.1-34.5-26.9h86.9c.2-2.3.6-11.6.6-15.9zm-87.9-16.8c0-20 12.3-28.4 23.4-28.4 10.9 0 22.5 8.4 22.5 28.4zm-112.9-64.6c-17.4 0-28.6 8.2-34.8 13.9l-2.3-11H363v204.8l44.4-9.4.1-50.2c6.4 4.7 15.9 11.2 31.4 11.2 31.8 0 60.8-23.2 60.8-79.6.1-51.6-29.3-79.7-60.5-79.7zm-10.6 122.5c-10.4 0-16.6-3.8-20.9-8.4l-.3-66c4.6-5.1 11-8.8 21.2-8.8 16.2 0 27.4 18.2 27.4 41.4.1 23.9-10.9 41.8-27.4 41.8zm-126.7 33.7h44.6V183.2h-44.6z\"]\n};\nvar faStripeS = {\n prefix: 'fab',\n iconName: 'stripe-s',\n icon: [384, 512, [], \"f42a\", \"M155.3 154.6c0-22.3 18.6-30.9 48.4-30.9 43.4 0 98.5 13.3 141.9 36.7V26.1C298.3 7.2 251.1 0 203.8 0 88.1 0 11 60.4 11 161.4c0 157.9 216.8 132.3 216.8 200.4 0 26.4-22.9 34.9-54.7 34.9-47.2 0-108.2-19.5-156.1-45.5v128.5a396.09 396.09 0 0 0 156 32.4c118.6 0 200.3-51 200.3-153.6 0-170.2-218-139.7-218-203.9z\"]\n};\nvar faStudiovinari = {\n prefix: 'fab',\n iconName: 'studiovinari',\n icon: [512, 512, [], \"f3f8\", \"M480.3 187.7l4.2 28v28l-25.1 44.1-39.8 78.4-56.1 67.5-79.1 37.8-17.7 24.5-7.7 12-9.6 4s17.3-63.6 19.4-63.6c2.1 0 20.3.7 20.3.7l66.7-38.6-92.5 26.1-55.9 36.8-22.8 28-6.6 1.4 20.8-73.6 6.9-5.5 20.7 12.9 88.3-45.2 56.8-51.5 14.8-68.4-125.4 23.3 15.2-18.2-173.4-53.3 81.9-10.5-166-122.9L133.5 108 32.2 0l252.9 126.6-31.5-38L378 163 234.7 64l18.7 38.4-49.6-18.1L158.3 0l194.6 122L310 66.2l108 96.4 12-8.9-21-16.4 4.2-37.8L451 89.1l29.2 24.7 11.5 4.2-7 6.2 8.5 12-13.1 7.4-10.3 20.2 10.5 23.9z\"]\n};\nvar faStumbleupon = {\n prefix: 'fab',\n iconName: 'stumbleupon',\n icon: [512, 512, [], \"f1a4\", \"M502.9 266v69.7c0 62.1-50.3 112.4-112.4 112.4-61.8 0-112.4-49.8-112.4-111.3v-70.2l34.3 16 51.1-15.2V338c0 14.7 12 26.5 26.7 26.5S417 352.7 417 338v-72h85.9zm-224.7-58.2l34.3 16 51.1-15.2V173c0-60.5-51.1-109-112.1-109-60.8 0-112.1 48.2-112.1 108.2v162.4c0 14.9-12 26.7-26.7 26.7S86 349.5 86 334.6V266H0v69.7C0 397.7 50.3 448 112.4 448c61.6 0 112.4-49.5 112.4-110.8V176.9c0-14.7 12-26.7 26.7-26.7s26.7 12 26.7 26.7v30.9z\"]\n};\nvar faStumbleuponCircle = {\n prefix: 'fab',\n iconName: 'stumbleupon-circle',\n icon: [496, 512, [], \"f1a3\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 177.5c-9.8 0-17.8 8-17.8 17.8v106.9c0 40.9-33.9 73.9-74.9 73.9-41.4 0-74.9-33.5-74.9-74.9v-46.5h57.3v45.8c0 10 8 17.8 17.8 17.8s17.8-7.9 17.8-17.8V200.1c0-40 34.2-72.1 74.7-72.1 40.7 0 74.7 32.3 74.7 72.6v23.7l-34.1 10.1-22.9-10.7v-20.6c.1-9.6-7.9-17.6-17.7-17.6zm167.6 123.6c0 41.4-33.5 74.9-74.9 74.9-41.2 0-74.9-33.2-74.9-74.2V263l22.9 10.7 34.1-10.1v47.1c0 9.8 8 17.6 17.8 17.6s17.8-7.9 17.8-17.6v-48h57.3c-.1 45.9-.1 46.4-.1 46.4z\"]\n};\nvar faSuperpowers = {\n prefix: 'fab',\n iconName: 'superpowers',\n icon: [448, 512, [], \"f2dd\", \"M448 32c-83.3 11-166.8 22-250 33-92 12.5-163.3 86.7-169 180-3.3 55.5 18 109.5 57.8 148.2L0 480c83.3-11 166.5-22 249.8-33 91.8-12.5 163.3-86.8 168.7-179.8 3.5-55.5-18-109.5-57.7-148.2L448 32zm-79.7 232.3c-4.2 79.5-74 139.2-152.8 134.5-79.5-4.7-140.7-71-136.3-151 4.5-79.2 74.3-139.3 153-134.5 79.3 4.7 140.5 71 136.1 151z\"]\n};\nvar faSupple = {\n prefix: 'fab',\n iconName: 'supple',\n icon: [640, 512, [], \"f3f9\", \"M640 262.5c0 64.1-109 116.1-243.5 116.1-24.8 0-48.6-1.8-71.1-5 7.7.4 15.5.6 23.4.6 134.5 0 243.5-56.9 243.5-127.1 0-29.4-19.1-56.4-51.2-78 60 21.1 98.9 55.1 98.9 93.4zM47.7 227.9c-.1-70.2 108.8-127.3 243.3-127.6 7.9 0 15.6.2 23.3.5-22.5-3.2-46.3-4.9-71-4.9C108.8 96.3-.1 148.5 0 212.6c.1 38.3 39.1 72.3 99.3 93.3-32.3-21.5-51.5-48.6-51.6-78zm60.2 39.9s10.5 13.2 29.3 13.2c17.9 0 28.4-11.5 28.4-25.1 0-28-40.2-25.1-40.2-39.7 0-5.4 5.3-9.1 12.5-9.1 5.7 0 11.3 2.6 11.3 6.6v3.9h14.2v-7.9c0-12.1-15.4-16.8-25.4-16.8-16.5 0-28.5 10.2-28.5 24.1 0 26.6 40.2 25.4 40.2 39.9 0 6.6-5.8 10.1-12.3 10.1-11.9 0-20.7-10.1-20.7-10.1l-8.8 10.9zm120.8-73.6v54.4c0 11.3-7.1 17.8-17.8 17.8-10.7 0-17.8-6.5-17.8-17.7v-54.5h-15.8v55c0 18.9 13.4 31.9 33.7 31.9 20.1 0 33.4-13 33.4-31.9v-55h-15.7zm34.4 85.4h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.8-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5.1 14.7-14 14.7h-12.6zm57 43h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.7-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5 14.7-14 14.7h-12.6zm57.1 34.8c0 5.8 2.4 8.2 8.2 8.2h37.6c5.8 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-18.6c-1.7 0-2.6-1-2.6-2.6v-61.2c0-5.7-2.4-8.2-8.2-8.2H401v13.4h5.2c1.7 0 2.6 1 2.6 2.6v61.2zm63.4 0c0 5.8 2.4 8.2 8.2 8.2H519c5.7 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-19.7c-1.7 0-2.6-1-2.6-2.6v-20.3h27.7v-13.4H488v-22.4h19.2c1.7 0 2.6 1 2.6 2.6v5.2H524v-13c0-5.7-2.5-8.2-8.2-8.2h-51.6v13.4h7.8v63.9zm58.9-76v5.9h1.6v-5.9h2.7v-1.2h-7v1.2h2.7zm5.7-1.2v7.1h1.5v-5.7l2.3 5.7h1.3l2.3-5.7v5.7h1.5v-7.1h-2.3l-2.1 5.1-2.1-5.1h-2.4z\"]\n};\nvar faSuse = {\n prefix: 'fab',\n iconName: 'suse',\n icon: [640, 512, [], \"f7d6\", \"M471.08 102.66s-.3 18.3-.3 20.3c-9.1-3-74.4-24.1-135.7-26.3-51.9-1.8-122.8-4.3-223 57.3-19.4 12.4-73.9 46.1-99.6 109.7C7 277-.12 307 7 335.06a111 111 0 0 0 16.5 35.7c17.4 25 46.6 41.6 78.1 44.4 44.4 3.9 78.1-16 90-53.3 8.2-25.8 0-63.6-31.5-82.9-25.6-15.7-53.3-12.1-69.2-1.6-13.9 9.2-21.8 23.5-21.6 39.2.3 27.8 24.3 42.6 41.5 42.6a49 49 0 0 0 15.8-2.7c6.5-1.8 13.3-6.5 13.3-14.9 0-12.1-11.6-14.8-16.8-13.9-2.9.5-4.5 2-11.8 2.4-2-.2-12-3.1-12-14V316c.2-12.3 13.2-18 25.5-16.9 32.3 2.8 47.7 40.7 28.5 65.7-18.3 23.7-76.6 23.2-99.7-20.4-26-49.2 12.7-111.2 87-98.4 33.2 5.7 83.6 35.5 102.4 104.3h45.9c-5.7-17.6-8.9-68.3 42.7-68.3 56.7 0 63.9 39.9 79.8 68.3H460c-12.8-18.3-21.7-38.7-18.9-55.8 5.6-33.8 39.7-18.4 82.4-17.4 66.5.4 102.1-27 103.1-28 3.7-3.1 6.5-15.8 7-17.7 1.3-5.1-3.2-2.4-3.2-2.4-8.7 5.2-30.5 15.2-50.9 15.6-25.3.5-76.2-25.4-81.6-28.2-.3-.4.1 1.2-11-25.5 88.4 58.3 118.3 40.5 145.2 21.7.8-.6 4.3-2.9 3.6-5.7-13.8-48.1-22.4-62.7-34.5-69.6-37-21.6-125-34.7-129.2-35.3.1-.1-.9-.3-.9.7zm60.4 72.8a37.54 37.54 0 0 1 38.9-36.3c33.4 1.2 48.8 42.3 24.4 65.2-24.2 22.7-64.4 4.6-63.3-28.9zm38.6-25.3a26.27 26.27 0 1 0 25.4 27.2 26.19 26.19 0 0 0-25.4-27.2zm4.3 28.8c-15.4 0-15.4-15.6 0-15.6s15.4 15.64 0 15.64z\"]\n};\nvar faSwift = {\n prefix: 'fab',\n iconName: 'swift',\n icon: [448, 512, [], \"f8e1\", \"M448 156.09c0-4.51-.08-9-.2-13.52a196.31 196.31 0 0 0-2.58-29.42 99.62 99.62 0 0 0-9.22-28A94.08 94.08 0 0 0 394.84 44a99.17 99.17 0 0 0-28-9.22 195 195 0 0 0-29.43-2.59c-4.51-.12-9-.17-13.52-.2H124.14c-4.51 0-9 .08-13.52.2-2.45.07-4.91.15-7.37.27a171.68 171.68 0 0 0-22.06 2.32 103.06 103.06 0 0 0-21.21 6.1q-3.46 1.45-6.81 3.12a94.66 94.66 0 0 0-18.39 12.32c-1.88 1.61-3.69 3.28-5.43 5A93.86 93.86 0 0 0 12 85.17a99.45 99.45 0 0 0-9.22 28 196.31 196.31 0 0 0-2.54 29.4c-.13 4.51-.18 9-.21 13.52v199.83c0 4.51.08 9 .21 13.51a196.08 196.08 0 0 0 2.58 29.42 99.3 99.3 0 0 0 9.22 28A94.31 94.31 0 0 0 53.17 468a99.47 99.47 0 0 0 28 9.21 195 195 0 0 0 29.43 2.59c4.5.12 9 .17 13.52.2H323.91c4.51 0 9-.08 13.52-.2a196.59 196.59 0 0 0 29.44-2.59 99.57 99.57 0 0 0 28-9.21A94.22 94.22 0 0 0 436 426.84a99.3 99.3 0 0 0 9.22-28 194.79 194.79 0 0 0 2.59-29.42c.12-4.5.17-9 .2-13.51V172.14c-.01-5.35-.01-10.7-.01-16.05zm-69.88 241c-20-38.93-57.23-29.27-76.31-19.47-1.72 1-3.48 2-5.25 3l-.42.25c-39.5 21-92.53 22.54-145.85-.38A234.64 234.64 0 0 1 45 290.12a230.63 230.63 0 0 0 39.17 23.37c56.36 26.4 113 24.49 153 0-57-43.85-104.6-101-141.09-147.22a197.09 197.09 0 0 1-18.78-25.9c43.7 40 112.7 90.22 137.48 104.12-52.57-55.49-98.89-123.94-96.72-121.74 82.79 83.42 159.18 130.59 159.18 130.59 2.88 1.58 5 2.85 6.73 4a127.44 127.44 0 0 0 4.16-12.47c13.22-48.33-1.66-103.58-35.31-149.2C329.61 141.75 375 229.34 356.4 303.42c-.44 1.73-.95 3.4-1.44 5.09 38.52 47.4 28.04 98.17 23.13 88.59z\"]\n};\nvar faSymfony = {\n prefix: 'fab',\n iconName: 'symfony',\n icon: [512, 512, [], \"f83d\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm133.74 143.54c-11.47.41-19.4-6.45-19.77-16.87-.27-9.18 6.68-13.44 6.53-18.85-.23-6.55-10.16-6.82-12.87-6.67-39.78 1.29-48.59 57-58.89 113.85 21.43 3.15 36.65-.72 45.14-6.22 12-7.75-3.34-15.72-1.42-24.56 4-18.16 32.55-19 32 5.3-.36 17.86-25.92 41.81-77.6 35.7-10.76 59.52-18.35 115-58.2 161.72-29 34.46-58.4 39.82-71.58 40.26-24.65.85-41-12.31-41.58-29.84-.56-17 14.45-26.26 24.31-26.59 21.89-.75 30.12 25.67 14.88 34-12.09 9.71.11 12.61 2.05 12.55 10.42-.36 17.34-5.51 22.18-9 24-20 33.24-54.86 45.35-118.35 8.19-49.66 17-78 18.23-82-16.93-12.75-27.08-28.55-49.85-34.72-15.61-4.23-25.12-.63-31.81 7.83-7.92 10-5.29 23 2.37 30.7l12.63 14c15.51 17.93 24 31.87 20.8 50.62-5.06 29.93-40.72 52.9-82.88 39.94-36-11.11-42.7-36.56-38.38-50.62 7.51-24.15 42.36-11.72 34.62 13.6-2.79 8.6-4.92 8.68-6.28 13.07-4.56 14.77 41.85 28.4 51-1.39 4.47-14.52-5.3-21.71-22.25-39.85-28.47-31.75-16-65.49 2.95-79.67C204.23 140.13 251.94 197 262 205.29c37.17-109 100.53-105.46 102.43-105.53 25.16-.81 44.19 10.59 44.83 28.65.25 7.69-4.17 22.59-19.52 23.13z\"]\n};\nvar faTeamspeak = {\n prefix: 'fab',\n iconName: 'teamspeak',\n icon: [512, 512, [], \"f4f9\", \"M244.2 346.79c2.4-12.3-12-30-32.4-48.7-20.9-19.2-48.2-39.1-63.4-46.6-21.7-12-41.7-1.8-46.3 22.7-5 26.2 0 51.4 14.5 73.9 10.2 15.5 25.4 22.7 43.4 24 11.6.6 52.5 2.2 61.7-1 11.9-4.3 20.1-11.8 22.5-24.3zm205 20.8a5.22 5.22 0 0 0-8.3 2.4c-8 25.4-44.7 112.5-172.1 121.5-149.7 10.5 80.3 43.6 145.4-6.4 22.7-17.4 47.6-35 46.6-85.4-.4-10.1-4.9-26.69-11.6-32.1zm62-122.4c-.3-18.9-8.6-33.4-26-42.2-2.9-1.3-5-2.7-5.9-6.4A222.64 222.64 0 0 0 438.9 103c-1.1-1.5-3.5-3.2-2.2-5 8.5-11.5-.3-18-7-24.4Q321.4-31.11 177.4 13.09c-40.1 12.3-73.9 35.6-102 67.4-4 4.3-6.7 9.1-3 14.5 3 4 1.3 6.2-1 9.3C51.6 132 38.2 162.59 32.1 196c-.7 4.3-2.9 6-6.4 7.8-14.2 7-22.5 18.5-24.9 34L0 264.29v20.9c0 30.8 21 50.4 51.8 49 7.7-.3 11.7-4.3 12-11.5 2-77.5-2.4-95.4 3.7-125.8C92.1 72.39 234.3 5 345.3 65.39 411.4 102 445.7 159 447.6 234.79c.8 28.2 0 56.5 0 84.6 0 7 2.2 12.5 9.4 14.2 24.1 5 49.2-12 53.2-36.7 2.9-17.1 1-34.5 1-51.7zm-159.6 131.5c36.5 2.8 59.3-28.5 58.4-60.5-2.1-45.2-66.2-16.5-87.8-8-73.2 28.1-45 54.9-22.2 60.8z\"]\n};\nvar faTelegram = {\n prefix: 'fab',\n iconName: 'telegram',\n icon: [496, 512, [], \"f2c6\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm121.8 169.9l-40.7 191.8c-3 13.6-11.1 16.9-22.4 10.5l-62-45.7-29.9 28.8c-3.3 3.3-6.1 6.1-12.5 6.1l4.4-63.1 114.9-103.8c5-4.4-1.1-6.9-7.7-2.5l-142 89.4-61.2-19.1c-13.3-4.2-13.6-13.3 2.8-19.7l239.1-92.2c11.1-4 20.8 2.7 17.2 19.5z\"]\n};\nvar faTelegramPlane = {\n prefix: 'fab',\n iconName: 'telegram-plane',\n icon: [448, 512, [], \"f3fe\", \"M446.7 98.6l-67.6 318.8c-5.1 22.5-18.4 28.1-37.3 17.5l-103-75.9-49.7 47.8c-5.5 5.5-10.1 10.1-20.7 10.1l7.4-104.9 190.9-172.5c8.3-7.4-1.8-11.5-12.9-4.1L117.8 284 16.2 252.2c-22.1-6.9-22.5-22.1 4.6-32.7L418.2 66.4c18.4-6.9 34.5 4.1 28.5 32.2z\"]\n};\nvar faTencentWeibo = {\n prefix: 'fab',\n iconName: 'tencent-weibo',\n icon: [384, 512, [], \"f1d5\", \"M72.3 495.8c1.4 19.9-27.6 22.2-29.7 2.9C31 368.8 73.7 259.2 144 185.5c-15.6-34 9.2-77.1 50.6-77.1 30.3 0 55.1 24.6 55.1 55.1 0 44-49.5 70.8-86.9 45.1-65.7 71.3-101.4 169.8-90.5 287.2zM192 .1C66.1.1-12.3 134.3 43.7 242.4 52.4 259.8 79 246.9 70 229 23.7 136.4 91 29.8 192 29.8c75.4 0 136.9 61.4 136.9 136.9 0 90.8-86.9 153.9-167.7 133.1-19.1-4.1-25.6 24.4-6.6 29.1 110.7 23.2 204-60 204-162.3C358.6 74.7 284 .1 192 .1z\"]\n};\nvar faTheRedYeti = {\n prefix: 'fab',\n iconName: 'the-red-yeti',\n icon: [512, 512, [], \"f69d\", \"M488.23 241.7l20.7 7.1c-9.6-23.9-23.9-37-31.7-44.8l7.1-18.2c.2 0 12.3-27.8-2.5-30.7-.6-11.3-6.6-27-18.4-27-7.6-10.6-17.7-12.3-30.7-5.9a122.2 122.2 0 0 0-25.3 16.5c-5.3-6.4-3 .4-3-29.8-37.1-24.3-45.4-11.7-74.8 3l.5.5a239.36 239.36 0 0 0-68.4-13.3c-5.5-8.7-18.6-19.1-25.1-25.1l24.8 7.1c-5.5-5.5-26.8-12.9-34.2-15.2 18.2-4.1 29.8-20.8 42.5-33-34.9-10.1-67.9-5.9-97.9 11.8l12-44.2L182 0c-31.6 24.2-33 41.9-33.7 45.5-.9-2.4-6.3-19.6-15.2-27a35.12 35.12 0 0 0-.5 25.3c3 8.4 5.9 14.8 8.4 18.9-16-3.3-28.3-4.9-49.2 0h-3.7l33 14.3a194.26 194.26 0 0 0-46.7 67.4l-1.7 8.4 1.7 1.7 7.6-4.7c-3.3 11.6-5.3 19.4-6.6 25.8a200.18 200.18 0 0 0-27.8 40.3c-15 1-31.8 10.8-40.3 14.3l3 3.4 28.8 1c-.5 1-.7 2.2-1.2 3.2-7.3 6.4-39.8 37.7-33 80.7l20.2-22.4c.5 1.7.7 3.4 1.2 5.2 0 25.5.4 89.6 64.9 150.5 43.6 40 96 60.2 157.5 60.2 121.7 0 223-87.3 223-211.5 6.8-9.7-1.2 3 16.7-25.1l13 14.3 2.5-.5A181.84 181.84 0 0 0 495 255a44.74 44.74 0 0 0-6.8-13.3zM398 111.2l-.5 21.9c5.5 18.1 16.9 17.2 22.4 17.2l-3.4-4.7 22.4-5.4a242.44 242.44 0 0 1-27 0c12.8-2.1 33.3-29 43-11.3 3.4 7.6 6.4 17.2 9.3 27.8l1.7-5.9a56.38 56.38 0 0 1-1.7-15.2c5.4.5 8.8 3.4 9.3 10.1.5 6.4 1.7 14.8 3.4 25.3l4.7-11.3c4.6 0 4.5-3.6-2.5 20.7-20.9-8.7-35.1-8.4-46.5-8.4l18.2-16c-25.3 8.2-33 10.8-54.8 20.9-1.1-5.4-5-13.5-16-19.9-3.2 3.8-2.8.9-.7 14.8h-2.5a62.32 62.32 0 0 0-8.4-23.1l4.2-3.4c8.4-7.1 11.8-14.3 10.6-21.9-.5-6.4-5.4-13.5-13.5-20.7 5.6-3.4 15.2-.4 28.3 8.5zm-39.6-10.1c2.7 1.9 11.4 5.4 18.9 17.2 4.2 8.4 4 9.8 3.4 11.1-.5 2.4-.5 4.3-3 7.1-1.7 2.5-5.4 4.7-11.8 7.6-7.6-13-16.5-23.6-27.8-31.2zM91 143.1l1.2-1.7c1.2-2.9 4.2-7.6 9.3-15.2l2.5-3.4-13 12.3 5.4-4.7-10.1 9.3-4.2 1.2c12.3-24.1 23.1-41.3 32.5-50.2 9.3-9.3 16-16 20.2-19.4l-6.4 1.2c-11.3-4.2-19.4-7.1-24.8-8.4 2.5-.5 3.7-.5 3.2-.5 10.3 0 17.5.5 20.9 1.2a52.35 52.35 0 0 0 16 2.5l.5-1.7-8.4-35.8 13.5 29a42.89 42.89 0 0 0 5.9-14.3c1.7-6.4 5.4-13 10.1-19.4s7.6-10.6 9.3-11.3a234.68 234.68 0 0 0-6.4 25.3l-1.7 7.1-.5 4.7 2.5 2.5C190.4 39.9 214 34 239.8 34.5l21.1.5c-11.8 13.5-27.8 21.9-48.5 24.8a201.26 201.26 0 0 1-23.4 2.9l-.2-.5-2.5-1.2a20.75 20.75 0 0 0-14 2c-2.5-.2-4.9-.5-7.1-.7l-2.5 1.7.5 1.2c2 .2 3.9.5 6.2.7l-2 3.4 3.4-.5-10.6 11.3c-4.2 3-5.4 6.4-4.2 9.3l5.4-3.4h1.2a39.4 39.4 0 0 1 25.3-15.2v-3c6.4.5 13 1 19.4 1.2 6.4 0 8.4.5 5.4 1.2a189.6 189.6 0 0 1 20.7 13.5c13.5 10.1 23.6 21.9 30 35.4 8.8 18.2 13.5 37.1 13.5 56.6a141.13 141.13 0 0 1-3 28.3 209.91 209.91 0 0 1-16 46l2.5.5c18.2-19.7 41.9-16 49.2-16l-6.4 5.9 22.4 17.7-1.7 30.7c-5.4-12.3-16.5-21.1-33-27.8 16.5 14.8 23.6 21.1 21.9 20.2-4.8-2.8-3.5-1.9-10.8-3.7 4.1 4.1 17.5 18.8 18.2 20.7l.2.2-.2.2c0 1.8 1.6-1.2-14 22.9-75.2-15.3-106.27-42.7-141.2-63.2l11.8 1.2c-11.8-18.5-15.6-17.7-38.4-26.1L149 225c-8.8-3-18.2-3-28.3.5l7.6-10.6-1.2-1.7c-14.9 4.3-19.8 9.2-22.6 11.3-1.1-5.5-2.8-12.4-12.3-28.8l-1.2 27-13.2-5c1.5-25.2 5.4-50.5 13.2-74.6zm276.5 330c-49.9 25-56.1 22.4-59 23.9-29.8-11.8-50.9-31.7-63.5-58.8l30 16.5c-9.8-9.3-18.3-16.5-38.4-44.3l11.8 23.1-17.7-7.6c14.2 21.1 23.5 51.7 66.6 73.5-120.8 24.2-199-72.1-200.9-74.3a262.57 262.57 0 0 0 35.4 24.8c3.4 1.7 7.1 2.5 10.1 1.2l-16-20.7c9.2 4.2 9.5 4.5 69.1 29-42.5-20.7-73.8-40.8-93.2-60.2-.5 6.4-1.2 10.1-1.2 10.1a80.25 80.25 0 0 1 20.7 26.6c-39-18.9-57.6-47.6-71.3-82.6 49.9 55.1 118.9 37.5 120.5 37.1 34.8 16.4 69.9 23.6 113.9 10.6 3.3 0 20.3 17 25.3 39.1l4.2-3-2.5-23.6c9 9 24.9 22.6 34.4 13-15.6-5.3-23.5-9.5-29.5-31.7 4.6 4.2 7.6 9 27.8 15l1.2-1.2-10.5-14.2c11.7-4.8-3.5 1 32-10.8 4.3 34.3 9 49.2.7 89.5zm115.3-214.4l-2.5.5 3 9.3c-3.5 5.9-23.7 44.3-71.6 79.7-39.5 29.8-76.6 39.1-80.9 40.3l-7.6-7.1-1.2 3 14.3 16-7.1-4.7 3.4 4.2h-1.2l-21.9-13.5 9.3 26.6-19-27.9-1.2 2.5 7.6 29c-6.1-8.2-21-32.6-56.8-39.6l32.5 21.2a214.82 214.82 0 0 1-93.2-6.4c-4.2-1.2-8.9-2.5-13.5-4.2l1.2-3-44.8-22.4 26.1 22.4c-57.7 9.1-113-25.4-126.4-83.4l-2.5-16.4-22.27 22.3c19.5-57.5 25.6-57.9 51.4-70.1-9.1-5.3-1.6-3.3-38.4-9.3 15.8-5.8 33-15.4 73 5.2a18.5 18.5 0 0 1 3.7-1.7c.6-3.2.4-.8 1-11.8 3.9 10 3.6 8.7 3 9.3l1.7.5c12.7-6.5 8.9-4.5 17-8.9l-5.4 13.5 22.3-5.8-8.4 8.4 2.5 2.5c4.5-1.8 30.3 3.4 40.8 16l-23.6-2.5c39.4 23 51.5 54 55.8 69.6l1.7-1.2c-2.8-22.3-12.4-33.9-16-40.1 4.2 5 39.2 34.6 110.4 46-11.3-.5-23.1 5.4-34.9 18.9l46.7-20.2-9.3 21.9c7.6-10.1 14.8-23.6 21.2-39.6v-.5l1.2-3-1.2 16c13.5-41.8 25.3-78.5 35.4-109.7l13.5-27.8v-2l-5.4-4.2h10.1l5.9 4.2 2.5-1.2-3.4-16 12.3 18.9 41.8-20.2-14.8 13 .5 2.9 17.7-.5a184 184 0 0 1 33 4.2l-23.6 2.5-1.2 3 26.6 23.1a254.21 254.21 0 0 1 27 32c-11.2-3.3-10.3-3.4-21.2-3.4l12.3 32.5zm-6.1-71.3l-3.9 13-14.3-11.8zm-254.8 7.1c1.7 10.6 4.7 17.7 8.8 21.9-9.3 6.6-27.5 13.9-46.5 16l.5 1.2a50.22 50.22 0 0 0 24.8-2.5l-7.1 13c4.2-1.7 10.1-7.1 17.7-14.8 11.9-5.5 12.7-5.1 20.2-16-12.7-6.4-15.7-13.7-18.4-18.8zm3.7-102.3c-6.4-3.4-10.6 3-12.3 18.9s2.5 29.5 11.8 39.6 18.2 10.6 26.1 3 3.4-23.6-11.3-47.7a39.57 39.57 0 0 0-14.27-13.8zm-4.7 46.3c5.4 2.2 10.5 1.9 12.3-10.6v-4.7l-1.2.5c-4.3-3.1-2.5-4.5-1.7-6.2l.5-.5c-.9-1.2-5-8.1-12.5 4.7-.5-13.5.5-21.9 3-24.8 1.2-2.5 4.7-1.2 11.3 4.2 6.4 5.4 11.3 16 15.2 32.5 6.5 28-19.8 26.2-26.9 4.9zm-45-5.5c1.6.3 9.3-1.1 9.3-14.8h-.5c-5.4-1.1-2.2-5.5-.7-5.9-1.7-3-3.4-4.2-5.4-4.7-8.1 0-11.6 12.7-8.1 21.2a7.51 7.51 0 0 0 5.43 4.2zM216 82.9l-2.5.5.5 3a48.94 48.94 0 0 1 26.1 5.9c-2.5-5.5-10-14.3-28.3-14.3l.5 2.5zm-71.8 49.4c21.7 16.8 16.5 21.4 46.5 23.6l-2.9-4.7a42.67 42.67 0 0 0 14.8-28.3c1.7-16-1.2-29.5-8.8-41.3l13-7.6a2.26 2.26 0 0 0-.5-1.7 14.21 14.21 0 0 0-13.5 1.7c-12.7 6.7-28 20.9-29 22.4-1.7 1.7-3.4 5.9-5.4 13.5a99.61 99.61 0 0 0-2.9 23.6c-4.7-8-10.5-6.4-19.9-5.9l7.1 7.6c-16.5 0-23.3 15.4-23.6 16 6.8 0 4.6-7.6 30-12.3-4.3-6.3-3.3-5-4.9-6.6zm18.7-18.7c1.2-7.6 3.4-13 6.4-17.2 5.4-6.4 10.6-10.1 16-11.8 4.2-1.7 7.1 1.2 10.1 9.3a72.14 72.14 0 0 1 3 25.3c-.5 9.3-3.4 17.2-8.4 23.1-2.9 3.4-5.4 5.9-6.4 7.6a39.21 39.21 0 0 1-11.3-.5l-7.1-3.4-5.4-6.4c.8-10 1.3-18.8 3.1-26zm42 56.1c-34.8 14.4-34.7 14-36.1 14.3-20.8 4.7-19-24.4-18.9-24.8l5.9-1.2-.5-2.5c-20.2-2.6-31 4.2-32.5 4.9.5.5 3 3.4 5.9 9.3 4.2-6.4 8.8-10.1 15.2-10.6a83.47 83.47 0 0 0 1.7 33.7c.1.5 2.6 17.4 27.5 24.1 11.3 3 27 1.2 48.9-5.4l-9.2.5c-4.2-14.8-6.4-24.8-5.9-29.5 11.3-8.8 21.9-11.3 30.7-7.6h2.5l-11.8-7.6-7.1.5c-5.9 1.2-12.3 4.2-19.4 8.4z\"]\n};\nvar faThemeco = {\n prefix: 'fab',\n iconName: 'themeco',\n icon: [448, 512, [], \"f5c6\", \"M202.9 8.43c9.9-5.73 26-5.82 35.95-.21L430 115.85c10 5.6 18 19.44 18 30.86V364c0 11.44-8.06 25.29-18 31L238.81 503.74c-9.93 5.66-26 5.57-35.85-.21L17.86 395.12C8 389.34 0 375.38 0 364V146.71c0-11.44 8-25.36 17.91-31.08zm-77.4 199.83c-15.94 0-31.89.14-47.83.14v101.45H96.8V280h28.7c49.71 0 49.56-71.74 0-71.74zm140.14 100.29l-30.73-34.64c37-7.51 34.8-65.23-10.87-65.51-16.09 0-32.17-.14-48.26-.14v101.59h19.13v-33.91h18.41l29.56 33.91h22.76zm-41.59-82.32c23.34 0 23.26 32.46 0 32.46h-29.13v-32.46zm-95.56-1.6c21.18 0 21.11 38.85 0 38.85H96.18v-38.84zm192.65-18.25c-68.46 0-71 105.8 0 105.8 69.48-.01 69.41-105.8 0-105.8zm0 17.39c44.12 0 44.8 70.86 0 70.86s-44.43-70.86 0-70.86z\"]\n};\nvar faThemeisle = {\n prefix: 'fab',\n iconName: 'themeisle',\n icon: [512, 512, [], \"f2b2\", \"M208 88.286c0-10 6.286-21.714 17.715-21.714 11.142 0 17.714 11.714 17.714 21.714 0 10.285-6.572 21.714-17.714 21.714C214.286 110 208 98.571 208 88.286zm304 160c0 36.001-11.429 102.286-36.286 129.714-22.858 24.858-87.428 61.143-120.857 70.572l-1.143.286v32.571c0 16.286-12.572 30.571-29.143 30.571-10 0-19.429-5.714-24.572-14.286-5.427 8.572-14.856 14.286-24.856 14.286-10 0-19.429-5.714-24.858-14.286-5.142 8.572-14.571 14.286-24.57 14.286-10.286 0-19.429-5.714-24.858-14.286-5.143 8.572-14.571 14.286-24.571 14.286-18.857 0-29.429-15.714-29.429-32.857-16.286 12.285-35.715 19.428-56.571 19.428-22 0-43.429-8.285-60.286-22.857 10.285-.286 20.571-2.286 30.285-5.714-20.857-5.714-39.428-18.857-52-36.286 21.37 4.645 46.209 1.673 67.143-11.143-22-22-56.571-58.857-68.572-87.428C1.143 321.714 0 303.714 0 289.429c0-49.714 20.286-160 86.286-160 10.571 0 18.857 4.858 23.143 14.857a158.792 158.792 0 0 1 12-15.428c2-2.572 5.714-5.429 7.143-8.286 7.999-12.571 11.714-21.142 21.714-34C182.571 45.428 232 17.143 285.143 17.143c6 0 12 .285 17.714 1.143C313.714 6.571 328.857 0 344.572 0c14.571 0 29.714 6 40 16.286.857.858 1.428 2.286 1.428 3.428 0 3.714-10.285 13.429-12.857 16.286 4.286 1.429 15.714 6.858 15.714 12 0 2.857-2.857 5.143-4.571 7.143 31.429 27.714 49.429 67.143 56.286 108 4.286-5.143 10.285-8.572 17.143-8.572 10.571 0 20.857 7.144 28.571 14.001C507.143 187.143 512 221.714 512 248.286zM188 89.428c0 18.286 12.571 37.143 32.286 37.143 19.714 0 32.285-18.857 32.285-37.143 0-18-12.571-36.857-32.285-36.857-19.715 0-32.286 18.858-32.286 36.857zM237.714 194c0-19.714 3.714-39.143 8.571-58.286-52.039 79.534-13.531 184.571 68.858 184.571 21.428 0 42.571-7.714 60-20 2-7.429 3.714-14.857 3.714-22.572 0-14.286-6.286-21.428-20.572-21.428-4.571 0-9.143.857-13.429 1.714-63.343 12.668-107.142 3.669-107.142-63.999zm-41.142 254.858c0-11.143-8.858-20.857-20.286-20.857-11.429 0-20 9.715-20 20.857v32.571c0 11.143 8.571 21.142 20 21.142 11.428 0 20.286-9.715 20.286-21.142v-32.571zm49.143 0c0-11.143-8.572-20.857-20-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20-10 20-21.142v-32.571zm49.713 0c0-11.143-8.857-20.857-20.285-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20.285-9.715 20.285-21.142v-32.571zm49.715 0c0-11.143-8.857-20.857-20.286-20.857-11.428 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.858 21.142 20.286 21.142 11.429 0 20.286-10 20.286-21.142v-32.571zM421.714 286c-30.857 59.142-90.285 102.572-158.571 102.572-96.571 0-160.571-84.572-160.571-176.572 0-16.857 2-33.429 6-49.714-20 33.715-29.714 72.572-29.714 111.429 0 60.286 24.857 121.715 71.429 160.857 5.143-9.714 14.857-16.286 26-16.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.571-14.286 24.858-14.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.857-14.286 24.858-14.286 10 0 19.428 5.714 24.857 14.286 5.143-8.571 14.571-14.286 24.572-14.286 10.857 0 20.857 6.572 25.714 16 43.427-36.286 68.569-92 71.426-148.286zm10.572-99.714c0-53.714-34.571-105.714-92.572-105.714-30.285 0-58.571 15.143-78.857 36.857C240.862 183.812 233.41 254 302.286 254c28.805 0 97.357-28.538 84.286 36.857 28.857-26 45.714-65.714 45.714-104.571z\"]\n};\nvar faThinkPeaks = {\n prefix: 'fab',\n iconName: 'think-peaks',\n icon: [576, 512, [], \"f731\", \"M465.4 409.4l87.1-150.2-32-.3-55.1 95L259.2 0 23 407.4l32 .3L259.2 55.6zm-355.3-44.1h32.1l117.4-202.5L463 511.9l32.5.1-235.8-404.6z\"]\n};\nvar faTiktok = {\n prefix: 'fab',\n iconName: 'tiktok',\n icon: [448, 512, [], \"e07b\", \"M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z\"]\n};\nvar faTradeFederation = {\n prefix: 'fab',\n iconName: 'trade-federation',\n icon: [496, 512, [], \"f513\", \"M248 8.8c-137 0-248 111-248 248s111 248 248 248 248-111 248-248-111-248-248-248zm0 482.8c-129.7 0-234.8-105.1-234.8-234.8S118.3 22 248 22s234.8 105.1 234.8 234.8S377.7 491.6 248 491.6zm155.1-328.5v-46.8H209.3V198H54.2l36.7 46h117.7v196.8h48.8V245h83.3v-47h-83.3v-34.8h145.7zm-73.3 45.1v23.9h-82.9v197.4h-26.8V232.1H96.3l-20.1-23.9h143.9v-80.6h171.8V152h-145v56.2zm-161.3-69l-12.4-20.7 2.1 23.8-23.5 5.4 23.3 5.4-2.1 24 12.3-20.5 22.2 9.5-15.7-18.1 15.8-18.1zm-29.6-19.7l9.3-11.5-12.7 5.9-8-12.4 1.7 13.9-14.3 3.8 13.7 2.7-.8 14.7 6.8-12.2 13.8 5.3zm165.4 145.2l-13.1 5.6-7.3-12.2 1.3 14.2-13.9 3.2 13.9 3.2-1.2 14.2 7.3-12.2 13.1 5.5-9.4-10.7zm106.9-77.2l-20.9 9.1-12-19.6 2.2 22.7-22.3 5.4 22.2 4.9-1.8 22.9 11.5-19.6 21.2 8.8-15.1-17zM248 29.9c-125.3 0-226.9 101.6-226.9 226.9S122.7 483.7 248 483.7s226.9-101.6 226.9-226.9S373.3 29.9 248 29.9zM342.6 196v51h-83.3v195.7h-52.7V245.9H89.9l-40-49.9h157.4v-81.6h197.8v50.7H259.4V196zM248 43.2c60.3 0 114.8 25 153.6 65.2H202.5V190H45.1C73.1 104.8 153.4 43.2 248 43.2zm0 427.1c-117.9 0-213.6-95.6-213.6-213.5 0-21.2 3.1-41.8 8.9-61.1L87.1 252h114.7v196.8h64.6V253h83.3v-62.7h-83.2v-19.2h145.6v-50.8c30.8 37 49.3 84.6 49.3 136.5.1 117.9-95.5 213.5-213.4 213.5zM178.8 275l-11-21.4 1.7 24.5-23.7 3.9 23.8 5.9-3.7 23.8 13-20.9 21.5 10.8-15.8-18.8 16.9-17.1z\"]\n};\nvar faTrello = {\n prefix: 'fab',\n iconName: 'trello',\n icon: [448, 512, [], \"f181\", \"M392.3 32H56.1C25.1 32 0 57.1 0 88c-.1 0 0-4 0 336 0 30.9 25.1 56 56 56h336.2c30.8-.2 55.7-25.2 55.7-56V88c.1-30.8-24.8-55.8-55.6-56zM197 371.3c-.2 14.7-12.1 26.6-26.9 26.6H87.4c-14.8.1-26.9-11.8-27-26.6V117.1c0-14.8 12-26.9 26.9-26.9h82.9c14.8 0 26.9 12 26.9 26.9v254.2zm193.1-112c0 14.8-12 26.9-26.9 26.9h-81c-14.8 0-26.9-12-26.9-26.9V117.2c0-14.8 12-26.9 26.8-26.9h81.1c14.8 0 26.9 12 26.9 26.9v142.1z\"]\n};\nvar faTumblr = {\n prefix: 'fab',\n iconName: 'tumblr',\n icon: [320, 512, [], \"f173\", \"M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z\"]\n};\nvar faTumblrSquare = {\n prefix: 'fab',\n iconName: 'tumblr-square',\n icon: [448, 512, [], \"f174\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-82.3 364.2c-8.5 9.1-31.2 19.8-60.9 19.8-75.5 0-91.9-55.5-91.9-87.9v-90h-29.7c-3.4 0-6.2-2.8-6.2-6.2v-42.5c0-4.5 2.8-8.5 7.1-10 38.8-13.7 50.9-47.5 52.7-73.2.5-6.9 4.1-10.2 10-10.2h44.3c3.4 0 6.2 2.8 6.2 6.2v72h51.9c3.4 0 6.2 2.8 6.2 6.2v51.1c0 3.4-2.8 6.2-6.2 6.2h-52.1V321c0 21.4 14.8 33.5 42.5 22.4 3-1.2 5.6-2 8-1.4 2.2.5 3.6 2.1 4.6 4.9l13.8 40.2c1 3.2 2 6.7-.3 9.1z\"]\n};\nvar faTwitch = {\n prefix: 'fab',\n iconName: 'twitch',\n icon: [512, 512, [], \"f1e8\", \"M391.17,103.47H352.54v109.7h38.63ZM285,103H246.37V212.75H285ZM120.83,0,24.31,91.42V420.58H140.14V512l96.53-91.42h77.25L487.69,256V0ZM449.07,237.75l-77.22,73.12H294.61l-67.6,64v-64H140.14V36.58H449.07Z\"]\n};\nvar faTwitter = {\n prefix: 'fab',\n iconName: 'twitter',\n icon: [512, 512, [], \"f099\", \"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"]\n};\nvar faTwitterSquare = {\n prefix: 'fab',\n iconName: 'twitter-square',\n icon: [448, 512, [], \"f081\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-48.9 158.8c.2 2.8.2 5.7.2 8.5 0 86.7-66 186.6-186.6 186.6-37.2 0-71.7-10.8-100.7-29.4 5.3.6 10.4.8 15.8.8 30.7 0 58.9-10.4 81.4-28-28.8-.6-53-19.5-61.3-45.5 10.1 1.5 19.2 1.5 29.6-1.2-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3a65.447 65.447 0 0 1-29.2-54.6c0-12.2 3.2-23.4 8.9-33.1 32.3 39.8 80.8 65.8 135.2 68.6-9.3-44.5 24-80.6 64-80.6 18.9 0 35.9 7.9 47.9 20.7 14.8-2.8 29-8.3 41.6-15.8-4.9 15.2-15.2 28-28.8 36.1 13.2-1.4 26-5.1 37.8-10.2-8.9 13.1-20.1 24.7-32.9 34z\"]\n};\nvar faTypo3 = {\n prefix: 'fab',\n iconName: 'typo3',\n icon: [448, 512, [], \"f42b\", \"M178.7 78.4c0-24.7 5.4-32.4 13.9-39.4-69.5 8.5-149.3 34-176.3 66.4-5.4 7.7-9.3 20.8-9.3 37.1C7 246 113.8 480 191.1 480c36.3 0 97.3-59.5 146.7-139-7 2.3-11.6 2.3-18.5 2.3-57.2 0-140.6-198.5-140.6-264.9zM301.5 32c-30.1 0-41.7 5.4-41.7 36.3 0 66.4 53.8 198.5 101.7 198.5 26.3 0 78.8-99.7 78.8-182.3 0-40.9-67-52.5-138.8-52.5z\"]\n};\nvar faUber = {\n prefix: 'fab',\n iconName: 'uber',\n icon: [448, 512, [], \"f402\", \"M414.1 32H33.9C15.2 32 0 47.2 0 65.9V446c0 18.8 15.2 34 33.9 34H414c18.7 0 33.9-15.2 33.9-33.9V65.9C448 47.2 432.8 32 414.1 32zM237.6 391.1C163 398.6 96.4 344.2 88.9 269.6h94.4V290c0 3.7 3 6.8 6.8 6.8H258c3.7 0 6.8-3 6.8-6.8v-67.9c0-3.7-3-6.8-6.8-6.8h-67.9c-3.7 0-6.8 3-6.8 6.8v20.4H88.9c7-69.4 65.4-122.2 135.1-122.2 69.7 0 128.1 52.8 135.1 122.2 7.5 74.5-46.9 141.1-121.5 148.6z\"]\n};\nvar faUbuntu = {\n prefix: 'fab',\n iconName: 'ubuntu',\n icon: [496, 512, [], \"f7df\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm52.7 93c8.8-15.2 28.3-20.5 43.5-11.7 15.3 8.8 20.5 28.3 11.7 43.6-8.8 15.2-28.3 20.5-43.5 11.7-15.3-8.9-20.5-28.4-11.7-43.6zM87.4 287.9c-17.6 0-31.9-14.3-31.9-31.9 0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9 0 17.6-14.3 31.9-31.9 31.9zm28.1 3.1c22.3-17.9 22.4-51.9 0-69.9 8.6-32.8 29.1-60.7 56.5-79.1l23.7 39.6c-51.5 36.3-51.5 112.5 0 148.8L172 370c-27.4-18.3-47.8-46.3-56.5-79zm228.7 131.7c-15.3 8.8-34.7 3.6-43.5-11.7-8.8-15.3-3.6-34.8 11.7-43.6 15.2-8.8 34.7-3.6 43.5 11.7 8.8 15.3 3.6 34.8-11.7 43.6zm.3-69.5c-26.7-10.3-56.1 6.6-60.5 35-5.2 1.4-48.9 14.3-96.7-9.4l22.5-40.3c57 26.5 123.4-11.7 128.9-74.4l46.1.7c-2.3 34.5-17.3 65.5-40.3 88.4zm-5.9-105.3c-5.4-62-71.3-101.2-128.9-74.4l-22.5-40.3c47.9-23.7 91.5-10.8 96.7-9.4 4.4 28.3 33.8 45.3 60.5 35 23.1 22.9 38 53.9 40.2 88.5l-46 .6z\"]\n};\nvar faUikit = {\n prefix: 'fab',\n iconName: 'uikit',\n icon: [448, 512, [], \"f403\", \"M443.9 128v256L218 512 0 384V169.7l87.6 45.1v117l133.5 75.5 135.8-75.5v-151l-101.1-57.6 87.6-53.1L443.9 128zM308.6 49.1L223.8 0l-88.6 54.8 86 47.3 87.4-53z\"]\n};\nvar faUmbraco = {\n prefix: 'fab',\n iconName: 'umbraco',\n icon: [510, 512, [], \"f8e8\", \"M255.35 8C118.36 7.83 7.14 118.72 7 255.68c-.07 137 111 248.2 248 248.27 136.85 0 247.82-110.7 248-247.67S392.34 8.17 255.35 8zm145 266q-1.14 40.68-14 65t-43.51 35q-30.61 10.7-85.45 10.47h-4.6q-54.78.22-85.44-10.47t-43.52-35q-12.85-24.36-14-65a224.81 224.81 0 0 1 0-30.71 418.37 418.37 0 0 1 3.6-43.88c1.88-13.39 3.57-22.58 5.4-32 1-4.88 1.28-6.42 1.82-8.45a5.09 5.09 0 0 1 4.9-3.89h.69l32 5a5.07 5.07 0 0 1 4.16 5 5 5 0 0 1 0 .77l-1.7 8.78q-2.41 13.25-4.84 33.68a380.62 380.62 0 0 0-2.64 42.15q-.28 40.43 8.13 59.83a43.87 43.87 0 0 0 31.31 25.18A243 243 0 0 0 250 340.6h10.25a242.64 242.64 0 0 0 57.27-5.16 43.86 43.86 0 0 0 31.15-25.23q8.53-19.42 8.13-59.78a388 388 0 0 0-2.6-42.15q-2.48-20.38-4.89-33.68l-1.69-8.78a5 5 0 0 1 0-.77 5 5 0 0 1 4.2-5l32-5h.82a5 5 0 0 1 4.9 3.89c.55 2.05.81 3.57 1.83 8.45 1.82 9.62 3.52 18.78 5.39 32a415.71 415.71 0 0 1 3.61 43.88 228.06 228.06 0 0 1-.04 30.73z\"]\n};\nvar faUncharted = {\n prefix: 'fab',\n iconName: 'uncharted',\n icon: [448, 512, [], \"e084\", \"M171.73,232.813A5.381,5.381,0,0,0,176.7,229.5,48.081,48.081,0,0,1,191.6,204.244c1.243-.828,1.657-2.484,1.657-4.141a4.22,4.22,0,0,0-2.071-3.312L74.429,128.473,148.958,85a9.941,9.941,0,0,0,4.968-8.281,9.108,9.108,0,0,0-4.968-8.281L126.6,55.6a9.748,9.748,0,0,0-9.523,0l-100.2,57.966a9.943,9.943,0,0,0-4.969,8.281V236.954a9.109,9.109,0,0,0,4.969,8.281L39.235,258.07a8.829,8.829,0,0,0,4.968,1.242,9.4,9.4,0,0,0,6.625-2.484,10.8,10.8,0,0,0,2.9-7.039V164.5L169.66,232.4A4.5,4.5,0,0,0,171.73,232.813ZM323.272,377.73a12.478,12.478,0,0,0-4.969,1.242l-74.528,43.062V287.882c0-2.9-2.9-5.8-6.211-4.555a53.036,53.036,0,0,1-28.984.414,4.86,4.86,0,0,0-6.21,4.555V421.619l-74.529-43.061a8.83,8.83,0,0,0-4.969-1.242,9.631,9.631,0,0,0-9.523,9.523v26.085a9.107,9.107,0,0,0,4.969,8.281l100.2,57.553A8.829,8.829,0,0,0,223.486,480a11.027,11.027,0,0,0,4.969-1.242l100.2-57.553a9.941,9.941,0,0,0,4.968-8.281V386.839C332.8,382.285,328.24,377.73,323.272,377.73ZM286.007,78a23,23,0,1,0-23-23A23,23,0,0,0,286.007,78Zm63.627-10.086a23,23,0,1,0,23,23A23,23,0,0,0,349.634,67.914ZM412.816,151.6a23,23,0,1,0-23-23A23,23,0,0,0,412.816,151.6Zm-63.182-9.2a23,23,0,1,0,23,23A23,23,0,0,0,349.634,142.4Zm-63.627,83.244a23,23,0,1,0-23-23A23,23,0,0,0,286.007,225.648Zm-62.074,36.358a23,23,0,1,0-23-23A23,23,0,0,0,223.933,262.006Zm188.883-82.358a23,23,0,1,0,23,23A23,23,0,0,0,412.816,179.648Zm0,72.272a23,23,0,1,0,23,23A23,23,0,0,0,412.816,251.92Z\"]\n};\nvar faUniregistry = {\n prefix: 'fab',\n iconName: 'uniregistry',\n icon: [384, 512, [], \"f404\", \"M192 480c39.5 0 76.2-11.8 106.8-32.2H85.3C115.8 468.2 152.5 480 192 480zm-89.1-193.1v-12.4H0v12.4c0 2.5 0 5 .1 7.4h103.1c-.2-2.4-.3-4.9-.3-7.4zm20.5 57H8.5c2.6 8.5 5.8 16.8 9.6 24.8h138.3c-12.9-5.7-24.1-14.2-33-24.8zm-17.7-34.7H1.3c.9 7.6 2.2 15 3.9 22.3h109.7c-4-6.9-7.2-14.4-9.2-22.3zm-2.8-69.3H0v17.3h102.9zm0-173.2H0v4.9h102.9zm0-34.7H0v2.5h102.9zm0 69.3H0v7.4h102.9zm0 104H0v14.8h102.9zm0-69.3H0v9.9h102.9zm0 34.6H0V183h102.9zm166.2 160.9h109.7c1.8-7.3 3.1-14.7 3.9-22.3H278.3c-2.1 7.9-5.2 15.4-9.2 22.3zm12-185.7H384V136H281.1zm0 37.2H384v-12.4H281.1zm0-74.3H384v-7.4H281.1zm0-76.7v2.5H384V32zm-203 410.9h227.7c11.8-8.7 22.7-18.6 32.2-29.7H44.9c9.6 11 21.4 21 33.2 29.7zm203-371.3H384v-4.9H281.1zm0 148.5H384v-14.8H281.1zM38.8 405.7h305.3c6.7-8.5 12.6-17.6 17.8-27.2H23c5.2 9.6 9.2 18.7 15.8 27.2zm188.8-37.1H367c3.7-8 5.8-16.2 8.5-24.8h-115c-8.8 10.7-20.1 19.2-32.9 24.8zm53.5-81.7c0 2.5-.1 5-.4 7.4h103.1c.1-2.5.2-4.9.2-7.4v-12.4H281.1zm0-29.7H384v-17.3H281.1z\"]\n};\nvar faUnity = {\n prefix: 'fab',\n iconName: 'unity',\n icon: [576, 512, [], \"e049\", \"M498.11,206.4,445.31,14.72,248.2,66.08,219,116.14l-59.2-.43L15.54,256,159.82,396.32l59.17-.43,29.24,50,197.08,51.36,52.8-191.62-30-49.63ZM223.77,124.2,374.55,86.51,288,232.33H114.87Zm0,263.63L114.87,279.71H288l86.55,145.81Zm193,14L330.17,256l86.58-145.84L458.56,256Z\"]\n};\nvar faUnsplash = {\n prefix: 'fab',\n iconName: 'unsplash',\n icon: [448, 512, [], \"e07c\", \"M448,230.17V480H0V230.17H141.13V355.09H306.87V230.17ZM306.87,32H141.13V156.91H306.87Z\"]\n};\nvar faUntappd = {\n prefix: 'fab',\n iconName: 'untappd',\n icon: [640, 512, [], \"f405\", \"M401.3 49.9c-79.8 160.1-84.6 152.5-87.9 173.2l-5.2 32.8c-1.9 12-6.6 23.5-13.7 33.4L145.6 497.1c-7.6 10.6-20.4 16.2-33.4 14.6-40.3-5-77.8-32.2-95.3-68.5-5.7-11.8-4.5-25.8 3.1-36.4l148.9-207.9c7.1-9.9 16.4-18 27.2-23.7l29.3-15.5c18.5-9.8 9.7-11.9 135.6-138.9 1-4.8 1-7.3 3.6-8 3-.7 6.6-1 6.3-4.6l-.4-4.6c-.2-1.9 1.3-3.6 3.2-3.6 4.5-.1 13.2 1.2 25.6 10 12.3 8.9 16.4 16.8 17.7 21.1.6 1.8-.6 3.7-2.4 4.2l-4.5 1.1c-3.4.9-2.5 4.4-2.3 7.4.1 2.8-2.3 3.6-6.5 6.1zM230.1 36.4c3.4.9 2.5 4.4 2.3 7.4-.2 2.7 2.1 3.5 6.4 6 7.9 15.9 15.3 30.5 22.2 44 .7 1.3 2.3 1.5 3.3.5 11.2-12 24.6-26.2 40.5-42.6 1.3-1.4 1.4-3.5.1-4.9-8-8.2-16.5-16.9-25.6-26.1-1-4.7-1-7.3-3.6-8-3-.8-6.6-1-6.3-4.6.3-3.3 1.4-8.1-2.8-8.2-4.5-.1-13.2 1.1-25.6 10-12.3 8.9-16.4 16.8-17.7 21.1-1.4 4.2 3.6 4.6 6.8 5.4zM620 406.7L471.2 198.8c-13.2-18.5-26.6-23.4-56.4-39.1-11.2-5.9-14.2-10.9-30.5-28.9-1-1.1-2.9-.9-3.6.5-46.3 88.8-47.1 82.8-49 94.8-1.7 10.7-1.3 20 .3 29.8 1.9 12 6.6 23.5 13.7 33.4l148.9 207.9c7.6 10.6 20.2 16.2 33.1 14.7 40.3-4.9 78-32 95.7-68.6 5.4-11.9 4.3-25.9-3.4-36.6z\"]\n};\nvar faUps = {\n prefix: 'fab',\n iconName: 'ups',\n icon: [384, 512, [], \"f7e0\", \"M103.2 303c-5.2 3.6-32.6 13.1-32.6-19V180H37.9v102.6c0 74.9 80.2 51.1 97.9 39V180h-32.6zM4 74.82v220.9c0 103.7 74.9 135.2 187.7 184.1 112.4-48.9 187.7-80.2 187.7-184.1V74.82c-116.3-61.6-281.8-49.6-375.4 0zm358.1 220.9c0 86.6-53.2 113.6-170.4 165.3-117.5-51.8-170.5-78.7-170.5-165.3v-126.4c102.3-93.8 231.6-100 340.9-89.8zm-209.6-107.4v212.8h32.7v-68.7c24.4 7.3 71.7-2.6 71.7-78.5 0-97.4-80.7-80.92-104.4-65.6zm32.7 117.3v-100.3c8.4-4.2 38.4-12.7 38.4 49.3 0 67.9-36.4 51.8-38.4 51zm79.1-86.4c.1 47.3 51.6 42.5 52.2 70.4.6 23.5-30.4 23-50.8 4.9v30.1c36.2 21.5 81.9 8.1 83.2-33.5 1.7-51.5-54.1-46.6-53.4-73.2.6-20.3 30.6-20.5 48.5-2.2v-28.4c-28.5-22-79.9-9.2-79.7 31.9z\"]\n};\nvar faUsb = {\n prefix: 'fab',\n iconName: 'usb',\n icon: [640, 512, [], \"f287\", \"M641.5 256c0 3.1-1.7 6.1-4.5 7.5L547.9 317c-1.4.8-2.8 1.4-4.5 1.4-1.4 0-3.1-.3-4.5-1.1-2.8-1.7-4.5-4.5-4.5-7.8v-35.6H295.7c25.3 39.6 40.5 106.9 69.6 106.9H392V354c0-5 3.9-8.9 8.9-8.9H490c5 0 8.9 3.9 8.9 8.9v89.1c0 5-3.9 8.9-8.9 8.9h-89.1c-5 0-8.9-3.9-8.9-8.9v-26.7h-26.7c-75.4 0-81.1-142.5-124.7-142.5H140.3c-8.1 30.6-35.9 53.5-69 53.5C32 327.3 0 295.3 0 256s32-71.3 71.3-71.3c33.1 0 61 22.8 69 53.5 39.1 0 43.9 9.5 74.6-60.4C255 88.7 273 95.7 323.8 95.7c7.5-20.9 27-35.6 50.4-35.6 29.5 0 53.5 23.9 53.5 53.5s-23.9 53.5-53.5 53.5c-23.4 0-42.9-14.8-50.4-35.6H294c-29.1 0-44.3 67.4-69.6 106.9h310.1v-35.6c0-3.3 1.7-6.1 4.5-7.8 2.8-1.7 6.4-1.4 8.9.3l89.1 53.5c2.8 1.1 4.5 4.1 4.5 7.2z\"]\n};\nvar faUsps = {\n prefix: 'fab',\n iconName: 'usps',\n icon: [576, 512, [], \"f7e1\", \"M460.3 241.7c25.8-41.3 15.2-48.8-11.7-48.8h-27c-.1 0-1.5-1.4-10.9 8-11.2 5.6-37.9 6.3-37.9 8.7 0 4.5 70.3-3.1 88.1 0 9.5 1.5-1.5 20.4-4.4 32-.5 4.5 2.4 2.3 3.8.1zm-112.1 22.6c64-21.3 97.3-23.9 102-26.2 4.4-2.9-4.4-6.6-26.2-5.8-51.7 2.2-137.6 37.1-172.6 53.9l-30.7-93.3h196.6c-2.7-28.2-152.9-22.6-337.9-22.6L27 415.8c196.4-97.3 258.9-130.3 321.2-151.5zM94.7 96c253.3 53.7 330 65.7 332.1 85.2 36.4 0 45.9 0 52.4 6.6 21.1 19.7-14.6 67.7-14.6 67.7-4.4 2.9-406.4 160.2-406.4 160.2h423.1L549 96z\"]\n};\nvar faUssunnah = {\n prefix: 'fab',\n iconName: 'ussunnah',\n icon: [512, 512, [], \"f407\", \"M156.8 285.1l5.7 14.4h-8.2c-1.3-3.2-3.1-7.7-3.8-9.5-2.5-6.3-1.1-8.4 0-10 1.9-2.7 3.2-4.4 3.6-5.2 0 2.2.8 5.7 2.7 10.3zm297.3 18.8c-2.1 13.8-5.7 27.1-10.5 39.7l43 23.4-44.8-18.8c-5.3 13.2-12 25.6-19.9 37.2l34.2 30.2-36.8-26.4c-8.4 11.8-18 22.6-28.7 32.3l24.9 34.7-28.1-31.8c-11 9.6-23.1 18-36.1 25.1l15.7 37.2-19.3-35.3c-13.1 6.8-27 12.1-41.6 15.9l6.7 38.4-10.5-37.4c-14.3 3.4-29.2 5.3-44.5 5.4L256 512l-1.9-38.4c-15.3-.1-30.2-2-44.5-5.3L199 505.6l6.7-38.2c-14.6-3.7-28.6-9.1-41.7-15.8l-19.2 35.1 15.6-37c-13-7-25.2-15.4-36.2-25.1l-27.9 31.6 24.7-34.4c-10.7-9.7-20.4-20.5-28.8-32.3l-36.5 26.2 33.9-29.9c-7.9-11.6-14.6-24.1-20-37.3l-44.4 18.7L67.8 344c-4.8-12.7-8.4-26.1-10.5-39.9l-51 9 50.3-14.2c-1.1-8.5-1.7-17.1-1.7-25.9 0-4.7.2-9.4.5-14.1L0 256l56-2.8c1.3-13.1 3.8-25.8 7.5-38.1L6.4 199l58.9 10.4c4-12 9.1-23.5 15.2-34.4l-55.1-30 58.3 24.6C90 159 97.2 149.2 105.3 140L55.8 96.4l53.9 38.7c8.1-8.6 17-16.5 26.6-23.6l-40-55.6 45.6 51.6c9.5-6.6 19.7-12.3 30.3-17.2l-27.3-64.9 33.8 62.1c10.5-4.4 21.4-7.9 32.7-10.4L199 6.4l19.5 69.2c11-2.1 22.3-3.2 33.8-3.4L256 0l3.6 72.2c11.5.2 22.8 1.4 33.8 3.5L313 6.4l-12.4 70.7c11.3 2.6 22.2 6.1 32.6 10.5l33.9-62.2-27.4 65.1c10.6 4.9 20.7 10.7 30.2 17.2l45.8-51.8-40.1 55.9c9.5 7.1 18.4 15 26.5 23.6l54.2-38.9-49.7 43.9c8 9.1 15.2 18.9 21.5 29.4l58.7-24.7-55.5 30.2c6.1 10.9 11.1 22.3 15.1 34.3l59.3-10.4-57.5 16.2c3.7 12.2 6.2 24.9 7.5 37.9L512 256l-56 2.8c.3 4.6.5 9.3.5 14.1 0 8.7-.6 17.3-1.6 25.8l50.7 14.3-51.5-9.1zm-21.8-31c0-97.5-79-176.5-176.5-176.5s-176.5 79-176.5 176.5 79 176.5 176.5 176.5 176.5-79 176.5-176.5zm-24 0c0 84.3-68.3 152.6-152.6 152.6s-152.6-68.3-152.6-152.6 68.3-152.6 152.6-152.6 152.6 68.3 152.6 152.6zM195 241c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-40.7-19c0 2.1 1.3 3.8 3.6 5.1 3.5 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-19 0c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.4 6.8-9.6 10.9-9.6 12.6zm204.9 87.9c-8.4-3-8.7-6.8-8.7-15.6V182c-8.2 12.5-14.2 18.6-18 18.6 6.3 14.4 9.5 23.9 9.5 28.3v64.3c0 2.2-2.2 6.5-4.7 6.5h-18c-2.8-7.5-10.2-26.9-15.3-40.3-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3 2.6 6.7 6.4 16.5 7.9 20.2h-9.2c-3.9-10.4-9.6-25.4-11.8-31.1-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3.8 2 2.8 7.3 4.3 10.9H256c-1.5-4.1-5.6-14.6-8.4-22-2 2.5-7.2 9.2-10.7 13.7 2.5 1.6 4.3 3.6 5.2 6.3.2.6.5 1.4.6 1.7H225c-4.6-13.9-11.4-27.7-11.4-34.1 0-2.2.3-5.1 1.1-8.2-8.8 10.8-14 15.9-14 25 0 7.5 10.4 28.3 10.4 33.3 0 1.7-.5 3.3-1.4 4.9-9.6-12.7-15.5-20.7-18.8-20.7h-12l-11.2-28c-3.8-9.6-5.7-16-5.7-18.8 0-3.8.5-7.7 1.7-12.2-1 1.3-3.7 4.7-5.5 7.1-.8-2.1-3.1-7.7-4.6-11.5-2.1 2.5-7.5 9.1-11.2 13.6.9 2.3 3.3 8.1 4.9 12.2-2.5 3.3-9.1 11.8-13.6 17.7-4 5.3-5.8 13.3-2.7 21.8 2.5 6.7 2 7.9-1.7 14.1H191c5.5 0 14.3 14 15.5 22 13.2-16 15.4-19.6 16.8-21.6h107c3.9 0 7.2-1.9 9.9-5.8zm20.1-26.6V181.7c-9 12.5-15.9 18.6-20.7 18.6 7.1 14.4 10.7 23.9 10.7 28.3v66.3c0 17.5 8.6 20.4 24 20.4 8.1 0 12.5-.8 13.7-2.7-4.3-1.6-7.6-2.5-9.9-3.3-8.1-3.2-17.8-7.4-17.8-26z\"]\n};\nvar faVaadin = {\n prefix: 'fab',\n iconName: 'vaadin',\n icon: [448, 512, [], \"f408\", \"M224.5 140.7c1.5-17.6 4.9-52.7 49.8-52.7h98.6c20.7 0 32.1-7.8 32.1-21.6V54.1c0-12.2 9.3-22.1 21.5-22.1S448 41.9 448 54.1v36.5c0 42.9-21.5 62-66.8 62H280.7c-30.1 0-33 14.7-33 27.1 0 1.3-.1 2.5-.2 3.7-.7 12.3-10.9 22.2-23.4 22.2s-22.7-9.8-23.4-22.2c-.1-1.2-.2-2.4-.2-3.7 0-12.3-3-27.1-33-27.1H66.8c-45.3 0-66.8-19.1-66.8-62V54.1C0 41.9 9.4 32 21.6 32s21.5 9.9 21.5 22.1v12.3C43.1 80.2 54.5 88 75.2 88h98.6c44.8 0 48.3 35.1 49.8 52.7h.9zM224 456c11.5 0 21.4-7 25.7-16.3 1.1-1.8 97.1-169.6 98.2-171.4 11.9-19.6-3.2-44.3-27.2-44.3-13.9 0-23.3 6.4-29.8 20.3L224 362l-66.9-117.7c-6.4-13.9-15.9-20.3-29.8-20.3-24 0-39.1 24.6-27.2 44.3 1.1 1.9 97.1 169.6 98.2 171.4 4.3 9.3 14.2 16.3 25.7 16.3z\"]\n};\nvar faViacoin = {\n prefix: 'fab',\n iconName: 'viacoin',\n icon: [384, 512, [], \"f237\", \"M384 32h-64l-80.7 192h-94.5L64 32H0l48 112H0v48h68.5l13.8 32H0v48h102.8L192 480l89.2-208H384v-48h-82.3l13.8-32H384v-48h-48l48-112zM192 336l-27-64h54l-27 64z\"]\n};\nvar faViadeo = {\n prefix: 'fab',\n iconName: 'viadeo',\n icon: [448, 512, [], \"f2a9\", \"M276.2 150.5v.7C258.3 98.6 233.6 47.8 205.4 0c43.3 29.2 67 100 70.8 150.5zm32.7 121.7c7.6 18.2 11 37.5 11 57 0 77.7-57.8 141-137.8 139.4l3.8-.3c74.2-46.7 109.3-118.6 109.3-205.1 0-38.1-6.5-75.9-18.9-112 1 11.7 1 23.7 1 35.4 0 91.8-18.1 241.6-116.6 280C95 455.2 49.4 398 49.4 329.2c0-75.6 57.4-142.3 135.4-142.3 16.8 0 33.7 3.1 49.1 9.6 1.7-15.1 6.5-29.9 13.4-43.3-19.9-7.2-41.2-10.7-62.5-10.7-161.5 0-238.7 195.9-129.9 313.7 67.9 74.6 192 73.9 259.8 0 56.6-61.3 60.9-142.4 36.4-201-12.7 8-27.1 13.9-42.2 17zM418.1 11.7c-31 66.5-81.3 47.2-115.8 80.1-12.4 12-20.6 34-20.6 50.5 0 14.1 4.5 27.1 12 38.8 47.4-11 98.3-46 118.2-90.7-.7 5.5-4.8 14.4-7.2 19.2-20.3 35.7-64.6 65.6-99.7 84.9 14.8 14.4 33.7 25.8 55 25.8 79 0 110.1-134.6 58.1-208.6z\"]\n};\nvar faViadeoSquare = {\n prefix: 'fab',\n iconName: 'viadeo-square',\n icon: [448, 512, [], \"f2aa\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM280.7 381.2c-42.4 46.2-120 46.6-162.4 0-68-73.6-19.8-196.1 81.2-196.1 13.3 0 26.6 2.1 39.1 6.7-4.3 8.4-7.3 17.6-8.4 27.1-9.7-4.1-20.2-6-30.7-6-48.8 0-84.6 41.7-84.6 88.9 0 43 28.5 78.7 69.5 85.9 61.5-24 72.9-117.6 72.9-175 0-7.3 0-14.8-.6-22.1-11.2-32.9-26.6-64.6-44.2-94.5 27.1 18.3 41.9 62.5 44.2 94.1v.4c7.7 22.5 11.8 46.2 11.8 70 0 54.1-21.9 99-68.3 128.2l-2.4.2c50 1 86.2-38.6 86.2-87.2 0-12.2-2.1-24.3-6.9-35.7 9.5-1.9 18.5-5.6 26.4-10.5 15.3 36.6 12.6 87.3-22.8 125.6zM309 233.7c-13.3 0-25.1-7.1-34.4-16.1 21.9-12 49.6-30.7 62.3-53 1.5-3 4.1-8.6 4.5-12-12.5 27.9-44.2 49.8-73.9 56.7-4.7-7.3-7.5-15.5-7.5-24.3 0-10.3 5.2-24.1 12.9-31.6 21.6-20.5 53-8.5 72.4-50 32.5 46.2 13.1 130.3-36.3 130.3z\"]\n};\nvar faViber = {\n prefix: 'fab',\n iconName: 'viber',\n icon: [512, 512, [], \"f409\", \"M444 49.9C431.3 38.2 379.9.9 265.3.4c0 0-135.1-8.1-200.9 52.3C27.8 89.3 14.9 143 13.5 209.5c-1.4 66.5-3.1 191.1 117 224.9h.1l-.1 51.6s-.8 20.9 13 25.1c16.6 5.2 26.4-10.7 42.3-27.8 8.7-9.4 20.7-23.2 29.8-33.7 82.2 6.9 145.3-8.9 152.5-11.2 16.6-5.4 110.5-17.4 125.7-142 15.8-128.6-7.6-209.8-49.8-246.5zM457.9 287c-12.9 104-89 110.6-103 115.1-6 1.9-61.5 15.7-131.2 11.2 0 0-52 62.7-68.2 79-5.3 5.3-11.1 4.8-11-5.7 0-6.9.4-85.7.4-85.7-.1 0-.1 0 0 0-101.8-28.2-95.8-134.3-94.7-189.8 1.1-55.5 11.6-101 42.6-131.6 55.7-50.5 170.4-43 170.4-43 96.9.4 143.3 29.6 154.1 39.4 35.7 30.6 53.9 103.8 40.6 211.1zm-139-80.8c.4 8.6-12.5 9.2-12.9.6-1.1-22-11.4-32.7-32.6-33.9-8.6-.5-7.8-13.4.7-12.9 27.9 1.5 43.4 17.5 44.8 46.2zm20.3 11.3c1-42.4-25.5-75.6-75.8-79.3-8.5-.6-7.6-13.5.9-12.9 58 4.2 88.9 44.1 87.8 92.5-.1 8.6-13.1 8.2-12.9-.3zm47 13.4c.1 8.6-12.9 8.7-12.9.1-.6-81.5-54.9-125.9-120.8-126.4-8.5-.1-8.5-12.9 0-12.9 73.7.5 133 51.4 133.7 139.2zM374.9 329v.2c-10.8 19-31 40-51.8 33.3l-.2-.3c-21.1-5.9-70.8-31.5-102.2-56.5-16.2-12.8-31-27.9-42.4-42.4-10.3-12.9-20.7-28.2-30.8-46.6-21.3-38.5-26-55.7-26-55.7-6.7-20.8 14.2-41 33.3-51.8h.2c9.2-4.8 18-3.2 23.9 3.9 0 0 12.4 14.8 17.7 22.1 5 6.8 11.7 17.7 15.2 23.8 6.1 10.9 2.3 22-3.7 26.6l-12 9.6c-6.1 4.9-5.3 14-5.3 14s17.8 67.3 84.3 84.3c0 0 9.1.8 14-5.3l9.6-12c4.6-6 15.7-9.8 26.6-3.7 14.7 8.3 33.4 21.2 45.8 32.9 7 5.7 8.6 14.4 3.8 23.6z\"]\n};\nvar faVimeo = {\n prefix: 'fab',\n iconName: 'vimeo',\n icon: [448, 512, [], \"f40a\", \"M403.2 32H44.8C20.1 32 0 52.1 0 76.8v358.4C0 459.9 20.1 480 44.8 480h358.4c24.7 0 44.8-20.1 44.8-44.8V76.8c0-24.7-20.1-44.8-44.8-44.8zM377 180.8c-1.4 31.5-23.4 74.7-66 129.4-44 57.2-81.3 85.8-111.7 85.8-18.9 0-34.8-17.4-47.9-52.3-25.5-93.3-36.4-148-57.4-148-2.4 0-10.9 5.1-25.4 15.2l-15.2-19.6c37.3-32.8 72.9-69.2 95.2-71.2 25.2-2.4 40.7 14.8 46.5 51.7 20.7 131.2 29.9 151 67.6 91.6 13.5-21.4 20.8-37.7 21.8-48.9 3.5-33.2-25.9-30.9-45.8-22.4 15.9-52.1 46.3-77.4 91.2-76 33.3.9 49 22.5 47.1 64.7z\"]\n};\nvar faVimeoSquare = {\n prefix: 'fab',\n iconName: 'vimeo-square',\n icon: [448, 512, [], \"f194\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16.2 149.6c-1.4 31.1-23.2 73.8-65.3 127.9-43.5 56.5-80.3 84.8-110.4 84.8-18.7 0-34.4-17.2-47.3-51.6-25.2-92.3-35.9-146.4-56.7-146.4-2.4 0-10.8 5-25.1 15.1L64 192c36.9-32.4 72.1-68.4 94.1-70.4 24.9-2.4 40.2 14.6 46 51.1 20.5 129.6 29.6 149.2 66.8 90.5 13.4-21.2 20.6-37.2 21.5-48.3 3.4-32.8-25.6-30.6-45.2-22.2 15.7-51.5 45.8-76.5 90.1-75.1 32.9 1 48.4 22.4 46.5 64z\"]\n};\nvar faVimeoV = {\n prefix: 'fab',\n iconName: 'vimeo-v',\n icon: [448, 512, [], \"f27d\", \"M447.8 153.6c-2 43.6-32.4 103.3-91.4 179.1-60.9 79.2-112.4 118.8-154.6 118.8-26.1 0-48.2-24.1-66.3-72.3C100.3 250 85.3 174.3 56.2 174.3c-3.4 0-15.1 7.1-35.2 21.1L0 168.2c51.6-45.3 100.9-95.7 131.8-98.5 34.9-3.4 56.3 20.5 64.4 71.5 28.7 181.5 41.4 208.9 93.6 126.7 18.7-29.6 28.8-52.1 30.2-67.6 4.8-45.9-35.8-42.8-63.3-31 22-72.1 64.1-107.1 126.2-105.1 45.8 1.2 67.5 31.1 64.9 89.4z\"]\n};\nvar faVine = {\n prefix: 'fab',\n iconName: 'vine',\n icon: [384, 512, [], \"f1ca\", \"M384 254.7v52.1c-18.4 4.2-36.9 6.1-52.1 6.1-36.9 77.4-103 143.8-125.1 156.2-14 7.9-27.1 8.4-42.7-.8C137 452 34.2 367.7 0 102.7h74.5C93.2 261.8 139 343.4 189.3 404.5c27.9-27.9 54.8-65.1 75.6-106.9-49.8-25.3-80.1-80.9-80.1-145.6 0-65.6 37.7-115.1 102.2-115.1 114.9 0 106.2 127.9 81.6 181.5 0 0-46.4 9.2-63.5-20.5 3.4-11.3 8.2-30.8 8.2-48.5 0-31.3-11.3-46.6-28.4-46.6-18.2 0-30.8 17.1-30.8 50 .1 79.2 59.4 118.7 129.9 101.9z\"]\n};\nvar faVk = {\n prefix: 'fab',\n iconName: 'vk',\n icon: [576, 512, [], \"f189\", \"M545 117.7c3.7-12.5 0-21.7-17.8-21.7h-58.9c-15 0-21.9 7.9-25.6 16.7 0 0-30 73.1-72.4 120.5-13.7 13.7-20 18.1-27.5 18.1-3.7 0-9.4-4.4-9.4-16.9V117.7c0-15-4.2-21.7-16.6-21.7h-92.6c-9.4 0-15 7-15 13.5 0 14.2 21.2 17.5 23.4 57.5v86.8c0 19-3.4 22.5-10.9 22.5-20 0-68.6-73.4-97.4-157.4-5.8-16.3-11.5-22.9-26.6-22.9H38.8c-16.8 0-20.2 7.9-20.2 16.7 0 15.6 20 93.1 93.1 195.5C160.4 378.1 229 416 291.4 416c37.5 0 42.1-8.4 42.1-22.9 0-66.8-3.4-73.1 15.4-73.1 8.7 0 23.7 4.4 58.7 38.1 40 40 46.6 57.9 69 57.9h58.9c16.8 0 25.3-8.4 20.4-25-11.2-34.9-86.9-106.7-90.3-111.5-8.7-11.2-6.2-16.2 0-26.2.1-.1 72-101.3 79.4-135.6z\"]\n};\nvar faVnv = {\n prefix: 'fab',\n iconName: 'vnv',\n icon: [640, 512, [], \"f40b\", \"M104.9 352c-34.1 0-46.4-30.4-46.4-30.4L2.6 210.1S-7.8 192 13 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.7-74.5c5.6-9.5 8.4-18.1 18.8-18.1h32.8c20.8 0 10.4 18.1 10.4 18.1l-55.8 111.5S174.2 352 140 352h-35.1zm395 0c-34.1 0-46.4-30.4-46.4-30.4l-55.9-111.5S387.2 192 408 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.8-74.5c5.6-9.5 8.4-18.1 18.8-18.1H627c20.8 0 10.4 18.1 10.4 18.1l-55.9 111.5S569.3 352 535.1 352h-35.2zM337.6 192c34.1 0 46.4 30.4 46.4 30.4l55.9 111.5s10.4 18.1-10.4 18.1h-32.8c-10.4 0-13.2-8.7-18.8-18.1l-36.7-74.5s-5.2-13.1-21.1-13.1c-15.9 0-21.1 13.1-21.1 13.1l-36.7 74.5c-5.6 9.4-8.4 18.1-18.8 18.1h-32.9c-20.8 0-10.4-18.1-10.4-18.1l55.9-111.5s12.2-30.4 46.4-30.4h35.1z\"]\n};\nvar faVuejs = {\n prefix: 'fab',\n iconName: 'vuejs',\n icon: [448, 512, [], \"f41f\", \"M356.9 64.3H280l-56 88.6-48-88.6H0L224 448 448 64.3h-91.1zm-301.2 32h53.8L224 294.5 338.4 96.3h53.8L224 384.5 55.7 96.3z\"]\n};\nvar faWatchmanMonitoring = {\n prefix: 'fab',\n iconName: 'watchman-monitoring',\n icon: [512, 512, [], \"e087\", \"M256,16C123.452,16,16,123.452,16,256S123.452,496,256,496,496,388.548,496,256,388.548,16,256,16ZM121.69,429.122C70.056,388.972,36.741,326.322,36.741,256a218.519,218.519,0,0,1,9.587-64.122l102.9-17.895-.121,10.967-13.943,2.013s-.144,12.5-.144,19.549a12.778,12.778,0,0,0,4.887,10.349l9.468,7.4Zm105.692-283.27,8.48-7.618s6.934-5.38-.143-9.344c-7.188-4.024-39.53-34.5-39.53-34.5-5.348-5.477-8.257-7.347-15.46,0,0,0-32.342,30.474-39.529,34.5-7.078,3.964-.144,9.344-.144,9.344l8.481,7.618-.048,4.369L75.982,131.045c39.644-56.938,105.532-94.3,180.018-94.3A218.754,218.754,0,0,1,420.934,111.77l-193.512,37.7Zm34.063,329.269-33.9-250.857,9.467-7.4a12.778,12.778,0,0,0,4.888-10.349c0-7.044-.144-19.549-.144-19.549l-13.943-2.013-.116-10.474,241.711,31.391A218.872,218.872,0,0,1,475.259,256C475.259,375.074,379.831,472.212,261.445,475.121Z\"]\n};\nvar faWaze = {\n prefix: 'fab',\n iconName: 'waze',\n icon: [512, 512, [], \"f83f\", \"M502.17 201.67C516.69 287.53 471.23 369.59 389 409.8c13 34.1-12.4 70.2-48.32 70.2a51.68 51.68 0 0 1-51.57-49c-6.44.19-64.2 0-76.33-.64A51.69 51.69 0 0 1 159 479.92c-33.86-1.36-57.95-34.84-47-67.92-37.21-13.11-72.54-34.87-99.62-70.8-13-17.28-.48-41.8 20.84-41.8 46.31 0 32.22-54.17 43.15-110.26C94.8 95.2 193.12 32 288.09 32c102.48 0 197.15 70.67 214.08 169.67zM373.51 388.28c42-19.18 81.33-56.71 96.29-102.14 40.48-123.09-64.15-228-181.71-228-83.45 0-170.32 55.42-186.07 136-9.53 48.91 5 131.35-68.75 131.35C58.21 358.6 91.6 378.11 127 389.54c24.66-21.8 63.87-15.47 79.83 14.34 14.22 1 79.19 1.18 87.9.82a51.69 51.69 0 0 1 78.78-16.42zM205.12 187.13c0-34.74 50.84-34.75 50.84 0s-50.84 34.74-50.84 0zm116.57 0c0-34.74 50.86-34.75 50.86 0s-50.86 34.75-50.86 0zm-122.61 70.69c-3.44-16.94 22.18-22.18 25.62-5.21l.06.28c4.14 21.42 29.85 44 64.12 43.07 35.68-.94 59.25-22.21 64.11-42.77 4.46-16.05 28.6-10.36 25.47 6-5.23 22.18-31.21 62-91.46 62.9-42.55 0-80.88-27.84-87.9-64.25z\"]\n};\nvar faWeebly = {\n prefix: 'fab',\n iconName: 'weebly',\n icon: [512, 512, [], \"f5cc\", \"M425.09 65.83c-39.88 0-73.28 25.73-83.66 64.33-18.16-58.06-65.5-64.33-84.95-64.33-19.78 0-66.8 6.28-85.28 64.33-10.38-38.6-43.45-64.33-83.66-64.33C38.59 65.83 0 99.72 0 143.03c0 28.96 4.18 33.27 77.17 233.48 22.37 60.57 67.77 69.35 92.74 69.35 39.23 0 70.04-19.46 85.93-53.98 15.89 34.83 46.69 54.29 85.93 54.29 24.97 0 70.36-9.1 92.74-69.67 76.55-208.65 77.5-205.58 77.5-227.2.63-48.32-36.01-83.47-86.92-83.47zm26.34 114.81l-65.57 176.44c-7.92 21.49-21.22 37.22-46.24 37.22-23.44 0-37.38-12.41-44.03-33.9l-39.28-117.42h-.95L216.08 360.4c-6.96 21.5-20.9 33.6-44.02 33.6-25.02 0-38.33-15.74-46.24-37.22L60.88 181.55c-5.38-14.83-7.92-23.91-7.92-34.5 0-16.34 15.84-29.36 38.33-29.36 18.69 0 31.99 11.8 36.11 29.05l44.03 139.82h.95l44.66-136.79c6.02-19.67 16.47-32.08 38.96-32.08s32.94 12.11 38.96 32.08l44.66 136.79h.95l44.03-139.82c4.12-17.25 17.42-29.05 36.11-29.05 22.17 0 38.33 13.32 38.33 35.71-.32 7.87-4.12 16.04-7.61 27.24z\"]\n};\nvar faWeibo = {\n prefix: 'fab',\n iconName: 'weibo',\n icon: [512, 512, [], \"f18a\", \"M407 177.6c7.6-24-13.4-46.8-37.4-41.7-22 4.8-28.8-28.1-7.1-32.8 50.1-10.9 92.3 37.1 76.5 84.8-6.8 21.2-38.8 10.8-32-10.3zM214.8 446.7C108.5 446.7 0 395.3 0 310.4c0-44.3 28-95.4 76.3-143.7C176 67 279.5 65.8 249.9 161c-4 13.1 12.3 5.7 12.3 6 79.5-33.6 140.5-16.8 114 51.4-3.7 9.4 1.1 10.9 8.3 13.1 135.7 42.3 34.8 215.2-169.7 215.2zm143.7-146.3c-5.4-55.7-78.5-94-163.4-85.7-84.8 8.6-148.8 60.3-143.4 116s78.5 94 163.4 85.7c84.8-8.6 148.8-60.3 143.4-116zM347.9 35.1c-25.9 5.6-16.8 43.7 8.3 38.3 72.3-15.2 134.8 52.8 111.7 124-7.4 24.2 29.1 37 37.4 12 31.9-99.8-55.1-195.9-157.4-174.3zm-78.5 311c-17.1 38.8-66.8 60-109.1 46.3-40.8-13.1-58-53.4-40.3-89.7 17.7-35.4 63.1-55.4 103.4-45.1 42 10.8 63.1 50.2 46 88.5zm-86.3-30c-12.9-5.4-30 .3-38 12.9-8.3 12.9-4.3 28 8.6 34 13.1 6 30.8.3 39.1-12.9 8-13.1 3.7-28.3-9.7-34zm32.6-13.4c-5.1-1.7-11.4.6-14.3 5.4-2.9 5.1-1.4 10.6 3.7 12.9 5.1 2 11.7-.3 14.6-5.4 2.8-5.2 1.1-10.9-4-12.9z\"]\n};\nvar faWeixin = {\n prefix: 'fab',\n iconName: 'weixin',\n icon: [576, 512, [], \"f1d7\", \"M385.2 167.6c6.4 0 12.6.3 18.8 1.1C387.4 90.3 303.3 32 207.7 32 100.5 32 13 104.8 13 197.4c0 53.4 29.3 97.5 77.9 131.6l-19.3 58.6 68-34.1c24.4 4.8 43.8 9.7 68.2 9.7 6.2 0 12.1-.3 18.3-.8-4-12.9-6.2-26.6-6.2-40.8-.1-84.9 72.9-154 165.3-154zm-104.5-52.9c14.5 0 24.2 9.7 24.2 24.4 0 14.5-9.7 24.2-24.2 24.2-14.8 0-29.3-9.7-29.3-24.2.1-14.7 14.6-24.4 29.3-24.4zm-136.4 48.6c-14.5 0-29.3-9.7-29.3-24.2 0-14.8 14.8-24.4 29.3-24.4 14.8 0 24.4 9.7 24.4 24.4 0 14.6-9.6 24.2-24.4 24.2zM563 319.4c0-77.9-77.9-141.3-165.4-141.3-92.7 0-165.4 63.4-165.4 141.3S305 460.7 397.6 460.7c19.3 0 38.9-5.1 58.6-9.9l53.4 29.3-14.8-48.6C534 402.1 563 363.2 563 319.4zm-219.1-24.5c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.8 0 24.4 9.7 24.4 19.3 0 10-9.7 19.6-24.4 19.6zm107.1 0c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.5 0 24.4 9.7 24.4 19.3.1 10-9.9 19.6-24.4 19.6z\"]\n};\nvar faWhatsapp = {\n prefix: 'fab',\n iconName: 'whatsapp',\n icon: [448, 512, [], \"f232\", \"M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z\"]\n};\nvar faWhatsappSquare = {\n prefix: 'fab',\n iconName: 'whatsapp-square',\n icon: [448, 512, [], \"f40c\", \"M224 122.8c-72.7 0-131.8 59.1-131.9 131.8 0 24.9 7 49.2 20.2 70.1l3.1 5-13.3 48.6 49.9-13.1 4.8 2.9c20.2 12 43.4 18.4 67.1 18.4h.1c72.6 0 133.3-59.1 133.3-131.8 0-35.2-15.2-68.3-40.1-93.2-25-25-58-38.7-93.2-38.7zm77.5 188.4c-3.3 9.3-19.1 17.7-26.7 18.8-12.6 1.9-22.4.9-47.5-9.9-39.7-17.2-65.7-57.2-67.7-59.8-2-2.6-16.2-21.5-16.2-41s10.2-29.1 13.9-33.1c3.6-4 7.9-5 10.6-5 2.6 0 5.3 0 7.6.1 2.4.1 5.7-.9 8.9 6.8 3.3 7.9 11.2 27.4 12.2 29.4s1.7 4.3.3 6.9c-7.6 15.2-15.7 14.6-11.6 21.6 15.3 26.3 30.6 35.4 53.9 47.1 4 2 6.3 1.7 8.6-1 2.3-2.6 9.9-11.6 12.5-15.5 2.6-4 5.3-3.3 8.9-2 3.6 1.3 23.1 10.9 27.1 12.9s6.6 3 7.6 4.6c.9 1.9.9 9.9-2.4 19.1zM400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM223.9 413.2c-26.6 0-52.7-6.7-75.8-19.3L64 416l22.5-82.2c-13.9-24-21.2-51.3-21.2-79.3C65.4 167.1 136.5 96 223.9 96c42.4 0 82.2 16.5 112.2 46.5 29.9 30 47.9 69.8 47.9 112.2 0 87.4-72.7 158.5-160.1 158.5z\"]\n};\nvar faWhmcs = {\n prefix: 'fab',\n iconName: 'whmcs',\n icon: [448, 512, [], \"f40d\", \"M448 161v-21.3l-28.5-8.8-2.2-10.4 20.1-20.7L427 80.4l-29 7.5-7.2-7.5 7.5-28.2-19.1-11.6-21.3 21-10.7-3.2-7-26.4h-22.6l-6.2 26.4-12.1 3.2-19.7-21-19.4 11 8.1 27.7-8.1 8.4-28.5-7.5-11 19.1 20.7 21-2.9 10.4-28.5 7.8-.3 21.7 28.8 7.5 2.4 12.1-20.1 19.9 10.4 18.5 29.6-7.5 7.2 8.6-8.1 26.9 19.9 11.6 19.4-20.4 11.6 2.9 6.7 28.5 22.6.3 6.7-28.8 11.6-3.5 20.7 21.6 20.4-12.1-8.8-28 7.8-8.1 28.8 8.8 10.3-20.1-20.9-18.8 2.2-12.1 29.1-7zm-119.2 45.2c-31.3 0-56.8-25.4-56.8-56.8s25.4-56.8 56.8-56.8 56.8 25.4 56.8 56.8c0 31.5-25.4 56.8-56.8 56.8zm72.3 16.4l46.9 14.5V277l-55.1 13.4-4.1 22.7 38.9 35.3-19.2 37.9-54-16.7-14.6 15.2 16.7 52.5-38.3 22.7-38.9-40.5-21.7 6.6-12.6 54-42.4-.5-12.6-53.6-21.7-5.6-36.4 38.4-37.4-21.7 15.2-50.5-13.7-16.1-55.5 14.1-19.7-34.8 37.9-37.4-4.8-22.8-54-14.1.5-40.9L54 219.9l5.7-19.7-38.9-39.4L41.5 125l53.6 14.1 15.2-15.7-15.2-52 36.4-20.7 36.8 39.4L191 84l11.6-52H245l11.6 45.9L234 72l-6.3-1.7-3.3 5.7-11 19.1-3.3 5.6 4.6 4.6 17.2 17.4-.3 1-23.8 6.5-6.2 1.7-.1 6.4-.2 12.9C153.8 161.6 118 204 118 254.7c0 58.3 47.3 105.7 105.7 105.7 50.5 0 92.7-35.4 103.2-82.8l13.2.2 6.9.1 1.6-6.7 5.6-24 1.9-.6 17.1 17.8 4.7 4.9 5.8-3.4 20.4-12.1 5.8-3.5-2-6.5-6.8-21.2z\"]\n};\nvar faWikipediaW = {\n prefix: 'fab',\n iconName: 'wikipedia-w',\n icon: [640, 512, [], \"f266\", \"M640 51.2l-.3 12.2c-28.1.8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3.3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4.2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5.3v13.1c-19.4.6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4.3-3.6 0-10.3.3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5.8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1.2.5z\"]\n};\nvar faWindows = {\n prefix: 'fab',\n iconName: 'windows',\n icon: [448, 512, [], \"f17a\", \"M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z\"]\n};\nvar faWix = {\n prefix: 'fab',\n iconName: 'wix',\n icon: [640, 512, [], \"f5cf\", \"M393.38 131.69c0 13.03 2.08 32.69-28.68 43.83-9.52 3.45-15.95 9.66-15.95 9.66 0-31 4.72-42.22 17.4-48.86 9.75-5.11 27.23-4.63 27.23-4.63zm-115.8 35.54l-34.24 132.66-28.48-108.57c-7.69-31.99-20.81-48.53-48.43-48.53-27.37 0-40.66 16.18-48.43 48.53L89.52 299.89 55.28 167.23C49.73 140.51 23.86 128.96 0 131.96l65.57 247.93s21.63 1.56 32.46-3.96c14.22-7.25 20.98-12.84 29.59-46.57 7.67-30.07 29.11-118.41 31.12-124.7 4.76-14.94 11.09-13.81 15.4 0 1.97 6.3 23.45 94.63 31.12 124.7 8.6 33.73 15.37 39.32 29.59 46.57 10.82 5.52 32.46 3.96 32.46 3.96l65.57-247.93c-24.42-3.07-49.82 8.93-55.3 35.27zm115.78 5.21s-4.1 6.34-13.46 11.57c-6.01 3.36-11.78 5.64-17.97 8.61-15.14 7.26-13.18 13.95-13.18 35.2v152.07s16.55 2.09 27.37-3.43c13.93-7.1 17.13-13.95 17.26-44.78V181.41l-.02.01v-8.98zm163.44 84.08L640 132.78s-35.11-5.98-52.5 9.85c-13.3 12.1-24.41 29.55-54.18 72.47-.47.73-6.25 10.54-13.07 0-29.29-42.23-40.8-60.29-54.18-72.47-17.39-15.83-52.5-9.85-52.5-9.85l83.2 123.74-82.97 123.36s36.57 4.62 53.95-11.21c11.49-10.46 17.58-20.37 52.51-70.72 6.81-10.52 12.57-.77 13.07 0 29.4 42.38 39.23 58.06 53.14 70.72 17.39 15.83 53.32 11.21 53.32 11.21L556.8 256.52z\"]\n};\nvar faWizardsOfTheCoast = {\n prefix: 'fab',\n iconName: 'wizards-of-the-coast',\n icon: [640, 512, [], \"f730\", \"M219.19 345.69c-1.9 1.38-11.07 8.44-.26 23.57 4.64 6.42 14.11 12.79 21.73 6.55 6.5-4.88 7.35-12.92.26-23.04-5.47-7.76-14.28-12.88-21.73-7.08zm336.75 75.94c-.34 1.7-.55 1.67.79 0 2.09-4.19 4.19-10.21 4.98-19.9 3.14-38.49-40.33-71.49-101.34-78.03-54.73-6.02-124.38 9.17-188.8 60.49l-.26 1.57c2.62 4.98 4.98 10.74 3.4 21.21l.79.26c63.89-58.4 131.19-77.25 184.35-73.85 58.4 3.67 100.03 34.04 100.03 68.08-.01 9.96-2.63 15.72-3.94 20.17zM392.28 240.42c.79 7.07 4.19 10.21 9.17 10.47 5.5.26 9.43-2.62 10.47-6.55.79-3.4 2.09-29.85 2.09-29.85s-11.26 6.55-14.93 10.47c-3.66 3.68-7.33 8.39-6.8 15.46zm-50.02-151.1C137.75 89.32 13.1 226.8.79 241.2c-1.05.52-1.31.79.79 1.31 60.49 16.5 155.81 81.18 196.13 202.16l1.05.26c55.25-69.92 140.88-128.05 236.99-128.05 80.92 0 130.15 42.16 130.15 80.39 0 18.33-6.55 33.52-22.26 46.35 0 .96-.2.79.79.79 14.66-10.74 27.5-28.8 27.5-48.18 0-22.78-12.05-38.23-12.05-38.23 7.07 7.07 10.74 16.24 10.74 16.24 5.76-40.85 26.97-62.32 26.97-62.32-2.36-9.69-6.81-17.81-6.81-17.81 7.59 8.12 14.4 27.5 14.4 41.37 0 10.47-3.4 22.78-12.57 31.95l.26.52c8.12-4.98 16.5-16.76 16.5-37.97 0-15.71-4.71-25.92-4.71-25.92 5.76-5.24 11.26-9.17 15.97-11.78.79 3.4 2.09 9.69 2.36 14.93 0 1.05.79 1.83 1.05 0 .79-5.76-.26-16.24-.26-16.5 6.02-3.14 9.69-4.45 9.69-4.45C617.74 176 489.43 89.32 342.26 89.32zm-99.24 289.62c-11.06 8.99-24.2 4.08-30.64-4.19-7.45-9.58-6.76-24.09 4.19-32.47 14.85-11.35 27.08-.49 31.16 5.5.28.39 12.13 16.57-4.71 31.16zm2.09-136.43l9.43-17.81 11.78 70.96-12.57 6.02-24.62-28.8 14.14-26.71 3.67 4.45-1.83-8.11zm18.59 117.58l-.26-.26c2.05-4.1-2.5-6.61-17.54-31.69-1.31-2.36-3.14-2.88-4.45-2.62l-.26-.52c7.86-5.76 15.45-10.21 25.4-15.71l.52.26c1.31 1.83 2.09 2.88 3.4 4.71l-.26.52c-1.05-.26-2.36-.79-5.24.26-2.09.79-7.86 3.67-12.31 7.59v1.31c1.57 2.36 3.93 6.55 5.76 9.69h.26c10.05-6.28 7.56-4.55 11.52-7.86h.26c.52 1.83.52 1.83 1.83 5.5l-.26.26c-3.06.61-4.65.34-11.52 5.5v.26c9.46 17.02 11.01 16.75 12.57 15.97l.26.26c-2.34 1.59-6.27 4.21-9.68 6.57zm55.26-32.47c-3.14 1.57-6.02 2.88-9.95 4.98l-.26-.26c1.29-2.59 1.16-2.71-11.78-32.47l-.26-.26c-.15 0-8.9 3.65-9.95 7.33h-.52l-1.05-5.76.26-.52c7.29-4.56 25.53-11.64 27.76-12.57l.52.26 3.14 4.98-.26.52c-3.53-1.76-7.35.76-12.31 2.62v.26c12.31 32.01 12.67 30.64 14.66 30.64v.25zm44.77-16.5c-4.19 1.05-5.24 1.31-9.69 2.88l-.26-.26.52-4.45c-1.05-3.4-3.14-11.52-3.67-13.62l-.26-.26c-3.4.79-8.9 2.62-12.83 3.93l-.26.26c.79 2.62 3.14 9.95 4.19 13.88.79 2.36 1.83 2.88 2.88 3.14v.52c-3.67 1.05-7.07 2.62-10.21 3.93l-.26-.26c1.05-1.31 1.05-2.88.26-4.98-1.05-3.14-8.12-23.83-9.17-27.23-.52-1.83-1.57-3.14-2.62-3.14v-.52c3.14-1.05 6.02-2.09 10.74-3.4l.26.26-.26 4.71c1.31 3.93 2.36 7.59 3.14 9.69h.26c3.93-1.31 9.43-2.88 12.83-3.93l.26-.26-2.62-9.43c-.52-1.83-1.05-3.4-2.62-3.93v-.26c4.45-1.05 7.33-1.83 10.74-2.36l.26.26c-1.05 1.31-1.05 2.88-.52 4.45 1.57 6.28 4.71 20.43 6.28 26.45.54 2.62 1.85 3.41 2.63 3.93zm32.21-6.81l-.26.26c-4.71.52-14.14 2.36-22.52 4.19l-.26-.26.79-4.19c-1.57-7.86-3.4-18.59-4.98-26.19-.26-1.83-.79-2.88-2.62-3.67l.79-.52c9.17-1.57 20.16-2.36 24.88-2.62l.26.26c.52 2.36.79 3.14 1.57 5.5l-.26.26c-1.14-1.14-3.34-3.2-16.24-.79l-.26.26c.26 1.57 1.05 6.55 1.57 9.95l.26.26c9.52-1.68 4.76-.06 10.74-2.36h.26c0 1.57-.26 1.83-.26 5.24h-.26c-4.81-1.03-2.15-.9-10.21 0l-.26.26c.26 2.09 1.57 9.43 2.09 12.57l.26.26c1.15.38 14.21-.65 16.24-4.71h.26c-.53 2.38-1.05 4.21-1.58 6.04zm10.74-44.51c-4.45 2.36-8.12 2.88-11 2.88-.25.02-11.41 1.09-17.54-9.95-6.74-10.79-.98-25.2 5.5-31.69 8.8-8.12 23.35-10.1 28.54-17.02 8.03-10.33-13.04-22.31-29.59-5.76l-2.62-2.88 5.24-16.24c25.59-1.57 45.2-3.04 50.02 16.24.79 3.14 0 9.43-.26 12.05 0 2.62-1.83 18.85-2.09 23.04-.52 4.19-.79 18.33-.79 20.69.26 2.36.52 4.19 1.57 5.5 1.57 1.83 5.76 1.83 5.76 1.83l-.79 4.71c-11.82-1.07-10.28-.59-20.43-1.05-3.22-5.15-2.23-3.28-4.19-7.86 0 .01-4.19 3.94-7.33 5.51zm37.18 21.21c-6.35-10.58-19.82-7.16-21.73 5.5-2.63 17.08 14.3 19.79 20.69 10.21l.26.26c-.52 1.83-1.83 6.02-1.83 6.28l-.52.52c-10.3 6.87-28.5-2.5-25.66-18.59 1.94-10.87 14.44-18.93 28.8-9.95l.26.52c0 1.06-.27 3.41-.27 5.25zm5.77-87.73v-6.55c.69 0 19.65 3.28 27.76 7.33l-1.57 17.54s10.21-9.43 15.45-10.74c5.24-1.57 14.93 7.33 14.93 7.33l-11.26 11.26c-12.07-6.35-19.59-.08-20.69.79-5.29 38.72-8.6 42.17 4.45 46.09l-.52 4.71c-17.55-4.29-18.53-4.5-36.92-7.33l.79-4.71c7.25 0 7.48-5.32 7.59-6.81 0 0 4.98-53.16 4.98-55.25-.02-2.87-4.99-3.66-4.99-3.66zm10.99 114.44c-8.12-2.09-14.14-11-10.74-20.69 3.14-9.43 12.31-12.31 18.85-10.21 9.17 2.62 12.83 11.78 10.74 19.38-2.61 8.9-9.42 13.87-18.85 11.52zm42.16 9.69c-2.36-.52-7.07-2.36-8.64-2.88v-.26l1.57-1.83c.59-8.24.59-7.27.26-7.59-4.82-1.81-6.66-2.36-7.07-2.36-1.31 1.83-2.88 4.45-3.67 5.5l-.79 3.4v.26c-1.31-.26-3.93-1.31-6.02-1.57v-.26l2.62-1.83c3.4-4.71 9.95-14.14 13.88-20.16v-2.09l.52-.26c2.09.79 5.5 2.09 7.59 2.88.48.48.18-1.87-1.05 25.14-.24 1.81.02 2.6.8 3.91zm-4.71-89.82c11.25-18.27 30.76-16.19 34.04-3.4L539.7 198c2.34-6.25-2.82-9.9-4.45-11.26l1.83-3.67c12.22 10.37 16.38 13.97 22.52 20.43-25.91 73.07-30.76 80.81-24.62 84.32l-1.83 4.45c-6.37-3.35-8.9-4.42-17.81-8.64l2.09-6.81c-.26-.26-3.93 3.93-9.69 3.67-19.06-1.3-22.89-31.75-9.67-52.9zm29.33 79.34c0-5.71-6.34-7.89-7.86-5.24-1.31 2.09 1.05 4.98 2.88 8.38 1.57 2.62 2.62 6.28 1.05 9.43-2.64 6.34-12.4 5.31-15.45-.79 0-.7-.27.09 1.83-4.71l.79-.26c-.57 5.66 6.06 9.61 8.38 4.98 1.05-2.09-.52-5.5-2.09-8.38-1.57-2.62-3.67-6.28-1.83-9.69 2.72-5.06 11.25-4.47 14.66 2.36v.52l-2.36 3.4zm21.21 13.36c-1.96-3.27-.91-2.14-4.45-4.71h-.26c-2.36 4.19-5.76 10.47-8.64 16.24-1.31 2.36-1.05 3.4-.79 3.93l-.26.26-5.76-4.45.26-.26 2.09-1.31c3.14-5.76 6.55-12.05 9.17-17.02v-.26c-2.64-1.98-1.22-1.51-6.02-1.83v-.26l3.14-3.4h.26c3.67 2.36 9.95 6.81 12.31 8.9l.26.26-1.31 3.91zm27.23-44.26l-2.88-2.88c.79-2.36 1.83-4.98 2.09-7.59.75-9.74-11.52-11.84-11.52-4.98 0 4.98 7.86 19.38 7.86 27.76 0 10.21-5.76 15.71-13.88 16.5-8.38.79-20.16-10.47-20.16-10.47l4.98-14.4 2.88 2.09c-2.97 17.8 17.68 20.37 13.35 5.24-1.06-4.02-18.75-34.2 2.09-38.23 13.62-2.36 23.04 16.5 23.04 16.5l-7.85 10.46zm35.62-10.21c-11-30.38-60.49-127.53-191.95-129.62-53.42-1.05-94.27 15.45-132.76 37.97l85.63-9.17-91.39 20.69 25.14 19.64-3.93-16.5c7.5-1.71 39.15-8.45 66.77-8.9l-22.26 80.39c13.61-.7 18.97-8.98 19.64-22.78l4.98-1.05.26 26.71c-22.46 3.21-37.3 6.69-49.49 9.95l13.09-43.21-61.54-36.66 2.36 8.12 10.21 4.98c6.28 18.59 19.38 56.56 20.43 58.66 1.95 4.28 3.16 5.78 12.05 4.45l1.05 4.98c-16.08 4.86-23.66 7.61-39.02 14.4l-2.36-4.71c4.4-2.94 8.73-3.94 5.5-12.83-23.7-62.5-21.48-58.14-22.78-59.44l2.36-4.45 33.52 67.3c-3.84-11.87 1.68 1.69-32.99-78.82l-41.9 88.51 4.71-13.88-35.88-42.16 27.76 93.48-11.78 8.38C95 228.58 101.05 231.87 93.23 231.52c-5.5-.26-13.62 5.5-13.62 5.5L74.63 231c30.56-23.53 31.62-24.33 58.4-42.68l4.19 7.07s-5.76 4.19-7.86 7.07c-5.9 9.28 1.67 13.28 61.8 75.68l-18.85-58.92 39.8-10.21 25.66 30.64 4.45-12.31-4.98-24.62 13.09-3.4.52 3.14 3.67-10.47-94.27 29.33 11.26-4.98-13.62-42.42 17.28-9.17 30.11 36.14 28.54-13.09c-1.41-7.47-2.47-14.5-4.71-19.64l17.28 13.88 4.71-2.09-59.18-42.68 23.08 11.5c18.98-6.07 25.23-7.47 32.21-9.69l2.62 11c-12.55 12.55 1.43 16.82 6.55 19.38l-13.62-61.01 12.05 28.28c4.19-1.31 7.33-2.09 7.33-2.09l2.62 8.64s-3.14 1.05-6.28 2.09l8.9 20.95 33.78-65.73-20.69 61.01c42.42-24.09 81.44-36.66 131.98-35.88 67.04 1.05 167.33 40.85 199.8 139.83.78 2.1-.01 2.63-.79.27zM203.48 152.43s1.83-.52 4.19-1.31l9.43 7.59c-.4 0-3.44-.25-11.26 2.36l-2.36-8.64zm143.76 38.5c-1.57-.6-26.46-4.81-33.26 20.69l21.73 17.02 11.53-37.71zM318.43 67.07c-58.4 0-106.05 12.05-114.96 14.4v.79c8.38 2.09 14.4 4.19 21.21 11.78l1.57.26c6.55-1.83 48.97-13.88 110.24-13.88 180.16 0 301.67 116.79 301.67 223.37v9.95c0 1.31.79 2.62 1.05.52.52-2.09.79-8.64.79-19.64.26-83.79-96.63-227.55-321.57-227.55zm211.06 169.68c1.31-5.76 0-12.31-7.33-13.09-9.62-1.13-16.14 23.79-17.02 33.52-.79 5.5-1.31 14.93 6.02 14.93 4.68-.01 9.72-.91 18.33-35.36zm-61.53 42.95c-2.62-.79-9.43-.79-12.57 10.47-1.83 6.81.52 13.35 6.02 14.66 3.67 1.05 8.9.52 11.78-10.74 2.62-9.94-1.83-13.61-5.23-14.39zM491 300.65c1.83.52 3.14 1.05 5.76 1.83 0-1.83.52-8.38.79-12.05-1.05 1.31-5.5 8.12-6.55 9.95v.27z\"]\n};\nvar faWodu = {\n prefix: 'fab',\n iconName: 'wodu',\n icon: [640, 512, [], \"e088\", \"M178.414 339.706H141.1L112.166 223.475h-.478L83.228 339.706H45.2L0 168.946H37.548L64.574 285.177h.478L94.707 168.946h35.157l29.178 117.667h.479L187.5 168.946h36.831zM271.4 212.713c38.984 0 64.1 25.828 64.1 65.291 0 39.222-25.111 65.05-64.1 65.05-38.743 0-63.855-25.828-63.855-65.05C207.547 238.541 232.659 212.713 271.4 212.713zm0 104.753c23.2 0 30.133-19.852 30.133-39.462 0-19.852-6.934-39.7-30.133-39.7-27.7 0-29.894 19.85-29.894 39.7C241.508 297.614 248.443 317.466 271.4 317.466zM435.084 323.922h-.478c-7.893 13.392-21.765 19.132-37.548 19.132-37.31 0-55.485-32.045-55.485-66.246 0-33.243 18.415-64.095 54.767-64.095 14.589 0 28.938 6.218 36.831 18.416h.24V168.946h33.96v170.76H435.084zM405.428 238.3c-22.24 0-29.894 19.134-29.894 39.463 0 19.371 8.848 39.7 29.894 39.7 22.482 0 29.178-19.613 29.178-39.94C434.606 257.436 427.432 238.3 405.428 238.3zM592.96 339.706H560.673V322.487h-.718c-8.609 13.87-23.436 20.567-37.786 20.567-36.113 0-45.2-20.328-45.2-50.941V216.061h33.959V285.9c0 20.329 5.979 30.372 21.765 30.372 18.415 0 26.306-10.283 26.306-35.393V216.061H592.96zM602.453 302.876H640v36.83H602.453z\"]\n};\nvar faWolfPackBattalion = {\n prefix: 'fab',\n iconName: 'wolf-pack-battalion',\n icon: [512, 512, [], \"f514\", \"M267.73 471.53l10.56 15.84 5.28-12.32 5.28 7V512c21.06-7.92 21.11-66.86 25.51-97.21 4.62-31.89-.88-92.81 81.37-149.11-8.88-23.61-12-49.43-2.64-80.05C421 189 447 196.21 456.43 239.73l-30.35 8.36c11.15 23 17 46.76 13.2 72.14L412 313.18l-6.16 33.43-18.47-7-8.8 33.39-19.35-7 26.39 21.11 8.8-28.15L419 364.2l7-35.63 26.39 14.52c.25-20 7-58.06-8.8-84.45l26.39 5.28c4-22.07-2.38-39.21-7.92-56.74l22.43 9.68c-.44-25.07-29.94-56.79-61.58-58.5-20.22-1.09-56.74-25.17-54.1-51.9 2-19.87 17.45-42.62 43.11-49.7-44 36.51-9.68 67.3 5.28 73.46 4.4-11.44 17.54-69.08 0-130.2-40.39 22.87-89.65 65.1-93.2 147.79l-58 38.71-3.52 93.25L369.78 220l7 7-17.59 3.52-44 38.71-15.84-5.28-28.1 49.25-3.52 119.64 21.11 15.84-32.55 15.84-32.55-15.84 21.11-15.84-3.52-119.64-28.15-49.26-15.84 5.28-44-38.71-17.58-3.51 7-7 107.33 59.82-3.52-93.25-58.06-38.71C185 65.1 135.77 22.87 95.3 0c-17.54 61.12-4.4 118.76 0 130.2 15-6.16 49.26-36.95 5.28-73.46 25.66 7.08 41.15 29.83 43.11 49.7 2.63 26.74-33.88 50.81-54.1 51.9-31.65 1.72-61.15 33.44-61.59 58.51l22.43-9.68c-5.54 17.53-11.91 34.67-7.92 56.74l26.39-5.28c-15.76 26.39-9.05 64.43-8.8 84.45l26.39-14.52 7 35.63 24.63-5.28 8.8 28.15L153.35 366 134 373l-8.8-33.43-18.47 7-6.16-33.43-27.27 7c-3.82-25.38 2-49.1 13.2-72.14l-30.35-8.36c9.4-43.52 35.47-50.77 63.34-54.1 9.36 30.62 6.24 56.45-2.64 80.05 82.25 56.3 76.75 117.23 81.37 149.11 4.4 30.35 4.45 89.29 25.51 97.21v-29.83l5.28-7 5.28 12.32 10.56-15.84 11.44 21.11 11.43-21.1zm79.17-95L331.06 366c7.47-4.36 13.76-8.42 19.35-12.32-.6 7.22-.27 13.84-3.51 22.84zm28.15-49.26c-.4 10.94-.9 21.66-1.76 31.67-7.85-1.86-15.57-3.8-21.11-7 8.24-7.94 15.55-16.32 22.87-24.68zm24.63 5.28c0-13.43-2.05-24.21-5.28-33.43a235 235 0 0 1-18.47 27.27zm3.52-80.94c19.44 12.81 27.8 33.66 29.91 56.3-12.32-4.53-24.63-9.31-36.95-10.56 5.06-12 6.65-28.14 7-45.74zm-1.76-45.74c.81 14.3 1.84 28.82 1.76 42.23 19.22-8.11 29.78-9.72 44-14.08-10.61-18.96-27.2-25.53-45.76-28.16zM165.68 376.52L181.52 366c-7.47-4.36-13.76-8.42-19.35-12.32.6 7.26.27 13.88 3.51 22.88zm-28.15-49.26c.4 10.94.9 21.66 1.76 31.67 7.85-1.86 15.57-3.8 21.11-7-8.24-7.93-15.55-16.31-22.87-24.67zm-24.64 5.28c0-13.43 2-24.21 5.28-33.43a235 235 0 0 0 18.47 27.27zm-3.52-80.94c-19.44 12.81-27.8 33.66-29.91 56.3 12.32-4.53 24.63-9.31 37-10.56-5-12-6.65-28.14-7-45.74zm1.76-45.74c-.81 14.3-1.84 28.82-1.76 42.23-19.22-8.11-29.78-9.72-44-14.08 10.63-18.95 27.23-25.52 45.76-28.15z\"]\n};\nvar faWordpress = {\n prefix: 'fab',\n iconName: 'wordpress',\n icon: [512, 512, [], \"f19a\", \"M61.7 169.4l101.5 278C92.2 413 43.3 340.2 43.3 256c0-30.9 6.6-60.1 18.4-86.6zm337.9 75.9c0-26.3-9.4-44.5-17.5-58.7-10.8-17.5-20.9-32.4-20.9-49.9 0-19.6 14.8-37.8 35.7-37.8.9 0 1.8.1 2.8.2-37.9-34.7-88.3-55.9-143.7-55.9-74.3 0-139.7 38.1-177.8 95.9 5 .2 9.7.3 13.7.3 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l77.5 230.4L249.8 247l-33.1-90.8c-11.5-.7-22.3-2-22.3-2-11.5-.7-10.1-18.2 1.3-17.5 0 0 35.1 2.7 56 2.7 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l76.9 228.7 21.2-70.9c9-29.4 16-50.5 16-68.7zm-139.9 29.3l-63.8 185.5c19.1 5.6 39.2 8.7 60.1 8.7 24.8 0 48.5-4.3 70.6-12.1-.6-.9-1.1-1.9-1.5-2.9l-65.4-179.2zm183-120.7c.9 6.8 1.4 14 1.4 21.9 0 21.6-4 45.8-16.2 76.2l-65 187.9C426.2 403 468.7 334.5 468.7 256c0-37-9.4-71.8-26-102.1zM504 256c0 136.8-111.3 248-248 248C119.2 504 8 392.7 8 256 8 119.2 119.2 8 256 8c136.7 0 248 111.2 248 248zm-11.4 0c0-130.5-106.2-236.6-236.6-236.6C125.5 19.4 19.4 125.5 19.4 256S125.6 492.6 256 492.6c130.5 0 236.6-106.1 236.6-236.6z\"]\n};\nvar faWordpressSimple = {\n prefix: 'fab',\n iconName: 'wordpress-simple',\n icon: [512, 512, [], \"f411\", \"M256 8C119.3 8 8 119.2 8 256c0 136.7 111.3 248 248 248s248-111.3 248-248C504 119.2 392.7 8 256 8zM33 256c0-32.3 6.9-63 19.3-90.7l106.4 291.4C84.3 420.5 33 344.2 33 256zm223 223c-21.9 0-43-3.2-63-9.1l66.9-194.4 68.5 187.8c.5 1.1 1 2.1 1.6 3.1-23.1 8.1-48 12.6-74 12.6zm30.7-327.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-21.9 0-58.7-2.8-58.7-2.8-12-.7-13.4 17.7-1.4 18.4 0 0 11.4 1.4 23.4 2.1l34.7 95.2L200.6 393l-81.2-241.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-4.2 0-9.1-.1-14.4-.3C109.6 73 178.1 33 256 33c58 0 110.9 22.2 150.6 58.5-1-.1-1.9-.2-2.9-.2-21.9 0-37.4 19.1-37.4 39.6 0 18.4 10.6 33.9 21.9 52.3 8.5 14.8 18.4 33.9 18.4 61.5 0 19.1-7.3 41.2-17 72.1l-22.2 74.3-80.7-239.6zm81.4 297.2l68.1-196.9c12.7-31.8 17-57.2 17-79.9 0-8.2-.5-15.8-1.5-22.9 17.4 31.8 27.3 68.2 27.3 107 0 82.3-44.6 154.1-110.9 192.7z\"]\n};\nvar faWpbeginner = {\n prefix: 'fab',\n iconName: 'wpbeginner',\n icon: [512, 512, [], \"f297\", \"M462.799 322.374C519.01 386.682 466.961 480 370.944 480c-39.602 0-78.824-17.687-100.142-50.04-6.887.356-22.702.356-29.59 0C219.848 462.381 180.588 480 141.069 480c-95.49 0-148.348-92.996-91.855-157.626C-29.925 190.523 80.479 32 256.006 32c175.632 0 285.87 158.626 206.793 290.374zm-339.647-82.972h41.529v-58.075h-41.529v58.075zm217.18 86.072v-23.839c-60.506 20.915-132.355 9.198-187.589-33.971l.246 24.897c51.101 46.367 131.746 57.875 187.343 32.913zm-150.753-86.072h166.058v-58.075H189.579v58.075z\"]\n};\nvar faWpexplorer = {\n prefix: 'fab',\n iconName: 'wpexplorer',\n icon: [512, 512, [], \"f2de\", \"M512 256c0 141.2-114.7 256-256 256C114.8 512 0 397.3 0 256S114.7 0 256 0s256 114.7 256 256zm-32 0c0-123.2-100.3-224-224-224C132.5 32 32 132.5 32 256s100.5 224 224 224 224-100.5 224-224zM160.9 124.6l86.9 37.1-37.1 86.9-86.9-37.1 37.1-86.9zm110 169.1l46.6 94h-14.6l-50-100-48.9 100h-14l51.1-106.9-22.3-9.4 6-14 68.6 29.1-6 14.3-16.5-7.1zm-11.8-116.3l68.6 29.4-29.4 68.3L230 246l29.1-68.6zm80.3 42.9l54.6 23.1-23.4 54.3-54.3-23.1 23.1-54.3z\"]\n};\nvar faWpforms = {\n prefix: 'fab',\n iconName: 'wpforms',\n icon: [448, 512, [], \"f298\", \"M448 75.2v361.7c0 24.3-19 43.2-43.2 43.2H43.2C19.3 480 0 461.4 0 436.8V75.2C0 51.1 18.8 32 43.2 32h361.7c24 0 43.1 18.8 43.1 43.2zm-37.3 361.6V75.2c0-3-2.6-5.8-5.8-5.8h-9.3L285.3 144 224 94.1 162.8 144 52.5 69.3h-9.3c-3.2 0-5.8 2.8-5.8 5.8v361.7c0 3 2.6 5.8 5.8 5.8h361.7c3.2.1 5.8-2.7 5.8-5.8zM150.2 186v37H76.7v-37h73.5zm0 74.4v37.3H76.7v-37.3h73.5zm11.1-147.3l54-43.7H96.8l64.5 43.7zm210 72.9v37h-196v-37h196zm0 74.4v37.3h-196v-37.3h196zm-84.6-147.3l64.5-43.7H232.8l53.9 43.7zM371.3 335v37.3h-99.4V335h99.4z\"]\n};\nvar faWpressr = {\n prefix: 'fab',\n iconName: 'wpressr',\n icon: [496, 512, [], \"f3e4\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm171.33 158.6c-15.18 34.51-30.37 69.02-45.63 103.5-2.44 5.51-6.89 8.24-12.97 8.24-23.02-.01-46.03.06-69.05-.05-5.12-.03-8.25 1.89-10.34 6.72-10.19 23.56-20.63 47-30.95 70.5-1.54 3.51-4.06 5.29-7.92 5.29-45.94-.01-91.87-.02-137.81 0-3.13 0-5.63-1.15-7.72-3.45-11.21-12.33-22.46-24.63-33.68-36.94-2.69-2.95-2.79-6.18-1.21-9.73 8.66-19.54 17.27-39.1 25.89-58.66 12.93-29.35 25.89-58.69 38.75-88.08 1.7-3.88 4.28-5.68 8.54-5.65 14.24.1 28.48.02 42.72.05 6.24.01 9.2 4.84 6.66 10.59-13.6 30.77-27.17 61.55-40.74 92.33-5.72 12.99-11.42 25.99-17.09 39-3.91 8.95 7.08 11.97 10.95 5.6.23-.37-1.42 4.18 30.01-67.69 1.36-3.1 3.41-4.4 6.77-4.39 15.21.08 30.43.02 45.64.04 5.56.01 7.91 3.64 5.66 8.75-8.33 18.96-16.71 37.9-24.98 56.89-4.98 11.43 8.08 12.49 11.28 5.33.04-.08 27.89-63.33 32.19-73.16 2.02-4.61 5.44-6.51 10.35-6.5 26.43.05 52.86 0 79.29.05 12.44.02 13.93-13.65 3.9-13.64-25.26.03-50.52.02-75.78.02-6.27 0-7.84-2.47-5.27-8.27 5.78-13.06 11.59-26.11 17.3-39.21 1.73-3.96 4.52-5.79 8.84-5.78 23.09.06 25.98.02 130.78.03 6.08-.01 8.03 2.79 5.62 8.27z\"]\n};\nvar faXbox = {\n prefix: 'fab',\n iconName: 'xbox',\n icon: [512, 512, [], \"f412\", \"M369.9 318.2c44.3 54.3 64.7 98.8 54.4 118.7-7.9 15.1-56.7 44.6-92.6 55.9-29.6 9.3-68.4 13.3-100.4 10.2-38.2-3.7-76.9-17.4-110.1-39C93.3 445.8 87 438.3 87 423.4c0-29.9 32.9-82.3 89.2-142.1 32-33.9 76.5-73.7 81.4-72.6 9.4 2.1 84.3 75.1 112.3 109.5zM188.6 143.8c-29.7-26.9-58.1-53.9-86.4-63.4-15.2-5.1-16.3-4.8-28.7 8.1-29.2 30.4-53.5 79.7-60.3 122.4-5.4 34.2-6.1 43.8-4.2 60.5 5.6 50.5 17.3 85.4 40.5 120.9 9.5 14.6 12.1 17.3 9.3 9.9-4.2-11-.3-37.5 9.5-64 14.3-39 53.9-112.9 120.3-194.4zm311.6 63.5C483.3 127.3 432.7 77 425.6 77c-7.3 0-24.2 6.5-36 13.9-23.3 14.5-41 31.4-64.3 52.8C367.7 197 427.5 283.1 448.2 346c6.8 20.7 9.7 41.1 7.4 52.3-1.7 8.5-1.7 8.5 1.4 4.6 6.1-7.7 19.9-31.3 25.4-43.5 7.4-16.2 15-40.2 18.6-58.7 4.3-22.5 3.9-70.8-.8-93.4zM141.3 43C189 40.5 251 77.5 255.6 78.4c.7.1 10.4-4.2 21.6-9.7 63.9-31.1 94-25.8 107.4-25.2-63.9-39.3-152.7-50-233.9-11.7-23.4 11.1-24 11.9-9.4 11.2z\"]\n};\nvar faXing = {\n prefix: 'fab',\n iconName: 'xing',\n icon: [384, 512, [], \"f168\", \"M162.7 210c-1.8 3.3-25.2 44.4-70.1 123.5-4.9 8.3-10.8 12.5-17.7 12.5H9.8c-7.7 0-12.1-7.5-8.5-14.4l69-121.3c.2 0 .2-.1 0-.3l-43.9-75.6c-4.3-7.8.3-14.1 8.5-14.1H100c7.3 0 13.3 4.1 18 12.2l44.7 77.5zM382.6 46.1l-144 253v.3L330.2 466c3.9 7.1.2 14.1-8.5 14.1h-65.2c-7.6 0-13.6-4-18-12.2l-92.4-168.5c3.3-5.8 51.5-90.8 144.8-255.2 4.6-8.1 10.4-12.2 17.5-12.2h65.7c8 0 12.3 6.7 8.5 14.1z\"]\n};\nvar faXingSquare = {\n prefix: 'fab',\n iconName: 'xing-square',\n icon: [448, 512, [], \"f169\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM140.4 320.2H93.8c-5.5 0-8.7-5.3-6-10.3l49.3-86.7c.1 0 .1-.1 0-.2l-31.4-54c-3-5.6.2-10.1 6-10.1h46.6c5.2 0 9.5 2.9 12.9 8.7l31.9 55.3c-1.3 2.3-18 31.7-50.1 88.2-3.5 6.2-7.7 9.1-12.6 9.1zm219.7-214.1L257.3 286.8v.2l65.5 119c2.8 5.1.1 10.1-6 10.1h-46.6c-5.5 0-9.7-2.9-12.9-8.7l-66-120.3c2.3-4.1 36.8-64.9 103.4-182.3 3.3-5.8 7.4-8.7 12.5-8.7h46.9c5.7-.1 8.8 4.7 6 10z\"]\n};\nvar faYCombinator = {\n prefix: 'fab',\n iconName: 'y-combinator',\n icon: [448, 512, [], \"f23b\", \"M448 32v448H0V32h448zM236 287.5L313.5 142h-32.7L235 233c-4.7 9.3-9 18.3-12.8 26.8L210 233l-45.2-91h-35l76.7 143.8v94.5H236v-92.8z\"]\n};\nvar faYahoo = {\n prefix: 'fab',\n iconName: 'yahoo',\n icon: [512, 512, [], \"f19e\", \"M223.69,141.06,167,284.23,111,141.06H14.93L120.76,390.19,82.19,480h94.17L317.27,141.06Zm105.4,135.79a58.22,58.22,0,1,0,58.22,58.22A58.22,58.22,0,0,0,329.09,276.85ZM394.65,32l-93,223.47H406.44L499.07,32Z\"]\n};\nvar faYammer = {\n prefix: 'fab',\n iconName: 'yammer',\n icon: [512, 512, [], \"f840\", \"M421.78 152.17A23.06 23.06 0 0 0 400.9 112c-.83.43-1.71.9-2.63 1.4-15.25 8.4-118.33 80.62-106.69 88.77s82.04-23.61 130.2-50zm0 217.17c-48.16-26.38-118.64-58.1-130.2-50s91.42 80.35 106.69 88.74c.92.51 1.8 1 2.63 1.41a23.07 23.07 0 0 0 20.88-40.15zM464.21 237c-.95 0-1.95-.06-3-.06-17.4 0-142.52 13.76-136.24 26.51s83.3 18.74 138.21 18.76a23 23 0 0 0 1-45.21zM31 96.65a24.88 24.88 0 0 1 46.14-18.4l81 205.06h1.21l77-203.53a23.52 23.52 0 0 1 44.45 15.27L171.2 368.44C152.65 415.66 134.08 448 77.91 448a139.67 139.67 0 0 1-23.81-1.95 21.31 21.31 0 0 1 6.9-41.77c.66.06 10.91.66 13.86.66 30.47 0 43.74-18.94 58.07-59.41z\"]\n};\nvar faYandex = {\n prefix: 'fab',\n iconName: 'yandex',\n icon: [256, 512, [], \"f413\", \"M153.1 315.8L65.7 512H2l96-209.8c-45.1-22.9-75.2-64.4-75.2-141.1C22.7 53.7 90.8 0 171.7 0H254v512h-55.1V315.8h-45.8zm45.8-269.3h-29.4c-44.4 0-87.4 29.4-87.4 114.6 0 82.3 39.4 108.8 87.4 108.8h29.4V46.5z\"]\n};\nvar faYandexInternational = {\n prefix: 'fab',\n iconName: 'yandex-international',\n icon: [320, 512, [], \"f414\", \"M129.5 512V345.9L18.5 48h55.8l81.8 229.7L250.2 0h51.3L180.8 347.8V512h-51.3z\"]\n};\nvar faYarn = {\n prefix: 'fab',\n iconName: 'yarn',\n icon: [496, 512, [], \"f7e3\", \"M393.9 345.2c-39 9.3-48.4 32.1-104 47.4 0 0-2.7 4-10.4 5.8-13.4 3.3-63.9 6-68.5 6.1-12.4.1-19.9-3.2-22-8.2-6.4-15.3 9.2-22 9.2-22-8.1-5-9-9.9-9.8-8.1-2.4 5.8-3.6 20.1-10.1 26.5-8.8 8.9-25.5 5.9-35.3.8-10.8-5.7.8-19.2.8-19.2s-5.8 3.4-10.5-3.6c-6-9.3-17.1-37.3 11.5-62-1.3-10.1-4.6-53.7 40.6-85.6 0 0-20.6-22.8-12.9-43.3 5-13.4 7-13.3 8.6-13.9 5.7-2.2 11.3-4.6 15.4-9.1 20.6-22.2 46.8-18 46.8-18s12.4-37.8 23.9-30.4c3.5 2.3 16.3 30.6 16.3 30.6s13.6-7.9 15.1-5c8.2 16 9.2 46.5 5.6 65.1-6.1 30.6-21.4 47.1-27.6 57.5-1.4 2.4 16.5 10 27.8 41.3 10.4 28.6 1.1 52.7 2.8 55.3.8 1.4 13.7.8 36.4-13.2 12.8-7.9 28.1-16.9 45.4-17 16.7-.5 17.6 19.2 4.9 22.2zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-79.3 75.2c-1.7-13.6-13.2-23-28-22.8-22 .3-40.5 11.7-52.8 19.2-4.8 3-8.9 5.2-12.4 6.8 3.1-44.5-22.5-73.1-28.7-79.4 7.8-11.3 18.4-27.8 23.4-53.2 4.3-21.7 3-55.5-6.9-74.5-1.6-3.1-7.4-11.2-21-7.4-9.7-20-13-22.1-15.6-23.8-1.1-.7-23.6-16.4-41.4 28-12.2.9-31.3 5.3-47.5 22.8-2 2.2-5.9 3.8-10.1 5.4h.1c-8.4 3-12.3 9.9-16.9 22.3-6.5 17.4.2 34.6 6.8 45.7-17.8 15.9-37 39.8-35.7 82.5-34 36-11.8 73-5.6 79.6-1.6 11.1 3.7 19.4 12 23.8 12.6 6.7 30.3 9.6 43.9 2.8 4.9 5.2 13.8 10.1 30 10.1 6.8 0 58-2.9 72.6-6.5 6.8-1.6 11.5-4.5 14.6-7.1 9.8-3.1 36.8-12.3 62.2-28.7 18-11.7 24.2-14.2 37.6-17.4 12.9-3.2 21-15.1 19.4-28.2z\"]\n};\nvar faYelp = {\n prefix: 'fab',\n iconName: 'yelp',\n icon: [384, 512, [], \"f1e9\", \"M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z\"]\n};\nvar faYoast = {\n prefix: 'fab',\n iconName: 'yoast',\n icon: [448, 512, [], \"f2b1\", \"M91.3 76h186l-7 18.9h-179c-39.7 0-71.9 31.6-71.9 70.3v205.4c0 35.4 24.9 70.3 84 70.3V460H91.3C41.2 460 0 419.8 0 370.5V165.2C0 115.9 40.7 76 91.3 76zm229.1-56h66.5C243.1 398.1 241.2 418.9 202.2 459.3c-20.8 21.6-49.3 31.7-78.3 32.7v-51.1c49.2-7.7 64.6-49.9 64.6-75.3 0-20.1.6-12.6-82.1-223.2h61.4L218.2 299 320.4 20zM448 161.5V460H234c6.6-9.6 10.7-16.3 12.1-19.4h182.5V161.5c0-32.5-17.1-51.9-48.2-62.9l6.7-17.6c41.7 13.6 60.9 43.1 60.9 80.5z\"]\n};\nvar faYoutube = {\n prefix: 'fab',\n iconName: 'youtube',\n icon: [576, 512, [], \"f167\", \"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z\"]\n};\nvar faYoutubeSquare = {\n prefix: 'fab',\n iconName: 'youtube-square',\n icon: [448, 512, [], \"f431\", \"M186.8 202.1l95.2 54.1-95.2 54.1V202.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-42 176.3s0-59.6-7.6-88.2c-4.2-15.8-16.5-28.2-32.2-32.4C337.9 128 224 128 224 128s-113.9 0-142.2 7.7c-15.7 4.2-28 16.6-32.2 32.4-7.6 28.5-7.6 88.2-7.6 88.2s0 59.6 7.6 88.2c4.2 15.8 16.5 27.7 32.2 31.9C110.1 384 224 384 224 384s113.9 0 142.2-7.7c15.7-4.2 28-16.1 32.2-31.9 7.6-28.5 7.6-88.1 7.6-88.1z\"]\n};\nvar faZhihu = {\n prefix: 'fab',\n iconName: 'zhihu',\n icon: [640, 512, [], \"f63f\", \"M170.54 148.13v217.54l23.43.01 7.71 26.37 42.01-26.37h49.53V148.13H170.54zm97.75 193.93h-27.94l-27.9 17.51-5.08-17.47-11.9-.04V171.75h72.82v170.31zm-118.46-94.39H97.5c1.74-27.1 2.2-51.59 2.2-73.46h51.16s1.97-22.56-8.58-22.31h-88.5c3.49-13.12 7.87-26.66 13.12-40.67 0 0-24.07 0-32.27 21.57-3.39 8.9-13.21 43.14-30.7 78.12 5.89-.64 25.37-1.18 36.84-22.21 2.11-5.89 2.51-6.66 5.14-14.53h28.87c0 10.5-1.2 66.88-1.68 73.44H20.83c-11.74 0-15.56 23.62-15.56 23.62h65.58C66.45 321.1 42.83 363.12 0 396.34c20.49 5.85 40.91-.93 51-9.9 0 0 22.98-20.9 35.59-69.25l53.96 64.94s7.91-26.89-1.24-39.99c-7.58-8.92-28.06-33.06-36.79-41.81L87.9 311.95c4.36-13.98 6.99-27.55 7.87-40.67h61.65s-.09-23.62-7.59-23.62v.01zm412.02-1.6c20.83-25.64 44.98-58.57 44.98-58.57s-18.65-14.8-27.38-4.06c-6 8.15-36.83 48.2-36.83 48.2l19.23 14.43zm-150.09-59.09c-9.01-8.25-25.91 2.13-25.91 2.13s39.52 55.04 41.12 57.45l19.46-13.73s-25.67-37.61-34.66-45.86h-.01zM640 258.35c-19.78 0-130.91.93-131.06.93v-101c4.81 0 12.42-.4 22.85-1.2 40.88-2.41 70.13-4 87.77-4.81 0 0 12.22-27.19-.59-33.44-3.07-1.18-23.17 4.58-23.17 4.58s-165.22 16.49-232.36 18.05c1.6 8.82 7.62 17.08 15.78 19.55 13.31 3.48 22.69 1.7 49.15.89 24.83-1.6 43.68-2.43 56.51-2.43v99.81H351.41s2.82 22.31 25.51 22.85h107.94v70.92c0 13.97-11.19 21.99-24.48 21.12-14.08.11-26.08-1.15-41.69-1.81 1.99 3.97 6.33 14.39 19.31 21.84 9.88 4.81 16.17 6.57 26.02 6.57 29.56 0 45.67-17.28 44.89-45.31v-73.32h122.36c9.68 0 8.7-23.78 8.7-23.78l.03-.01z\"]\n};\nvar _iconsCache = {\n fa500px: fa500px,\n faAccessibleIcon: faAccessibleIcon,\n faAccusoft: faAccusoft,\n faAcquisitionsIncorporated: faAcquisitionsIncorporated,\n faAdn: faAdn,\n faAdversal: faAdversal,\n faAffiliatetheme: faAffiliatetheme,\n faAirbnb: faAirbnb,\n faAlgolia: faAlgolia,\n faAlipay: faAlipay,\n faAmazon: faAmazon,\n faAmazonPay: faAmazonPay,\n faAmilia: faAmilia,\n faAndroid: faAndroid,\n faAngellist: faAngellist,\n faAngrycreative: faAngrycreative,\n faAngular: faAngular,\n faAppStore: faAppStore,\n faAppStoreIos: faAppStoreIos,\n faApper: faApper,\n faApple: faApple,\n faApplePay: faApplePay,\n faArtstation: faArtstation,\n faAsymmetrik: faAsymmetrik,\n faAtlassian: faAtlassian,\n faAudible: faAudible,\n faAutoprefixer: faAutoprefixer,\n faAvianex: faAvianex,\n faAviato: faAviato,\n faAws: faAws,\n faBandcamp: faBandcamp,\n faBattleNet: faBattleNet,\n faBehance: faBehance,\n faBehanceSquare: faBehanceSquare,\n faBimobject: faBimobject,\n faBitbucket: faBitbucket,\n faBitcoin: faBitcoin,\n faBity: faBity,\n faBlackTie: faBlackTie,\n faBlackberry: faBlackberry,\n faBlogger: faBlogger,\n faBloggerB: faBloggerB,\n faBluetooth: faBluetooth,\n faBluetoothB: faBluetoothB,\n faBootstrap: faBootstrap,\n faBtc: faBtc,\n faBuffer: faBuffer,\n faBuromobelexperte: faBuromobelexperte,\n faBuyNLarge: faBuyNLarge,\n faBuysellads: faBuysellads,\n faCanadianMapleLeaf: faCanadianMapleLeaf,\n faCcAmazonPay: faCcAmazonPay,\n faCcAmex: faCcAmex,\n faCcApplePay: faCcApplePay,\n faCcDinersClub: faCcDinersClub,\n faCcDiscover: faCcDiscover,\n faCcJcb: faCcJcb,\n faCcMastercard: faCcMastercard,\n faCcPaypal: faCcPaypal,\n faCcStripe: faCcStripe,\n faCcVisa: faCcVisa,\n faCentercode: faCentercode,\n faCentos: faCentos,\n faChrome: faChrome,\n faChromecast: faChromecast,\n faCloudflare: faCloudflare,\n faCloudscale: faCloudscale,\n faCloudsmith: faCloudsmith,\n faCloudversify: faCloudversify,\n faCodepen: faCodepen,\n faCodiepie: faCodiepie,\n faConfluence: faConfluence,\n faConnectdevelop: faConnectdevelop,\n faContao: faContao,\n faCottonBureau: faCottonBureau,\n faCpanel: faCpanel,\n faCreativeCommons: faCreativeCommons,\n faCreativeCommonsBy: faCreativeCommonsBy,\n faCreativeCommonsNc: faCreativeCommonsNc,\n faCreativeCommonsNcEu: faCreativeCommonsNcEu,\n faCreativeCommonsNcJp: faCreativeCommonsNcJp,\n faCreativeCommonsNd: faCreativeCommonsNd,\n faCreativeCommonsPd: faCreativeCommonsPd,\n faCreativeCommonsPdAlt: faCreativeCommonsPdAlt,\n faCreativeCommonsRemix: faCreativeCommonsRemix,\n faCreativeCommonsSa: faCreativeCommonsSa,\n faCreativeCommonsSampling: faCreativeCommonsSampling,\n faCreativeCommonsSamplingPlus: faCreativeCommonsSamplingPlus,\n faCreativeCommonsShare: faCreativeCommonsShare,\n faCreativeCommonsZero: faCreativeCommonsZero,\n faCriticalRole: faCriticalRole,\n faCss3: faCss3,\n faCss3Alt: faCss3Alt,\n faCuttlefish: faCuttlefish,\n faDAndD: faDAndD,\n faDAndDBeyond: faDAndDBeyond,\n faDailymotion: faDailymotion,\n faDashcube: faDashcube,\n faDeezer: faDeezer,\n faDelicious: faDelicious,\n faDeploydog: faDeploydog,\n faDeskpro: faDeskpro,\n faDev: faDev,\n faDeviantart: faDeviantart,\n faDhl: faDhl,\n faDiaspora: faDiaspora,\n faDigg: faDigg,\n faDigitalOcean: faDigitalOcean,\n faDiscord: faDiscord,\n faDiscourse: faDiscourse,\n faDochub: faDochub,\n faDocker: faDocker,\n faDraft2digital: faDraft2digital,\n faDribbble: faDribbble,\n faDribbbleSquare: faDribbbleSquare,\n faDropbox: faDropbox,\n faDrupal: faDrupal,\n faDyalog: faDyalog,\n faEarlybirds: faEarlybirds,\n faEbay: faEbay,\n faEdge: faEdge,\n faEdgeLegacy: faEdgeLegacy,\n faElementor: faElementor,\n faEllo: faEllo,\n faEmber: faEmber,\n faEmpire: faEmpire,\n faEnvira: faEnvira,\n faErlang: faErlang,\n faEthereum: faEthereum,\n faEtsy: faEtsy,\n faEvernote: faEvernote,\n faExpeditedssl: faExpeditedssl,\n faFacebook: faFacebook,\n faFacebookF: faFacebookF,\n faFacebookMessenger: faFacebookMessenger,\n faFacebookSquare: faFacebookSquare,\n faFantasyFlightGames: faFantasyFlightGames,\n faFedex: faFedex,\n faFedora: faFedora,\n faFigma: faFigma,\n faFirefox: faFirefox,\n faFirefoxBrowser: faFirefoxBrowser,\n faFirstOrder: faFirstOrder,\n faFirstOrderAlt: faFirstOrderAlt,\n faFirstdraft: faFirstdraft,\n faFlickr: faFlickr,\n faFlipboard: faFlipboard,\n faFly: faFly,\n faFontAwesome: faFontAwesome,\n faFontAwesomeAlt: faFontAwesomeAlt,\n faFontAwesomeFlag: faFontAwesomeFlag,\n faFontAwesomeLogoFull: faFontAwesomeLogoFull,\n faFonticons: faFonticons,\n faFonticonsFi: faFonticonsFi,\n faFortAwesome: faFortAwesome,\n faFortAwesomeAlt: faFortAwesomeAlt,\n faForumbee: faForumbee,\n faFoursquare: faFoursquare,\n faFreeCodeCamp: faFreeCodeCamp,\n faFreebsd: faFreebsd,\n faFulcrum: faFulcrum,\n faGalacticRepublic: faGalacticRepublic,\n faGalacticSenate: faGalacticSenate,\n faGetPocket: faGetPocket,\n faGg: faGg,\n faGgCircle: faGgCircle,\n faGit: faGit,\n faGitAlt: faGitAlt,\n faGitSquare: faGitSquare,\n faGithub: faGithub,\n faGithubAlt: faGithubAlt,\n faGithubSquare: faGithubSquare,\n faGitkraken: faGitkraken,\n faGitlab: faGitlab,\n faGitter: faGitter,\n faGlide: faGlide,\n faGlideG: faGlideG,\n faGofore: faGofore,\n faGoodreads: faGoodreads,\n faGoodreadsG: faGoodreadsG,\n faGoogle: faGoogle,\n faGoogleDrive: faGoogleDrive,\n faGooglePay: faGooglePay,\n faGooglePlay: faGooglePlay,\n faGooglePlus: faGooglePlus,\n faGooglePlusG: faGooglePlusG,\n faGooglePlusSquare: faGooglePlusSquare,\n faGoogleWallet: faGoogleWallet,\n faGratipay: faGratipay,\n faGrav: faGrav,\n faGripfire: faGripfire,\n faGrunt: faGrunt,\n faGuilded: faGuilded,\n faGulp: faGulp,\n faHackerNews: faHackerNews,\n faHackerNewsSquare: faHackerNewsSquare,\n faHackerrank: faHackerrank,\n faHips: faHips,\n faHireAHelper: faHireAHelper,\n faHive: faHive,\n faHooli: faHooli,\n faHornbill: faHornbill,\n faHotjar: faHotjar,\n faHouzz: faHouzz,\n faHtml5: faHtml5,\n faHubspot: faHubspot,\n faIdeal: faIdeal,\n faImdb: faImdb,\n faInnosoft: faInnosoft,\n faInstagram: faInstagram,\n faInstagramSquare: faInstagramSquare,\n faInstalod: faInstalod,\n faIntercom: faIntercom,\n faInternetExplorer: faInternetExplorer,\n faInvision: faInvision,\n faIoxhost: faIoxhost,\n faItchIo: faItchIo,\n faItunes: faItunes,\n faItunesNote: faItunesNote,\n faJava: faJava,\n faJediOrder: faJediOrder,\n faJenkins: faJenkins,\n faJira: faJira,\n faJoget: faJoget,\n faJoomla: faJoomla,\n faJs: faJs,\n faJsSquare: faJsSquare,\n faJsfiddle: faJsfiddle,\n faKaggle: faKaggle,\n faKeybase: faKeybase,\n faKeycdn: faKeycdn,\n faKickstarter: faKickstarter,\n faKickstarterK: faKickstarterK,\n faKorvue: faKorvue,\n faLaravel: faLaravel,\n faLastfm: faLastfm,\n faLastfmSquare: faLastfmSquare,\n faLeanpub: faLeanpub,\n faLess: faLess,\n faLine: faLine,\n faLinkedin: faLinkedin,\n faLinkedinIn: faLinkedinIn,\n faLinode: faLinode,\n faLinux: faLinux,\n faLyft: faLyft,\n faMagento: faMagento,\n faMailchimp: faMailchimp,\n faMandalorian: faMandalorian,\n faMarkdown: faMarkdown,\n faMastodon: faMastodon,\n faMaxcdn: faMaxcdn,\n faMdb: faMdb,\n faMedapps: faMedapps,\n faMedium: faMedium,\n faMediumM: faMediumM,\n faMedrt: faMedrt,\n faMeetup: faMeetup,\n faMegaport: faMegaport,\n faMendeley: faMendeley,\n faMicroblog: faMicroblog,\n faMicrosoft: faMicrosoft,\n faMix: faMix,\n faMixcloud: faMixcloud,\n faMixer: faMixer,\n faMizuni: faMizuni,\n faModx: faModx,\n faMonero: faMonero,\n faNapster: faNapster,\n faNeos: faNeos,\n faNimblr: faNimblr,\n faNode: faNode,\n faNodeJs: faNodeJs,\n faNpm: faNpm,\n faNs8: faNs8,\n faNutritionix: faNutritionix,\n faOctopusDeploy: faOctopusDeploy,\n faOdnoklassniki: faOdnoklassniki,\n faOdnoklassnikiSquare: faOdnoklassnikiSquare,\n faOldRepublic: faOldRepublic,\n faOpencart: faOpencart,\n faOpenid: faOpenid,\n faOpera: faOpera,\n faOptinMonster: faOptinMonster,\n faOrcid: faOrcid,\n faOsi: faOsi,\n faPage4: faPage4,\n faPagelines: faPagelines,\n faPalfed: faPalfed,\n faPatreon: faPatreon,\n faPaypal: faPaypal,\n faPennyArcade: faPennyArcade,\n faPerbyte: faPerbyte,\n faPeriscope: faPeriscope,\n faPhabricator: faPhabricator,\n faPhoenixFramework: faPhoenixFramework,\n faPhoenixSquadron: faPhoenixSquadron,\n faPhp: faPhp,\n faPiedPiper: faPiedPiper,\n faPiedPiperAlt: faPiedPiperAlt,\n faPiedPiperHat: faPiedPiperHat,\n faPiedPiperPp: faPiedPiperPp,\n faPiedPiperSquare: faPiedPiperSquare,\n faPinterest: faPinterest,\n faPinterestP: faPinterestP,\n faPinterestSquare: faPinterestSquare,\n faPlaystation: faPlaystation,\n faProductHunt: faProductHunt,\n faPushed: faPushed,\n faPython: faPython,\n faQq: faQq,\n faQuinscape: faQuinscape,\n faQuora: faQuora,\n faRProject: faRProject,\n faRaspberryPi: faRaspberryPi,\n faRavelry: faRavelry,\n faReact: faReact,\n faReacteurope: faReacteurope,\n faReadme: faReadme,\n faRebel: faRebel,\n faRedRiver: faRedRiver,\n faReddit: faReddit,\n faRedditAlien: faRedditAlien,\n faRedditSquare: faRedditSquare,\n faRedhat: faRedhat,\n faRenren: faRenren,\n faReplyd: faReplyd,\n faResearchgate: faResearchgate,\n faResolving: faResolving,\n faRev: faRev,\n faRocketchat: faRocketchat,\n faRockrms: faRockrms,\n faRust: faRust,\n faSafari: faSafari,\n faSalesforce: faSalesforce,\n faSass: faSass,\n faSchlix: faSchlix,\n faScribd: faScribd,\n faSearchengin: faSearchengin,\n faSellcast: faSellcast,\n faSellsy: faSellsy,\n faServicestack: faServicestack,\n faShirtsinbulk: faShirtsinbulk,\n faShopify: faShopify,\n faShopware: faShopware,\n faSimplybuilt: faSimplybuilt,\n faSistrix: faSistrix,\n faSith: faSith,\n faSketch: faSketch,\n faSkyatlas: faSkyatlas,\n faSkype: faSkype,\n faSlack: faSlack,\n faSlackHash: faSlackHash,\n faSlideshare: faSlideshare,\n faSnapchat: faSnapchat,\n faSnapchatGhost: faSnapchatGhost,\n faSnapchatSquare: faSnapchatSquare,\n faSoundcloud: faSoundcloud,\n faSourcetree: faSourcetree,\n faSpeakap: faSpeakap,\n faSpeakerDeck: faSpeakerDeck,\n faSpotify: faSpotify,\n faSquarespace: faSquarespace,\n faStackExchange: faStackExchange,\n faStackOverflow: faStackOverflow,\n faStackpath: faStackpath,\n faStaylinked: faStaylinked,\n faSteam: faSteam,\n faSteamSquare: faSteamSquare,\n faSteamSymbol: faSteamSymbol,\n faStickerMule: faStickerMule,\n faStrava: faStrava,\n faStripe: faStripe,\n faStripeS: faStripeS,\n faStudiovinari: faStudiovinari,\n faStumbleupon: faStumbleupon,\n faStumbleuponCircle: faStumbleuponCircle,\n faSuperpowers: faSuperpowers,\n faSupple: faSupple,\n faSuse: faSuse,\n faSwift: faSwift,\n faSymfony: faSymfony,\n faTeamspeak: faTeamspeak,\n faTelegram: faTelegram,\n faTelegramPlane: faTelegramPlane,\n faTencentWeibo: faTencentWeibo,\n faTheRedYeti: faTheRedYeti,\n faThemeco: faThemeco,\n faThemeisle: faThemeisle,\n faThinkPeaks: faThinkPeaks,\n faTiktok: faTiktok,\n faTradeFederation: faTradeFederation,\n faTrello: faTrello,\n faTumblr: faTumblr,\n faTumblrSquare: faTumblrSquare,\n faTwitch: faTwitch,\n faTwitter: faTwitter,\n faTwitterSquare: faTwitterSquare,\n faTypo3: faTypo3,\n faUber: faUber,\n faUbuntu: faUbuntu,\n faUikit: faUikit,\n faUmbraco: faUmbraco,\n faUncharted: faUncharted,\n faUniregistry: faUniregistry,\n faUnity: faUnity,\n faUnsplash: faUnsplash,\n faUntappd: faUntappd,\n faUps: faUps,\n faUsb: faUsb,\n faUsps: faUsps,\n faUssunnah: faUssunnah,\n faVaadin: faVaadin,\n faViacoin: faViacoin,\n faViadeo: faViadeo,\n faViadeoSquare: faViadeoSquare,\n faViber: faViber,\n faVimeo: faVimeo,\n faVimeoSquare: faVimeoSquare,\n faVimeoV: faVimeoV,\n faVine: faVine,\n faVk: faVk,\n faVnv: faVnv,\n faVuejs: faVuejs,\n faWatchmanMonitoring: faWatchmanMonitoring,\n faWaze: faWaze,\n faWeebly: faWeebly,\n faWeibo: faWeibo,\n faWeixin: faWeixin,\n faWhatsapp: faWhatsapp,\n faWhatsappSquare: faWhatsappSquare,\n faWhmcs: faWhmcs,\n faWikipediaW: faWikipediaW,\n faWindows: faWindows,\n faWix: faWix,\n faWizardsOfTheCoast: faWizardsOfTheCoast,\n faWodu: faWodu,\n faWolfPackBattalion: faWolfPackBattalion,\n faWordpress: faWordpress,\n faWordpressSimple: faWordpressSimple,\n faWpbeginner: faWpbeginner,\n faWpexplorer: faWpexplorer,\n faWpforms: faWpforms,\n faWpressr: faWpressr,\n faXbox: faXbox,\n faXing: faXing,\n faXingSquare: faXingSquare,\n faYCombinator: faYCombinator,\n faYahoo: faYahoo,\n faYammer: faYammer,\n faYandex: faYandex,\n faYandexInternational: faYandexInternational,\n faYarn: faYarn,\n faYelp: faYelp,\n faYoast: faYoast,\n faYoutube: faYoutube,\n faYoutubeSquare: faYoutubeSquare,\n faZhihu: faZhihu\n};\n\nexport { _iconsCache as fab, prefix, fa500px, faAccessibleIcon, faAccusoft, faAcquisitionsIncorporated, faAdn, faAdversal, faAffiliatetheme, faAirbnb, faAlgolia, faAlipay, faAmazon, faAmazonPay, faAmilia, faAndroid, faAngellist, faAngrycreative, faAngular, faAppStore, faAppStoreIos, faApper, faApple, faApplePay, faArtstation, faAsymmetrik, faAtlassian, faAudible, faAutoprefixer, faAvianex, faAviato, faAws, faBandcamp, faBattleNet, faBehance, faBehanceSquare, faBimobject, faBitbucket, faBitcoin, faBity, faBlackTie, faBlackberry, faBlogger, faBloggerB, faBluetooth, faBluetoothB, faBootstrap, faBtc, faBuffer, faBuromobelexperte, faBuyNLarge, faBuysellads, faCanadianMapleLeaf, faCcAmazonPay, faCcAmex, faCcApplePay, faCcDinersClub, faCcDiscover, faCcJcb, faCcMastercard, faCcPaypal, faCcStripe, faCcVisa, faCentercode, faCentos, faChrome, faChromecast, faCloudflare, faCloudscale, faCloudsmith, faCloudversify, faCodepen, faCodiepie, faConfluence, faConnectdevelop, faContao, faCottonBureau, faCpanel, faCreativeCommons, faCreativeCommonsBy, faCreativeCommonsNc, faCreativeCommonsNcEu, faCreativeCommonsNcJp, faCreativeCommonsNd, faCreativeCommonsPd, faCreativeCommonsPdAlt, faCreativeCommonsRemix, faCreativeCommonsSa, faCreativeCommonsSampling, faCreativeCommonsSamplingPlus, faCreativeCommonsShare, faCreativeCommonsZero, faCriticalRole, faCss3, faCss3Alt, faCuttlefish, faDAndD, faDAndDBeyond, faDailymotion, faDashcube, faDeezer, faDelicious, faDeploydog, faDeskpro, faDev, faDeviantart, faDhl, faDiaspora, faDigg, faDigitalOcean, faDiscord, faDiscourse, faDochub, faDocker, faDraft2digital, faDribbble, faDribbbleSquare, faDropbox, faDrupal, faDyalog, faEarlybirds, faEbay, faEdge, faEdgeLegacy, faElementor, faEllo, faEmber, faEmpire, faEnvira, faErlang, faEthereum, faEtsy, faEvernote, faExpeditedssl, faFacebook, faFacebookF, faFacebookMessenger, faFacebookSquare, faFantasyFlightGames, faFedex, faFedora, faFigma, faFirefox, faFirefoxBrowser, faFirstOrder, faFirstOrderAlt, faFirstdraft, faFlickr, faFlipboard, faFly, faFontAwesome, faFontAwesomeAlt, faFontAwesomeFlag, faFontAwesomeLogoFull, faFonticons, faFonticonsFi, faFortAwesome, faFortAwesomeAlt, faForumbee, faFoursquare, faFreeCodeCamp, faFreebsd, faFulcrum, faGalacticRepublic, faGalacticSenate, faGetPocket, faGg, faGgCircle, faGit, faGitAlt, faGitSquare, faGithub, faGithubAlt, faGithubSquare, faGitkraken, faGitlab, faGitter, faGlide, faGlideG, faGofore, faGoodreads, faGoodreadsG, faGoogle, faGoogleDrive, faGooglePay, faGooglePlay, faGooglePlus, faGooglePlusG, faGooglePlusSquare, faGoogleWallet, faGratipay, faGrav, faGripfire, faGrunt, faGuilded, faGulp, faHackerNews, faHackerNewsSquare, faHackerrank, faHips, faHireAHelper, faHive, faHooli, faHornbill, faHotjar, faHouzz, faHtml5, faHubspot, faIdeal, faImdb, faInnosoft, faInstagram, faInstagramSquare, faInstalod, faIntercom, faInternetExplorer, faInvision, faIoxhost, faItchIo, faItunes, faItunesNote, faJava, faJediOrder, faJenkins, faJira, faJoget, faJoomla, faJs, faJsSquare, faJsfiddle, faKaggle, faKeybase, faKeycdn, faKickstarter, faKickstarterK, faKorvue, faLaravel, faLastfm, faLastfmSquare, faLeanpub, faLess, faLine, faLinkedin, faLinkedinIn, faLinode, faLinux, faLyft, faMagento, faMailchimp, faMandalorian, faMarkdown, faMastodon, faMaxcdn, faMdb, faMedapps, faMedium, faMediumM, faMedrt, faMeetup, faMegaport, faMendeley, faMicroblog, faMicrosoft, faMix, faMixcloud, faMixer, faMizuni, faModx, faMonero, faNapster, faNeos, faNimblr, faNode, faNodeJs, faNpm, faNs8, faNutritionix, faOctopusDeploy, faOdnoklassniki, faOdnoklassnikiSquare, faOldRepublic, faOpencart, faOpenid, faOpera, faOptinMonster, faOrcid, faOsi, faPage4, faPagelines, faPalfed, faPatreon, faPaypal, faPennyArcade, faPerbyte, faPeriscope, faPhabricator, faPhoenixFramework, faPhoenixSquadron, faPhp, faPiedPiper, faPiedPiperAlt, faPiedPiperHat, faPiedPiperPp, faPiedPiperSquare, faPinterest, faPinterestP, faPinterestSquare, faPlaystation, faProductHunt, faPushed, faPython, faQq, faQuinscape, faQuora, faRProject, faRaspberryPi, faRavelry, faReact, faReacteurope, faReadme, faRebel, faRedRiver, faReddit, faRedditAlien, faRedditSquare, faRedhat, faRenren, faReplyd, faResearchgate, faResolving, faRev, faRocketchat, faRockrms, faRust, faSafari, faSalesforce, faSass, faSchlix, faScribd, faSearchengin, faSellcast, faSellsy, faServicestack, faShirtsinbulk, faShopify, faShopware, faSimplybuilt, faSistrix, faSith, faSketch, faSkyatlas, faSkype, faSlack, faSlackHash, faSlideshare, faSnapchat, faSnapchatGhost, faSnapchatSquare, faSoundcloud, faSourcetree, faSpeakap, faSpeakerDeck, faSpotify, faSquarespace, faStackExchange, faStackOverflow, faStackpath, faStaylinked, faSteam, faSteamSquare, faSteamSymbol, faStickerMule, faStrava, faStripe, faStripeS, faStudiovinari, faStumbleupon, faStumbleuponCircle, faSuperpowers, faSupple, faSuse, faSwift, faSymfony, faTeamspeak, faTelegram, faTelegramPlane, faTencentWeibo, faTheRedYeti, faThemeco, faThemeisle, faThinkPeaks, faTiktok, faTradeFederation, faTrello, faTumblr, faTumblrSquare, faTwitch, faTwitter, faTwitterSquare, faTypo3, faUber, faUbuntu, faUikit, faUmbraco, faUncharted, faUniregistry, faUnity, faUnsplash, faUntappd, faUps, faUsb, faUsps, faUssunnah, faVaadin, faViacoin, faViadeo, faViadeoSquare, faViber, faVimeo, faVimeoSquare, faVimeoV, faVine, faVk, faVnv, faVuejs, faWatchmanMonitoring, faWaze, faWeebly, faWeibo, faWeixin, faWhatsapp, faWhatsappSquare, faWhmcs, faWikipediaW, faWindows, faWix, faWizardsOfTheCoast, faWodu, faWolfPackBattalion, faWordpress, faWordpressSimple, faWpbeginner, faWpexplorer, faWpforms, faWpressr, faXbox, faXing, faXingSquare, faYCombinator, faYahoo, faYammer, faYandex, faYandexInternational, faYarn, faYelp, faYoast, faYoutube, faYoutubeSquare, faZhihu };\n","import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faGithub } from '@fortawesome/free-brands-svg-icons'\nimport { library } from '@fortawesome/fontawesome-svg-core'\n\nexport default function AuthedContend(props) {\n\n return (\n
\n\n\n\n\n
\n\n
\n
\n
\n

Dauth API

\n

API Endpoints

\n
\n \n\n {/* */}\n\n\n
\n
\n
/walletAuth
\n
Handles the signature of the users wallet.
\n
\n
\n
/verifyAuth
\n
Decodes and verifies the users JWT (JSON Web token). Utilizes Cloudflare's Durable object to check the wallet secret, that is unique to the wallet.
\n
\n\n
\n
/msg
\n
Used to coordinate messages to all the websockets to facilitate realtime updates during authentication. This enables users to log in via another device such as a phone.
\n
\n\n
\n
/getWorkersStats
\n
Simple endpoint to get the response time of authentication.
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n

Deauth Example Backend

\n

Backend websockets

\n
\n \n\n {/* */}\n\n\n
\n
\n Dauth utilizes the power of websockets to handle communication between the web browser and another device such as a phone. \n Websockets helps set Dauth apart from other basic 'sign in with Metamask' login processes. This enables you to login securely anywhere without installing anything. Goodbye key loggers.\n
\n
\n\n
\n
\n
\n\n \n
\n
\n )\n}\n","/* This example requires Tailwind CSS v2.0+ */\nimport { Fragment, useState } from 'react'\nimport { Transition } from '@headlessui/react'\nimport { useCookies } from \"react-cookie\";\n\nexport default function LogoutModal() {\n const [show, setShow] = useState(true)\n const [cookies, setCookie, removeCookie] = useCookies(['dauth-token']);\n\n function handleLogout(){\n setShow(false)\n removeCookie('dauthJWT')\n window.location.reload()\n }\n\n return (\n <>\n {/* Global notification live region, render this permanently at the end of the document */}\n \n
\n {/* Notification panel, dynamically insert this into the live region when it needs to be displayed */}\n \n
\n
\n
\n

Logout

\n

Logout from the example demo.

\n
\n
\n
\n
\n
\n {\n handleLogout()\n }}\n >\n Logout\n \n
\n
\n {\n setShow(false)\n }}\n >\n Hide\n \n
\n
\n
\n
\n \n
\n \n \n )\n}\n","import { useState, MutableRefObject } from 'react'\n\nimport { useIsoMorphicEffect } from './use-iso-morphic-effect'\n\nfunction resolveType(props: { type?: string; as?: TTag }) {\n if (props.type) return props.type\n\n let tag = props.as ?? 'button'\n if (typeof tag === 'string' && tag.toLowerCase() === 'button') return 'button'\n\n return undefined\n}\n\nexport function useResolveButtonType(\n props: { type?: string; as?: TTag },\n ref: MutableRefObject\n) {\n let [type, setType] = useState(() => resolveType(props))\n\n useIsoMorphicEffect(() => {\n setType(resolveType(props))\n }, [props.type, props.as])\n\n useIsoMorphicEffect(() => {\n if (type) return\n if (!ref.current) return\n\n if (ref.current instanceof HTMLButtonElement && !ref.current.hasAttribute('type')) {\n setType('button')\n }\n }, [type, ref])\n\n return type\n}\n","/* This example requires Tailwind CSS v2.0+ */\nimport { Disclosure } from '@headlessui/react'\nimport { ChevronDownIcon } from '@heroicons/react/outline'\n\nconst faqs = [\n {\n question: \"Why the name 'dauth'?\",\n answer:\n \"Pronounced like 'D auth' - short for Decentralized Authentication\" ,\n }, \n {\n question: \"Is this safe to use?\",\n answer:\n \"While nothing is ever 100%, any crypto on your wallet is not touched (couldn't touch it even if I wanted to without the users concent), Dauth uses your private key to sign a message. Dauth uses you crypto wallet to digitally sign a message. You can verify your message by the OTK provided in the message.\" ,\n link: Read more about how digital signing works here\n },\n {\n question: \"What is an OTK?\",\n answer:\n \"A One Time Key or OTK acts as a NONCE, aka Number Once.\" ,\n link: Read more about how a NONCE here\n }, \n {\n question: \"Why use an NFT for a user account? (COMING SOON)\",\n answer:\n \"This whole project started out as a proof of concept to use NFTs for authentication. However learning more about NFTs, ethereum contracts and gas prices, this is the resulting learnings. Dauth uses ImmutableX to mint gasless NFTs which the user then owns. The user is then free to sell, trade or destroy the NFT.\" ,\n link: null\n },\n // More questions...\n]\n\nfunction classNames(...classes) {\n return classes.filter(Boolean).join(' ')\n}\n\nexport default function FAQ() {\n return (\n
\n
\n
\n

Frequently asked questions

\n
\n {faqs.map((faq, index) => (\n \n {({ open }) => (\n <>\n
\n \n {faq.question}\n \n \n \n \n
\n \n

{faq.answer} {faq.hasOwnProperty('link') ? faq.link : null}

\n
\n \n )}\n
\n ))}\n
\n
\n
\n
\n )\n}\n","import logo from '../logo.svg';\nimport '../App.css'\nimport { useEffect, useState } from 'react'\nimport { useCookies } from \"react-cookie\";\nimport Login from '../components/login';\nimport { useNavigate } from \"react-router-dom\";\nimport { useSearchParams, useParams } from \"react-router-dom\";\n\n\nimport SignupSuccess from '../components/SignupSuccess';\nimport AuthedContend from '../components/authedContent';\nimport LogoutModal from '../components/logoutModal';\nimport FAQ from '../components/faq'\nfunction Home() {\n const [searchParams, setSearchParams] = useSearchParams()\n\n const [cookies, setCookie, removeCookie] = useCookies(['dauth-token']);\n const [workerStats, setWorkerStats] = useState(null)\n const [isAuthed, setIsAuthed] = useState(null)\n var signin = searchParams.get(\"signin\") // get the one time key\n\n const [showLogin, setShowLogin] = useState(signin)\n\n var signedUp = searchParams.get(\"s\") // signup success\n\n const navigate = useNavigate();\n\n\n\n useEffect(async () => {\n await fetch('https://api.dauth.dev/getWorkersStats', {\n method: 'GET',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n }).then(response => response.json())\n .then(async (data) => {\n console.log(data)\n setWorkerStats(data)\n\n }).catch(error => {\n console.log(error)\n })\n }, []);\n\n\n useEffect(async () => {\n var validJWT = await fetch('https://api.dauth.dev/verifyAuth', {\n method: 'POST',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n JWT: cookies.dauthJWT,\n })\n }).then(response => response.json())\n .then((data) => {\n return data.tokenValid\n }).catch(error => {\n\n console.log(error)\n })\n setIsAuthed(validJWT)\n }, []);\n return (\n
\n {/* */}\n \n \n \n \n \n \n \n \n Document\n \n \n\n
\n\n
\n {/* */}\n
\n
\n \"\"\n
\n
\n
\n

Dauth

\n

Decentralized authentication

\n

Crypto wallet + simple cryptography = passwordless authentication that you control.

\n
\n \n \n\n
\n
\n
\n \"\"\n
\n
\n
\n
\n \n \n \n
\n
\n {/* */}\n {showLogin ? : null}\n {signedUp ? : null}\n {isAuthed ? : null}\n
\n {/* */}\n
\n
\n

About Dauth

\n
\n
\n

\n This is a simple service that removes the need for annoying, outdated, often unsecure and mostly unnecessary sign up and login forms.\n

\n One service quickly becoming a backbone of modern security is HaveIBeenPwned, a service with over 11 Billion leaked passwords, email addresses and other personal data.\n

\n With Dauth you can remove the need for emails & passwords for each site you use. Quickly and easily use one or multiple wallets for authentication, using your desktop or your mobile with Metamask!\n\n

\n
\n
\n
\n {/* */}\n\n
\n
\n
\n\n
\n {/* */}\n
\n
\n

Features

\n
\n
\n
\n
\n
\n \n \n \n
\n

Distributed

\n
\n

Using Cloudflares secure, eco-friendly distributed Workers platform - this service runs on 200+ edge locations, meaning Dauth is highly available, scalable and secure.

\n
\n
\n
\n
\n \n \n \n
\n

Transferable (coming soon)

\n
\n

Dauth mints and NFT for each user account, meaning you can sell or transfer your account to anyone without providing your details.

\n
\n
\n
\n
\n \n \n \n
\n

Secure

\n
\n

Web3 technology and cryptography allows you to securely authenticate with services without providing any personal details.

\n
\n
\n
\n
\n \n \n \n
\n

Fast

\n
\n

Dauth is blazing fast! With authentication processing times of:

{workerStats ? workerStats.avgRespTime !== \"Error\" ? workerStats.avgRespTime.toFixed(2) : workerStats.avgRespTime : null} ms

\n
\n
\n
\n
\n
\n
\n
\n\n {/* */}\n {}\n
\n
\n
\n\n {isAuthed ? : null}\n
\n {/* */}\n
\n
\n

Login to learn more about Dauth

\n

In order to showcase what Dauth can do, I thought it was a good idea to incentivize using it to really understand how it works.

\n\n
\n\n
\n
\n \n \n\n
\n
\n {/*
\n \"\"\n
*/}\n
\n
\n \n\n
\n \n \n
\n );\n}\n\nexport default Home;","import { useEffect } from \"react\";\nimport { useSearchParams, useParams } from \"react-router-dom\";\nimport { Helmet } from \"react-helmet\"\nimport { ethers } from \"ethers\";\nimport { Buffer } from \"buffer\"\nimport QRCode from 'qrcode'\nimport { w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { useCookies } from \"react-cookie\";\nconst { v4: uuidv4 } = require('uuid');\nconst METAMASK_BASE_LINK = 'https://metamask.app.link/dapp';\nconst WEB_SOCKET = 'soc1.dauth.dev'\n\n\n\nexport default function Otk() {\n const [cookies, setCookie, removeCookie] = useCookies(['cookie-name']);\n\n const [searchParams, setSearchParams] = useSearchParams()\n var userOnMobile = searchParams.get(\"m\") // if users i using mobile to authenticate\n var otk = searchParams.get(\"otk\") // get the one time key\n if (otk == undefined) {\n otk = uuidv4()\n }\n useEffect(async () => {\n\n const ws = new W3CWebSocket(`wss://${WEB_SOCKET}/ws/${otk}`);\n\n ws.onmessage = async function (event) {\n const json = JSON.parse(event.data);\n console.log(`Data received from server web socket: ${JSON.stringify(json)}`);\n\n // validate Auth\n if(userOnMobile !== \"t\"){\n const validJWT = await verifyAuth(json.payload.JWT)\n alert(validJWT) \n setCookie('dauthJWT', validJWT, { path: '/' });\n }\n\n };\n console.log('Init web3')\n\n\n const ethereum = window.ethereum;\n const qrCodeURL = `${METAMASK_BASE_LINK}/dauth.dev/auth/?m=t&otk=${otk}`\n QRCode.toCanvas(document.getElementById('authQRCodeCanvas'), qrCodeURL, { errorCorrectionLevel: 'H' }, function (err, url) {\n })\n if (ethereum && userOnMobile === \"t\") {\n\n try {\n const accounts = await ethereum.request({ method: 'eth_requestAccounts' });\n const account = accounts[0];\n console.log(account)\n var from = account\n var provider = new ethers.providers.Web3Provider(ethereum);\n var signer = provider.getSigner();\n\n const exampleMessage = `Sign message to authenticate access to: 'Example.com' with OTK: ${otk}`;\n\n const msg = `0x${Buffer.from(exampleMessage, 'utf8').toString('hex')}`;\n\n const sign = await ethereum.request({\n method: 'personal_sign',\n params: [msg, from, 'Example password'],\n });\n\n fetch('https://api.dauth.dev/walletAuth', {\n method: 'POST',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n OTK: otk,\n fromWallet: account,\n rawMessage: exampleMessage,\n signedMessage: sign,\n method: 'login'\n })\n }).then(response => response.json())\n .then(async (data) => {\n console.log(data)\n\n }).catch(error => {\n console.log(error)\n })\n\n } catch (err) {\n console.error(err);\n }\n\n }\n })\n\n return (\n
\n \n