Fix code and delete unnecessary files CSS

parent 8d1b59bc
/*!
* Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
(function () {
'use strict';
function _typeof(obj) {
if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
_typeof = function (obj) {
return typeof obj;
};
} else {
_typeof = function (obj) {
return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
};
}
return _typeof(obj);
}
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function _createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
}
ownKeys.forEach(function (key) {
_defineProperty(target, key, source[key]);
});
}
return target;
}
function _slicedToArray(arr, i) {
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();
}
function _toConsumableArray(arr) {
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();
}
function _arrayWithoutHoles(arr) {
if (Array.isArray(arr)) {
for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];
return arr2;
}
}
function _arrayWithHoles(arr) {
if (Array.isArray(arr)) return arr;
}
function _iterableToArray(iter) {
if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
}
function _iterableToArrayLimit(arr, i) {
var _arr = [];
var _n = true;
var _d = false;
var _e = undefined;
try {
for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
_arr.push(_s.value);
if (i && _arr.length === i) break;
}
} catch (err) {
_d = true;
_e = err;
} finally {
try {
if (!_n && _i["return"] != null) _i["return"]();
} finally {
if (_d) throw _e;
}
}
return _arr;
}
function _nonIterableSpread() {
throw new TypeError("Invalid attempt to spread non-iterable instance");
}
function _nonIterableRest() {
throw new TypeError("Invalid attempt to destructure non-iterable instance");
}
var noop = function noop() {};
var _WINDOW = {};
var _DOCUMENT = {};
var _MUTATION_OBSERVER = null;
var _PERFORMANCE = {
mark: noop,
measure: noop
};
try {
if (typeof window !== 'undefined') _WINDOW = window;
if (typeof document !== 'undefined') _DOCUMENT = document;
if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;
if (typeof performance !== 'undefined') _PERFORMANCE = performance;
} catch (e) {}
var _ref = _WINDOW.navigator || {},
_ref$userAgent = _ref.userAgent,
userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;
var WINDOW = _WINDOW;
var DOCUMENT = _DOCUMENT;
var MUTATION_OBSERVER = _MUTATION_OBSERVER;
var PERFORMANCE = _PERFORMANCE;
var IS_BROWSER = !!WINDOW.document;
var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';
var IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');
var NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';
var UNITS_IN_GRID = 16;
var DEFAULT_FAMILY_PREFIX = 'fa';
var DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';
var DATA_FA_I2SVG = 'data-fa-i2svg';
var DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';
var DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';
var DATA_PREFIX = 'data-prefix';
var DATA_ICON = 'data-icon';
var HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';
var MUTATION_APPROACH_ASYNC = 'async';
var TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];
var PRODUCTION = function () {
try {
return "production" === 'production';
} catch (e) {
return false;
}
}();
var PREFIX_TO_STYLE = {
'fas': 'solid',
'far': 'regular',
'fal': 'light',
'fad': 'duotone',
'fab': 'brands',
'fa': 'solid'
};
var STYLE_TO_PREFIX = {
'solid': 'fas',
'regular': 'far',
'light': 'fal',
'duotone': 'fad',
'brands': 'fab'
};
var LAYERS_TEXT_CLASSNAME = 'fa-layers-text';
var FONT_FAMILY_PATTERN = /Font Awesome 5 (Solid|Regular|Light|Duotone|Brands|Free|Pro)/;
var FONT_WEIGHT_TO_PREFIX = {
'900': 'fas',
'400': 'far',
'normal': 'far',
'300': 'fal'
};
var oneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var oneToTwenty = oneToTen.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);
var ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];
var DUOTONE_CLASSES = {
GROUP: 'group',
SWAP_OPACITY: 'swap-opacity',
PRIMARY: 'primary',
SECONDARY: 'secondary'
};
var RESERVED_CLASSES = ['xs', 'sm', 'lg', 'fw', 'ul', 'li', 'border', 'pull-left', 'pull-right', 'spin', 'pulse', 'rotate-90', 'rotate-180', 'rotate-270', 'flip-horizontal', 'flip-vertical', 'flip-both', 'stack', 'stack-1x', 'stack-2x', 'inverse', 'layers', 'layers-text', 'layers-counter', DUOTONE_CLASSES.GROUP, DUOTONE_CLASSES.SWAP_OPACITY, DUOTONE_CLASSES.PRIMARY, DUOTONE_CLASSES.SECONDARY].concat(oneToTen.map(function (n) {
return "".concat(n, "x");
})).concat(oneToTwenty.map(function (n) {
return "w-".concat(n);
}));
var initial = WINDOW.FontAwesomeConfig || {};
function getAttrConfig(attr) {
var element = DOCUMENT.querySelector('script[' + attr + ']');
if (element) {
return element.getAttribute(attr);
}
}
function coerce(val) {
// Getting an empty string will occur if the attribute is set on the HTML tag but without a value
// We'll assume that this is an indication that it should be toggled to true
// For example <script data-search-pseudo-elements src="..."></script>
if (val === '') return true;
if (val === 'false') return false;
if (val === 'true') return true;
return val;
}
if (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {
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']];
attrs.forEach(function (_ref) {
var _ref2 = _slicedToArray(_ref, 2),
attr = _ref2[0],
key = _ref2[1];
var val = coerce(getAttrConfig(attr));
if (val !== undefined && val !== null) {
initial[key] = val;
}
});
}
var _default = {
familyPrefix: DEFAULT_FAMILY_PREFIX,
replacementClass: DEFAULT_REPLACEMENT_CLASS,
autoReplaceSvg: true,
autoAddCss: true,
autoA11y: true,
searchPseudoElements: false,
observeMutations: true,
mutateApproach: 'async',
keepOriginalSource: true,
measurePerformance: false,
showMissingIcons: true
};
var _config = _objectSpread({}, _default, initial);
if (!_config.autoReplaceSvg) _config.observeMutations = false;
var config = _objectSpread({}, _config);
WINDOW.FontAwesomeConfig = config;
var w = WINDOW || {};
if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};
if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};
if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};
if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];
var namespace = w[NAMESPACE_IDENTIFIER];
var functions = [];
var listener = function listener() {
DOCUMENT.removeEventListener('DOMContentLoaded', listener);
loaded = 1;
functions.map(function (fn) {
return fn();
});
};
var loaded = false;
if (IS_DOM) {
loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);
if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);
}
function domready (fn) {
if (!IS_DOM) return;
loaded ? setTimeout(fn, 0) : functions.push(fn);
}
var PENDING = 'pending';
var SETTLED = 'settled';
var FULFILLED = 'fulfilled';
var REJECTED = 'rejected';
var NOOP = function NOOP() {};
var isNode = typeof global !== 'undefined' && typeof global.process !== 'undefined' && typeof global.process.emit === 'function';
var asyncSetTimer = typeof setImmediate === 'undefined' ? setTimeout : setImmediate;
var asyncQueue = [];
var asyncTimer;
function asyncFlush() {
// run promise callbacks
for (var i = 0; i < asyncQueue.length; i++) {
asyncQueue[i][0](asyncQueue[i][1]);
} // reset async asyncQueue
asyncQueue = [];
asyncTimer = false;
}
function asyncCall(callback, arg) {
asyncQueue.push([callback, arg]);
if (!asyncTimer) {
asyncTimer = true;
asyncSetTimer(asyncFlush, 0);
}
}
function invokeResolver(resolver, promise) {
function resolvePromise(value) {
resolve(promise, value);
}
function rejectPromise(reason) {
reject(promise, reason);
}
try {
resolver(resolvePromise, rejectPromise);
} catch (e) {
rejectPromise(e);
}
}
function invokeCallback(subscriber) {
var owner = subscriber.owner;
var settled = owner._state;
var value = owner._data;
var callback = subscriber[settled];
var promise = subscriber.then;
if (typeof callback === 'function') {
settled = FULFILLED;
try {
value = callback(value);
} catch (e) {
reject(promise, e);
}
}
if (!handleThenable(promise, value)) {
if (settled === FULFILLED) {
resolve(promise, value);
}
if (settled === REJECTED) {
reject(promise, value);
}
}
}
function handleThenable(promise, value) {
var resolved;
try {
if (promise === value) {
throw new TypeError('A promises callback cannot return that same promise.');
}
if (value && (typeof value === 'function' || _typeof(value) === 'object')) {
// then should be retrieved only once
var then = value.then;
if (typeof then === 'function') {
then.call(value, function (val) {
if (!resolved) {
resolved = true;
if (value === val) {
fulfill(promise, val);
} else {
resolve(promise, val);
}
}
}, function (reason) {
if (!resolved) {
resolved = true;
reject(promise, reason);
}
});
return true;
}
}
} catch (e) {
if (!resolved) {
reject(promise, e);
}
return true;
}
return false;
}
function resolve(promise, value) {
if (promise === value || !handleThenable(promise, value)) {
fulfill(promise, value);
}
}
function fulfill(promise, value) {
if (promise._state === PENDING) {
promise._state = SETTLED;
promise._data = value;
asyncCall(publishFulfillment, promise);
}
}
function reject(promise, reason) {
if (promise._state === PENDING) {
promise._state = SETTLED;
promise._data = reason;
asyncCall(publishRejection, promise);
}
}
function publish(promise) {
promise._then = promise._then.forEach(invokeCallback);
}
function publishFulfillment(promise) {
promise._state = FULFILLED;
publish(promise);
}
function publishRejection(promise) {
promise._state = REJECTED;
publish(promise);
if (!promise._handled && isNode) {
global.process.emit('unhandledRejection', promise._data, promise);
}
}
function notifyRejectionHandled(promise) {
global.process.emit('rejectionHandled', promise);
}
/**
* @class
*/
function P(resolver) {
if (typeof resolver !== 'function') {
throw new TypeError('Promise resolver ' + resolver + ' is not a function');
}
if (this instanceof P === false) {
throw new TypeError('Failed to construct \'Promise\': Please use the \'new\' operator, this object constructor cannot be called as a function.');
}
this._then = [];
invokeResolver(resolver, this);
}
P.prototype = {
constructor: P,
_state: PENDING,
_then: null,
_data: undefined,
_handled: false,
then: function then(onFulfillment, onRejection) {
var subscriber = {
owner: this,
then: new this.constructor(NOOP),
fulfilled: onFulfillment,
rejected: onRejection
};
if ((onRejection || onFulfillment) && !this._handled) {
this._handled = true;
if (this._state === REJECTED && isNode) {
asyncCall(notifyRejectionHandled, this);
}
}
if (this._state === FULFILLED || this._state === REJECTED) {
// already resolved, call callback async
asyncCall(invokeCallback, subscriber);
} else {
// subscribe
this._then.push(subscriber);
}
return subscriber.then;
},
catch: function _catch(onRejection) {
return this.then(null, onRejection);
}
};
P.all = function (promises) {
if (!Array.isArray(promises)) {
throw new TypeError('You must pass an array to Promise.all().');
}
return new P(function (resolve, reject) {
var results = [];
var remaining = 0;
function resolver(index) {
remaining++;
return function (value) {
results[index] = value;
if (! --remaining) {
resolve(results);
}
};
}
for (var i = 0, promise; i < promises.length; i++) {
promise = promises[i];
if (promise && typeof promise.then === 'function') {
promise.then(resolver(i), reject);
} else {
results[i] = promise;
}
}
if (!remaining) {
resolve(results);
}
});
};
P.race = function (promises) {
if (!Array.isArray(promises)) {
throw new TypeError('You must pass an array to Promise.race().');
}
return new P(function (resolve, reject) {
for (var i = 0, promise; i < promises.length; i++) {
promise = promises[i];
if (promise && typeof promise.then === 'function') {
promise.then(resolve, reject);
} else {
resolve(promise);
}
}
});
};
P.resolve = function (value) {
if (value && _typeof(value) === 'object' && value.constructor === P) {
return value;
}
return new P(function (resolve) {
resolve(value);
});
};
P.reject = function (reason) {
return new P(function (resolve, reject) {
reject(reason);
});
};
var picked = typeof Promise === 'function' ? Promise : P;
var d = UNITS_IN_GRID;
var meaninglessTransform = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: false,
flipY: false
};
function isReserved(name) {
return ~RESERVED_CLASSES.indexOf(name);
}
function bunker(fn) {
try {
fn();
} catch (e) {
if (!PRODUCTION) {
throw e;
}
}
}
function insertCss(css) {
if (!css || !IS_DOM) {
return;
}
var style = DOCUMENT.createElement('style');
style.setAttribute('type', 'text/css');
style.innerHTML = css;
var headChildren = DOCUMENT.head.childNodes;
var beforeChild = null;
for (var i = headChildren.length - 1; i > -1; i--) {
var child = headChildren[i];
var tagName = (child.tagName || '').toUpperCase();
if (['STYLE', 'LINK'].indexOf(tagName) > -1) {
beforeChild = child;
}
}
DOCUMENT.head.insertBefore(style, beforeChild);
return css;
}
var idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
function nextUniqueId() {
var size = 12;
var id = '';
while (size-- > 0) {
id += idPool[Math.random() * 62 | 0];
}
return id;
}
function toArray(obj) {
var array = [];
for (var i = (obj || []).length >>> 0; i--;) {
array[i] = obj[i];
}
return array;
}
function classArray(node) {
if (node.classList) {
return toArray(node.classList);
} else {
return (node.getAttribute('class') || '').split(' ').filter(function (i) {
return i;
});
}
}
function getIconName(familyPrefix, cls) {
var parts = cls.split('-');
var prefix = parts[0];
var iconName = parts.slice(1).join('-');
if (prefix === familyPrefix && iconName !== '' && !isReserved(iconName)) {
return iconName;
} else {
return null;
}
}
function htmlEscape(str) {
return "".concat(str).replace(/&/g, '&amp;').replace(/"/g, '&quot;').replace(/'/g, '&#39;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
}
function joinAttributes(attributes) {
return Object.keys(attributes || {}).reduce(function (acc, attributeName) {
return acc + "".concat(attributeName, "=\"").concat(htmlEscape(attributes[attributeName]), "\" ");
}, '').trim();
}
function joinStyles(styles) {
return Object.keys(styles || {}).reduce(function (acc, styleName) {
return acc + "".concat(styleName, ": ").concat(styles[styleName], ";");
}, '');
}
function transformIsMeaningful(transform) {
return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;
}
function transformForSvg(_ref) {
var transform = _ref.transform,
containerWidth = _ref.containerWidth,
iconWidth = _ref.iconWidth;
var outer = {
transform: "translate(".concat(containerWidth / 2, " 256)")
};
var innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") ");
var innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") ");
var innerRotate = "rotate(".concat(transform.rotate, " 0 0)");
var inner = {
transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate)
};
var path = {
transform: "translate(".concat(iconWidth / 2 * -1, " -256)")
};
return {
outer: outer,
inner: inner,
path: path
};
}
function transformForCss(_ref2) {
var transform = _ref2.transform,
_ref2$width = _ref2.width,
width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,
_ref2$height = _ref2.height,
height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,
_ref2$startCentered = _ref2.startCentered,
startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;
var val = '';
if (startCentered && IS_IE) {
val += "translate(".concat(transform.x / d - width / 2, "em, ").concat(transform.y / d - height / 2, "em) ");
} else if (startCentered) {
val += "translate(calc(-50% + ".concat(transform.x / d, "em), calc(-50% + ").concat(transform.y / d, "em)) ");
} else {
val += "translate(".concat(transform.x / d, "em, ").concat(transform.y / d, "em) ");
}
val += "scale(".concat(transform.size / d * (transform.flipX ? -1 : 1), ", ").concat(transform.size / d * (transform.flipY ? -1 : 1), ") ");
val += "rotate(".concat(transform.rotate, "deg) ");
return val;
}
var ALL_SPACE = {
x: 0,
y: 0,
width: '100%',
height: '100%'
};
function fillBlack(abstract) {
var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
if (abstract.attributes && (abstract.attributes.fill || force)) {
abstract.attributes.fill = 'black';
}
return abstract;
}
function deGroup(abstract) {
if (abstract.tag === 'g') {
return abstract.children;
} else {
return [abstract];
}
}
function makeIconMasking (_ref) {
var children = _ref.children,
attributes = _ref.attributes,
main = _ref.main,
mask = _ref.mask,
explicitMaskId = _ref.maskId,
transform = _ref.transform;
var mainWidth = main.width,
mainPath = main.icon;
var maskWidth = mask.width,
maskPath = mask.icon;
var trans = transformForSvg({
transform: transform,
containerWidth: maskWidth,
iconWidth: mainWidth
});
var maskRect = {
tag: 'rect',
attributes: _objectSpread({}, ALL_SPACE, {
fill: 'white'
})
};
var maskInnerGroupChildrenMixin = mainPath.children ? {
children: mainPath.children.map(fillBlack)
} : {};
var maskInnerGroup = {
tag: 'g',
attributes: _objectSpread({}, trans.inner),
children: [fillBlack(_objectSpread({
tag: mainPath.tag,
attributes: _objectSpread({}, mainPath.attributes, trans.path)
}, maskInnerGroupChildrenMixin))]
};
var maskOuterGroup = {
tag: 'g',
attributes: _objectSpread({}, trans.outer),
children: [maskInnerGroup]
};
var maskId = "mask-".concat(explicitMaskId || nextUniqueId());
var clipId = "clip-".concat(explicitMaskId || nextUniqueId());
var maskTag = {
tag: 'mask',
attributes: _objectSpread({}, ALL_SPACE, {
id: maskId,
maskUnits: 'userSpaceOnUse',
maskContentUnits: 'userSpaceOnUse'
}),
children: [maskRect, maskOuterGroup]
};
var defs = {
tag: 'defs',
children: [{
tag: 'clipPath',
attributes: {
id: clipId
},
children: deGroup(maskPath)
}, maskTag]
};
children.push(defs, {
tag: 'rect',
attributes: _objectSpread({
fill: 'currentColor',
'clip-path': "url(#".concat(clipId, ")"),
mask: "url(#".concat(maskId, ")")
}, ALL_SPACE)
});
return {
children: children,
attributes: attributes
};
}
function makeIconStandard (_ref) {
var children = _ref.children,
attributes = _ref.attributes,
main = _ref.main,
transform = _ref.transform,
styles = _ref.styles;
var styleString = joinStyles(styles);
if (styleString.length > 0) {
attributes['style'] = styleString;
}
if (transformIsMeaningful(transform)) {
var trans = transformForSvg({
transform: transform,
containerWidth: main.width,
iconWidth: main.width
});
children.push({
tag: 'g',
attributes: _objectSpread({}, trans.outer),
children: [{
tag: 'g',
attributes: _objectSpread({}, trans.inner),
children: [{
tag: main.icon.tag,
children: main.icon.children,
attributes: _objectSpread({}, main.icon.attributes, trans.path)
}]
}]
});
} else {
children.push(main.icon);
}
return {
children: children,
attributes: attributes
};
}
function asIcon (_ref) {
var children = _ref.children,
main = _ref.main,
mask = _ref.mask,
attributes = _ref.attributes,
styles = _ref.styles,
transform = _ref.transform;
if (transformIsMeaningful(transform) && main.found && !mask.found) {
var width = main.width,
height = main.height;
var offset = {
x: width / height / 2,
y: 0.5
};
attributes['style'] = joinStyles(_objectSpread({}, styles, {
'transform-origin': "".concat(offset.x + transform.x / 16, "em ").concat(offset.y + transform.y / 16, "em")
}));
}
return [{
tag: 'svg',
attributes: attributes,
children: children
}];
}
function asSymbol (_ref) {
var prefix = _ref.prefix,
iconName = _ref.iconName,
children = _ref.children,
attributes = _ref.attributes,
symbol = _ref.symbol;
var id = symbol === true ? "".concat(prefix, "-").concat(config.familyPrefix, "-").concat(iconName) : symbol;
return [{
tag: 'svg',
attributes: {
style: 'display: none;'
},
children: [{
tag: 'symbol',
attributes: _objectSpread({}, attributes, {
id: id
}),
children: children
}]
}];
}
function makeInlineSvgAbstract(params) {
var _params$icons = params.icons,
main = _params$icons.main,
mask = _params$icons.mask,
prefix = params.prefix,
iconName = params.iconName,
transform = params.transform,
symbol = params.symbol,
title = params.title,
maskId = params.maskId,
titleId = params.titleId,
extra = params.extra,
_params$watchable = params.watchable,
watchable = _params$watchable === void 0 ? false : _params$watchable;
var _ref = mask.found ? mask : main,
width = _ref.width,
height = _ref.height;
var widthClass = "fa-w-".concat(Math.ceil(width / height * 16));
var attrClass = [config.replacementClass, iconName ? "".concat(config.familyPrefix, "-").concat(iconName) : '', widthClass].filter(function (c) {
return extra.classes.indexOf(c) === -1;
}).concat(extra.classes).join(' ');
var content = {
children: [],
attributes: _objectSpread({}, extra.attributes, {
'data-prefix': prefix,
'data-icon': iconName,
'class': attrClass,
'role': extra.attributes.role || 'img',
'xmlns': 'http://www.w3.org/2000/svg',
'viewBox': "0 0 ".concat(width, " ").concat(height)
})
};
if (watchable) {
content.attributes[DATA_FA_I2SVG] = '';
}
if (title) content.children.push({
tag: 'title',
attributes: {
id: content.attributes['aria-labelledby'] || "title-".concat(titleId || nextUniqueId())
},
children: [title]
});
var args = _objectSpread({}, content, {
prefix: prefix,
iconName: iconName,
main: main,
mask: mask,
maskId: maskId,
transform: transform,
symbol: symbol,
styles: extra.styles
});
var _ref2 = mask.found && main.found ? makeIconMasking(args) : makeIconStandard(args),
children = _ref2.children,
attributes = _ref2.attributes;
args.children = children;
args.attributes = attributes;
if (symbol) {
return asSymbol(args);
} else {
return asIcon(args);
}
}
function makeLayersTextAbstract(params) {
var content = params.content,
width = params.width,
height = params.height,
transform = params.transform,
title = params.title,
extra = params.extra,
_params$watchable2 = params.watchable,
watchable = _params$watchable2 === void 0 ? false : _params$watchable2;
var attributes = _objectSpread({}, extra.attributes, title ? {
'title': title
} : {}, {
'class': extra.classes.join(' ')
});
if (watchable) {
attributes[DATA_FA_I2SVG] = '';
}
var styles = _objectSpread({}, extra.styles);
if (transformIsMeaningful(transform)) {
styles['transform'] = transformForCss({
transform: transform,
startCentered: true,
width: width,
height: height
});
styles['-webkit-transform'] = styles['transform'];
}
var styleString = joinStyles(styles);
if (styleString.length > 0) {
attributes['style'] = styleString;
}
var val = [];
val.push({
tag: 'span',
attributes: attributes,
children: [content]
});
if (title) {
val.push({
tag: 'span',
attributes: {
class: 'sr-only'
},
children: [title]
});
}
return val;
}
function makeLayersCounterAbstract(params) {
var content = params.content,
title = params.title,
extra = params.extra;
var attributes = _objectSpread({}, extra.attributes, title ? {
'title': title
} : {}, {
'class': extra.classes.join(' ')
});
var styleString = joinStyles(extra.styles);
if (styleString.length > 0) {
attributes['style'] = styleString;
}
var val = [];
val.push({
tag: 'span',
attributes: attributes,
children: [content]
});
if (title) {
val.push({
tag: 'span',
attributes: {
class: 'sr-only'
},
children: [title]
});
}
return val;
}
var noop$1 = function noop() {};
var p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {
mark: noop$1,
measure: noop$1
};
var preamble = "FA \"5.14.0\"";
var begin = function begin(name) {
p.mark("".concat(preamble, " ").concat(name, " begins"));
return function () {
return end(name);
};
};
var end = function end(name) {
p.mark("".concat(preamble, " ").concat(name, " ends"));
p.measure("".concat(preamble, " ").concat(name), "".concat(preamble, " ").concat(name, " begins"), "".concat(preamble, " ").concat(name, " ends"));
};
var perf = {
begin: begin,
end: end
};
/**
* Internal helper to bind a function known to have 4 arguments
* to a given context.
*/
var bindInternal4 = function bindInternal4(func, thisContext) {
return function (a, b, c, d) {
return func.call(thisContext, a, b, c, d);
};
};
/**
* # Reduce
*
* A fast object `.reduce()` implementation.
*
* @param {Object} subject The object to reduce over.
* @param {Function} fn The reducer function.
* @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].
* @param {Object} thisContext The context for the reducer.
* @return {mixed} The final result.
*/
var reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {
var keys = Object.keys(subject),
length = keys.length,
iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,
i,
key,
result;
if (initialValue === undefined) {
i = 1;
result = subject[keys[0]];
} else {
i = 0;
result = initialValue;
}
for (; i < length; i++) {
key = keys[i];
result = iterator(result, subject[key], key, subject);
}
return result;
};
function toHex(unicode) {
var result = '';
for (var i = 0; i < unicode.length; i++) {
var hex = unicode.charCodeAt(i).toString(16);
result += ('000' + hex).slice(-4);
}
return result;
}
function defineIcons(prefix, icons) {
var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var _params$skipHooks = params.skipHooks,
skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;
var normalized = Object.keys(icons).reduce(function (acc, iconName) {
var icon = icons[iconName];
var expanded = !!icon.icon;
if (expanded) {
acc[icon.iconName] = icon.icon;
} else {
acc[iconName] = icon;
}
return acc;
}, {});
if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {
namespace.hooks.addPack(prefix, normalized);
} else {
namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, normalized);
}
/**
* Font Awesome 4 used the prefix of `fa` for all icons. With the introduction
* of new styles we needed to differentiate between them. Prefix `fa` is now an alias
* for `fas` so we'll easy the upgrade process for our users by automatically defining
* this as well.
*/
if (prefix === 'fas') {
defineIcons('fa', icons);
}
}
var styles = namespace.styles,
shims = namespace.shims;
var _byUnicode = {};
var _byLigature = {};
var _byOldName = {};
var build = function build() {
var lookup = function lookup(reducer) {
return reduce(styles, function (o, style, prefix) {
o[prefix] = reduce(style, reducer, {});
return o;
}, {});
};
_byUnicode = lookup(function (acc, icon, iconName) {
if (icon[3]) {
acc[icon[3]] = iconName;
}
return acc;
});
_byLigature = lookup(function (acc, icon, iconName) {
var ligatures = icon[2];
acc[iconName] = iconName;
ligatures.forEach(function (ligature) {
acc[ligature] = iconName;
});
return acc;
});
var hasRegular = 'far' in styles;
_byOldName = reduce(shims, function (acc, shim) {
var oldName = shim[0];
var prefix = shim[1];
var iconName = shim[2];
if (prefix === 'far' && !hasRegular) {
prefix = 'fas';
}
acc[oldName] = {
prefix: prefix,
iconName: iconName
};
return acc;
}, {});
};
build();
function byUnicode(prefix, unicode) {
return (_byUnicode[prefix] || {})[unicode];
}
function byLigature(prefix, ligature) {
return (_byLigature[prefix] || {})[ligature];
}
function byOldName(name) {
return _byOldName[name] || {
prefix: null,
iconName: null
};
}
var styles$1 = namespace.styles;
var emptyCanonicalIcon = function emptyCanonicalIcon() {
return {
prefix: null,
iconName: null,
rest: []
};
};
function getCanonicalIcon(values) {
return values.reduce(function (acc, cls) {
var iconName = getIconName(config.familyPrefix, cls);
if (styles$1[cls]) {
acc.prefix = cls;
} else if (config.autoFetchSvg && ['fas', 'far', 'fal', 'fad', 'fab', 'fa'].indexOf(cls) > -1) {
acc.prefix = cls;
} else if (iconName) {
var shim = acc.prefix === 'fa' ? byOldName(iconName) : {};
acc.iconName = shim.iconName || iconName;
acc.prefix = shim.prefix || acc.prefix;
} else if (cls !== config.replacementClass && cls.indexOf('fa-w-') !== 0) {
acc.rest.push(cls);
}
return acc;
}, emptyCanonicalIcon());
}
function iconFromMapping(mapping, prefix, iconName) {
if (mapping && mapping[prefix] && mapping[prefix][iconName]) {
return {
prefix: prefix,
iconName: iconName,
icon: mapping[prefix][iconName]
};
}
}
function toHtml(abstractNodes) {
var tag = abstractNodes.tag,
_abstractNodes$attrib = abstractNodes.attributes,
attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,
_abstractNodes$childr = abstractNodes.children,
children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;
if (typeof abstractNodes === 'string') {
return htmlEscape(abstractNodes);
} else {
return "<".concat(tag, " ").concat(joinAttributes(attributes), ">").concat(children.map(toHtml).join(''), "</").concat(tag, ">");
}
}
var noop$2 = function noop() {};
function isWatched(node) {
var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;
return typeof i2svg === 'string';
}
function getMutator() {
if (config.autoReplaceSvg === true) {
return mutators.replace;
}
var mutator = mutators[config.autoReplaceSvg];
return mutator || mutators.replace;
}
var mutators = {
replace: function replace(mutation) {
var node = mutation[0];
var abstract = mutation[1];
var newOuterHTML = abstract.map(function (a) {
return toHtml(a);
}).join('\n');
if (node.parentNode && node.outerHTML) {
node.outerHTML = newOuterHTML + (config.keepOriginalSource && node.tagName.toLowerCase() !== 'svg' ? "<!-- ".concat(node.outerHTML, " -->") : '');
} else if (node.parentNode) {
var newNode = document.createElement('span');
node.parentNode.replaceChild(newNode, node);
newNode.outerHTML = newOuterHTML;
}
},
nest: function nest(mutation) {
var node = mutation[0];
var abstract = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it.
// Short-circuit to the standard replacement
if (~classArray(node).indexOf(config.replacementClass)) {
return mutators.replace(mutation);
}
var forSvg = new RegExp("".concat(config.familyPrefix, "-.*"));
delete abstract[0].attributes.style;
delete abstract[0].attributes.id;
var splitClasses = abstract[0].attributes.class.split(' ').reduce(function (acc, cls) {
if (cls === config.replacementClass || cls.match(forSvg)) {
acc.toSvg.push(cls);
} else {
acc.toNode.push(cls);
}
return acc;
}, {
toNode: [],
toSvg: []
});
abstract[0].attributes.class = splitClasses.toSvg.join(' ');
var newInnerHTML = abstract.map(function (a) {
return toHtml(a);
}).join('\n');
node.setAttribute('class', splitClasses.toNode.join(' '));
node.setAttribute(DATA_FA_I2SVG, '');
node.innerHTML = newInnerHTML;
}
};
function performOperationSync(op) {
op();
}
function perform(mutations, callback) {
var callbackFunction = typeof callback === 'function' ? callback : noop$2;
if (mutations.length === 0) {
callbackFunction();
} else {
var frame = performOperationSync;
if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {
frame = WINDOW.requestAnimationFrame || performOperationSync;
}
frame(function () {
var mutator = getMutator();
var mark = perf.begin('mutate');
mutations.map(mutator);
mark();
callbackFunction();
});
}
}
var disabled = false;
function disableObservation() {
disabled = true;
}
function enableObservation() {
disabled = false;
}
var mo = null;
function observe(options) {
if (!MUTATION_OBSERVER) {
return;
}
if (!config.observeMutations) {
return;
}
var treeCallback = options.treeCallback,
nodeCallback = options.nodeCallback,
pseudoElementsCallback = options.pseudoElementsCallback,
_options$observeMutat = options.observeMutationsRoot,
observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat;
mo = new MUTATION_OBSERVER(function (objects) {
if (disabled) return;
toArray(objects).forEach(function (mutationRecord) {
if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {
if (config.searchPseudoElements) {
pseudoElementsCallback(mutationRecord.target);
}
treeCallback(mutationRecord.target);
}
if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {
pseudoElementsCallback(mutationRecord.target.parentNode);
}
if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {
if (mutationRecord.attributeName === 'class') {
var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),
prefix = _getCanonicalIcon.prefix,
iconName = _getCanonicalIcon.iconName;
if (prefix) mutationRecord.target.setAttribute('data-prefix', prefix);
if (iconName) mutationRecord.target.setAttribute('data-icon', iconName);
} else {
nodeCallback(mutationRecord.target);
}
}
});
});
if (!IS_DOM) return;
mo.observe(observeMutationsRoot, {
childList: true,
attributes: true,
characterData: true,
subtree: true
});
}
function disconnect() {
if (!mo) return;
mo.disconnect();
}
function styleParser (node) {
var style = node.getAttribute('style');
var val = [];
if (style) {
val = style.split(';').reduce(function (acc, style) {
var styles = style.split(':');
var prop = styles[0];
var value = styles.slice(1);
if (prop && value.length > 0) {
acc[prop] = value.join(':').trim();
}
return acc;
}, {});
}
return val;
}
function classParser (node) {
var existingPrefix = node.getAttribute('data-prefix');
var existingIconName = node.getAttribute('data-icon');
var innerText = node.innerText !== undefined ? node.innerText.trim() : '';
var val = getCanonicalIcon(classArray(node));
if (existingPrefix && existingIconName) {
val.prefix = existingPrefix;
val.iconName = existingIconName;
}
if (val.prefix && innerText.length > 1) {
val.iconName = byLigature(val.prefix, node.innerText);
} else if (val.prefix && innerText.length === 1) {
val.iconName = byUnicode(val.prefix, toHex(node.innerText));
}
return val;
}
var parseTransformString = function parseTransformString(transformString) {
var transform = {
size: 16,
x: 0,
y: 0,
flipX: false,
flipY: false,
rotate: 0
};
if (!transformString) {
return transform;
} else {
return transformString.toLowerCase().split(' ').reduce(function (acc, n) {
var parts = n.toLowerCase().split('-');
var first = parts[0];
var rest = parts.slice(1).join('-');
if (first && rest === 'h') {
acc.flipX = true;
return acc;
}
if (first && rest === 'v') {
acc.flipY = true;
return acc;
}
rest = parseFloat(rest);
if (isNaN(rest)) {
return acc;
}
switch (first) {
case 'grow':
acc.size = acc.size + rest;
break;
case 'shrink':
acc.size = acc.size - rest;
break;
case 'left':
acc.x = acc.x - rest;
break;
case 'right':
acc.x = acc.x + rest;
break;
case 'up':
acc.y = acc.y - rest;
break;
case 'down':
acc.y = acc.y + rest;
break;
case 'rotate':
acc.rotate = acc.rotate + rest;
break;
}
return acc;
}, transform);
}
};
function transformParser (node) {
return parseTransformString(node.getAttribute('data-fa-transform'));
}
function symbolParser (node) {
var symbol = node.getAttribute('data-fa-symbol');
return symbol === null ? false : symbol === '' ? true : symbol;
}
function attributesParser (node) {
var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) {
if (acc.name !== 'class' && acc.name !== 'style') {
acc[attr.name] = attr.value;
}
return acc;
}, {});
var title = node.getAttribute('title');
var titleId = node.getAttribute('data-fa-title-id');
if (config.autoA11y) {
if (title) {
extraAttributes['aria-labelledby'] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId());
} else {
extraAttributes['aria-hidden'] = 'true';
extraAttributes['focusable'] = 'false';
}
}
return extraAttributes;
}
function maskParser (node) {
var mask = node.getAttribute('data-fa-mask');
if (!mask) {
return emptyCanonicalIcon();
} else {
return getCanonicalIcon(mask.split(' ').map(function (i) {
return i.trim();
}));
}
}
function blankMeta() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: meaninglessTransform,
symbol: false,
mask: null,
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function parseMeta(node) {
var _classParser = classParser(node),
iconName = _classParser.iconName,
prefix = _classParser.prefix,
extraClasses = _classParser.rest;
var extraStyles = styleParser(node);
var transform = transformParser(node);
var symbol = symbolParser(node);
var extraAttributes = attributesParser(node);
var mask = maskParser(node);
return {
iconName: iconName,
title: node.getAttribute('title'),
titleId: node.getAttribute('data-fa-title-id'),
prefix: prefix,
transform: transform,
symbol: symbol,
mask: mask,
maskId: node.getAttribute('data-fa-mask-id'),
extra: {
classes: extraClasses,
styles: extraStyles,
attributes: extraAttributes
}
};
}
function MissingIcon(error) {
this.name = 'MissingIcon';
this.message = error || 'Icon unavailable';
this.stack = new Error().stack;
}
MissingIcon.prototype = Object.create(Error.prototype);
MissingIcon.prototype.constructor = MissingIcon;
var FILL = {
fill: 'currentColor'
};
var ANIMATION_BASE = {
attributeType: 'XML',
repeatCount: 'indefinite',
dur: '2s'
};
var RING = {
tag: 'path',
attributes: _objectSpread({}, FILL, {
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'
})
};
var OPACITY_ANIMATE = _objectSpread({}, ANIMATION_BASE, {
attributeName: 'opacity'
});
var DOT = {
tag: 'circle',
attributes: _objectSpread({}, FILL, {
cx: '256',
cy: '364',
r: '28'
}),
children: [{
tag: 'animate',
attributes: _objectSpread({}, ANIMATION_BASE, {
attributeName: 'r',
values: '28;14;28;28;14;28;'
})
}, {
tag: 'animate',
attributes: _objectSpread({}, OPACITY_ANIMATE, {
values: '1;0;1;1;0;1;'
})
}]
};
var QUESTION = {
tag: 'path',
attributes: _objectSpread({}, FILL, {
opacity: '1',
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'
}),
children: [{
tag: 'animate',
attributes: _objectSpread({}, OPACITY_ANIMATE, {
values: '1;0;0;0;0;1;'
})
}]
};
var EXCLAMATION = {
tag: 'path',
attributes: _objectSpread({}, FILL, {
opacity: '0',
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'
}),
children: [{
tag: 'animate',
attributes: _objectSpread({}, OPACITY_ANIMATE, {
values: '0;0;1;1;0;0;'
})
}]
};
var missing = {
tag: 'g',
children: [RING, DOT, QUESTION, EXCLAMATION]
};
var styles$2 = namespace.styles;
function asFoundIcon(icon) {
var width = icon[0];
var height = icon[1];
var _icon$slice = icon.slice(4),
_icon$slice2 = _slicedToArray(_icon$slice, 1),
vectorData = _icon$slice2[0];
var element = null;
if (Array.isArray(vectorData)) {
element = {
tag: 'g',
attributes: {
class: "".concat(config.familyPrefix, "-").concat(DUOTONE_CLASSES.GROUP)
},
children: [{
tag: 'path',
attributes: {
class: "".concat(config.familyPrefix, "-").concat(DUOTONE_CLASSES.SECONDARY),
fill: 'currentColor',
d: vectorData[0]
}
}, {
tag: 'path',
attributes: {
class: "".concat(config.familyPrefix, "-").concat(DUOTONE_CLASSES.PRIMARY),
fill: 'currentColor',
d: vectorData[1]
}
}]
};
} else {
element = {
tag: 'path',
attributes: {
fill: 'currentColor',
d: vectorData
}
};
}
return {
found: true,
width: width,
height: height,
icon: element
};
}
function findIcon(iconName, prefix) {
return new picked(function (resolve, reject) {
var val = {
found: false,
width: 512,
height: 512,
icon: missing
};
if (iconName && prefix && styles$2[prefix] && styles$2[prefix][iconName]) {
var icon = styles$2[prefix][iconName];
return resolve(asFoundIcon(icon));
}
var headers = {};
if (_typeof(WINDOW.FontAwesomeKitConfig) === 'object' && typeof window.FontAwesomeKitConfig.token === 'string') {
headers['fa-kit-token'] = WINDOW.FontAwesomeKitConfig.token;
}
if (iconName && prefix && !config.showMissingIcons) {
reject(new MissingIcon("Icon is missing for prefix ".concat(prefix, " with icon name ").concat(iconName)));
} else {
resolve(val);
}
});
}
var styles$3 = namespace.styles;
function generateSvgReplacementMutation(node, nodeMeta) {
var iconName = nodeMeta.iconName,
title = nodeMeta.title,
titleId = nodeMeta.titleId,
prefix = nodeMeta.prefix,
transform = nodeMeta.transform,
symbol = nodeMeta.symbol,
mask = nodeMeta.mask,
maskId = nodeMeta.maskId,
extra = nodeMeta.extra;
return new picked(function (resolve, reject) {
picked.all([findIcon(iconName, prefix), findIcon(mask.iconName, mask.prefix)]).then(function (_ref) {
var _ref2 = _slicedToArray(_ref, 2),
main = _ref2[0],
mask = _ref2[1];
resolve([node, makeInlineSvgAbstract({
icons: {
main: main,
mask: mask
},
prefix: prefix,
iconName: iconName,
transform: transform,
symbol: symbol,
mask: mask,
maskId: maskId,
title: title,
titleId: titleId,
extra: extra,
watchable: true
})]);
});
});
}
function generateLayersText(node, nodeMeta) {
var title = nodeMeta.title,
transform = nodeMeta.transform,
extra = nodeMeta.extra;
var width = null;
var height = null;
if (IS_IE) {
var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);
var boundingClientRect = node.getBoundingClientRect();
width = boundingClientRect.width / computedFontSize;
height = boundingClientRect.height / computedFontSize;
}
if (config.autoA11y && !title) {
extra.attributes['aria-hidden'] = 'true';
}
return picked.resolve([node, makeLayersTextAbstract({
content: node.innerHTML,
width: width,
height: height,
transform: transform,
title: title,
extra: extra,
watchable: true
})]);
}
function generateMutation(node) {
var nodeMeta = parseMeta(node);
if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {
return generateLayersText(node, nodeMeta);
} else {
return generateSvgReplacementMutation(node, nodeMeta);
}
}
function onTree(root) {
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
if (!IS_DOM) return;
var htmlClassList = DOCUMENT.documentElement.classList;
var hclAdd = function hclAdd(suffix) {
return htmlClassList.add("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix));
};
var hclRemove = function hclRemove(suffix) {
return htmlClassList.remove("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix));
};
var prefixes = config.autoFetchSvg ? Object.keys(PREFIX_TO_STYLE) : Object.keys(styles$3);
var prefixesDomQuery = [".".concat(LAYERS_TEXT_CLASSNAME, ":not([").concat(DATA_FA_I2SVG, "])")].concat(prefixes.map(function (p) {
return ".".concat(p, ":not([").concat(DATA_FA_I2SVG, "])");
})).join(', ');
if (prefixesDomQuery.length === 0) {
return;
}
var candidates = [];
try {
candidates = toArray(root.querySelectorAll(prefixesDomQuery));
} catch (e) {// noop
}
if (candidates.length > 0) {
hclAdd('pending');
hclRemove('complete');
} else {
return;
}
var mark = perf.begin('onTree');
var mutations = candidates.reduce(function (acc, node) {
try {
var mutation = generateMutation(node);
if (mutation) {
acc.push(mutation);
}
} catch (e) {
if (!PRODUCTION) {
if (e instanceof MissingIcon) {
console.error(e);
}
}
}
return acc;
}, []);
return new picked(function (resolve, reject) {
picked.all(mutations).then(function (resolvedMutations) {
perform(resolvedMutations, function () {
hclAdd('active');
hclAdd('complete');
hclRemove('pending');
if (typeof callback === 'function') callback();
mark();
resolve();
});
}).catch(function () {
mark();
reject();
});
});
}
function onNode(node) {
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
generateMutation(node).then(function (mutation) {
if (mutation) {
perform([mutation], callback);
}
});
}
function replaceForPosition(node, position) {
var pendingAttribute = "".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));
return new picked(function (resolve, reject) {
if (node.getAttribute(pendingAttribute) !== null) {
// This node is already being processed
return resolve();
}
var children = toArray(node.children);
var alreadyProcessedPseudoElement = children.filter(function (c) {
return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position;
})[0];
var styles = WINDOW.getComputedStyle(node, position);
var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);
var fontWeight = styles.getPropertyValue('font-weight');
var content = styles.getPropertyValue('content');
if (alreadyProcessedPseudoElement && !fontFamily) {
// If we've already processed it but the current computed style does not result in a font-family,
// that probably means that a class name that was previously present to make the icon has been
// removed. So we now should delete the icon.
node.removeChild(alreadyProcessedPseudoElement);
return resolve();
} else if (fontFamily && content !== 'none' && content !== '') {
var prefix = ~['Solid', 'Regular', 'Light', 'Duotone', 'Brands'].indexOf(fontFamily[1]) ? STYLE_TO_PREFIX[fontFamily[1].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[fontWeight];
var hexValue = toHex(content.length === 3 ? content.substr(1, 1) : content);
var iconName = byUnicode(prefix, hexValue);
var iconIdentifier = iconName; // Only convert the pseudo element in this :before/:after position into an icon if we haven't
// already done so with the same prefix and iconName
if (iconName && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {
node.setAttribute(pendingAttribute, iconIdentifier);
if (alreadyProcessedPseudoElement) {
// Delete the old one, since we're replacing it with a new one
node.removeChild(alreadyProcessedPseudoElement);
}
var meta = blankMeta();
var extra = meta.extra;
extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;
findIcon(iconName, prefix).then(function (main) {
var abstract = makeInlineSvgAbstract(_objectSpread({}, meta, {
icons: {
main: main,
mask: emptyCanonicalIcon()
},
prefix: prefix,
iconName: iconIdentifier,
extra: extra,
watchable: true
}));
var element = DOCUMENT.createElement('svg');
if (position === ':before') {
node.insertBefore(element, node.firstChild);
} else {
node.appendChild(element);
}
element.outerHTML = abstract.map(function (a) {
return toHtml(a);
}).join('\n');
node.removeAttribute(pendingAttribute);
resolve();
}).catch(reject);
} else {
resolve();
}
} else {
resolve();
}
});
}
function replace(node) {
return picked.all([replaceForPosition(node, ':before'), replaceForPosition(node, ':after')]);
}
function processable(node) {
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');
}
function searchPseudoElements (root) {
if (!IS_DOM) return;
return new picked(function (resolve, reject) {
var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);
var end = perf.begin('searchPseudoElements');
disableObservation();
picked.all(operations).then(function () {
end();
enableObservation();
resolve();
}).catch(function () {
end();
enableObservation();
reject();
});
});
}
var baseStyles = "svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}";
function css () {
var dfp = DEFAULT_FAMILY_PREFIX;
var drc = DEFAULT_REPLACEMENT_CLASS;
var fp = config.familyPrefix;
var rc = config.replacementClass;
var s = baseStyles;
if (fp !== dfp || rc !== drc) {
var dPatt = new RegExp("\\.".concat(dfp, "\\-"), 'g');
var customPropPatt = new RegExp("\\--".concat(dfp, "\\-"), 'g');
var rPatt = new RegExp("\\.".concat(drc), 'g');
s = s.replace(dPatt, ".".concat(fp, "-")).replace(customPropPatt, "--".concat(fp, "-")).replace(rPatt, ".".concat(rc));
}
return s;
}
var Library =
/*#__PURE__*/
function () {
function Library() {
_classCallCheck(this, Library);
this.definitions = {};
}
_createClass(Library, [{
key: "add",
value: function add() {
var _this = this;
for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {
definitions[_key] = arguments[_key];
}
var additions = definitions.reduce(this._pullDefinitions, {});
Object.keys(additions).forEach(function (key) {
_this.definitions[key] = _objectSpread({}, _this.definitions[key] || {}, additions[key]);
defineIcons(key, additions[key]);
build();
});
}
}, {
key: "reset",
value: function reset() {
this.definitions = {};
}
}, {
key: "_pullDefinitions",
value: function _pullDefinitions(additions, definition) {
var normalized = definition.prefix && definition.iconName && definition.icon ? {
0: definition
} : definition;
Object.keys(normalized).map(function (key) {
var _normalized$key = normalized[key],
prefix = _normalized$key.prefix,
iconName = _normalized$key.iconName,
icon = _normalized$key.icon;
if (!additions[prefix]) additions[prefix] = {};
additions[prefix][iconName] = icon;
});
return additions;
}
}]);
return Library;
}();
function ensureCss() {
if (config.autoAddCss && !_cssInserted) {
insertCss(css());
_cssInserted = true;
}
}
function apiObject(val, abstractCreator) {
Object.defineProperty(val, 'abstract', {
get: abstractCreator
});
Object.defineProperty(val, 'html', {
get: function get() {
return val.abstract.map(function (a) {
return toHtml(a);
});
}
});
Object.defineProperty(val, 'node', {
get: function get() {
if (!IS_DOM) return;
var container = DOCUMENT.createElement('div');
container.innerHTML = val.html;
return container.children;
}
});
return val;
}
function findIconDefinition(iconLookup) {
var _iconLookup$prefix = iconLookup.prefix,
prefix = _iconLookup$prefix === void 0 ? 'fa' : _iconLookup$prefix,
iconName = iconLookup.iconName;
if (!iconName) return;
return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);
}
function resolveIcons(next) {
return function (maybeIconDefinition) {
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});
var mask = params.mask;
if (mask) {
mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});
}
return next(iconDefinition, _objectSpread({}, params, {
mask: mask
}));
};
}
var library = new Library();
var noAuto = function noAuto() {
config.autoReplaceSvg = false;
config.observeMutations = false;
disconnect();
};
var _cssInserted = false;
var dom = {
i2svg: function i2svg() {
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
if (IS_DOM) {
ensureCss();
var _params$node = params.node,
node = _params$node === void 0 ? DOCUMENT : _params$node,
_params$callback = params.callback,
callback = _params$callback === void 0 ? function () {} : _params$callback;
if (config.searchPseudoElements) {
searchPseudoElements(node);
}
return onTree(node, callback);
} else {
return picked.reject('Operation requires a DOM of some kind.');
}
},
css: css,
insertCss: function insertCss$$1() {
if (!_cssInserted) {
insertCss(css());
_cssInserted = true;
}
},
watch: function watch() {
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var autoReplaceSvgRoot = params.autoReplaceSvgRoot,
observeMutationsRoot = params.observeMutationsRoot;
if (config.autoReplaceSvg === false) {
config.autoReplaceSvg = true;
}
config.observeMutations = true;
domready(function () {
autoReplace({
autoReplaceSvgRoot: autoReplaceSvgRoot
});
observe({
treeCallback: onTree,
nodeCallback: onNode,
pseudoElementsCallback: searchPseudoElements,
observeMutationsRoot: observeMutationsRoot
});
});
}
};
var parse = {
transform: function transform(transformString) {
return parseTransformString(transformString);
}
};
var icon = resolveIcons(function (iconDefinition) {
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var _params$transform = params.transform,
transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,
_params$symbol = params.symbol,
symbol = _params$symbol === void 0 ? false : _params$symbol,
_params$mask = params.mask,
mask = _params$mask === void 0 ? null : _params$mask,
_params$maskId = params.maskId,
maskId = _params$maskId === void 0 ? null : _params$maskId,
_params$title = params.title,
title = _params$title === void 0 ? null : _params$title,
_params$titleId = params.titleId,
titleId = _params$titleId === void 0 ? null : _params$titleId,
_params$classes = params.classes,
classes = _params$classes === void 0 ? [] : _params$classes,
_params$attributes = params.attributes,
attributes = _params$attributes === void 0 ? {} : _params$attributes,
_params$styles = params.styles,
styles = _params$styles === void 0 ? {} : _params$styles;
if (!iconDefinition) return;
var prefix = iconDefinition.prefix,
iconName = iconDefinition.iconName,
icon = iconDefinition.icon;
return apiObject(_objectSpread({
type: 'icon'
}, iconDefinition), function () {
ensureCss();
if (config.autoA11y) {
if (title) {
attributes['aria-labelledby'] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId());
} else {
attributes['aria-hidden'] = 'true';
attributes['focusable'] = 'false';
}
}
return makeInlineSvgAbstract({
icons: {
main: asFoundIcon(icon),
mask: mask ? asFoundIcon(mask.icon) : {
found: false,
width: null,
height: null,
icon: {}
}
},
prefix: prefix,
iconName: iconName,
transform: _objectSpread({}, meaninglessTransform, transform),
symbol: symbol,
title: title,
maskId: maskId,
titleId: titleId,
extra: {
attributes: attributes,
styles: styles,
classes: classes
}
});
});
});
var text = function text(content) {
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var _params$transform2 = params.transform,
transform = _params$transform2 === void 0 ? meaninglessTransform : _params$transform2,
_params$title2 = params.title,
title = _params$title2 === void 0 ? null : _params$title2,
_params$classes2 = params.classes,
classes = _params$classes2 === void 0 ? [] : _params$classes2,
_params$attributes2 = params.attributes,
attributes = _params$attributes2 === void 0 ? {} : _params$attributes2,
_params$styles2 = params.styles,
styles = _params$styles2 === void 0 ? {} : _params$styles2;
return apiObject({
type: 'text',
content: content
}, function () {
ensureCss();
return makeLayersTextAbstract({
content: content,
transform: _objectSpread({}, meaninglessTransform, transform),
title: title,
extra: {
attributes: attributes,
styles: styles,
classes: ["".concat(config.familyPrefix, "-layers-text")].concat(_toConsumableArray(classes))
}
});
});
};
var counter = function counter(content) {
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var _params$title3 = params.title,
title = _params$title3 === void 0 ? null : _params$title3,
_params$classes3 = params.classes,
classes = _params$classes3 === void 0 ? [] : _params$classes3,
_params$attributes3 = params.attributes,
attributes = _params$attributes3 === void 0 ? {} : _params$attributes3,
_params$styles3 = params.styles,
styles = _params$styles3 === void 0 ? {} : _params$styles3;
return apiObject({
type: 'counter',
content: content
}, function () {
ensureCss();
return makeLayersCounterAbstract({
content: content.toString(),
title: title,
extra: {
attributes: attributes,
styles: styles,
classes: ["".concat(config.familyPrefix, "-layers-counter")].concat(_toConsumableArray(classes))
}
});
});
};
var layer = function layer(assembler) {
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var _params$classes4 = params.classes,
classes = _params$classes4 === void 0 ? [] : _params$classes4;
return apiObject({
type: 'layer'
}, function () {
ensureCss();
var children = [];
assembler(function (args) {
Array.isArray(args) ? args.map(function (a) {
children = children.concat(a.abstract);
}) : children = children.concat(args.abstract);
});
return [{
tag: 'span',
attributes: {
class: ["".concat(config.familyPrefix, "-layers")].concat(_toConsumableArray(classes)).join(' ')
},
children: children
}];
});
};
var api = {
noAuto: noAuto,
config: config,
dom: dom,
library: library,
parse: parse,
findIconDefinition: findIconDefinition,
icon: icon,
text: text,
counter: counter,
layer: layer,
toHtml: toHtml
};
var autoReplace = function autoReplace() {
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var _params$autoReplaceSv = params.autoReplaceSvgRoot,
autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv;
if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({
node: autoReplaceSvgRoot
});
};
function bootstrap() {
if (IS_BROWSER) {
if (!WINDOW.FontAwesome) {
WINDOW.FontAwesome = api;
}
domready(function () {
autoReplace();
observe({
treeCallback: onTree,
nodeCallback: onNode,
pseudoElementsCallback: searchPseudoElements
});
});
}
namespace.hooks = _objectSpread({}, namespace.hooks, {
addPack: function addPack(prefix, icons) {
namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, icons);
build();
autoReplace();
},
addShims: function addShims(shims) {
var _namespace$shims;
(_namespace$shims = namespace.shims).push.apply(_namespace$shims, _toConsumableArray(shims));
build();
autoReplace();
}
});
}
bunker(bootstrap);
}());
/*!
* Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
!function(){"use strict";function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function r(t,e){for(var n=0;n<e.length;n++){var a=e[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}function Q(r){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{},e=Object.keys(i);"function"==typeof Object.getOwnPropertySymbols&&(e=e.concat(Object.getOwnPropertySymbols(i).filter(function(t){return Object.getOwnPropertyDescriptor(i,t).enumerable}))),e.forEach(function(t){var e,n,a;e=r,a=i[n=t],n in e?Object.defineProperty(e,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[n]=a})}return r}function p(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=[],a=!0,r=!1,i=void 0;try{for(var o,c=t[Symbol.iterator]();!(a=(o=c.next()).done)&&(n.push(o.value),!e||n.length!==e);a=!0);}catch(t){r=!0,i=t}finally{try{a||null==c.return||c.return()}finally{if(r)throw i}}return n}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function d(t){return function(t){if(Array.isArray(t)){for(var e=0,n=new Array(t.length);e<t.length;e++)n[e]=t[e];return n}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}var t=function(){},e={},n={},a=null,o={mark:t,measure:t};try{"undefined"!=typeof window&&(e=window),"undefined"!=typeof document&&(n=document),"undefined"!=typeof MutationObserver&&(a=MutationObserver),"undefined"!=typeof performance&&(o=performance)}catch(t){}var c=(e.navigator||{}).userAgent,s=void 0===c?"":c,g=e,v=n,l=a,f=o,u=!!g.document,m=!!v.documentElement&&!!v.head&&"function"==typeof v.addEventListener&&"function"==typeof v.createElement,k=~s.indexOf("MSIE")||~s.indexOf("Trident/"),h="___FONT_AWESOME___",A=16,b="fa",y="svg-inline--fa",Z="data-fa-i2svg",w="data-fa-pseudo-element",x="data-fa-pseudo-element-pending",C="data-prefix",O="data-icon",S="fontawesome-i2svg",P="async",N=["HTML","HEAD","STYLE","SCRIPT"],M=function(){try{return!0}catch(t){return!1}}(),z={fas:"solid",far:"regular",fal:"light",fad:"duotone",fab:"brands",fa:"solid"},E={solid:"fas",regular:"far",light:"fal",duotone:"fad",brands:"fab"},j="fa-layers-text",L=/Font Awesome 5 (Solid|Regular|Light|Duotone|Brands|Free|Pro)/,R={900:"fas",400:"far",normal:"far",300:"fal"},I=[1,2,3,4,5,6,7,8,9,10],_=I.concat([11,12,13,14,15,16,17,18,19,20]),T=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],Y={GROUP:"group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},F=["xs","sm","lg","fw","ul","li","border","pull-left","pull-right","spin","pulse","rotate-90","rotate-180","rotate-270","flip-horizontal","flip-vertical","flip-both","stack","stack-1x","stack-2x","inverse","layers","layers-text","layers-counter",Y.GROUP,Y.SWAP_OPACITY,Y.PRIMARY,Y.SECONDARY].concat(I.map(function(t){return"".concat(t,"x")})).concat(_.map(function(t){return"w-".concat(t)})),H=g.FontAwesomeConfig||{};if(v&&"function"==typeof v.querySelector){[["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"]].forEach(function(t){var e,n=p(t,2),a=n[0],r=n[1],i=""===(e=function(t){var e=v.querySelector("script["+t+"]");if(e)return e.getAttribute(t)}(a))||"false"!==e&&("true"===e||e);null!=i&&(H[r]=i)})}var D=Q({},{familyPrefix:b,replacementClass:y,autoReplaceSvg:!0,autoAddCss:!0,autoA11y:!0,searchPseudoElements:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0},H);D.autoReplaceSvg||(D.observeMutations=!1);var $=Q({},D);g.FontAwesomeConfig=$;var U=g||{};U[h]||(U[h]={}),U[h].styles||(U[h].styles={}),U[h].hooks||(U[h].hooks={}),U[h].shims||(U[h].shims=[]);var W=U[h],q=[],X=!1;function B(t){m&&(X?setTimeout(t,0):q.push(t))}m&&((X=(v.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(v.readyState))||v.addEventListener("DOMContentLoaded",function t(){v.removeEventListener("DOMContentLoaded",t),X=1,q.map(function(t){return t()})}));var V,K="pending",G="settled",J="fulfilled",tt="rejected",et=function(){},nt="undefined"!=typeof global&&void 0!==global.process&&"function"==typeof global.process.emit,at="undefined"==typeof setImmediate?setTimeout:setImmediate,rt=[];function it(){for(var t=0;t<rt.length;t++)rt[t][0](rt[t][1]);V=!(rt=[])}function ot(t,e){rt.push([t,e]),V||(V=!0,at(it,0))}function ct(t){var e=t.owner,n=e._state,a=e._data,r=t[n],i=t.then;if("function"==typeof r){n=J;try{a=r(a)}catch(t){ut(i,t)}}st(i,a)||(n===J&&lt(i,a),n===tt&&ut(i,a))}function st(e,n){var a;try{if(e===n)throw new TypeError("A promises callback cannot return that same promise.");if(n&&("function"==typeof n||"object"===i(n))){var t=n.then;if("function"==typeof t)return t.call(n,function(t){a||(a=!0,n===t?ft(e,t):lt(e,t))},function(t){a||(a=!0,ut(e,t))}),!0}}catch(t){return a||ut(e,t),!0}return!1}function lt(t,e){t!==e&&st(t,e)||ft(t,e)}function ft(t,e){t._state===K&&(t._state=G,t._data=e,ot(mt,t))}function ut(t,e){t._state===K&&(t._state=G,t._data=e,ot(pt,t))}function dt(t){t._then=t._then.forEach(ct)}function mt(t){t._state=J,dt(t)}function pt(t){t._state=tt,dt(t),!t._handled&&nt&&global.process.emit("unhandledRejection",t._data,t)}function ht(t){global.process.emit("rejectionHandled",t)}function gt(t){if("function"!=typeof t)throw new TypeError("Promise resolver "+t+" is not a function");if(this instanceof gt==!1)throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.");this._then=[],function(t,e){function n(t){ut(e,t)}try{t(function(t){lt(e,t)},n)}catch(t){n(t)}}(t,this)}gt.prototype={constructor:gt,_state:K,_then:null,_data:void 0,_handled:!1,then:function(t,e){var n={owner:this,then:new this.constructor(et),fulfilled:t,rejected:e};return!e&&!t||this._handled||(this._handled=!0,this._state===tt&&nt&&ot(ht,this)),this._state===J||this._state===tt?ot(ct,n):this._then.push(n),n.then},catch:function(t){return this.then(null,t)}},gt.all=function(c){if(!Array.isArray(c))throw new TypeError("You must pass an array to Promise.all().");return new gt(function(n,t){var a=[],r=0;function e(e){return r++,function(t){a[e]=t,--r||n(a)}}for(var i,o=0;o<c.length;o++)(i=c[o])&&"function"==typeof i.then?i.then(e(o),t):a[o]=i;r||n(a)})},gt.race=function(r){if(!Array.isArray(r))throw new TypeError("You must pass an array to Promise.race().");return new gt(function(t,e){for(var n,a=0;a<r.length;a++)(n=r[a])&&"function"==typeof n.then?n.then(t,e):t(n)})},gt.resolve=function(e){return e&&"object"===i(e)&&e.constructor===gt?e:new gt(function(t){t(e)})},gt.reject=function(n){return new gt(function(t,e){e(n)})};var vt="function"==typeof Promise?Promise:gt,bt=A,yt={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function wt(t){if(t&&m){var e=v.createElement("style");e.setAttribute("type","text/css"),e.innerHTML=t;for(var n=v.head.childNodes,a=null,r=n.length-1;-1<r;r--){var i=n[r],o=(i.tagName||"").toUpperCase();-1<["STYLE","LINK"].indexOf(o)&&(a=i)}return v.head.insertBefore(e,a),t}}var xt="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function kt(){for(var t=12,e="";0<t--;)e+=xt[62*Math.random()|0];return e}function At(t){for(var e=[],n=(t||[]).length>>>0;n--;)e[n]=t[n];return e}function Ct(t){return t.classList?At(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(t){return t})}function Ot(t,e){var n,a=e.split("-"),r=a[0],i=a.slice(1).join("-");return r!==t||""===i||(n=i,~F.indexOf(n))?null:i}function St(t){return"".concat(t).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Pt(n){return Object.keys(n||{}).reduce(function(t,e){return t+"".concat(e,": ").concat(n[e],";")},"")}function Nt(t){return t.size!==yt.size||t.x!==yt.x||t.y!==yt.y||t.rotate!==yt.rotate||t.flipX||t.flipY}function Mt(t){var e=t.transform,n=t.containerWidth,a=t.iconWidth,r={transform:"translate(".concat(n/2," 256)")},i="translate(".concat(32*e.x,", ").concat(32*e.y,") "),o="scale(".concat(e.size/16*(e.flipX?-1:1),", ").concat(e.size/16*(e.flipY?-1:1),") "),c="rotate(".concat(e.rotate," 0 0)");return{outer:r,inner:{transform:"".concat(i," ").concat(o," ").concat(c)},path:{transform:"translate(".concat(a/2*-1," -256)")}}}var zt={x:0,y:0,width:"100%",height:"100%"};function Et(t){var e=!(1<arguments.length&&void 0!==arguments[1])||arguments[1];return t.attributes&&(t.attributes.fill||e)&&(t.attributes.fill="black"),t}function jt(t){var e=t.icons,n=e.main,a=e.mask,r=t.prefix,i=t.iconName,o=t.transform,c=t.symbol,s=t.title,l=t.maskId,f=t.titleId,u=t.extra,d=t.watchable,m=void 0!==d&&d,p=a.found?a:n,h=p.width,g=p.height,v="fa-w-".concat(Math.ceil(h/g*16)),b=[$.replacementClass,i?"".concat($.familyPrefix,"-").concat(i):"",v].filter(function(t){return-1===u.classes.indexOf(t)}).concat(u.classes).join(" "),y={children:[],attributes:Q({},u.attributes,{"data-prefix":r,"data-icon":i,class:b,role:u.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(h," ").concat(g)})};m&&(y.attributes[Z]=""),s&&y.children.push({tag:"title",attributes:{id:y.attributes["aria-labelledby"]||"title-".concat(f||kt())},children:[s]});var w,x,k,A,C,O,S,P,N,M,z,E,j,L,R,I,_,T,Y,F,H,D,U,W,q,X,B,V=Q({},y,{prefix:r,iconName:i,main:n,mask:a,maskId:l,transform:o,symbol:c,styles:u.styles}),K=a.found&&n.found?(k=(w=V).children,A=w.attributes,C=w.main,O=w.mask,S=w.maskId,P=w.transform,N=C.width,M=C.icon,z=O.width,E=O.icon,j=Mt({transform:P,containerWidth:z,iconWidth:N}),L={tag:"rect",attributes:Q({},zt,{fill:"white"})},R=M.children?{children:M.children.map(Et)}:{},I={tag:"g",attributes:Q({},j.inner),children:[Et(Q({tag:M.tag,attributes:Q({},M.attributes,j.path)},R))]},_={tag:"g",attributes:Q({},j.outer),children:[I]},T="mask-".concat(S||kt()),Y="clip-".concat(S||kt()),F={tag:"mask",attributes:Q({},zt,{id:T,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[L,_]},H={tag:"defs",children:[{tag:"clipPath",attributes:{id:Y},children:(x=E,"g"===x.tag?x.children:[x])},F]},k.push(H,{tag:"rect",attributes:Q({fill:"currentColor","clip-path":"url(#".concat(Y,")"),mask:"url(#".concat(T,")")},zt)}),{children:k,attributes:A}):function(t){var e=t.children,n=t.attributes,a=t.main,r=t.transform,i=Pt(t.styles);if(0<i.length&&(n.style=i),Nt(r)){var o=Mt({transform:r,containerWidth:a.width,iconWidth:a.width});e.push({tag:"g",attributes:Q({},o.outer),children:[{tag:"g",attributes:Q({},o.inner),children:[{tag:a.icon.tag,children:a.icon.children,attributes:Q({},a.icon.attributes,o.path)}]}]})}else e.push(a.icon);return{children:e,attributes:n}}(V),G=K.children,J=K.attributes;return V.children=G,V.attributes=J,c?(U=(D=V).prefix,W=D.iconName,q=D.children,X=D.attributes,B=D.symbol,[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:Q({},X,{id:!0===B?"".concat(U,"-").concat($.familyPrefix,"-").concat(W):B}),children:q}]}]):function(t){var e=t.children,n=t.main,a=t.mask,r=t.attributes,i=t.styles,o=t.transform;if(Nt(o)&&n.found&&!a.found){var c=n.width/n.height/2,s=.5;r.style=Pt(Q({},i,{"transform-origin":"".concat(c+o.x/16,"em ").concat(s+o.y/16,"em")}))}return[{tag:"svg",attributes:r,children:e}]}(V)}function Lt(t){var e=t.content,n=t.width,a=t.height,r=t.transform,i=t.title,o=t.extra,c=t.watchable,s=void 0!==c&&c,l=Q({},o.attributes,i?{title:i}:{},{class:o.classes.join(" ")});s&&(l[Z]="");var f,u,d,m,p,h,g,v,b,y=Q({},o.styles);Nt(r)&&(y.transform=(u=(f={transform:r,startCentered:!0,width:n,height:a}).transform,d=f.width,m=void 0===d?A:d,p=f.height,h=void 0===p?A:p,g=f.startCentered,b="",b+=(v=void 0!==g&&g)&&k?"translate(".concat(u.x/bt-m/2,"em, ").concat(u.y/bt-h/2,"em) "):v?"translate(calc(-50% + ".concat(u.x/bt,"em), calc(-50% + ").concat(u.y/bt,"em)) "):"translate(".concat(u.x/bt,"em, ").concat(u.y/bt,"em) "),b+="scale(".concat(u.size/bt*(u.flipX?-1:1),", ").concat(u.size/bt*(u.flipY?-1:1),") "),b+="rotate(".concat(u.rotate,"deg) ")),y["-webkit-transform"]=y.transform);var w=Pt(y);0<w.length&&(l.style=w);var x=[];return x.push({tag:"span",attributes:l,children:[e]}),i&&x.push({tag:"span",attributes:{class:"sr-only"},children:[i]}),x}var Rt=function(){},It=$.measurePerformance&&f&&f.mark&&f.measure?f:{mark:Rt,measure:Rt},_t='FA "5.14.0"',Tt=function(t){It.mark("".concat(_t," ").concat(t," ends")),It.measure("".concat(_t," ").concat(t),"".concat(_t," ").concat(t," begins"),"".concat(_t," ").concat(t," ends"))},Yt={begin:function(t){return It.mark("".concat(_t," ").concat(t," begins")),function(){return Tt(t)}},end:Tt},Ft=function(t,e,n,a){var r,i,o,c,s,l=Object.keys(t),f=l.length,u=void 0!==a?(c=e,s=a,function(t,e,n,a){return c.call(s,t,e,n,a)}):e;for(o=void 0===n?(r=1,t[l[0]]):(r=0,n);r<f;r++)o=u(o,t[i=l[r]],i,t);return o};function Ht(t){for(var e="",n=0;n<t.length;n++){e+=("000"+t.charCodeAt(n).toString(16)).slice(-4)}return e}var Dt=W.styles,Ut=W.shims,Wt={},qt={},Xt={},Bt=function(){var t=function(a){return Ft(Dt,function(t,e,n){return t[n]=Ft(e,a,{}),t},{})};Wt=t(function(t,e,n){return e[3]&&(t[e[3]]=n),t}),qt=t(function(e,t,n){var a=t[2];return e[n]=n,a.forEach(function(t){e[t]=n}),e});var i="far"in Dt;Xt=Ft(Ut,function(t,e){var n=e[0],a=e[1],r=e[2];return"far"!==a||i||(a="fas"),t[n]={prefix:a,iconName:r},t},{})};function Vt(t,e){return(Wt[t]||{})[e]}Bt();var Kt=W.styles,Gt=function(){return{prefix:null,iconName:null,rest:[]}};function Jt(t){return t.reduce(function(t,e){var n=Ot($.familyPrefix,e);if(Kt[e])t.prefix=e;else if($.autoFetchSvg&&-1<["fas","far","fal","fad","fab","fa"].indexOf(e))t.prefix=e;else if(n){var a="fa"===t.prefix?Xt[n]||{prefix:null,iconName:null}:{};t.iconName=a.iconName||n,t.prefix=a.prefix||t.prefix}else e!==$.replacementClass&&0!==e.indexOf("fa-w-")&&t.rest.push(e);return t},Gt())}function Qt(t,e,n){if(t&&t[e]&&t[e][n])return{prefix:e,iconName:n,icon:t[e][n]}}function Zt(t){var n,e=t.tag,a=t.attributes,r=void 0===a?{}:a,i=t.children,o=void 0===i?[]:i;return"string"==typeof t?St(t):"<".concat(e," ").concat((n=r,Object.keys(n||{}).reduce(function(t,e){return t+"".concat(e,'="').concat(St(n[e]),'" ')},"").trim()),">").concat(o.map(Zt).join(""),"</").concat(e,">")}var $t=function(){};function te(t){return"string"==typeof(t.getAttribute?t.getAttribute(Z):null)}var ee={replace:function(t){var e=t[0],n=t[1].map(function(t){return Zt(t)}).join("\n");if(e.parentNode&&e.outerHTML)e.outerHTML=n+($.keepOriginalSource&&"svg"!==e.tagName.toLowerCase()?"\x3c!-- ".concat(e.outerHTML," --\x3e"):"");else if(e.parentNode){var a=document.createElement("span");e.parentNode.replaceChild(a,e),a.outerHTML=n}},nest:function(t){var e=t[0],n=t[1];if(~Ct(e).indexOf($.replacementClass))return ee.replace(t);var a=new RegExp("".concat($.familyPrefix,"-.*"));delete n[0].attributes.style,delete n[0].attributes.id;var r=n[0].attributes.class.split(" ").reduce(function(t,e){return e===$.replacementClass||e.match(a)?t.toSvg.push(e):t.toNode.push(e),t},{toNode:[],toSvg:[]});n[0].attributes.class=r.toSvg.join(" ");var i=n.map(function(t){return Zt(t)}).join("\n");e.setAttribute("class",r.toNode.join(" ")),e.setAttribute(Z,""),e.innerHTML=i}};function ne(t){t()}function ae(n,t){var a="function"==typeof t?t:$t;if(0===n.length)a();else{var e=ne;$.mutateApproach===P&&(e=g.requestAnimationFrame||ne),e(function(){var t=!0===$.autoReplaceSvg?ee.replace:ee[$.autoReplaceSvg]||ee.replace,e=Yt.begin("mutate");n.map(t),e(),a()})}}var re=!1;function ie(){re=!1}var oe=null;function ce(t){if(l&&$.observeMutations){var r=t.treeCallback,i=t.nodeCallback,o=t.pseudoElementsCallback,e=t.observeMutationsRoot,n=void 0===e?v:e;oe=new l(function(t){re||At(t).forEach(function(t){if("childList"===t.type&&0<t.addedNodes.length&&!te(t.addedNodes[0])&&($.searchPseudoElements&&o(t.target),r(t.target)),"attributes"===t.type&&t.target.parentNode&&$.searchPseudoElements&&o(t.target.parentNode),"attributes"===t.type&&te(t.target)&&~T.indexOf(t.attributeName))if("class"===t.attributeName){var e=Jt(Ct(t.target)),n=e.prefix,a=e.iconName;n&&t.target.setAttribute("data-prefix",n),a&&t.target.setAttribute("data-icon",a)}else i(t.target)})}),m&&oe.observe(n,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function se(t){var e,n,a=t.getAttribute("data-prefix"),r=t.getAttribute("data-icon"),i=void 0!==t.innerText?t.innerText.trim():"",o=Jt(Ct(t));return a&&r&&(o.prefix=a,o.iconName=r),o.prefix&&1<i.length?o.iconName=(e=o.prefix,n=t.innerText,(qt[e]||{})[n]):o.prefix&&1===i.length&&(o.iconName=Vt(o.prefix,Ht(t.innerText))),o}var le=function(t){var e={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return t?t.toLowerCase().split(" ").reduce(function(t,e){var n=e.toLowerCase().split("-"),a=n[0],r=n.slice(1).join("-");if(a&&"h"===r)return t.flipX=!0,t;if(a&&"v"===r)return t.flipY=!0,t;if(r=parseFloat(r),isNaN(r))return t;switch(a){case"grow":t.size=t.size+r;break;case"shrink":t.size=t.size-r;break;case"left":t.x=t.x-r;break;case"right":t.x=t.x+r;break;case"up":t.y=t.y-r;break;case"down":t.y=t.y+r;break;case"rotate":t.rotate=t.rotate+r}return t},e):e};function fe(t){var e,n,a,r,i,o,c,s,l=se(t),f=l.iconName,u=l.prefix,d=l.rest,m=(e=t.getAttribute("style"),n=[],e&&(n=e.split(";").reduce(function(t,e){var n=e.split(":"),a=n[0],r=n.slice(1);return a&&0<r.length&&(t[a]=r.join(":").trim()),t},{})),n),p=le(t.getAttribute("data-fa-transform")),h=null!==(a=t.getAttribute("data-fa-symbol"))&&(""===a||a),g=(i=At((r=t).attributes).reduce(function(t,e){return"class"!==t.name&&"style"!==t.name&&(t[e.name]=e.value),t},{}),o=r.getAttribute("title"),c=r.getAttribute("data-fa-title-id"),$.autoA11y&&(o?i["aria-labelledby"]="".concat($.replacementClass,"-title-").concat(c||kt()):(i["aria-hidden"]="true",i.focusable="false")),i),v=(s=t.getAttribute("data-fa-mask"))?Jt(s.split(" ").map(function(t){return t.trim()})):Gt();return{iconName:f,title:t.getAttribute("title"),titleId:t.getAttribute("data-fa-title-id"),prefix:u,transform:p,symbol:h,mask:v,maskId:t.getAttribute("data-fa-mask-id"),extra:{classes:d,styles:m,attributes:g}}}function ue(t){this.name="MissingIcon",this.message=t||"Icon unavailable",this.stack=(new Error).stack}(ue.prototype=Object.create(Error.prototype)).constructor=ue;var de={fill:"currentColor"},me={attributeType:"XML",repeatCount:"indefinite",dur:"2s"},pe={tag:"path",attributes:Q({},de,{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"})},he=Q({},me,{attributeName:"opacity"}),ge={tag:"g",children:[pe,{tag:"circle",attributes:Q({},de,{cx:"256",cy:"364",r:"28"}),children:[{tag:"animate",attributes:Q({},me,{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:Q({},he,{values:"1;0;1;1;0;1;"})}]},{tag:"path",attributes:Q({},de,{opacity:"1",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"}),children:[{tag:"animate",attributes:Q({},he,{values:"1;0;0;0;0;1;"})}]},{tag:"path",attributes:Q({},de,{opacity:"0",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"}),children:[{tag:"animate",attributes:Q({},he,{values:"0;0;1;1;0;0;"})}]}]},ve=W.styles;function be(t){var e=t[0],n=t[1],a=p(t.slice(4),1)[0];return{found:!0,width:e,height:n,icon:Array.isArray(a)?{tag:"g",attributes:{class:"".concat($.familyPrefix,"-").concat(Y.GROUP)},children:[{tag:"path",attributes:{class:"".concat($.familyPrefix,"-").concat(Y.SECONDARY),fill:"currentColor",d:a[0]}},{tag:"path",attributes:{class:"".concat($.familyPrefix,"-").concat(Y.PRIMARY),fill:"currentColor",d:a[1]}}]}:{tag:"path",attributes:{fill:"currentColor",d:a}}}}function ye(a,r){return new vt(function(t,e){var n={found:!1,width:512,height:512,icon:ge};if(a&&r&&ve[r]&&ve[r][a])return t(be(ve[r][a]));"object"===i(g.FontAwesomeKitConfig)&&"string"==typeof window.FontAwesomeKitConfig.token&&g.FontAwesomeKitConfig.token,a&&r&&!$.showMissingIcons?e(new ue("Icon is missing for prefix ".concat(r," with icon name ").concat(a))):t(n)})}var we=W.styles;function xe(t){var i,e,o,c,s,l,f,u,n,d,m,a=fe(t);return~a.extra.classes.indexOf(j)?function(t,e){var n=e.title,a=e.transform,r=e.extra,i=null,o=null;if(k){var c=parseInt(getComputedStyle(t).fontSize,10),s=t.getBoundingClientRect();i=s.width/c,o=s.height/c}return $.autoA11y&&!n&&(r.attributes["aria-hidden"]="true"),vt.resolve([t,Lt({content:t.innerHTML,width:i,height:o,transform:a,title:n,extra:r,watchable:!0})])}(t,a):(i=t,o=(e=a).iconName,c=e.title,s=e.titleId,l=e.prefix,f=e.transform,u=e.symbol,n=e.mask,d=e.maskId,m=e.extra,new vt(function(r,t){vt.all([ye(o,l),ye(n.iconName,n.prefix)]).then(function(t){var e=p(t,2),n=e[0],a=e[1];r([i,jt({icons:{main:n,mask:a},prefix:l,iconName:o,transform:f,symbol:u,mask:a,maskId:d,title:c,titleId:s,extra:m,watchable:!0})])})}))}function ke(t){var n=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null;if(m){var e=v.documentElement.classList,a=function(t){return e.add("".concat(S,"-").concat(t))},r=function(t){return e.remove("".concat(S,"-").concat(t))},i=$.autoFetchSvg?Object.keys(z):Object.keys(we),o=[".".concat(j,":not([").concat(Z,"])")].concat(i.map(function(t){return".".concat(t,":not([").concat(Z,"])")})).join(", ");if(0!==o.length){var c=[];try{c=At(t.querySelectorAll(o))}catch(t){}if(0<c.length){a("pending"),r("complete");var s=Yt.begin("onTree"),l=c.reduce(function(t,e){try{var n=xe(e);n&&t.push(n)}catch(t){M||t instanceof ue&&console.error(t)}return t},[]);return new vt(function(e,t){vt.all(l).then(function(t){ae(t,function(){a("active"),a("complete"),r("pending"),"function"==typeof n&&n(),s(),e()})}).catch(function(){s(),t()})})}}}}function Ae(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null;xe(t).then(function(t){t&&ae([t],e)})}function Ce(m,p){var h="".concat(x).concat(p.replace(":","-"));return new vt(function(a,t){if(null!==m.getAttribute(h))return a();var e=At(m.children).filter(function(t){return t.getAttribute(w)===p})[0],n=g.getComputedStyle(m,p),r=n.getPropertyValue("font-family").match(L),i=n.getPropertyValue("font-weight"),o=n.getPropertyValue("content");if(e&&!r)return m.removeChild(e),a();if(r&&"none"!==o&&""!==o){var c=~["Solid","Regular","Light","Duotone","Brands"].indexOf(r[1])?E[r[1].toLowerCase()]:R[i],s=Ht(3===o.length?o.substr(1,1):o),l=Vt(c,s),f=l;if(!l||e&&e.getAttribute(C)===c&&e.getAttribute(O)===f)a();else{m.setAttribute(h,f),e&&m.removeChild(e);var u={iconName:null,title:null,titleId:null,prefix:null,transform:yt,symbol:!1,mask:null,maskId:null,extra:{classes:[],styles:{},attributes:{}}},d=u.extra;d.attributes[w]=p,ye(l,c).then(function(t){var e=jt(Q({},u,{icons:{main:t,mask:Gt()},prefix:c,iconName:f,extra:d,watchable:!0})),n=v.createElement("svg");":before"===p?m.insertBefore(n,m.firstChild):m.appendChild(n),n.outerHTML=e.map(function(t){return Zt(t)}).join("\n"),m.removeAttribute(h),a()}).catch(t)}}else a()})}function Oe(t){return vt.all([Ce(t,":before"),Ce(t,":after")])}function Se(t){return!(t.parentNode===document.head||~N.indexOf(t.tagName.toUpperCase())||t.getAttribute(w)||t.parentNode&&"svg"===t.parentNode.tagName)}function Pe(r){if(m)return new vt(function(t,e){var n=At(r.querySelectorAll("*")).filter(Se).map(Oe),a=Yt.begin("searchPseudoElements");re=!0,vt.all(n).then(function(){a(),ie(),t()}).catch(function(){a(),ie(),e()})})}var Ne="svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}";function Me(){var t=b,e=y,n=$.familyPrefix,a=$.replacementClass,r=Ne;if(n!==t||a!==e){var i=new RegExp("\\.".concat(t,"\\-"),"g"),o=new RegExp("\\--".concat(t,"\\-"),"g"),c=new RegExp("\\.".concat(e),"g");r=r.replace(i,".".concat(n,"-")).replace(o,"--".concat(n,"-")).replace(c,".".concat(a))}return r}function ze(){$.autoAddCss&&!Ie&&(wt(Me()),Ie=!0)}function Ee(e,t){return Object.defineProperty(e,"abstract",{get:t}),Object.defineProperty(e,"html",{get:function(){return e.abstract.map(function(t){return Zt(t)})}}),Object.defineProperty(e,"node",{get:function(){if(m){var t=v.createElement("div");return t.innerHTML=e.html,t.children}}}),e}function je(t){var e=t.prefix,n=void 0===e?"fa":e,a=t.iconName;if(a)return Qt(Re.definitions,n,a)||Qt(W.styles,n,a)}var Le,Re=new(function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.definitions={}}var e,n,a;return e=t,(n=[{key:"add",value:function(){for(var e=this,t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];var r=n.reduce(this._pullDefinitions,{});Object.keys(r).forEach(function(t){e.definitions[t]=Q({},e.definitions[t]||{},r[t]),function t(e,a){var n=(2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}).skipHooks,r=void 0!==n&&n,i=Object.keys(a).reduce(function(t,e){var n=a[e];return n.icon?t[n.iconName]=n.icon:t[e]=n,t},{});"function"!=typeof W.hooks.addPack||r?W.styles[e]=Q({},W.styles[e]||{},i):W.hooks.addPack(e,i),"fas"===e&&t("fa",a)}(t,r[t]),Bt()})}},{key:"reset",value:function(){this.definitions={}}},{key:"_pullDefinitions",value:function(i,t){var o=t.prefix&&t.iconName&&t.icon?{0:t}:t;return Object.keys(o).map(function(t){var e=o[t],n=e.prefix,a=e.iconName,r=e.icon;i[n]||(i[n]={}),i[n][a]=r}),i}}])&&r(e.prototype,n),a&&r(e,a),t}()),Ie=!1,_e={i2svg:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};if(m){ze();var e=t.node,n=void 0===e?v:e,a=t.callback,r=void 0===a?function(){}:a;return $.searchPseudoElements&&Pe(n),ke(n,r)}return vt.reject("Operation requires a DOM of some kind.")},css:Me,insertCss:function(){Ie||(wt(Me()),Ie=!0)},watch:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=t.autoReplaceSvgRoot,n=t.observeMutationsRoot;!1===$.autoReplaceSvg&&($.autoReplaceSvg=!0),$.observeMutations=!0,B(function(){Fe({autoReplaceSvgRoot:e}),ce({treeCallback:ke,nodeCallback:Ae,pseudoElementsCallback:Pe,observeMutationsRoot:n})})}},Te=(Le=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=e.transform,a=void 0===n?yt:n,r=e.symbol,i=void 0!==r&&r,o=e.mask,c=void 0===o?null:o,s=e.maskId,l=void 0===s?null:s,f=e.title,u=void 0===f?null:f,d=e.titleId,m=void 0===d?null:d,p=e.classes,h=void 0===p?[]:p,g=e.attributes,v=void 0===g?{}:g,b=e.styles,y=void 0===b?{}:b;if(t){var w=t.prefix,x=t.iconName,k=t.icon;return Ee(Q({type:"icon"},t),function(){return ze(),$.autoA11y&&(u?v["aria-labelledby"]="".concat($.replacementClass,"-title-").concat(m||kt()):(v["aria-hidden"]="true",v.focusable="false")),jt({icons:{main:be(k),mask:c?be(c.icon):{found:!1,width:null,height:null,icon:{}}},prefix:w,iconName:x,transform:Q({},yt,a),symbol:i,title:u,maskId:l,titleId:m,extra:{attributes:v,styles:y,classes:h}})})}},function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=(t||{}).icon?t:je(t||{}),a=e.mask;return a&&(a=(a||{}).icon?a:je(a||{})),Le(n,Q({},e,{mask:a}))}),Ye={noAuto:function(){$.autoReplaceSvg=!1,$.observeMutations=!1,oe&&oe.disconnect()},config:$,dom:_e,library:Re,parse:{transform:function(t){return le(t)}},findIconDefinition:je,icon:Te,text:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=e.transform,a=void 0===n?yt:n,r=e.title,i=void 0===r?null:r,o=e.classes,c=void 0===o?[]:o,s=e.attributes,l=void 0===s?{}:s,f=e.styles,u=void 0===f?{}:f;return Ee({type:"text",content:t},function(){return ze(),Lt({content:t,transform:Q({},yt,a),title:i,extra:{attributes:l,styles:u,classes:["".concat($.familyPrefix,"-layers-text")].concat(d(c))}})})},counter:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=e.title,a=void 0===n?null:n,r=e.classes,i=void 0===r?[]:r,o=e.attributes,c=void 0===o?{}:o,s=e.styles,l=void 0===s?{}:s;return Ee({type:"counter",content:t},function(){return ze(),function(t){var e=t.content,n=t.title,a=t.extra,r=Q({},a.attributes,n?{title:n}:{},{class:a.classes.join(" ")}),i=Pt(a.styles);0<i.length&&(r.style=i);var o=[];return o.push({tag:"span",attributes:r,children:[e]}),n&&o.push({tag:"span",attributes:{class:"sr-only"},children:[n]}),o}({content:t.toString(),title:a,extra:{attributes:c,styles:l,classes:["".concat($.familyPrefix,"-layers-counter")].concat(d(i))}})})},layer:function(t){var e=(1<arguments.length&&void 0!==arguments[1]?arguments[1]:{}).classes,n=void 0===e?[]:e;return Ee({type:"layer"},function(){ze();var e=[];return t(function(t){Array.isArray(t)?t.map(function(t){e=e.concat(t.abstract)}):e=e.concat(t.abstract)}),[{tag:"span",attributes:{class:["".concat($.familyPrefix,"-layers")].concat(d(n)).join(" ")},children:e}]})},toHtml:Zt},Fe=function(){var t=(0<arguments.length&&void 0!==arguments[0]?arguments[0]:{}).autoReplaceSvgRoot,e=void 0===t?v:t;(0<Object.keys(W.styles).length||$.autoFetchSvg)&&m&&$.autoReplaceSvg&&Ye.dom.i2svg({node:e})};!function(t){try{t()}catch(t){if(!M)throw t}}(function(){u&&(g.FontAwesome||(g.FontAwesome=Ye),B(function(){Fe(),ce({treeCallback:ke,nodeCallback:Ae,pseudoElementsCallback:Pe})})),W.hooks=Q({},W.hooks,{addPack:function(t,e){W.styles[t]=Q({},W.styles[t]||{},e),Bt(),Fe()},addShims:function(t){var e;(e=W.shims).push.apply(e,d(t)),Bt(),Fe()}})})}();
\ No newline at end of file
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://coffeescript.org/
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -48,35 +48,3 @@ p {
height: 100px;
position: relative;
}
.float-right {
position: absolute;
bottom: 0;
right: 5%;
}
.top-page{
text-align: center;
width: 100%;
height: 100%;
}
.total-job{
position: absolute;
color: white;
top: 40%;
right: 30%;
font-size: 60px;
}
.banner-ground{
position: relative;
width: 100%;
height: 50vh;
}
.top-banner {
background-image: url('banner.jpg');
width: 100%;
height: 100%;
background-repeat: no-repeat;
background-size: cover;
}
.salary{
color: green;
}
\ No newline at end of file
/*!
* Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
.fa-1x {
font-size: 1em; }
.fa-2x {
font-size: 2em; }
.fa-3x {
font-size: 3em; }
.fa-4x {
font-size: 4em; }
.fa-5x {
font-size: 5em; }
.fa-6x {
font-size: 6em; }
.fa-7x {
font-size: 7em; }
.fa-8x {
font-size: 8em; }
.fa-9x {
font-size: 9em; }
.fa-10x {
font-size: 10em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
position: absolute;
text-align: center;
width: 2em;
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
.fa-pull-left {
float: left; }
.fa-pull-right {
float: right; }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-stack {
display: inline-block;
height: 2em;
line-height: 2em;
position: relative;
vertical-align: middle;
width: 2.5em; }
.fa-stack-1x,
.fa-stack-2x {
left: 0;
position: absolute;
text-align: center;
width: 100%; }
.fa-stack-1x {
line-height: inherit; }
.fa-stack-2x {
font-size: 2em; }
.fa-inverse {
color: #fff; }
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-500px:before {
content: "\f26e"; }
.fa-accessible-icon:before {
content: "\f368"; }
.fa-accusoft:before {
content: "\f369"; }
.fa-acquisitions-incorporated:before {
content: "\f6af"; }
.fa-ad:before {
content: "\f641"; }
.fa-address-book:before {
content: "\f2b9"; }
.fa-address-card:before {
content: "\f2bb"; }
.fa-adjust:before {
content: "\f042"; }
.fa-adn:before {
content: "\f170"; }
.fa-adobe:before {
content: "\f778"; }
.fa-adversal:before {
content: "\f36a"; }
.fa-affiliatetheme:before {
content: "\f36b"; }
.fa-air-freshener:before {
content: "\f5d0"; }
.fa-airbnb:before {
content: "\f834"; }
.fa-algolia:before {
content: "\f36c"; }
.fa-align-center:before {
content: "\f037"; }
.fa-align-justify:before {
content: "\f039"; }
.fa-align-left:before {
content: "\f036"; }
.fa-align-right:before {
content: "\f038"; }
.fa-alipay:before {
content: "\f642"; }
.fa-allergies:before {
content: "\f461"; }
.fa-amazon:before {
content: "\f270"; }
.fa-amazon-pay:before {
content: "\f42c"; }
.fa-ambulance:before {
content: "\f0f9"; }
.fa-american-sign-language-interpreting:before {
content: "\f2a3"; }
.fa-amilia:before {
content: "\f36d"; }
.fa-anchor:before {
content: "\f13d"; }
.fa-android:before {
content: "\f17b"; }
.fa-angellist:before {
content: "\f209"; }
.fa-angle-double-down:before {
content: "\f103"; }
.fa-angle-double-left:before {
content: "\f100"; }
.fa-angle-double-right:before {
content: "\f101"; }
.fa-angle-double-up:before {
content: "\f102"; }
.fa-angle-down:before {
content: "\f107"; }
.fa-angle-left:before {
content: "\f104"; }
.fa-angle-right:before {
content: "\f105"; }
.fa-angle-up:before {
content: "\f106"; }
.fa-angry:before {
content: "\f556"; }
.fa-angrycreative:before {
content: "\f36e"; }
.fa-angular:before {
content: "\f420"; }
.fa-ankh:before {
content: "\f644"; }
.fa-app-store:before {
content: "\f36f"; }
.fa-app-store-ios:before {
content: "\f370"; }
.fa-apper:before {
content: "\f371"; }
.fa-apple:before {
content: "\f179"; }
.fa-apple-alt:before {
content: "\f5d1"; }
.fa-apple-pay:before {
content: "\f415"; }
.fa-archive:before {
content: "\f187"; }
.fa-archway:before {
content: "\f557"; }
.fa-arrow-alt-circle-down:before {
content: "\f358"; }
.fa-arrow-alt-circle-left:before {
content: "\f359"; }
.fa-arrow-alt-circle-right:before {
content: "\f35a"; }
.fa-arrow-alt-circle-up:before {
content: "\f35b"; }
.fa-arrow-circle-down:before {
content: "\f0ab"; }
.fa-arrow-circle-left:before {
content: "\f0a8"; }
.fa-arrow-circle-right:before {
content: "\f0a9"; }
.fa-arrow-circle-up:before {
content: "\f0aa"; }
.fa-arrow-down:before {
content: "\f063"; }
.fa-arrow-left:before {
content: "\f060"; }
.fa-arrow-right:before {
content: "\f061"; }
.fa-arrow-up:before {
content: "\f062"; }
.fa-arrows-alt:before {
content: "\f0b2"; }
.fa-arrows-alt-h:before {
content: "\f337"; }
.fa-arrows-alt-v:before {
content: "\f338"; }
.fa-artstation:before {
content: "\f77a"; }
.fa-assistive-listening-systems:before {
content: "\f2a2"; }
.fa-asterisk:before {
content: "\f069"; }
.fa-asymmetrik:before {
content: "\f372"; }
.fa-at:before {
content: "\f1fa"; }
.fa-atlas:before {
content: "\f558"; }
.fa-atlassian:before {
content: "\f77b"; }
.fa-atom:before {
content: "\f5d2"; }
.fa-audible:before {
content: "\f373"; }
.fa-audio-description:before {
content: "\f29e"; }
.fa-autoprefixer:before {
content: "\f41c"; }
.fa-avianex:before {
content: "\f374"; }
.fa-aviato:before {
content: "\f421"; }
.fa-award:before {
content: "\f559"; }
.fa-aws:before {
content: "\f375"; }
.fa-baby:before {
content: "\f77c"; }
.fa-baby-carriage:before {
content: "\f77d"; }
.fa-backspace:before {
content: "\f55a"; }
.fa-backward:before {
content: "\f04a"; }
.fa-bacon:before {
content: "\f7e5"; }
.fa-bacteria:before {
content: "\e059"; }
.fa-bacterium:before {
content: "\e05a"; }
.fa-bahai:before {
content: "\f666"; }
.fa-balance-scale:before {
content: "\f24e"; }
.fa-balance-scale-left:before {
content: "\f515"; }
.fa-balance-scale-right:before {
content: "\f516"; }
.fa-ban:before {
content: "\f05e"; }
.fa-band-aid:before {
content: "\f462"; }
.fa-bandcamp:before {
content: "\f2d5"; }
.fa-barcode:before {
content: "\f02a"; }
.fa-bars:before {
content: "\f0c9"; }
.fa-baseball-ball:before {
content: "\f433"; }
.fa-basketball-ball:before {
content: "\f434"; }
.fa-bath:before {
content: "\f2cd"; }
.fa-battery-empty:before {
content: "\f244"; }
.fa-battery-full:before {
content: "\f240"; }
.fa-battery-half:before {
content: "\f242"; }
.fa-battery-quarter:before {
content: "\f243"; }
.fa-battery-three-quarters:before {
content: "\f241"; }
.fa-battle-net:before {
content: "\f835"; }
.fa-bed:before {
content: "\f236"; }
.fa-beer:before {
content: "\f0fc"; }
.fa-behance:before {
content: "\f1b4"; }
.fa-behance-square:before {
content: "\f1b5"; }
.fa-bell:before {
content: "\f0f3"; }
.fa-bell-slash:before {
content: "\f1f6"; }
.fa-bezier-curve:before {
content: "\f55b"; }
.fa-bible:before {
content: "\f647"; }
.fa-bicycle:before {
content: "\f206"; }
.fa-biking:before {
content: "\f84a"; }
.fa-bimobject:before {
content: "\f378"; }
.fa-binoculars:before {
content: "\f1e5"; }
.fa-biohazard:before {
content: "\f780"; }
.fa-birthday-cake:before {
content: "\f1fd"; }
.fa-bitbucket:before {
content: "\f171"; }
.fa-bitcoin:before {
content: "\f379"; }
.fa-bity:before {
content: "\f37a"; }
.fa-black-tie:before {
content: "\f27e"; }
.fa-blackberry:before {
content: "\f37b"; }
.fa-blender:before {
content: "\f517"; }
.fa-blender-phone:before {
content: "\f6b6"; }
.fa-blind:before {
content: "\f29d"; }
.fa-blog:before {
content: "\f781"; }
.fa-blogger:before {
content: "\f37c"; }
.fa-blogger-b:before {
content: "\f37d"; }
.fa-bluetooth:before {
content: "\f293"; }
.fa-bluetooth-b:before {
content: "\f294"; }
.fa-bold:before {
content: "\f032"; }
.fa-bolt:before {
content: "\f0e7"; }
.fa-bomb:before {
content: "\f1e2"; }
.fa-bone:before {
content: "\f5d7"; }
.fa-bong:before {
content: "\f55c"; }
.fa-book:before {
content: "\f02d"; }
.fa-book-dead:before {
content: "\f6b7"; }
.fa-book-medical:before {
content: "\f7e6"; }
.fa-book-open:before {
content: "\f518"; }
.fa-book-reader:before {
content: "\f5da"; }
.fa-bookmark:before {
content: "\f02e"; }
.fa-bootstrap:before {
content: "\f836"; }
.fa-border-all:before {
content: "\f84c"; }
.fa-border-none:before {
content: "\f850"; }
.fa-border-style:before {
content: "\f853"; }
.fa-bowling-ball:before {
content: "\f436"; }
.fa-box:before {
content: "\f466"; }
.fa-box-open:before {
content: "\f49e"; }
.fa-box-tissue:before {
content: "\e05b"; }
.fa-boxes:before {
content: "\f468"; }
.fa-braille:before {
content: "\f2a1"; }
.fa-brain:before {
content: "\f5dc"; }
.fa-bread-slice:before {
content: "\f7ec"; }
.fa-briefcase:before {
content: "\f0b1"; }
.fa-briefcase-medical:before {
content: "\f469"; }
.fa-broadcast-tower:before {
content: "\f519"; }
.fa-broom:before {
content: "\f51a"; }
.fa-brush:before {
content: "\f55d"; }
.fa-btc:before {
content: "\f15a"; }
.fa-buffer:before {
content: "\f837"; }
.fa-bug:before {
content: "\f188"; }
.fa-building:before {
content: "\f1ad"; }
.fa-bullhorn:before {
content: "\f0a1"; }
.fa-bullseye:before {
content: "\f140"; }
.fa-burn:before {
content: "\f46a"; }
.fa-buromobelexperte:before {
content: "\f37f"; }
.fa-bus:before {
content: "\f207"; }
.fa-bus-alt:before {
content: "\f55e"; }
.fa-business-time:before {
content: "\f64a"; }
.fa-buy-n-large:before {
content: "\f8a6"; }
.fa-buysellads:before {
content: "\f20d"; }
.fa-calculator:before {
content: "\f1ec"; }
.fa-calendar:before {
content: "\f133"; }
.fa-calendar-alt:before {
content: "\f073"; }
.fa-calendar-check:before {
content: "\f274"; }
.fa-calendar-day:before {
content: "\f783"; }
.fa-calendar-minus:before {
content: "\f272"; }
.fa-calendar-plus:before {
content: "\f271"; }
.fa-calendar-times:before {
content: "\f273"; }
.fa-calendar-week:before {
content: "\f784"; }
.fa-camera:before {
content: "\f030"; }
.fa-camera-retro:before {
content: "\f083"; }
.fa-campground:before {
content: "\f6bb"; }
.fa-canadian-maple-leaf:before {
content: "\f785"; }
.fa-candy-cane:before {
content: "\f786"; }
.fa-cannabis:before {
content: "\f55f"; }
.fa-capsules:before {
content: "\f46b"; }
.fa-car:before {
content: "\f1b9"; }
.fa-car-alt:before {
content: "\f5de"; }
.fa-car-battery:before {
content: "\f5df"; }
.fa-car-crash:before {
content: "\f5e1"; }
.fa-car-side:before {
content: "\f5e4"; }
.fa-caravan:before {
content: "\f8ff"; }
.fa-caret-down:before {
content: "\f0d7"; }
.fa-caret-left:before {
content: "\f0d9"; }
.fa-caret-right:before {
content: "\f0da"; }
.fa-caret-square-down:before {
content: "\f150"; }
.fa-caret-square-left:before {
content: "\f191"; }
.fa-caret-square-right:before {
content: "\f152"; }
.fa-caret-square-up:before {
content: "\f151"; }
.fa-caret-up:before {
content: "\f0d8"; }
.fa-carrot:before {
content: "\f787"; }
.fa-cart-arrow-down:before {
content: "\f218"; }
.fa-cart-plus:before {
content: "\f217"; }
.fa-cash-register:before {
content: "\f788"; }
.fa-cat:before {
content: "\f6be"; }
.fa-cc-amazon-pay:before {
content: "\f42d"; }
.fa-cc-amex:before {
content: "\f1f3"; }
.fa-cc-apple-pay:before {
content: "\f416"; }
.fa-cc-diners-club:before {
content: "\f24c"; }
.fa-cc-discover:before {
content: "\f1f2"; }
.fa-cc-jcb:before {
content: "\f24b"; }
.fa-cc-mastercard:before {
content: "\f1f1"; }
.fa-cc-paypal:before {
content: "\f1f4"; }
.fa-cc-stripe:before {
content: "\f1f5"; }
.fa-cc-visa:before {
content: "\f1f0"; }
.fa-centercode:before {
content: "\f380"; }
.fa-centos:before {
content: "\f789"; }
.fa-certificate:before {
content: "\f0a3"; }
.fa-chair:before {
content: "\f6c0"; }
.fa-chalkboard:before {
content: "\f51b"; }
.fa-chalkboard-teacher:before {
content: "\f51c"; }
.fa-charging-station:before {
content: "\f5e7"; }
.fa-chart-area:before {
content: "\f1fe"; }
.fa-chart-bar:before {
content: "\f080"; }
.fa-chart-line:before {
content: "\f201"; }
.fa-chart-pie:before {
content: "\f200"; }
.fa-check:before {
content: "\f00c"; }
.fa-check-circle:before {
content: "\f058"; }
.fa-check-double:before {
content: "\f560"; }
.fa-check-square:before {
content: "\f14a"; }
.fa-cheese:before {
content: "\f7ef"; }
.fa-chess:before {
content: "\f439"; }
.fa-chess-bishop:before {
content: "\f43a"; }
.fa-chess-board:before {
content: "\f43c"; }
.fa-chess-king:before {
content: "\f43f"; }
.fa-chess-knight:before {
content: "\f441"; }
.fa-chess-pawn:before {
content: "\f443"; }
.fa-chess-queen:before {
content: "\f445"; }
.fa-chess-rook:before {
content: "\f447"; }
.fa-chevron-circle-down:before {
content: "\f13a"; }
.fa-chevron-circle-left:before {
content: "\f137"; }
.fa-chevron-circle-right:before {
content: "\f138"; }
.fa-chevron-circle-up:before {
content: "\f139"; }
.fa-chevron-down:before {
content: "\f078"; }
.fa-chevron-left:before {
content: "\f053"; }
.fa-chevron-right:before {
content: "\f054"; }
.fa-chevron-up:before {
content: "\f077"; }
.fa-child:before {
content: "\f1ae"; }
.fa-chrome:before {
content: "\f268"; }
.fa-chromecast:before {
content: "\f838"; }
.fa-church:before {
content: "\f51d"; }
.fa-circle:before {
content: "\f111"; }
.fa-circle-notch:before {
content: "\f1ce"; }
.fa-city:before {
content: "\f64f"; }
.fa-clinic-medical:before {
content: "\f7f2"; }
.fa-clipboard:before {
content: "\f328"; }
.fa-clipboard-check:before {
content: "\f46c"; }
.fa-clipboard-list:before {
content: "\f46d"; }
.fa-clock:before {
content: "\f017"; }
.fa-clone:before {
content: "\f24d"; }
.fa-closed-captioning:before {
content: "\f20a"; }
.fa-cloud:before {
content: "\f0c2"; }
.fa-cloud-download-alt:before {
content: "\f381"; }
.fa-cloud-meatball:before {
content: "\f73b"; }
.fa-cloud-moon:before {
content: "\f6c3"; }
.fa-cloud-moon-rain:before {
content: "\f73c"; }
.fa-cloud-rain:before {
content: "\f73d"; }
.fa-cloud-showers-heavy:before {
content: "\f740"; }
.fa-cloud-sun:before {
content: "\f6c4"; }
.fa-cloud-sun-rain:before {
content: "\f743"; }
.fa-cloud-upload-alt:before {
content: "\f382"; }
.fa-cloudscale:before {
content: "\f383"; }
.fa-cloudsmith:before {
content: "\f384"; }
.fa-cloudversify:before {
content: "\f385"; }
.fa-cocktail:before {
content: "\f561"; }
.fa-code:before {
content: "\f121"; }
.fa-code-branch:before {
content: "\f126"; }
.fa-codepen:before {
content: "\f1cb"; }
.fa-codiepie:before {
content: "\f284"; }
.fa-coffee:before {
content: "\f0f4"; }
.fa-cog:before {
content: "\f013"; }
.fa-cogs:before {
content: "\f085"; }
.fa-coins:before {
content: "\f51e"; }
.fa-columns:before {
content: "\f0db"; }
.fa-comment:before {
content: "\f075"; }
.fa-comment-alt:before {
content: "\f27a"; }
.fa-comment-dollar:before {
content: "\f651"; }
.fa-comment-dots:before {
content: "\f4ad"; }
.fa-comment-medical:before {
content: "\f7f5"; }
.fa-comment-slash:before {
content: "\f4b3"; }
.fa-comments:before {
content: "\f086"; }
.fa-comments-dollar:before {
content: "\f653"; }
.fa-compact-disc:before {
content: "\f51f"; }
.fa-compass:before {
content: "\f14e"; }
.fa-compress:before {
content: "\f066"; }
.fa-compress-alt:before {
content: "\f422"; }
.fa-compress-arrows-alt:before {
content: "\f78c"; }
.fa-concierge-bell:before {
content: "\f562"; }
.fa-confluence:before {
content: "\f78d"; }
.fa-connectdevelop:before {
content: "\f20e"; }
.fa-contao:before {
content: "\f26d"; }
.fa-cookie:before {
content: "\f563"; }
.fa-cookie-bite:before {
content: "\f564"; }
.fa-copy:before {
content: "\f0c5"; }
.fa-copyright:before {
content: "\f1f9"; }
.fa-cotton-bureau:before {
content: "\f89e"; }
.fa-couch:before {
content: "\f4b8"; }
.fa-cpanel:before {
content: "\f388"; }
.fa-creative-commons:before {
content: "\f25e"; }
.fa-creative-commons-by:before {
content: "\f4e7"; }
.fa-creative-commons-nc:before {
content: "\f4e8"; }
.fa-creative-commons-nc-eu:before {
content: "\f4e9"; }
.fa-creative-commons-nc-jp:before {
content: "\f4ea"; }
.fa-creative-commons-nd:before {
content: "\f4eb"; }
.fa-creative-commons-pd:before {
content: "\f4ec"; }
.fa-creative-commons-pd-alt:before {
content: "\f4ed"; }
.fa-creative-commons-remix:before {
content: "\f4ee"; }
.fa-creative-commons-sa:before {
content: "\f4ef"; }
.fa-creative-commons-sampling:before {
content: "\f4f0"; }
.fa-creative-commons-sampling-plus:before {
content: "\f4f1"; }
.fa-creative-commons-share:before {
content: "\f4f2"; }
.fa-creative-commons-zero:before {
content: "\f4f3"; }
.fa-credit-card:before {
content: "\f09d"; }
.fa-critical-role:before {
content: "\f6c9"; }
.fa-crop:before {
content: "\f125"; }
.fa-crop-alt:before {
content: "\f565"; }
.fa-cross:before {
content: "\f654"; }
.fa-crosshairs:before {
content: "\f05b"; }
.fa-crow:before {
content: "\f520"; }
.fa-crown:before {
content: "\f521"; }
.fa-crutch:before {
content: "\f7f7"; }
.fa-css3:before {
content: "\f13c"; }
.fa-css3-alt:before {
content: "\f38b"; }
.fa-cube:before {
content: "\f1b2"; }
.fa-cubes:before {
content: "\f1b3"; }
.fa-cut:before {
content: "\f0c4"; }
.fa-cuttlefish:before {
content: "\f38c"; }
.fa-d-and-d:before {
content: "\f38d"; }
.fa-d-and-d-beyond:before {
content: "\f6ca"; }
.fa-dailymotion:before {
content: "\e052"; }
.fa-dashcube:before {
content: "\f210"; }
.fa-database:before {
content: "\f1c0"; }
.fa-deaf:before {
content: "\f2a4"; }
.fa-deezer:before {
content: "\e077"; }
.fa-delicious:before {
content: "\f1a5"; }
.fa-democrat:before {
content: "\f747"; }
.fa-deploydog:before {
content: "\f38e"; }
.fa-deskpro:before {
content: "\f38f"; }
.fa-desktop:before {
content: "\f108"; }
.fa-dev:before {
content: "\f6cc"; }
.fa-deviantart:before {
content: "\f1bd"; }
.fa-dharmachakra:before {
content: "\f655"; }
.fa-dhl:before {
content: "\f790"; }
.fa-diagnoses:before {
content: "\f470"; }
.fa-diaspora:before {
content: "\f791"; }
.fa-dice:before {
content: "\f522"; }
.fa-dice-d20:before {
content: "\f6cf"; }
.fa-dice-d6:before {
content: "\f6d1"; }
.fa-dice-five:before {
content: "\f523"; }
.fa-dice-four:before {
content: "\f524"; }
.fa-dice-one:before {
content: "\f525"; }
.fa-dice-six:before {
content: "\f526"; }
.fa-dice-three:before {
content: "\f527"; }
.fa-dice-two:before {
content: "\f528"; }
.fa-digg:before {
content: "\f1a6"; }
.fa-digital-ocean:before {
content: "\f391"; }
.fa-digital-tachograph:before {
content: "\f566"; }
.fa-directions:before {
content: "\f5eb"; }
.fa-discord:before {
content: "\f392"; }
.fa-discourse:before {
content: "\f393"; }
.fa-disease:before {
content: "\f7fa"; }
.fa-divide:before {
content: "\f529"; }
.fa-dizzy:before {
content: "\f567"; }
.fa-dna:before {
content: "\f471"; }
.fa-dochub:before {
content: "\f394"; }
.fa-docker:before {
content: "\f395"; }
.fa-dog:before {
content: "\f6d3"; }
.fa-dollar-sign:before {
content: "\f155"; }
.fa-dolly:before {
content: "\f472"; }
.fa-dolly-flatbed:before {
content: "\f474"; }
.fa-donate:before {
content: "\f4b9"; }
.fa-door-closed:before {
content: "\f52a"; }
.fa-door-open:before {
content: "\f52b"; }
.fa-dot-circle:before {
content: "\f192"; }
.fa-dove:before {
content: "\f4ba"; }
.fa-download:before {
content: "\f019"; }
.fa-draft2digital:before {
content: "\f396"; }
.fa-drafting-compass:before {
content: "\f568"; }
.fa-dragon:before {
content: "\f6d5"; }
.fa-draw-polygon:before {
content: "\f5ee"; }
.fa-dribbble:before {
content: "\f17d"; }
.fa-dribbble-square:before {
content: "\f397"; }
.fa-dropbox:before {
content: "\f16b"; }
.fa-drum:before {
content: "\f569"; }
.fa-drum-steelpan:before {
content: "\f56a"; }
.fa-drumstick-bite:before {
content: "\f6d7"; }
.fa-drupal:before {
content: "\f1a9"; }
.fa-dumbbell:before {
content: "\f44b"; }
.fa-dumpster:before {
content: "\f793"; }
.fa-dumpster-fire:before {
content: "\f794"; }
.fa-dungeon:before {
content: "\f6d9"; }
.fa-dyalog:before {
content: "\f399"; }
.fa-earlybirds:before {
content: "\f39a"; }
.fa-ebay:before {
content: "\f4f4"; }
.fa-edge:before {
content: "\f282"; }
.fa-edge-legacy:before {
content: "\e078"; }
.fa-edit:before {
content: "\f044"; }
.fa-egg:before {
content: "\f7fb"; }
.fa-eject:before {
content: "\f052"; }
.fa-elementor:before {
content: "\f430"; }
.fa-ellipsis-h:before {
content: "\f141"; }
.fa-ellipsis-v:before {
content: "\f142"; }
.fa-ello:before {
content: "\f5f1"; }
.fa-ember:before {
content: "\f423"; }
.fa-empire:before {
content: "\f1d1"; }
.fa-envelope:before {
content: "\f0e0"; }
.fa-envelope-open:before {
content: "\f2b6"; }
.fa-envelope-open-text:before {
content: "\f658"; }
.fa-envelope-square:before {
content: "\f199"; }
.fa-envira:before {
content: "\f299"; }
.fa-equals:before {
content: "\f52c"; }
.fa-eraser:before {
content: "\f12d"; }
.fa-erlang:before {
content: "\f39d"; }
.fa-ethereum:before {
content: "\f42e"; }
.fa-ethernet:before {
content: "\f796"; }
.fa-etsy:before {
content: "\f2d7"; }
.fa-euro-sign:before {
content: "\f153"; }
.fa-evernote:before {
content: "\f839"; }
.fa-exchange-alt:before {
content: "\f362"; }
.fa-exclamation:before {
content: "\f12a"; }
.fa-exclamation-circle:before {
content: "\f06a"; }
.fa-exclamation-triangle:before {
content: "\f071"; }
.fa-expand:before {
content: "\f065"; }
.fa-expand-alt:before {
content: "\f424"; }
.fa-expand-arrows-alt:before {
content: "\f31e"; }
.fa-expeditedssl:before {
content: "\f23e"; }
.fa-external-link-alt:before {
content: "\f35d"; }
.fa-external-link-square-alt:before {
content: "\f360"; }
.fa-eye:before {
content: "\f06e"; }
.fa-eye-dropper:before {
content: "\f1fb"; }
.fa-eye-slash:before {
content: "\f070"; }
.fa-facebook:before {
content: "\f09a"; }
.fa-facebook-f:before {
content: "\f39e"; }
.fa-facebook-messenger:before {
content: "\f39f"; }
.fa-facebook-square:before {
content: "\f082"; }
.fa-fan:before {
content: "\f863"; }
.fa-fantasy-flight-games:before {
content: "\f6dc"; }
.fa-fast-backward:before {
content: "\f049"; }
.fa-fast-forward:before {
content: "\f050"; }
.fa-faucet:before {
content: "\e005"; }
.fa-fax:before {
content: "\f1ac"; }
.fa-feather:before {
content: "\f52d"; }
.fa-feather-alt:before {
content: "\f56b"; }
.fa-fedex:before {
content: "\f797"; }
.fa-fedora:before {
content: "\f798"; }
.fa-female:before {
content: "\f182"; }
.fa-fighter-jet:before {
content: "\f0fb"; }
.fa-figma:before {
content: "\f799"; }
.fa-file:before {
content: "\f15b"; }
.fa-file-alt:before {
content: "\f15c"; }
.fa-file-archive:before {
content: "\f1c6"; }
.fa-file-audio:before {
content: "\f1c7"; }
.fa-file-code:before {
content: "\f1c9"; }
.fa-file-contract:before {
content: "\f56c"; }
.fa-file-csv:before {
content: "\f6dd"; }
.fa-file-download:before {
content: "\f56d"; }
.fa-file-excel:before {
content: "\f1c3"; }
.fa-file-export:before {
content: "\f56e"; }
.fa-file-image:before {
content: "\f1c5"; }
.fa-file-import:before {
content: "\f56f"; }
.fa-file-invoice:before {
content: "\f570"; }
.fa-file-invoice-dollar:before {
content: "\f571"; }
.fa-file-medical:before {
content: "\f477"; }
.fa-file-medical-alt:before {
content: "\f478"; }
.fa-file-pdf:before {
content: "\f1c1"; }
.fa-file-powerpoint:before {
content: "\f1c4"; }
.fa-file-prescription:before {
content: "\f572"; }
.fa-file-signature:before {
content: "\f573"; }
.fa-file-upload:before {
content: "\f574"; }
.fa-file-video:before {
content: "\f1c8"; }
.fa-file-word:before {
content: "\f1c2"; }
.fa-fill:before {
content: "\f575"; }
.fa-fill-drip:before {
content: "\f576"; }
.fa-film:before {
content: "\f008"; }
.fa-filter:before {
content: "\f0b0"; }
.fa-fingerprint:before {
content: "\f577"; }
.fa-fire:before {
content: "\f06d"; }
.fa-fire-alt:before {
content: "\f7e4"; }
.fa-fire-extinguisher:before {
content: "\f134"; }
.fa-firefox:before {
content: "\f269"; }
.fa-firefox-browser:before {
content: "\e007"; }
.fa-first-aid:before {
content: "\f479"; }
.fa-first-order:before {
content: "\f2b0"; }
.fa-first-order-alt:before {
content: "\f50a"; }
.fa-firstdraft:before {
content: "\f3a1"; }
.fa-fish:before {
content: "\f578"; }
.fa-fist-raised:before {
content: "\f6de"; }
.fa-flag:before {
content: "\f024"; }
.fa-flag-checkered:before {
content: "\f11e"; }
.fa-flag-usa:before {
content: "\f74d"; }
.fa-flask:before {
content: "\f0c3"; }
.fa-flickr:before {
content: "\f16e"; }
.fa-flipboard:before {
content: "\f44d"; }
.fa-flushed:before {
content: "\f579"; }
.fa-fly:before {
content: "\f417"; }
.fa-folder:before {
content: "\f07b"; }
.fa-folder-minus:before {
content: "\f65d"; }
.fa-folder-open:before {
content: "\f07c"; }
.fa-folder-plus:before {
content: "\f65e"; }
.fa-font:before {
content: "\f031"; }
.fa-font-awesome:before {
content: "\f2b4"; }
.fa-font-awesome-alt:before {
content: "\f35c"; }
.fa-font-awesome-flag:before {
content: "\f425"; }
.fa-font-awesome-logo-full:before {
content: "\f4e6"; }
.fa-fonticons:before {
content: "\f280"; }
.fa-fonticons-fi:before {
content: "\f3a2"; }
.fa-football-ball:before {
content: "\f44e"; }
.fa-fort-awesome:before {
content: "\f286"; }
.fa-fort-awesome-alt:before {
content: "\f3a3"; }
.fa-forumbee:before {
content: "\f211"; }
.fa-forward:before {
content: "\f04e"; }
.fa-foursquare:before {
content: "\f180"; }
.fa-free-code-camp:before {
content: "\f2c5"; }
.fa-freebsd:before {
content: "\f3a4"; }
.fa-frog:before {
content: "\f52e"; }
.fa-frown:before {
content: "\f119"; }
.fa-frown-open:before {
content: "\f57a"; }
.fa-fulcrum:before {
content: "\f50b"; }
.fa-funnel-dollar:before {
content: "\f662"; }
.fa-futbol:before {
content: "\f1e3"; }
.fa-galactic-republic:before {
content: "\f50c"; }
.fa-galactic-senate:before {
content: "\f50d"; }
.fa-gamepad:before {
content: "\f11b"; }
.fa-gas-pump:before {
content: "\f52f"; }
.fa-gavel:before {
content: "\f0e3"; }
.fa-gem:before {
content: "\f3a5"; }
.fa-genderless:before {
content: "\f22d"; }
.fa-get-pocket:before {
content: "\f265"; }
.fa-gg:before {
content: "\f260"; }
.fa-gg-circle:before {
content: "\f261"; }
.fa-ghost:before {
content: "\f6e2"; }
.fa-gift:before {
content: "\f06b"; }
.fa-gifts:before {
content: "\f79c"; }
.fa-git:before {
content: "\f1d3"; }
.fa-git-alt:before {
content: "\f841"; }
.fa-git-square:before {
content: "\f1d2"; }
.fa-github:before {
content: "\f09b"; }
.fa-github-alt:before {
content: "\f113"; }
.fa-github-square:before {
content: "\f092"; }
.fa-gitkraken:before {
content: "\f3a6"; }
.fa-gitlab:before {
content: "\f296"; }
.fa-gitter:before {
content: "\f426"; }
.fa-glass-cheers:before {
content: "\f79f"; }
.fa-glass-martini:before {
content: "\f000"; }
.fa-glass-martini-alt:before {
content: "\f57b"; }
.fa-glass-whiskey:before {
content: "\f7a0"; }
.fa-glasses:before {
content: "\f530"; }
.fa-glide:before {
content: "\f2a5"; }
.fa-glide-g:before {
content: "\f2a6"; }
.fa-globe:before {
content: "\f0ac"; }
.fa-globe-africa:before {
content: "\f57c"; }
.fa-globe-americas:before {
content: "\f57d"; }
.fa-globe-asia:before {
content: "\f57e"; }
.fa-globe-europe:before {
content: "\f7a2"; }
.fa-gofore:before {
content: "\f3a7"; }
.fa-golf-ball:before {
content: "\f450"; }
.fa-goodreads:before {
content: "\f3a8"; }
.fa-goodreads-g:before {
content: "\f3a9"; }
.fa-google:before {
content: "\f1a0"; }
.fa-google-drive:before {
content: "\f3aa"; }
.fa-google-pay:before {
content: "\e079"; }
.fa-google-play:before {
content: "\f3ab"; }
.fa-google-plus:before {
content: "\f2b3"; }
.fa-google-plus-g:before {
content: "\f0d5"; }
.fa-google-plus-square:before {
content: "\f0d4"; }
.fa-google-wallet:before {
content: "\f1ee"; }
.fa-gopuram:before {
content: "\f664"; }
.fa-graduation-cap:before {
content: "\f19d"; }
.fa-gratipay:before {
content: "\f184"; }
.fa-grav:before {
content: "\f2d6"; }
.fa-greater-than:before {
content: "\f531"; }
.fa-greater-than-equal:before {
content: "\f532"; }
.fa-grimace:before {
content: "\f57f"; }
.fa-grin:before {
content: "\f580"; }
.fa-grin-alt:before {
content: "\f581"; }
.fa-grin-beam:before {
content: "\f582"; }
.fa-grin-beam-sweat:before {
content: "\f583"; }
.fa-grin-hearts:before {
content: "\f584"; }
.fa-grin-squint:before {
content: "\f585"; }
.fa-grin-squint-tears:before {
content: "\f586"; }
.fa-grin-stars:before {
content: "\f587"; }
.fa-grin-tears:before {
content: "\f588"; }
.fa-grin-tongue:before {
content: "\f589"; }
.fa-grin-tongue-squint:before {
content: "\f58a"; }
.fa-grin-tongue-wink:before {
content: "\f58b"; }
.fa-grin-wink:before {
content: "\f58c"; }
.fa-grip-horizontal:before {
content: "\f58d"; }
.fa-grip-lines:before {
content: "\f7a4"; }
.fa-grip-lines-vertical:before {
content: "\f7a5"; }
.fa-grip-vertical:before {
content: "\f58e"; }
.fa-gripfire:before {
content: "\f3ac"; }
.fa-grunt:before {
content: "\f3ad"; }
.fa-guitar:before {
content: "\f7a6"; }
.fa-gulp:before {
content: "\f3ae"; }
.fa-h-square:before {
content: "\f0fd"; }
.fa-hacker-news:before {
content: "\f1d4"; }
.fa-hacker-news-square:before {
content: "\f3af"; }
.fa-hackerrank:before {
content: "\f5f7"; }
.fa-hamburger:before {
content: "\f805"; }
.fa-hammer:before {
content: "\f6e3"; }
.fa-hamsa:before {
content: "\f665"; }
.fa-hand-holding:before {
content: "\f4bd"; }
.fa-hand-holding-heart:before {
content: "\f4be"; }
.fa-hand-holding-medical:before {
content: "\e05c"; }
.fa-hand-holding-usd:before {
content: "\f4c0"; }
.fa-hand-holding-water:before {
content: "\f4c1"; }
.fa-hand-lizard:before {
content: "\f258"; }
.fa-hand-middle-finger:before {
content: "\f806"; }
.fa-hand-paper:before {
content: "\f256"; }
.fa-hand-peace:before {
content: "\f25b"; }
.fa-hand-point-down:before {
content: "\f0a7"; }
.fa-hand-point-left:before {
content: "\f0a5"; }
.fa-hand-point-right:before {
content: "\f0a4"; }
.fa-hand-point-up:before {
content: "\f0a6"; }
.fa-hand-pointer:before {
content: "\f25a"; }
.fa-hand-rock:before {
content: "\f255"; }
.fa-hand-scissors:before {
content: "\f257"; }
.fa-hand-sparkles:before {
content: "\e05d"; }
.fa-hand-spock:before {
content: "\f259"; }
.fa-hands:before {
content: "\f4c2"; }
.fa-hands-helping:before {
content: "\f4c4"; }
.fa-hands-wash:before {
content: "\e05e"; }
.fa-handshake:before {
content: "\f2b5"; }
.fa-handshake-alt-slash:before {
content: "\e05f"; }
.fa-handshake-slash:before {
content: "\e060"; }
.fa-hanukiah:before {
content: "\f6e6"; }
.fa-hard-hat:before {
content: "\f807"; }
.fa-hashtag:before {
content: "\f292"; }
.fa-hat-cowboy:before {
content: "\f8c0"; }
.fa-hat-cowboy-side:before {
content: "\f8c1"; }
.fa-hat-wizard:before {
content: "\f6e8"; }
.fa-hdd:before {
content: "\f0a0"; }
.fa-head-side-cough:before {
content: "\e061"; }
.fa-head-side-cough-slash:before {
content: "\e062"; }
.fa-head-side-mask:before {
content: "\e063"; }
.fa-head-side-virus:before {
content: "\e064"; }
.fa-heading:before {
content: "\f1dc"; }
.fa-headphones:before {
content: "\f025"; }
.fa-headphones-alt:before {
content: "\f58f"; }
.fa-headset:before {
content: "\f590"; }
.fa-heart:before {
content: "\f004"; }
.fa-heart-broken:before {
content: "\f7a9"; }
.fa-heartbeat:before {
content: "\f21e"; }
.fa-helicopter:before {
content: "\f533"; }
.fa-highlighter:before {
content: "\f591"; }
.fa-hiking:before {
content: "\f6ec"; }
.fa-hippo:before {
content: "\f6ed"; }
.fa-hips:before {
content: "\f452"; }
.fa-hire-a-helper:before {
content: "\f3b0"; }
.fa-history:before {
content: "\f1da"; }
.fa-hockey-puck:before {
content: "\f453"; }
.fa-holly-berry:before {
content: "\f7aa"; }
.fa-home:before {
content: "\f015"; }
.fa-hooli:before {
content: "\f427"; }
.fa-hornbill:before {
content: "\f592"; }
.fa-horse:before {
content: "\f6f0"; }
.fa-horse-head:before {
content: "\f7ab"; }
.fa-hospital:before {
content: "\f0f8"; }
.fa-hospital-alt:before {
content: "\f47d"; }
.fa-hospital-symbol:before {
content: "\f47e"; }
.fa-hospital-user:before {
content: "\f80d"; }
.fa-hot-tub:before {
content: "\f593"; }
.fa-hotdog:before {
content: "\f80f"; }
.fa-hotel:before {
content: "\f594"; }
.fa-hotjar:before {
content: "\f3b1"; }
.fa-hourglass:before {
content: "\f254"; }
.fa-hourglass-end:before {
content: "\f253"; }
.fa-hourglass-half:before {
content: "\f252"; }
.fa-hourglass-start:before {
content: "\f251"; }
.fa-house-damage:before {
content: "\f6f1"; }
.fa-house-user:before {
content: "\e065"; }
.fa-houzz:before {
content: "\f27c"; }
.fa-hryvnia:before {
content: "\f6f2"; }
.fa-html5:before {
content: "\f13b"; }
.fa-hubspot:before {
content: "\f3b2"; }
.fa-i-cursor:before {
content: "\f246"; }
.fa-ice-cream:before {
content: "\f810"; }
.fa-icicles:before {
content: "\f7ad"; }
.fa-icons:before {
content: "\f86d"; }
.fa-id-badge:before {
content: "\f2c1"; }
.fa-id-card:before {
content: "\f2c2"; }
.fa-id-card-alt:before {
content: "\f47f"; }
.fa-ideal:before {
content: "\e013"; }
.fa-igloo:before {
content: "\f7ae"; }
.fa-image:before {
content: "\f03e"; }
.fa-images:before {
content: "\f302"; }
.fa-imdb:before {
content: "\f2d8"; }
.fa-inbox:before {
content: "\f01c"; }
.fa-indent:before {
content: "\f03c"; }
.fa-industry:before {
content: "\f275"; }
.fa-infinity:before {
content: "\f534"; }
.fa-info:before {
content: "\f129"; }
.fa-info-circle:before {
content: "\f05a"; }
.fa-instagram:before {
content: "\f16d"; }
.fa-instagram-square:before {
content: "\e055"; }
.fa-intercom:before {
content: "\f7af"; }
.fa-internet-explorer:before {
content: "\f26b"; }
.fa-invision:before {
content: "\f7b0"; }
.fa-ioxhost:before {
content: "\f208"; }
.fa-italic:before {
content: "\f033"; }
.fa-itch-io:before {
content: "\f83a"; }
.fa-itunes:before {
content: "\f3b4"; }
.fa-itunes-note:before {
content: "\f3b5"; }
.fa-java:before {
content: "\f4e4"; }
.fa-jedi:before {
content: "\f669"; }
.fa-jedi-order:before {
content: "\f50e"; }
.fa-jenkins:before {
content: "\f3b6"; }
.fa-jira:before {
content: "\f7b1"; }
.fa-joget:before {
content: "\f3b7"; }
.fa-joint:before {
content: "\f595"; }
.fa-joomla:before {
content: "\f1aa"; }
.fa-journal-whills:before {
content: "\f66a"; }
.fa-js:before {
content: "\f3b8"; }
.fa-js-square:before {
content: "\f3b9"; }
.fa-jsfiddle:before {
content: "\f1cc"; }
.fa-kaaba:before {
content: "\f66b"; }
.fa-kaggle:before {
content: "\f5fa"; }
.fa-key:before {
content: "\f084"; }
.fa-keybase:before {
content: "\f4f5"; }
.fa-keyboard:before {
content: "\f11c"; }
.fa-keycdn:before {
content: "\f3ba"; }
.fa-khanda:before {
content: "\f66d"; }
.fa-kickstarter:before {
content: "\f3bb"; }
.fa-kickstarter-k:before {
content: "\f3bc"; }
.fa-kiss:before {
content: "\f596"; }
.fa-kiss-beam:before {
content: "\f597"; }
.fa-kiss-wink-heart:before {
content: "\f598"; }
.fa-kiwi-bird:before {
content: "\f535"; }
.fa-korvue:before {
content: "\f42f"; }
.fa-landmark:before {
content: "\f66f"; }
.fa-language:before {
content: "\f1ab"; }
.fa-laptop:before {
content: "\f109"; }
.fa-laptop-code:before {
content: "\f5fc"; }
.fa-laptop-house:before {
content: "\e066"; }
.fa-laptop-medical:before {
content: "\f812"; }
.fa-laravel:before {
content: "\f3bd"; }
.fa-lastfm:before {
content: "\f202"; }
.fa-lastfm-square:before {
content: "\f203"; }
.fa-laugh:before {
content: "\f599"; }
.fa-laugh-beam:before {
content: "\f59a"; }
.fa-laugh-squint:before {
content: "\f59b"; }
.fa-laugh-wink:before {
content: "\f59c"; }
.fa-layer-group:before {
content: "\f5fd"; }
.fa-leaf:before {
content: "\f06c"; }
.fa-leanpub:before {
content: "\f212"; }
.fa-lemon:before {
content: "\f094"; }
.fa-less:before {
content: "\f41d"; }
.fa-less-than:before {
content: "\f536"; }
.fa-less-than-equal:before {
content: "\f537"; }
.fa-level-down-alt:before {
content: "\f3be"; }
.fa-level-up-alt:before {
content: "\f3bf"; }
.fa-life-ring:before {
content: "\f1cd"; }
.fa-lightbulb:before {
content: "\f0eb"; }
.fa-line:before {
content: "\f3c0"; }
.fa-link:before {
content: "\f0c1"; }
.fa-linkedin:before {
content: "\f08c"; }
.fa-linkedin-in:before {
content: "\f0e1"; }
.fa-linode:before {
content: "\f2b8"; }
.fa-linux:before {
content: "\f17c"; }
.fa-lira-sign:before {
content: "\f195"; }
.fa-list:before {
content: "\f03a"; }
.fa-list-alt:before {
content: "\f022"; }
.fa-list-ol:before {
content: "\f0cb"; }
.fa-list-ul:before {
content: "\f0ca"; }
.fa-location-arrow:before {
content: "\f124"; }
.fa-lock:before {
content: "\f023"; }
.fa-lock-open:before {
content: "\f3c1"; }
.fa-long-arrow-alt-down:before {
content: "\f309"; }
.fa-long-arrow-alt-left:before {
content: "\f30a"; }
.fa-long-arrow-alt-right:before {
content: "\f30b"; }
.fa-long-arrow-alt-up:before {
content: "\f30c"; }
.fa-low-vision:before {
content: "\f2a8"; }
.fa-luggage-cart:before {
content: "\f59d"; }
.fa-lungs:before {
content: "\f604"; }
.fa-lungs-virus:before {
content: "\e067"; }
.fa-lyft:before {
content: "\f3c3"; }
.fa-magento:before {
content: "\f3c4"; }
.fa-magic:before {
content: "\f0d0"; }
.fa-magnet:before {
content: "\f076"; }
.fa-mail-bulk:before {
content: "\f674"; }
.fa-mailchimp:before {
content: "\f59e"; }
.fa-male:before {
content: "\f183"; }
.fa-mandalorian:before {
content: "\f50f"; }
.fa-map:before {
content: "\f279"; }
.fa-map-marked:before {
content: "\f59f"; }
.fa-map-marked-alt:before {
content: "\f5a0"; }
.fa-map-marker:before {
content: "\f041"; }
.fa-map-marker-alt:before {
content: "\f3c5"; }
.fa-map-pin:before {
content: "\f276"; }
.fa-map-signs:before {
content: "\f277"; }
.fa-markdown:before {
content: "\f60f"; }
.fa-marker:before {
content: "\f5a1"; }
.fa-mars:before {
content: "\f222"; }
.fa-mars-double:before {
content: "\f227"; }
.fa-mars-stroke:before {
content: "\f229"; }
.fa-mars-stroke-h:before {
content: "\f22b"; }
.fa-mars-stroke-v:before {
content: "\f22a"; }
.fa-mask:before {
content: "\f6fa"; }
.fa-mastodon:before {
content: "\f4f6"; }
.fa-maxcdn:before {
content: "\f136"; }
.fa-mdb:before {
content: "\f8ca"; }
.fa-medal:before {
content: "\f5a2"; }
.fa-medapps:before {
content: "\f3c6"; }
.fa-medium:before {
content: "\f23a"; }
.fa-medium-m:before {
content: "\f3c7"; }
.fa-medkit:before {
content: "\f0fa"; }
.fa-medrt:before {
content: "\f3c8"; }
.fa-meetup:before {
content: "\f2e0"; }
.fa-megaport:before {
content: "\f5a3"; }
.fa-meh:before {
content: "\f11a"; }
.fa-meh-blank:before {
content: "\f5a4"; }
.fa-meh-rolling-eyes:before {
content: "\f5a5"; }
.fa-memory:before {
content: "\f538"; }
.fa-mendeley:before {
content: "\f7b3"; }
.fa-menorah:before {
content: "\f676"; }
.fa-mercury:before {
content: "\f223"; }
.fa-meteor:before {
content: "\f753"; }
.fa-microblog:before {
content: "\e01a"; }
.fa-microchip:before {
content: "\f2db"; }
.fa-microphone:before {
content: "\f130"; }
.fa-microphone-alt:before {
content: "\f3c9"; }
.fa-microphone-alt-slash:before {
content: "\f539"; }
.fa-microphone-slash:before {
content: "\f131"; }
.fa-microscope:before {
content: "\f610"; }
.fa-microsoft:before {
content: "\f3ca"; }
.fa-minus:before {
content: "\f068"; }
.fa-minus-circle:before {
content: "\f056"; }
.fa-minus-square:before {
content: "\f146"; }
.fa-mitten:before {
content: "\f7b5"; }
.fa-mix:before {
content: "\f3cb"; }
.fa-mixcloud:before {
content: "\f289"; }
.fa-mixer:before {
content: "\e056"; }
.fa-mizuni:before {
content: "\f3cc"; }
.fa-mobile:before {
content: "\f10b"; }
.fa-mobile-alt:before {
content: "\f3cd"; }
.fa-modx:before {
content: "\f285"; }
.fa-monero:before {
content: "\f3d0"; }
.fa-money-bill:before {
content: "\f0d6"; }
.fa-money-bill-alt:before {
content: "\f3d1"; }
.fa-money-bill-wave:before {
content: "\f53a"; }
.fa-money-bill-wave-alt:before {
content: "\f53b"; }
.fa-money-check:before {
content: "\f53c"; }
.fa-money-check-alt:before {
content: "\f53d"; }
.fa-monument:before {
content: "\f5a6"; }
.fa-moon:before {
content: "\f186"; }
.fa-mortar-pestle:before {
content: "\f5a7"; }
.fa-mosque:before {
content: "\f678"; }
.fa-motorcycle:before {
content: "\f21c"; }
.fa-mountain:before {
content: "\f6fc"; }
.fa-mouse:before {
content: "\f8cc"; }
.fa-mouse-pointer:before {
content: "\f245"; }
.fa-mug-hot:before {
content: "\f7b6"; }
.fa-music:before {
content: "\f001"; }
.fa-napster:before {
content: "\f3d2"; }
.fa-neos:before {
content: "\f612"; }
.fa-network-wired:before {
content: "\f6ff"; }
.fa-neuter:before {
content: "\f22c"; }
.fa-newspaper:before {
content: "\f1ea"; }
.fa-nimblr:before {
content: "\f5a8"; }
.fa-node:before {
content: "\f419"; }
.fa-node-js:before {
content: "\f3d3"; }
.fa-not-equal:before {
content: "\f53e"; }
.fa-notes-medical:before {
content: "\f481"; }
.fa-npm:before {
content: "\f3d4"; }
.fa-ns8:before {
content: "\f3d5"; }
.fa-nutritionix:before {
content: "\f3d6"; }
.fa-object-group:before {
content: "\f247"; }
.fa-object-ungroup:before {
content: "\f248"; }
.fa-odnoklassniki:before {
content: "\f263"; }
.fa-odnoklassniki-square:before {
content: "\f264"; }
.fa-oil-can:before {
content: "\f613"; }
.fa-old-republic:before {
content: "\f510"; }
.fa-om:before {
content: "\f679"; }
.fa-opencart:before {
content: "\f23d"; }
.fa-openid:before {
content: "\f19b"; }
.fa-opera:before {
content: "\f26a"; }
.fa-optin-monster:before {
content: "\f23c"; }
.fa-orcid:before {
content: "\f8d2"; }
.fa-osi:before {
content: "\f41a"; }
.fa-otter:before {
content: "\f700"; }
.fa-outdent:before {
content: "\f03b"; }
.fa-page4:before {
content: "\f3d7"; }
.fa-pagelines:before {
content: "\f18c"; }
.fa-pager:before {
content: "\f815"; }
.fa-paint-brush:before {
content: "\f1fc"; }
.fa-paint-roller:before {
content: "\f5aa"; }
.fa-palette:before {
content: "\f53f"; }
.fa-palfed:before {
content: "\f3d8"; }
.fa-pallet:before {
content: "\f482"; }
.fa-paper-plane:before {
content: "\f1d8"; }
.fa-paperclip:before {
content: "\f0c6"; }
.fa-parachute-box:before {
content: "\f4cd"; }
.fa-paragraph:before {
content: "\f1dd"; }
.fa-parking:before {
content: "\f540"; }
.fa-passport:before {
content: "\f5ab"; }
.fa-pastafarianism:before {
content: "\f67b"; }
.fa-paste:before {
content: "\f0ea"; }
.fa-patreon:before {
content: "\f3d9"; }
.fa-pause:before {
content: "\f04c"; }
.fa-pause-circle:before {
content: "\f28b"; }
.fa-paw:before {
content: "\f1b0"; }
.fa-paypal:before {
content: "\f1ed"; }
.fa-peace:before {
content: "\f67c"; }
.fa-pen:before {
content: "\f304"; }
.fa-pen-alt:before {
content: "\f305"; }
.fa-pen-fancy:before {
content: "\f5ac"; }
.fa-pen-nib:before {
content: "\f5ad"; }
.fa-pen-square:before {
content: "\f14b"; }
.fa-pencil-alt:before {
content: "\f303"; }
.fa-pencil-ruler:before {
content: "\f5ae"; }
.fa-penny-arcade:before {
content: "\f704"; }
.fa-people-arrows:before {
content: "\e068"; }
.fa-people-carry:before {
content: "\f4ce"; }
.fa-pepper-hot:before {
content: "\f816"; }
.fa-percent:before {
content: "\f295"; }
.fa-percentage:before {
content: "\f541"; }
.fa-periscope:before {
content: "\f3da"; }
.fa-person-booth:before {
content: "\f756"; }
.fa-phabricator:before {
content: "\f3db"; }
.fa-phoenix-framework:before {
content: "\f3dc"; }
.fa-phoenix-squadron:before {
content: "\f511"; }
.fa-phone:before {
content: "\f095"; }
.fa-phone-alt:before {
content: "\f879"; }
.fa-phone-slash:before {
content: "\f3dd"; }
.fa-phone-square:before {
content: "\f098"; }
.fa-phone-square-alt:before {
content: "\f87b"; }
.fa-phone-volume:before {
content: "\f2a0"; }
.fa-photo-video:before {
content: "\f87c"; }
.fa-php:before {
content: "\f457"; }
.fa-pied-piper:before {
content: "\f2ae"; }
.fa-pied-piper-alt:before {
content: "\f1a8"; }
.fa-pied-piper-hat:before {
content: "\f4e5"; }
.fa-pied-piper-pp:before {
content: "\f1a7"; }
.fa-pied-piper-square:before {
content: "\e01e"; }
.fa-piggy-bank:before {
content: "\f4d3"; }
.fa-pills:before {
content: "\f484"; }
.fa-pinterest:before {
content: "\f0d2"; }
.fa-pinterest-p:before {
content: "\f231"; }
.fa-pinterest-square:before {
content: "\f0d3"; }
.fa-pizza-slice:before {
content: "\f818"; }
.fa-place-of-worship:before {
content: "\f67f"; }
.fa-plane:before {
content: "\f072"; }
.fa-plane-arrival:before {
content: "\f5af"; }
.fa-plane-departure:before {
content: "\f5b0"; }
.fa-plane-slash:before {
content: "\e069"; }
.fa-play:before {
content: "\f04b"; }
.fa-play-circle:before {
content: "\f144"; }
.fa-playstation:before {
content: "\f3df"; }
.fa-plug:before {
content: "\f1e6"; }
.fa-plus:before {
content: "\f067"; }
.fa-plus-circle:before {
content: "\f055"; }
.fa-plus-square:before {
content: "\f0fe"; }
.fa-podcast:before {
content: "\f2ce"; }
.fa-poll:before {
content: "\f681"; }
.fa-poll-h:before {
content: "\f682"; }
.fa-poo:before {
content: "\f2fe"; }
.fa-poo-storm:before {
content: "\f75a"; }
.fa-poop:before {
content: "\f619"; }
.fa-portrait:before {
content: "\f3e0"; }
.fa-pound-sign:before {
content: "\f154"; }
.fa-power-off:before {
content: "\f011"; }
.fa-pray:before {
content: "\f683"; }
.fa-praying-hands:before {
content: "\f684"; }
.fa-prescription:before {
content: "\f5b1"; }
.fa-prescription-bottle:before {
content: "\f485"; }
.fa-prescription-bottle-alt:before {
content: "\f486"; }
.fa-print:before {
content: "\f02f"; }
.fa-procedures:before {
content: "\f487"; }
.fa-product-hunt:before {
content: "\f288"; }
.fa-project-diagram:before {
content: "\f542"; }
.fa-pump-medical:before {
content: "\e06a"; }
.fa-pump-soap:before {
content: "\e06b"; }
.fa-pushed:before {
content: "\f3e1"; }
.fa-puzzle-piece:before {
content: "\f12e"; }
.fa-python:before {
content: "\f3e2"; }
.fa-qq:before {
content: "\f1d6"; }
.fa-qrcode:before {
content: "\f029"; }
.fa-question:before {
content: "\f128"; }
.fa-question-circle:before {
content: "\f059"; }
.fa-quidditch:before {
content: "\f458"; }
.fa-quinscape:before {
content: "\f459"; }
.fa-quora:before {
content: "\f2c4"; }
.fa-quote-left:before {
content: "\f10d"; }
.fa-quote-right:before {
content: "\f10e"; }
.fa-quran:before {
content: "\f687"; }
.fa-r-project:before {
content: "\f4f7"; }
.fa-radiation:before {
content: "\f7b9"; }
.fa-radiation-alt:before {
content: "\f7ba"; }
.fa-rainbow:before {
content: "\f75b"; }
.fa-random:before {
content: "\f074"; }
.fa-raspberry-pi:before {
content: "\f7bb"; }
.fa-ravelry:before {
content: "\f2d9"; }
.fa-react:before {
content: "\f41b"; }
.fa-reacteurope:before {
content: "\f75d"; }
.fa-readme:before {
content: "\f4d5"; }
.fa-rebel:before {
content: "\f1d0"; }
.fa-receipt:before {
content: "\f543"; }
.fa-record-vinyl:before {
content: "\f8d9"; }
.fa-recycle:before {
content: "\f1b8"; }
.fa-red-river:before {
content: "\f3e3"; }
.fa-reddit:before {
content: "\f1a1"; }
.fa-reddit-alien:before {
content: "\f281"; }
.fa-reddit-square:before {
content: "\f1a2"; }
.fa-redhat:before {
content: "\f7bc"; }
.fa-redo:before {
content: "\f01e"; }
.fa-redo-alt:before {
content: "\f2f9"; }
.fa-registered:before {
content: "\f25d"; }
.fa-remove-format:before {
content: "\f87d"; }
.fa-renren:before {
content: "\f18b"; }
.fa-reply:before {
content: "\f3e5"; }
.fa-reply-all:before {
content: "\f122"; }
.fa-replyd:before {
content: "\f3e6"; }
.fa-republican:before {
content: "\f75e"; }
.fa-researchgate:before {
content: "\f4f8"; }
.fa-resolving:before {
content: "\f3e7"; }
.fa-restroom:before {
content: "\f7bd"; }
.fa-retweet:before {
content: "\f079"; }
.fa-rev:before {
content: "\f5b2"; }
.fa-ribbon:before {
content: "\f4d6"; }
.fa-ring:before {
content: "\f70b"; }
.fa-road:before {
content: "\f018"; }
.fa-robot:before {
content: "\f544"; }
.fa-rocket:before {
content: "\f135"; }
.fa-rocketchat:before {
content: "\f3e8"; }
.fa-rockrms:before {
content: "\f3e9"; }
.fa-route:before {
content: "\f4d7"; }
.fa-rss:before {
content: "\f09e"; }
.fa-rss-square:before {
content: "\f143"; }
.fa-ruble-sign:before {
content: "\f158"; }
.fa-ruler:before {
content: "\f545"; }
.fa-ruler-combined:before {
content: "\f546"; }
.fa-ruler-horizontal:before {
content: "\f547"; }
.fa-ruler-vertical:before {
content: "\f548"; }
.fa-running:before {
content: "\f70c"; }
.fa-rupee-sign:before {
content: "\f156"; }
.fa-rust:before {
content: "\e07a"; }
.fa-sad-cry:before {
content: "\f5b3"; }
.fa-sad-tear:before {
content: "\f5b4"; }
.fa-safari:before {
content: "\f267"; }
.fa-salesforce:before {
content: "\f83b"; }
.fa-sass:before {
content: "\f41e"; }
.fa-satellite:before {
content: "\f7bf"; }
.fa-satellite-dish:before {
content: "\f7c0"; }
.fa-save:before {
content: "\f0c7"; }
.fa-schlix:before {
content: "\f3ea"; }
.fa-school:before {
content: "\f549"; }
.fa-screwdriver:before {
content: "\f54a"; }
.fa-scribd:before {
content: "\f28a"; }
.fa-scroll:before {
content: "\f70e"; }
.fa-sd-card:before {
content: "\f7c2"; }
.fa-search:before {
content: "\f002"; }
.fa-search-dollar:before {
content: "\f688"; }
.fa-search-location:before {
content: "\f689"; }
.fa-search-minus:before {
content: "\f010"; }
.fa-search-plus:before {
content: "\f00e"; }
.fa-searchengin:before {
content: "\f3eb"; }
.fa-seedling:before {
content: "\f4d8"; }
.fa-sellcast:before {
content: "\f2da"; }
.fa-sellsy:before {
content: "\f213"; }
.fa-server:before {
content: "\f233"; }
.fa-servicestack:before {
content: "\f3ec"; }
.fa-shapes:before {
content: "\f61f"; }
.fa-share:before {
content: "\f064"; }
.fa-share-alt:before {
content: "\f1e0"; }
.fa-share-alt-square:before {
content: "\f1e1"; }
.fa-share-square:before {
content: "\f14d"; }
.fa-shekel-sign:before {
content: "\f20b"; }
.fa-shield-alt:before {
content: "\f3ed"; }
.fa-shield-virus:before {
content: "\e06c"; }
.fa-ship:before {
content: "\f21a"; }
.fa-shipping-fast:before {
content: "\f48b"; }
.fa-shirtsinbulk:before {
content: "\f214"; }
.fa-shoe-prints:before {
content: "\f54b"; }
.fa-shopify:before {
content: "\e057"; }
.fa-shopping-bag:before {
content: "\f290"; }
.fa-shopping-basket:before {
content: "\f291"; }
.fa-shopping-cart:before {
content: "\f07a"; }
.fa-shopware:before {
content: "\f5b5"; }
.fa-shower:before {
content: "\f2cc"; }
.fa-shuttle-van:before {
content: "\f5b6"; }
.fa-sign:before {
content: "\f4d9"; }
.fa-sign-in-alt:before {
content: "\f2f6"; }
.fa-sign-language:before {
content: "\f2a7"; }
.fa-sign-out-alt:before {
content: "\f2f5"; }
.fa-signal:before {
content: "\f012"; }
.fa-signature:before {
content: "\f5b7"; }
.fa-sim-card:before {
content: "\f7c4"; }
.fa-simplybuilt:before {
content: "\f215"; }
.fa-sink:before {
content: "\e06d"; }
.fa-sistrix:before {
content: "\f3ee"; }
.fa-sitemap:before {
content: "\f0e8"; }
.fa-sith:before {
content: "\f512"; }
.fa-skating:before {
content: "\f7c5"; }
.fa-sketch:before {
content: "\f7c6"; }
.fa-skiing:before {
content: "\f7c9"; }
.fa-skiing-nordic:before {
content: "\f7ca"; }
.fa-skull:before {
content: "\f54c"; }
.fa-skull-crossbones:before {
content: "\f714"; }
.fa-skyatlas:before {
content: "\f216"; }
.fa-skype:before {
content: "\f17e"; }
.fa-slack:before {
content: "\f198"; }
.fa-slack-hash:before {
content: "\f3ef"; }
.fa-slash:before {
content: "\f715"; }
.fa-sleigh:before {
content: "\f7cc"; }
.fa-sliders-h:before {
content: "\f1de"; }
.fa-slideshare:before {
content: "\f1e7"; }
.fa-smile:before {
content: "\f118"; }
.fa-smile-beam:before {
content: "\f5b8"; }
.fa-smile-wink:before {
content: "\f4da"; }
.fa-smog:before {
content: "\f75f"; }
.fa-smoking:before {
content: "\f48d"; }
.fa-smoking-ban:before {
content: "\f54d"; }
.fa-sms:before {
content: "\f7cd"; }
.fa-snapchat:before {
content: "\f2ab"; }
.fa-snapchat-ghost:before {
content: "\f2ac"; }
.fa-snapchat-square:before {
content: "\f2ad"; }
.fa-snowboarding:before {
content: "\f7ce"; }
.fa-snowflake:before {
content: "\f2dc"; }
.fa-snowman:before {
content: "\f7d0"; }
.fa-snowplow:before {
content: "\f7d2"; }
.fa-soap:before {
content: "\e06e"; }
.fa-socks:before {
content: "\f696"; }
.fa-solar-panel:before {
content: "\f5ba"; }
.fa-sort:before {
content: "\f0dc"; }
.fa-sort-alpha-down:before {
content: "\f15d"; }
.fa-sort-alpha-down-alt:before {
content: "\f881"; }
.fa-sort-alpha-up:before {
content: "\f15e"; }
.fa-sort-alpha-up-alt:before {
content: "\f882"; }
.fa-sort-amount-down:before {
content: "\f160"; }
.fa-sort-amount-down-alt:before {
content: "\f884"; }
.fa-sort-amount-up:before {
content: "\f161"; }
.fa-sort-amount-up-alt:before {
content: "\f885"; }
.fa-sort-down:before {
content: "\f0dd"; }
.fa-sort-numeric-down:before {
content: "\f162"; }
.fa-sort-numeric-down-alt:before {
content: "\f886"; }
.fa-sort-numeric-up:before {
content: "\f163"; }
.fa-sort-numeric-up-alt:before {
content: "\f887"; }
.fa-sort-up:before {
content: "\f0de"; }
.fa-soundcloud:before {
content: "\f1be"; }
.fa-sourcetree:before {
content: "\f7d3"; }
.fa-spa:before {
content: "\f5bb"; }
.fa-space-shuttle:before {
content: "\f197"; }
.fa-speakap:before {
content: "\f3f3"; }
.fa-speaker-deck:before {
content: "\f83c"; }
.fa-spell-check:before {
content: "\f891"; }
.fa-spider:before {
content: "\f717"; }
.fa-spinner:before {
content: "\f110"; }
.fa-splotch:before {
content: "\f5bc"; }
.fa-spotify:before {
content: "\f1bc"; }
.fa-spray-can:before {
content: "\f5bd"; }
.fa-square:before {
content: "\f0c8"; }
.fa-square-full:before {
content: "\f45c"; }
.fa-square-root-alt:before {
content: "\f698"; }
.fa-squarespace:before {
content: "\f5be"; }
.fa-stack-exchange:before {
content: "\f18d"; }
.fa-stack-overflow:before {
content: "\f16c"; }
.fa-stackpath:before {
content: "\f842"; }
.fa-stamp:before {
content: "\f5bf"; }
.fa-star:before {
content: "\f005"; }
.fa-star-and-crescent:before {
content: "\f699"; }
.fa-star-half:before {
content: "\f089"; }
.fa-star-half-alt:before {
content: "\f5c0"; }
.fa-star-of-david:before {
content: "\f69a"; }
.fa-star-of-life:before {
content: "\f621"; }
.fa-staylinked:before {
content: "\f3f5"; }
.fa-steam:before {
content: "\f1b6"; }
.fa-steam-square:before {
content: "\f1b7"; }
.fa-steam-symbol:before {
content: "\f3f6"; }
.fa-step-backward:before {
content: "\f048"; }
.fa-step-forward:before {
content: "\f051"; }
.fa-stethoscope:before {
content: "\f0f1"; }
.fa-sticker-mule:before {
content: "\f3f7"; }
.fa-sticky-note:before {
content: "\f249"; }
.fa-stop:before {
content: "\f04d"; }
.fa-stop-circle:before {
content: "\f28d"; }
.fa-stopwatch:before {
content: "\f2f2"; }
.fa-stopwatch-20:before {
content: "\e06f"; }
.fa-store:before {
content: "\f54e"; }
.fa-store-alt:before {
content: "\f54f"; }
.fa-store-alt-slash:before {
content: "\e070"; }
.fa-store-slash:before {
content: "\e071"; }
.fa-strava:before {
content: "\f428"; }
.fa-stream:before {
content: "\f550"; }
.fa-street-view:before {
content: "\f21d"; }
.fa-strikethrough:before {
content: "\f0cc"; }
.fa-stripe:before {
content: "\f429"; }
.fa-stripe-s:before {
content: "\f42a"; }
.fa-stroopwafel:before {
content: "\f551"; }
.fa-studiovinari:before {
content: "\f3f8"; }
.fa-stumbleupon:before {
content: "\f1a4"; }
.fa-stumbleupon-circle:before {
content: "\f1a3"; }
.fa-subscript:before {
content: "\f12c"; }
.fa-subway:before {
content: "\f239"; }
.fa-suitcase:before {
content: "\f0f2"; }
.fa-suitcase-rolling:before {
content: "\f5c1"; }
.fa-sun:before {
content: "\f185"; }
.fa-superpowers:before {
content: "\f2dd"; }
.fa-superscript:before {
content: "\f12b"; }
.fa-supple:before {
content: "\f3f9"; }
.fa-surprise:before {
content: "\f5c2"; }
.fa-suse:before {
content: "\f7d6"; }
.fa-swatchbook:before {
content: "\f5c3"; }
.fa-swift:before {
content: "\f8e1"; }
.fa-swimmer:before {
content: "\f5c4"; }
.fa-swimming-pool:before {
content: "\f5c5"; }
.fa-symfony:before {
content: "\f83d"; }
.fa-synagogue:before {
content: "\f69b"; }
.fa-sync:before {
content: "\f021"; }
.fa-sync-alt:before {
content: "\f2f1"; }
.fa-syringe:before {
content: "\f48e"; }
.fa-table:before {
content: "\f0ce"; }
.fa-table-tennis:before {
content: "\f45d"; }
.fa-tablet:before {
content: "\f10a"; }
.fa-tablet-alt:before {
content: "\f3fa"; }
.fa-tablets:before {
content: "\f490"; }
.fa-tachometer-alt:before {
content: "\f3fd"; }
.fa-tag:before {
content: "\f02b"; }
.fa-tags:before {
content: "\f02c"; }
.fa-tape:before {
content: "\f4db"; }
.fa-tasks:before {
content: "\f0ae"; }
.fa-taxi:before {
content: "\f1ba"; }
.fa-teamspeak:before {
content: "\f4f9"; }
.fa-teeth:before {
content: "\f62e"; }
.fa-teeth-open:before {
content: "\f62f"; }
.fa-telegram:before {
content: "\f2c6"; }
.fa-telegram-plane:before {
content: "\f3fe"; }
.fa-temperature-high:before {
content: "\f769"; }
.fa-temperature-low:before {
content: "\f76b"; }
.fa-tencent-weibo:before {
content: "\f1d5"; }
.fa-tenge:before {
content: "\f7d7"; }
.fa-terminal:before {
content: "\f120"; }
.fa-text-height:before {
content: "\f034"; }
.fa-text-width:before {
content: "\f035"; }
.fa-th:before {
content: "\f00a"; }
.fa-th-large:before {
content: "\f009"; }
.fa-th-list:before {
content: "\f00b"; }
.fa-the-red-yeti:before {
content: "\f69d"; }
.fa-theater-masks:before {
content: "\f630"; }
.fa-themeco:before {
content: "\f5c6"; }
.fa-themeisle:before {
content: "\f2b2"; }
.fa-thermometer:before {
content: "\f491"; }
.fa-thermometer-empty:before {
content: "\f2cb"; }
.fa-thermometer-full:before {
content: "\f2c7"; }
.fa-thermometer-half:before {
content: "\f2c9"; }
.fa-thermometer-quarter:before {
content: "\f2ca"; }
.fa-thermometer-three-quarters:before {
content: "\f2c8"; }
.fa-think-peaks:before {
content: "\f731"; }
.fa-thumbs-down:before {
content: "\f165"; }
.fa-thumbs-up:before {
content: "\f164"; }
.fa-thumbtack:before {
content: "\f08d"; }
.fa-ticket-alt:before {
content: "\f3ff"; }
.fa-tiktok:before {
content: "\e07b"; }
.fa-times:before {
content: "\f00d"; }
.fa-times-circle:before {
content: "\f057"; }
.fa-tint:before {
content: "\f043"; }
.fa-tint-slash:before {
content: "\f5c7"; }
.fa-tired:before {
content: "\f5c8"; }
.fa-toggle-off:before {
content: "\f204"; }
.fa-toggle-on:before {
content: "\f205"; }
.fa-toilet:before {
content: "\f7d8"; }
.fa-toilet-paper:before {
content: "\f71e"; }
.fa-toilet-paper-slash:before {
content: "\e072"; }
.fa-toolbox:before {
content: "\f552"; }
.fa-tools:before {
content: "\f7d9"; }
.fa-tooth:before {
content: "\f5c9"; }
.fa-torah:before {
content: "\f6a0"; }
.fa-torii-gate:before {
content: "\f6a1"; }
.fa-tractor:before {
content: "\f722"; }
.fa-trade-federation:before {
content: "\f513"; }
.fa-trademark:before {
content: "\f25c"; }
.fa-traffic-light:before {
content: "\f637"; }
.fa-trailer:before {
content: "\e041"; }
.fa-train:before {
content: "\f238"; }
.fa-tram:before {
content: "\f7da"; }
.fa-transgender:before {
content: "\f224"; }
.fa-transgender-alt:before {
content: "\f225"; }
.fa-trash:before {
content: "\f1f8"; }
.fa-trash-alt:before {
content: "\f2ed"; }
.fa-trash-restore:before {
content: "\f829"; }
.fa-trash-restore-alt:before {
content: "\f82a"; }
.fa-tree:before {
content: "\f1bb"; }
.fa-trello:before {
content: "\f181"; }
.fa-tripadvisor:before {
content: "\f262"; }
.fa-trophy:before {
content: "\f091"; }
.fa-truck:before {
content: "\f0d1"; }
.fa-truck-loading:before {
content: "\f4de"; }
.fa-truck-monster:before {
content: "\f63b"; }
.fa-truck-moving:before {
content: "\f4df"; }
.fa-truck-pickup:before {
content: "\f63c"; }
.fa-tshirt:before {
content: "\f553"; }
.fa-tty:before {
content: "\f1e4"; }
.fa-tumblr:before {
content: "\f173"; }
.fa-tumblr-square:before {
content: "\f174"; }
.fa-tv:before {
content: "\f26c"; }
.fa-twitch:before {
content: "\f1e8"; }
.fa-twitter:before {
content: "\f099"; }
.fa-twitter-square:before {
content: "\f081"; }
.fa-typo3:before {
content: "\f42b"; }
.fa-uber:before {
content: "\f402"; }
.fa-ubuntu:before {
content: "\f7df"; }
.fa-uikit:before {
content: "\f403"; }
.fa-umbraco:before {
content: "\f8e8"; }
.fa-umbrella:before {
content: "\f0e9"; }
.fa-umbrella-beach:before {
content: "\f5ca"; }
.fa-underline:before {
content: "\f0cd"; }
.fa-undo:before {
content: "\f0e2"; }
.fa-undo-alt:before {
content: "\f2ea"; }
.fa-uniregistry:before {
content: "\f404"; }
.fa-unity:before {
content: "\e049"; }
.fa-universal-access:before {
content: "\f29a"; }
.fa-university:before {
content: "\f19c"; }
.fa-unlink:before {
content: "\f127"; }
.fa-unlock:before {
content: "\f09c"; }
.fa-unlock-alt:before {
content: "\f13e"; }
.fa-unsplash:before {
content: "\e07c"; }
.fa-untappd:before {
content: "\f405"; }
.fa-upload:before {
content: "\f093"; }
.fa-ups:before {
content: "\f7e0"; }
.fa-usb:before {
content: "\f287"; }
.fa-user:before {
content: "\f007"; }
.fa-user-alt:before {
content: "\f406"; }
.fa-user-alt-slash:before {
content: "\f4fa"; }
.fa-user-astronaut:before {
content: "\f4fb"; }
.fa-user-check:before {
content: "\f4fc"; }
.fa-user-circle:before {
content: "\f2bd"; }
.fa-user-clock:before {
content: "\f4fd"; }
.fa-user-cog:before {
content: "\f4fe"; }
.fa-user-edit:before {
content: "\f4ff"; }
.fa-user-friends:before {
content: "\f500"; }
.fa-user-graduate:before {
content: "\f501"; }
.fa-user-injured:before {
content: "\f728"; }
.fa-user-lock:before {
content: "\f502"; }
.fa-user-md:before {
content: "\f0f0"; }
.fa-user-minus:before {
content: "\f503"; }
.fa-user-ninja:before {
content: "\f504"; }
.fa-user-nurse:before {
content: "\f82f"; }
.fa-user-plus:before {
content: "\f234"; }
.fa-user-secret:before {
content: "\f21b"; }
.fa-user-shield:before {
content: "\f505"; }
.fa-user-slash:before {
content: "\f506"; }
.fa-user-tag:before {
content: "\f507"; }
.fa-user-tie:before {
content: "\f508"; }
.fa-user-times:before {
content: "\f235"; }
.fa-users:before {
content: "\f0c0"; }
.fa-users-cog:before {
content: "\f509"; }
.fa-users-slash:before {
content: "\e073"; }
.fa-usps:before {
content: "\f7e1"; }
.fa-ussunnah:before {
content: "\f407"; }
.fa-utensil-spoon:before {
content: "\f2e5"; }
.fa-utensils:before {
content: "\f2e7"; }
.fa-vaadin:before {
content: "\f408"; }
.fa-vector-square:before {
content: "\f5cb"; }
.fa-venus:before {
content: "\f221"; }
.fa-venus-double:before {
content: "\f226"; }
.fa-venus-mars:before {
content: "\f228"; }
.fa-viacoin:before {
content: "\f237"; }
.fa-viadeo:before {
content: "\f2a9"; }
.fa-viadeo-square:before {
content: "\f2aa"; }
.fa-vial:before {
content: "\f492"; }
.fa-vials:before {
content: "\f493"; }
.fa-viber:before {
content: "\f409"; }
.fa-video:before {
content: "\f03d"; }
.fa-video-slash:before {
content: "\f4e2"; }
.fa-vihara:before {
content: "\f6a7"; }
.fa-vimeo:before {
content: "\f40a"; }
.fa-vimeo-square:before {
content: "\f194"; }
.fa-vimeo-v:before {
content: "\f27d"; }
.fa-vine:before {
content: "\f1ca"; }
.fa-virus:before {
content: "\e074"; }
.fa-virus-slash:before {
content: "\e075"; }
.fa-viruses:before {
content: "\e076"; }
.fa-vk:before {
content: "\f189"; }
.fa-vnv:before {
content: "\f40b"; }
.fa-voicemail:before {
content: "\f897"; }
.fa-volleyball-ball:before {
content: "\f45f"; }
.fa-volume-down:before {
content: "\f027"; }
.fa-volume-mute:before {
content: "\f6a9"; }
.fa-volume-off:before {
content: "\f026"; }
.fa-volume-up:before {
content: "\f028"; }
.fa-vote-yea:before {
content: "\f772"; }
.fa-vr-cardboard:before {
content: "\f729"; }
.fa-vuejs:before {
content: "\f41f"; }
.fa-walking:before {
content: "\f554"; }
.fa-wallet:before {
content: "\f555"; }
.fa-warehouse:before {
content: "\f494"; }
.fa-water:before {
content: "\f773"; }
.fa-wave-square:before {
content: "\f83e"; }
.fa-waze:before {
content: "\f83f"; }
.fa-weebly:before {
content: "\f5cc"; }
.fa-weibo:before {
content: "\f18a"; }
.fa-weight:before {
content: "\f496"; }
.fa-weight-hanging:before {
content: "\f5cd"; }
.fa-weixin:before {
content: "\f1d7"; }
.fa-whatsapp:before {
content: "\f232"; }
.fa-whatsapp-square:before {
content: "\f40c"; }
.fa-wheelchair:before {
content: "\f193"; }
.fa-whmcs:before {
content: "\f40d"; }
.fa-wifi:before {
content: "\f1eb"; }
.fa-wikipedia-w:before {
content: "\f266"; }
.fa-wind:before {
content: "\f72e"; }
.fa-window-close:before {
content: "\f410"; }
.fa-window-maximize:before {
content: "\f2d0"; }
.fa-window-minimize:before {
content: "\f2d1"; }
.fa-window-restore:before {
content: "\f2d2"; }
.fa-windows:before {
content: "\f17a"; }
.fa-wine-bottle:before {
content: "\f72f"; }
.fa-wine-glass:before {
content: "\f4e3"; }
.fa-wine-glass-alt:before {
content: "\f5ce"; }
.fa-wix:before {
content: "\f5cf"; }
.fa-wizards-of-the-coast:before {
content: "\f730"; }
.fa-wolf-pack-battalion:before {
content: "\f514"; }
.fa-won-sign:before {
content: "\f159"; }
.fa-wordpress:before {
content: "\f19a"; }
.fa-wordpress-simple:before {
content: "\f411"; }
.fa-wpbeginner:before {
content: "\f297"; }
.fa-wpexplorer:before {
content: "\f2de"; }
.fa-wpforms:before {
content: "\f298"; }
.fa-wpressr:before {
content: "\f3e4"; }
.fa-wrench:before {
content: "\f0ad"; }
.fa-x-ray:before {
content: "\f497"; }
.fa-xbox:before {
content: "\f412"; }
.fa-xing:before {
content: "\f168"; }
.fa-xing-square:before {
content: "\f169"; }
.fa-y-combinator:before {
content: "\f23b"; }
.fa-yahoo:before {
content: "\f19e"; }
.fa-yammer:before {
content: "\f840"; }
.fa-yandex:before {
content: "\f413"; }
.fa-yandex-international:before {
content: "\f414"; }
.fa-yarn:before {
content: "\f7e3"; }
.fa-yelp:before {
content: "\f1e9"; }
.fa-yen-sign:before {
content: "\f157"; }
.fa-yin-yang:before {
content: "\f6ad"; }
.fa-yoast:before {
content: "\f2b1"; }
.fa-youtube:before {
content: "\f167"; }
.fa-youtube-square:before {
content: "\f431"; }
.fa-zhihu:before {
content: "\f63f"; }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
/*!
* Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\e05e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\e065"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\e013"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\e066"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\e01a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\e068"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rust:before{content:"\e07a"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\e057"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sink:before{content:"\e06d"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\e070"}.fa-store-slash:before{content:"\e071"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tiktok:before{content:"\e07b"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\e074"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
\ No newline at end of file
/*!
* Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
svg:not(:root).svg-inline--fa {
overflow: visible; }
.svg-inline--fa {
display: inline-block;
font-size: inherit;
height: 1em;
overflow: visible;
vertical-align: -.125em; }
.svg-inline--fa.fa-lg {
vertical-align: -.225em; }
.svg-inline--fa.fa-w-1 {
width: 0.0625em; }
.svg-inline--fa.fa-w-2 {
width: 0.125em; }
.svg-inline--fa.fa-w-3 {
width: 0.1875em; }
.svg-inline--fa.fa-w-4 {
width: 0.25em; }
.svg-inline--fa.fa-w-5 {
width: 0.3125em; }
.svg-inline--fa.fa-w-6 {
width: 0.375em; }
.svg-inline--fa.fa-w-7 {
width: 0.4375em; }
.svg-inline--fa.fa-w-8 {
width: 0.5em; }
.svg-inline--fa.fa-w-9 {
width: 0.5625em; }
.svg-inline--fa.fa-w-10 {
width: 0.625em; }
.svg-inline--fa.fa-w-11 {
width: 0.6875em; }
.svg-inline--fa.fa-w-12 {
width: 0.75em; }
.svg-inline--fa.fa-w-13 {
width: 0.8125em; }
.svg-inline--fa.fa-w-14 {
width: 0.875em; }
.svg-inline--fa.fa-w-15 {
width: 0.9375em; }
.svg-inline--fa.fa-w-16 {
width: 1em; }
.svg-inline--fa.fa-w-17 {
width: 1.0625em; }
.svg-inline--fa.fa-w-18 {
width: 1.125em; }
.svg-inline--fa.fa-w-19 {
width: 1.1875em; }
.svg-inline--fa.fa-w-20 {
width: 1.25em; }
.svg-inline--fa.fa-pull-left {
margin-right: .3em;
width: auto; }
.svg-inline--fa.fa-pull-right {
margin-left: .3em;
width: auto; }
.svg-inline--fa.fa-border {
height: 1.5em; }
.svg-inline--fa.fa-li {
width: 2em; }
.svg-inline--fa.fa-fw {
width: 1.25em; }
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0; }
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -.125em;
width: 1em; }
.fa-layers svg.svg-inline--fa {
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-text, .fa-layers-counter {
display: inline-block;
position: absolute;
text-align: center; }
.fa-layers-text {
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-counter {
background-color: #ff253a;
border-radius: 1em;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: #fff;
height: 1.5em;
line-height: 1;
max-width: 5em;
min-width: 1.5em;
overflow: hidden;
padding: .25em;
right: 0;
text-overflow: ellipsis;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
.fa-layers-bottom-right {
bottom: 0;
right: 0;
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom right;
transform-origin: bottom right; }
.fa-layers-bottom-left {
bottom: 0;
left: 0;
right: auto;
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom left;
transform-origin: bottom left; }
.fa-layers-top-right {
right: 0;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
.fa-layers-top-left {
left: 0;
right: auto;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top left;
transform-origin: top left; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
.fa-1x {
font-size: 1em; }
.fa-2x {
font-size: 2em; }
.fa-3x {
font-size: 3em; }
.fa-4x {
font-size: 4em; }
.fa-5x {
font-size: 5em; }
.fa-6x {
font-size: 6em; }
.fa-7x {
font-size: 7em; }
.fa-8x {
font-size: 8em; }
.fa-9x {
font-size: 9em; }
.fa-10x {
font-size: 10em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
position: absolute;
text-align: center;
width: 2em;
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
.fa-pull-left {
float: left; }
.fa-pull-right {
float: right; }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-stack {
display: inline-block;
height: 2em;
position: relative;
width: 2.5em; }
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0; }
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em; }
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em; }
.fa-inverse {
color: #fff; }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black; }
.fad.fa-inverse {
color: #fff; }
/*!
* Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
.svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}
\ No newline at end of file
// Place all the styles related to the Top_pages controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/
.float-right {
position: absolute;
bottom: 0;
right: 5%;
}
.top-page{
text-align: center;
width: 100%;
height: 100%;
}
.total-job{
position: absolute;
color: white;
top: 40%;
right: 30%;
font-size: 60px;
}
.banner-ground{
position: relative;
width: 100%;
height: 50vh;
}
.top-banner {
background-image: url('banner.jpg');
width: 100%;
height: 100%;
background-repeat: no-repeat;
background-size: cover;
}
.salary{
color: green;
}
.job-details{
position: relative;
padding: 15px;
margin: 10px;
}
#button-follow{
position: absolute;
top: 20%;
right: 5%;
}
\ No newline at end of file
class TopPagesController < ApplicationController
def index
@total = Job.ids
end
def show
@job = Job.all.order(created_at: :desc)
@company = Company.all
@total_jobs = Job.ids
@jobs = Job.limit(5).order(created_at: :desc)
@companies = Company.all
@total_cities = CityJob.all.group('city_id').count
end
end
......@@ -14,4 +14,9 @@ class Job < ApplicationRecord
has_many :histories
has_many :users, through: :histories
def company_name
@company_name ||= company&.name
end
end
class TopPage < ApplicationRecord
end
<% @jobs.each do |job| %>
<% if job.cities.present? %>
<div class="border border-dark rounded">
<div class="job-details">
<div class="title"><strong><%= job.title %></strong></div>
<div><%= job.company_name %></div>
<div class="salary"><i class="fas fa-dollar-sign"></i>Lương: <%= job.salary %></div>
<div><i class="fas fa-map-marker"></i>
<% job.cities.each do |city| %>
<%= city.name %>
<% end %>
</div>
<button type="button" class="btn btn-primary" id="button-follow"><i class="fas fa-heart"></i> Follow</button>
</div>
</div>
<br>
<% end %>
<% end %>
\ No newline at end of file
......@@ -10,13 +10,10 @@
<%= stylesheet_link_tag 'bootstrap', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'bootstrap', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'https://kit.fontawesome.com/yourcode.js', media: 'all', 'data-turbolinks-track': 'reload' %>
</head>
<body>
<%= render "layouts/header" %>
<%= yield %>
<%= render "layouts/footer" %>
</body>
</html>
<% provide(:title, 'Venjob') %>
<div class="banner-ground">
<div class="top-banner">
<div class="total-job">total: <%= @total.count %> Jobs</div>
<div class="total-job">total: <%= @total_jobs.count %> Jobs</div>
</div>
</div>
<div><%#= render 'top_pages/show' %></div>
<div class="container">
<div class="job-list"><%= render 'layouts/show_jobs' %></div>
</div>
<% provide(:title, 'All jobs') %>
<% @job.each do |job| %>
<% if !job.cities.blank? %>
<ul>
<div class="title"><strong><%= job.title %></strong></div>
<div><%= (@company.find_by(id: job.company_id)).name %></div>
<div class="salary"><i class="fas fa-dollar-sign"></i>Lương: <%= job.salary %></div>
<div><i class="fas fa-map-marker"></i>
<% job.cities.each do |location| %>
<%= location.name %>
<% end %>
</div>
</ul>
<% end %>
<% end %>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
class Crawler
def initialize(logger)
@mylogger = logger
@NAME_DOMAIN = '192.168.1.156'
@USERNAME_FTP = 'training'
@PASSWORD_FTP = 'training'
end
def crawl_city
......@@ -34,11 +38,7 @@ class Crawler
company_info = Nokogiri::HTML(URI.open("https://careerbuilder.vn/viec-lam/tat-ca-viec-lam-trang-#{n}-vi.html"))
company_link = company_info.css('div.caption a.company-name').map{ |link| link['href'] }
company_link.each do |link|
if link.include?('\u2019')
link.gsub!('\u2019',"'")
end
next if link == 'javascript:void(0);'
if link != 'https://careerbuilder.vn/vi/nha-tuyen-dung/hr-vietnam\xE2\x80\x99s-ess-client.35A4EFBA.html'
company_page = Nokogiri::HTML(URI.open(URI.parse(URI.escape(link))))
if !(company_page.search('p.name').text).nil?
begin
......@@ -58,7 +58,6 @@ class Crawler
end
end
end
end
def crawl_job_relationships
(1..10).each do |n|
......@@ -67,7 +66,7 @@ class Crawler
get_link.each do |link|
page_job = Nokogiri::HTML(URI.open(URI.parse(URI.escape(link))))
get_row = page_job.search('div.bg-blue div.row')
if get_row != ""
if get_row.present?
begin
get_name_company = page_job.search('div.job-desc a.job-company-name').text.strip
company_table = Company.find_by(name: get_name_company)
......@@ -79,7 +78,7 @@ class Crawler
experience = get_row.at_xpath('//li[./strong/i[contains(@class, "fa fa-briefcase")]]/p').text.strip
level = get_row.at_xpath('//li[./strong/i[contains(@class, "mdi mdi-account")]]/p').text.strip
expiration_date = get_row.at_xpath('//li[./strong/i[contains(@class, "mdi mdi-calendar-check")]]/p').text.strip
if job_check.nil?
if job_check.blank?
job = Job.create!(title: title_job,
level: level,
salary: salary,
......@@ -90,11 +89,12 @@ class Crawler
end
find_job = Job.find_by(title: title_job, company_id: company_table.id)
puts find_job.title
unless find_job.nil?
if find_job.present?
location_rel = get_row.css('div.map p a').children.map { |location| location.text.strip }
location_rel.each do |loc|
city_table = City.find_by(name: loc)
if CityJob.find_by(job_id: find_job.id, city_id: city_table.id).nil?
next if city_table.nil?
unless CityJob.exists?(job_id: find_job.id, city_id: city_table.id).nil?
puts "Created City: #{find_job.id} - #{city_table.id}.#{loc}"
city_jobs = CityJob.create!(job_id: find_job.id, city_id: city_table.id)
end
......@@ -102,7 +102,8 @@ class Crawler
industry_rel = get_row.css('li a').children.map { |industry| industry.text.strip }
industry_rel.each do |ind|
industry_table = Industry.find_by(name: ind)
if IndustryJob.find_by(job_id: find_job.id, industry_id: industry_table.id).nil?
next if industry_table.nil?
unless IndustryJob.exists?(job_id: find_job.id, industry_id: industry_table.id)
puts "Created Industry: #{find_job.id} - #{industry_table.id}.#{ind}"
industry_jobs = IndustryJob.create!(job_id: find_job.id, industry_id: industry_table.id)
end
......@@ -117,7 +118,7 @@ class Crawler
end
def get_file_csv
Net::FTP.open('192.168.1.156', 'training', 'training') do |ftp|
Net::FTP.open(@NAME_DOMAIN, @USERNAME_FTP, @PASSWORD_FTP) do |ftp|
ftp.getbinaryfile('jobs.zip')
end
end
......
......@@ -5,12 +5,11 @@ class Crontab
def find_company
company_info = Nokogiri::HTML(URI.open("https://careerbuilder.vn/viec-lam/tat-ca-viec-lam-trang-1-vi.html"))
company_link = company_info.css('div.caption a.company-name').map { |link| link['href'] }
company_link.each do |link|
company_links = company_info.css('div.caption a.company-name').map { |link| link['href'] }
company_links.each do |link|
next if link == 'javascript:void(0);'
if link != 'https://careerbuilder.vn/vi/nha-tuyen-dung/hr-vietnam\xE2\x80\x99s-ess-client.35A4EFBA.html'
company_page = Nokogiri::HTML(URI.open(URI.parse(URI.escape(link))))
unless (company_page.search('p.name').text).nil?
if (company_page.search('p.name').text).present?
begin
name_company = company_page.search('p.name').text
address_company = company_page.css('div.content p').children[1].text
......@@ -27,14 +26,13 @@ class Crontab
end
end
end
end
def find_job
page_access = Nokogiri::HTML(URI.open("https://careerbuilder.vn/viec-lam/tat-ca-viec-lam-vi.html"))
get_link = page_access.css('a.job_link').map { |link| link['href'] }
get_link.each do |link|
page_job = Nokogiri::HTML(URI.open(URI.parse(URI.escape(link))))
get_row = page_job.search('div.bg-blue div.row')
if get_row != ""
if get_row.present?
begin
get_name_company = page_job.search('div.job-desc a.job-company-name').text.strip
company_table = Company.find_by(name: get_name_company)
......@@ -46,7 +44,7 @@ class Crontab
experience = get_row.at_xpath('//li[./strong/i[contains(@class, "fa fa-briefcase")]]/p').text.strip
level = get_row.at_xpath('//li[./strong/i[contains(@class, "mdi mdi-account")]]/p').text.strip
expiration_date = get_row.at_xpath('//li[./strong/i[contains(@class, "mdi mdi-calendar-check")]]/p').text.strip
if job_check.nil?
if job_check.blank?
job = Job.create!(title: title_job,
level: level,
salary: salary,
......@@ -57,11 +55,12 @@ class Crontab
end
find_job = Job.find_by(title: title_job, company_id: company_table.id)
puts find_job.title
unless find_job.nil?
if find_job.present?
location_rel = get_row.css('div.map p a').children.map { |location| location.text.strip }
location_rel.each do |loc|
city_table = City.find_by(name: loc)
if CityJob.find_by(job_id: find_job.id, city_id: city_table.id).nil?
next if city_table.nil?
unless CityJob.exists?(job_id: find_job.id, city_id: city_table.id).nil?
puts "Created City: #{find_job.id} - #{city_table.id}.#{loc}"
city_jobs = CityJob.create!(job_id: find_job.id, city_id: city_table.id)
end
......@@ -69,7 +68,8 @@ class Crontab
industry_rel = get_row.css('li a').children.map { |industry| industry.text.strip }
industry_rel.each do |ind|
industry_table = Industry.find_by(name: ind)
if IndustryJob.find_by(job_id: find_job.id, industry_id: industry_table.id).nil?
next if industry_table.nil?
unless IndustryJob.exists?(job_id: find_job.id, industry_id: industry_table.id)
puts "Created Industry: #{find_job.id} - #{industry_table.id}.#{ind}"
industry_jobs = IndustryJob.create!(job_id: find_job.id, industry_id: industry_table.id)
end
......
......@@ -24,6 +24,6 @@ namespace :import do
crontab.find_job
action.get_file_csv
action.extract_zip('./jobs.zip', 'lib/csv')
action.import_file_csv('lib/csv')
action.import_file_csv(Rails.root.join('lib', 'csv', 'jobs.csv'))
end
end
require 'test_helper'
class TopPagesControllerTest < ActionDispatch::IntegrationTest
# test "the truth" do
# assert true
# end
end
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
# This model initially had no columns defined. If you add columns to the
# model remove the '{}' from the fixture names and add the columns immediately
# below each fixture, per the syntax in the comments below
#
one: {}
# column: value
#
two: {}
# column: value
require 'test_helper'
class TopPageTest < ActiveSupport::TestCase
# test "the truth" do
# assert true
# end
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment