Repository: naturalcrit/homebrewery
Pull request #3405 (2024-04-12 18:21:22)

Emoji syntax
Following the recent addition of multiple icon fonts, this adds a proper emoji syntax `:emoji:` like Github. Supports any custom emojis we want; just have to list them out in a .js file. Also, an autocomplete dropdown will appear showing all matching icons!

I have done this so far with only dicefont, but it is easy to add the rest, if a little tedious. Manually added `fas-heart` and `fas-star` just to make sure it works. The list uses this format:

```
{
displayName: CSSClasses,
displayName: CSSClasses,
}
```

`displayName` is both what will appear in the autosuggest, and in the `:displayName:`
![image](https://github.com/naturalcrit/homebrewery/assets/5878534/28da1b3e-11c7-404d-b48b-ad6b42af00d3)

![image](https://github.com/naturalcrit/homebrewery/assets/5878534/de0c5b0c-abf8-4098-bc5b-149895edb9e3)

Again, taking inspiration from Obsidian, we might choose CamelCase for our display names, and choose names that are more likely searched, such as including "dice" in the name like **DfDiceD10-1** instead of **df-d10-1** for example.

![image](https://github.com/naturalcrit/homebrewery/assets/5878534/ead94e5d-c604-47c6-ae27-accc271101e3)



Gazook89: without altering the font, is there any method of using an alternate display name?  So that it could just be `:d10-2:`?
calculuschild: They can be whatever display name we want as long as there are no conflicts. However I think we should keep some identifier to differentiate between sets. For example if we add another set that happens to also have dice icons.
calculuschild: For reference, changing the DL syntax would just be this adjustment to the regex, adding two spaces:

![image](https://github.com/naturalcrit/homebrewery/assets/5878534/cf7f334f-43e6-451e-a910-13181e855b12)
calculuschild: I hacked together a modification to the DefinitionList extension to specifically check for emojis inside, and ignore them for the purposes of detecting a `::`. This seems to resolve the conflicts as far as I can see, but in V4 we should remove the hack and just update the DefinitionList regex to require spaces.
calculuschild: At this point, I just want to add fontAwesome to the autocomplete, and settle on a naming convention for the emojis (is camelCase ok? UpperCamelCase?

`:EiBarbarianRage:` vs `:ei-barbarian-rage:`, etc.
Gazook89: Just because I did the work and need a place to save it, here is a list of links for all of the default roll20 token marker icons on game-icons.net.

I was planning to put the image in the r20 column, but realized I didn't care that much.  Here is a screenshot of the batch of them-- the table shows them in order from left to right, skipping the first few boring ones.

<img width="256" alt="image" src="https://github.com/naturalcrit/homebrewery/assets/58999374/6d7ea819-64e8-43ef-a673-d1cf50d25d3b">

Note, that at least on my r20, that it seems r20 has a slightly modified color scheme from the default on game-icons.  game-icons lets you modify the svg's right on their site, or it oculd be done with another svg editor.  Maybe r20's icons change if you change the website dark mode or not.

| r20 | game-icons.net                                                                     |
| --- | ---------------------------------------------------------------------------------- |
|     | [gi_skull_crossed_bones](https://game-icons.net/1x1/lorc/skull-crossed-bones.html) |
|     | [gi_sleepy](https://game-icons.net/1x1/lorc/sleepy.html)                           |
|     | [gi_half_heart](https://game-icons.net/1x1/lorc/half-heart.html)                   |
|     | [gi_heat_haze](https://game-icons.net/1x1/lorc/heat-haze.html)                     |
|     | [gi_interdiction](https://game-icons.net/1x1/lorc/interdiction.html)               |
|     | [gi_snail](https://game-icons.net/1x1/lorc/snail.html)                             |
|     | [gi_lightning_helix](https://game-icons.net/1x1/lorc/lightning-helix.html)         |
|     | [gi_spanner](https://game-icons.net/1x1/lorc/spanner.html)                         |
|     | [gi_chained_heart](https://game-icons.net/1x1/lorc/chained-heart.html)             |
|     | [gi_chemical_bolt](https://game-icons.net/1x1/lorc/chemical-bolt.html)             |
|     | [gi_death_zone](https://game-icons.net/1x1/lorc/death-zone.html)                   |
|     | [gi_drink_me](https://game-icons.net/1x1/lorc/drink-me.html)                       |
|     | [gi_edge_crack](https://game-icons.net/1x1/lorc/edge-crack.html)                   |
|     | [gi_ninja_mask](https://game-icons.net/1x1/lorc/ninja-mask.html)                   |
|     | [gi_stopwatch](https://game-icons.net/1x1/lorc/stopwatch.html)                     |
|     | [gi_fishing_net](https://game-icons.net/1x1/lorc/fishing-net.html)                 |
|     | [gi_overdrive](https://game-icons.net/1x1/lorc/overdrive.html)                     |
|     | [gi_strong](https://game-icons.net/1x1/lorc/strong.html)                           |
|     | [gi_fist](https://game-icons.net/1x1/lorc/fist.html)                               |
|     | [gi_padlock](https://game-icons.net/1x1/lorc/padlock.html)                         |
|     | [gi_three_leaves](https://game-icons.net/1x1/lorc/three-leaves.html)               |
|     | [gi_fluffy_wing](https://game-icons.net/1x1/lorc/fluffy-wing.html)                 |
|     | [gi_pummeled](https://game-icons.net/1x1/lorc/pummeled.html)                       |
|     | [gi_tread](https://game-icons.net/1x1/lorc/tread.html)                             |
|     | [gi_arrowed](https://game-icons.net/1x1/lorc/arrowed.html)                         |
|     | [gi_aura](https://game-icons.net/1x1/lorc/aura.html)                               |
|     | [gi_back_pain](https://game-icons.net/1x1/lorc/back-pain.html)                     |
|     | [gi_black_flag](https://game-icons.net/1x1/lorc/black-flag.html)                   |
|     | [gi_bleeding_eye](https://game-icons.net/1x1/lorc/bleeding-eye.html)               |
|     | [gi_bolt_shield](https://game-icons.net/1x1/lorc/bolt-shield.html)                 |
|     | [gi_broken_heart](https://game-icons.net/1x1/lorc/broken-heart.html)               |
|     | [gi_cobweb](https://game-icons.net/1x1/lorc/cobweb.html)                           |
|     | [gi_broken_shield](https://game-icons.net/1x1/lorc/broken-shield.html)             |
|     | [gi_flying_flag](https://game-icons.net/1x1/lorc/flying-flag.html)                 |
|     | [gi_radioactive](https://game-icons.net/1x1/lorc/radioactive.html)                 |
|     | [gi_trophy](https://game-icons.net/1x1/lorc/trophy.html)                           |
|     | [gi_broken_skull](https://game-icons.net/1x1/lorc/broken-skull.html)               |
|     | [gi_frozen_orb](https://game-icons.net/1x1/lorc/frozen-orb.html)                   |
|     | [gi_rolling_bomb](https://game-icons.net/1x1/lorc/rolling-bomb.html)               |
|     | [gi_white_tower](https://game-icons.net/1x1/lorc/white-tower.html)                 |
|     | [gi_grab](https://game-icons.net/1x1/lorc/grab.html)                               |
|     | [gi_screaming](https://game-icons.net/1x1/lorc/screaming.html)                     |
|     | [gi_grenade](https://game-icons.net/1x1/lorc/grenade.html)                         |
|     | [gi_sentry_gun](https://game-icons.net/1x1/lorc/sentry-gun.html)                   |
|     | [gi_all_for_one](https://game-icons.net/1x1/lorc/all-for-one.html)                 |
|     | [gi_angel_outfit](https://game-icons.net/1x1/lorc/angel-outfit.html)               |
|     | [gi_archery_target](https://game-icons.net/1x1/lorc/archery-target.html)           |
Gazook89: I thought I saw a notification somewhere that you had another minor PR or something that took care of the directory renaming here but couldn't spot it right away...

It might be worth throwing each icon font into it's own filter, before this gets messy:
```
icon fonts/
┣ diceFont.js
┣ diceFont.less
┣ diceFont.woff2
┣ diceFont_license.md
┣ elderberryInn.js
┣ elderberryInn.less
┗ elderberryInn.woff2
```
5e-Cleric: ## Any idea as to what causes this highlight? this is correct syntax.

![image](https://github.com/naturalcrit/homebrewery/assets/91662974/433e8323-1540-4316-a425-5c703e4d09e6)

5e-Cleric: Can we allow inline css inject? `My icon :df-d20-20:{font-size:30px}
`
If only to avoid unnecessary spans
5e-Cleric: Unsure if we should prevent this, maybe check if this counts as css first.

![image](https://github.com/naturalcrit/homebrewery/assets/91662974/84943912-7b5c-4c15-bb31-8aec651148a1)

Gazook89: Regarding

> Unsure if we should prevent this, maybe check if this counts as css first

I don’t think that is to much bother to have the menu pop— as you continue typing it goes away and to me it’s just reminiscent of autocomplete in places like vscode
calculuschild: > Unsure if we should prevent this, maybe check if this counts as css first.
> 
> ![image](https://private-user-images.githubusercontent.com/91662974/324243844-84943912-7b5c-4c15-bb31-8aec651148a1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTQzNTc5MTYsIm5iZiI6MTcxNDM1NzYxNiwicGF0aCI6Ii85MTY2Mjk3NC8zMjQyNDM4NDQtODQ5NDM5MTItN2I1Yy00YzE1LWJiMzEtOGFlYzY1MTE0OGExLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDI5VDAyMjY1NlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQzOWI1OTc4ZGQ2OGU1YTFkNWFkOTE2MDFhZmNkMDZmY2MzY2UyMzQxYWFlOTAwMjA3NzIwNWUzN2IwNjhmMzQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.I1uIWWV1D1tY9OT3LctkXC9uUXRwt3iiZKhTHX83aAc)

Pushed an update that should fix this now. Still working on the other items.
Gazook89: @calculuschild did you want to add the tests from #3406?
calculuschild: > @calculuschild did you want to add the tests from #3406?

Yeah. I'm going to finish addressing the issues from 5e-Cleric first in case that changes how we want our tests to work, then I will copy those over.
Gazook89: With your last commit, in the deployment, it crashes to a white screen (in FF and Chrome):

```
bundle.js:35609 Uncaught ReferenceError: match is not defined
    at bundle.js:79715:17
    at arrayEach (bundle.js:55470:11)
    at Function.forEach (bundle.js:64350:14)
    at bundle.js:79546:11
    at runInOp (bundle.js:48993:18)
    at CodeMirror.operation (bundle.js:53701:37)
    at ReactClassComponent.highlightCustomMarkdown (bundle.js:79537:18)
    at ReactClassComponent.componentDidMount (bundle.js:79484:10)
    at ReactClassComponent.chainedFunction [as componentDidMount] (bundle.js:2727:11)
    at lk (bundle.js:35743:217)
```

calculuschild: > With your last commit, in the deployment, it crashes to a white screen (in FF and Chrome):

Missed committing one file. Should work now.
Gazook89: just going to drop a screencap of what this deployment looks like, in terms of highlight styling:

<img width="299" alt="image" src="https://github.com/naturalcrit/homebrewery/assets/58999374/6c78c4da-de3c-47b7-b23e-4448fb60a8ab">

------
## definition lists styling
One issue I see that could be improved is that it breaks definition list highlighting:
<img width="743" alt="image" src="https://github.com/naturalcrit/homebrewery/assets/58999374/0f73d8ed-cce7-4311-aa27-f333b4ca4d77">

The above should have a highlight on both DL's, but only displays it on the second.  The first one in fact does have the right classes for the `definition` and `::`, but not for the `term`, as shown in the HTML:

```html
<span role="presentation">
	<span class="cm-builtin emoji">:df-d8-1:</span>
	<span class=" dd-highlight dl-colon-highlight">::</span>
	<span class=" dd-highlight"> Consectetur non laborum aliquip. Deserunt in veniam do sunt id ullamco aliqua non pariatur et. Culpa eiusmod dolor aliqua est magna enim. Veniam aliqua esse et. Id deserunt eu fugiat eiusmod magna pariatur adipisicing incididunt tempor nulla cillum exercitation. Et veniam proident laborum incididunt elit adipisicing reprehenderit occaecat amet eu.</span>
</span>
```
I think we still would want the emoji highlight style to be shown over the term, but it shouldn't prevent the rest of the defintion list highlighting.

For reference, here is the DL just below it, with correct display:
```html
<span role="presentation">
	<span class=" dl-highlight dt-highlight">Officia </span>
	<span class=" dl-highlight dd-highlight dl-colon-highlight">::</span>
	<span class=" dl-highlight dd-highlight"> consequat labore cillum mollit consectetur labore anim occaecat eu. Ipsum id ea voluptate deserunt. Et officia consequat eu tempor. Nostrud ex sint adipisicing qui qui minim minim labore ad et.</span>
</span>
```

## header styling
Here is how it looks with an emoji in a header:
<img width="557" alt="image" src="https://github.com/naturalcrit/homebrewery/assets/58999374/29a4bb1d-f589-4117-82ea-25f05358763f">

It may be that headers are very important for navigating the Editor pane-- being able to find the titles of sections while scrolling through a large block of monospace text is crucial.  So I think that headers should have a visual consistency, which is foiled by having the emoji styled so differently.  I think I'll have general suggestions on the styling at the end of this PR, but at minimum for headers I think that the default header styling should win out.

------

Some thoughts on alternative styling:

1. Only use `background-color`, and somehow set it to be a variant of the existing text color. I haven't really thought about how to do this, but throwing it out there.  Something like this:
<img width="557" alt="image" src="https://github.com/naturalcrit/homebrewery/assets/58999374/b163dbd5-fe59-453e-838f-416cff41bbc9">

2. Maybe just toning it down a bit, throwing in some italics?
<img width="557" alt="image" src="https://github.com/naturalcrit/homebrewery/assets/58999374/c337f5e1-be55-4c40-9d2e-b0710bede097">

3. Do even more JS and do what other editors do:  turn the icon syntax directly into the rendered icon within the editor.  Treat it still as the full syntax text, though, so that when you hit delete button it reverts to the text, and when you copy the icon it pastes as the full text.

I think that this emoji syntax, and the definition list `::` are the only two syntax that use a background color for the highlight.  I don't think a long discussion about whether this is a good thing or bad thing is necessary, but mentioning it in case it inspires some thought.

Finally, how does this all work with various editor themes?  Who knows.


5e-Cleric: I'd actually prefer the pink highlight, more contrast makes it easier to see, but can we see this with dark themes?

5e-Cleric: If you don't mind, could you add in a comment here a little steps on how to add an icon font in the future to the emoji syntax? a simple "add this in that file and that in this other file" will suffice. And it'd make things easier in the long run.

Patch:
diff --git a/client/homebrew/editor/editor.jsx b/client/homebrew/editor/editor.jsx
index 7cc800b7..f5c1766a 100644
--- a/client/homebrew/editor/editor.jsx
+++ b/client/homebrew/editor/editor.jsx
@@ -5,6 +5,7 @@ const createClass = require('create-react-class');
 const _ = require('lodash');
 const cx = require('classnames');
 const dedent = require('dedent-tabs').default;
+const Markdown = require('../../../shared/naturalcrit/markdown.js');
 
 const CodeEditor = require('naturalcrit/codeEditor/codeEditor.jsx');
 const SnippetBar = require('./snippetbar/snippetbar.jsx');
@@ -219,6 +220,34 @@ const Editor = createClass({
 								endCh = match.index+match[0].length;
 							codeMirror.markText({ line: lineNumber, ch: 0 }, { line: lineNumber, ch: endCh }, { className: 'block' });
 						}
+
+						// Emojis
+						if(line.match(/:[^\s:]+:/g)) {
+							let startIndex = line.indexOf(':');
+							const emojiRegex = /:[^\s:]+:/gy;
+
+							while (startIndex >= 0) {
+								emojiRegex.lastIndex = startIndex;
+								let match = emojiRegex.exec(line);
+								if (match) {
+									let tokens = Markdown.marked.lexer(match[0]);
+									tokens = tokens[0].tokens.filter(t => t.type == 'emoji')
+									if (!tokens.length)
+										return;
+
+									let startPos = { line: lineNumber, ch: match.index };
+									let endPos   = { line: lineNumber, ch: match.index + match[0].length };
+
+									// Iterate over conflicting marks and clear them
+									var marks = codeMirror.findMarks(startPos, endPos);
+									marks.forEach(function(marker) {
+										marker.clear();
+									});
+									codeMirror.markText(startPos, endPos, { className: 'emoji' });
+								}
+								startIndex = line.indexOf(':', Math.max(startIndex + 1, emojiRegex.lastIndex));
+							}
+						}
 					}
 				});
 			});
diff --git a/client/homebrew/editor/editor.less b/client/homebrew/editor/editor.less
index d7950ead..f8dc249d 100644
--- a/client/homebrew/editor/editor.less
+++ b/client/homebrew/editor/editor.less
@@ -43,6 +43,16 @@
 			font-weight : bold;
 			color       : green;
 		}
+		.emoji:not(.cm-comment) {
+			margin-left    : 2px;
+			color          : #360034;
+			background     : #ffc8ff;
+			border-radius  : 6px;
+			font-weight    : bold;
+			padding-bottom : 1px;
+			outline-offset : -2px;
+			outline        : solid 2px #ff96fc;
+		}
 		.superscript:not(.cm-comment) {
 			font-weight    : bold;
 			color          : goldenrod;
diff --git a/package.json b/package.json
index e916467e..ced44815 100644
--- a/package.json
+++ b/package.json
@@ -32,6 +32,7 @@
     "test:mustache-syntax:block": "jest \".*(mustache-syntax).*\" -t '^Block:.*' --verbose --noStackTrace",
     "test:mustache-syntax:injection": "jest \".*(mustache-syntax).*\" -t '^Injection:.*' --verbose --noStackTrace",
     "test:definition-lists": "jest tests/markdown/definition-lists.test.js --verbose --noStackTrace",
+    "test:emojis": "jest tests/markdown/emojis.test.js --verbose --noStackTrace",
     "test:route": "jest tests/routes/static-pages.test.js --verbose",
     "phb": "node scripts/phb.js",
     "prod": "set NODE_ENV=production && npm run build",
diff --git a/scripts/project.json b/scripts/project.json
index 4c769660..c384ae1d 100644
--- a/scripts/project.json
+++ b/scripts/project.json
@@ -25,6 +25,7 @@
 		"codemirror/addon/edit/closetag.js",
 		"codemirror/addon/edit/trailingspace.js",
 		"codemirror/addon/selection/active-line.js",
+		"codemirror/addon/hint/show-hint.js",
 		"moment",
 		"superagent"
 	]
diff --git a/shared/naturalcrit/codeEditor/autocompleteEmoji.js b/shared/naturalcrit/codeEditor/autocompleteEmoji.js
new file mode 100644
index 00000000..73e08de5
--- /dev/null
+++ b/shared/naturalcrit/codeEditor/autocompleteEmoji.js
@@ -0,0 +1,82 @@
+const diceFont      = require('../../../themes/fonts/iconFonts/diceFont.js');
+const elderberryInn = require('../../../themes/fonts/iconFonts/elderberryInn.js');
+const fontAwesome   = require('../../../themes/fonts/iconFonts/fontAwesome.js');
+
+const emojis = {
+	...diceFont,
+	...elderberryInn,
+	...fontAwesome
+};
+
+const showAutocompleteEmoji = function(CodeMirror, editor) {
+	CodeMirror.commands.autocomplete = function(editor) {
+		editor.showHint({
+			completeSingle : false,
+			hint           : function(editor) {
+				const cursor = editor.getCursor();
+				const line = cursor.line;
+				const lineContent = editor.getLine(line);
+				const start = lineContent.lastIndexOf(':', cursor.ch - 1) + 1;
+				const end = cursor.ch;
+				const currentWord = lineContent.slice(start, end);
+
+
+				const list = Object.keys(emojis).filter(function(emoji) {
+					return emoji.toLowerCase().indexOf(currentWord.toLowerCase()) >= 0;
+				}).sort((a, b)=>{
+					const lowerA = a.replace(/\d+/g, function(match) {	// Temporarily convert any numbers in emoji string
+						return match.padStart(4, '0');										// to 4-digits, left-padded with 0's, to aid in
+					}).toLowerCase();																		// sorting numbers, i.e., "d6, d10, d20", not "d10, d20, d6"
+					const lowerB = b.replace(/\d+/g, function(match) {	// Also make lowercase for case-insensitive alpha sorting
+						return match.padStart(4, '0');
+					}).toLowerCase();
+
+					if(lowerA < lowerB)
+						return -1;
+					return 1;
+				}).map(function(emoji) {
+					return {
+						text   : `${emoji}:`,														// Text to output to editor when option is selected
+						render : function(element, self, data) {				// How to display the option in the dropdown
+							const div = document.createElement('div');
+							div.innerHTML = `<i class="emojiPreview ${emojis[emoji]}"></i> ${emoji}`;
+							element.appendChild(div);
+						}
+					};
+				});
+
+				return {
+					list : list.length ? list : [],
+					from : CodeMirror.Pos(line, start),
+					to   : CodeMirror.Pos(line, end)
+				};
+			}
+		});
+	};
+
+	editor.on('inputRead', function(instance, change) {
+		const cursor = editor.getCursor();
+		const line = editor.getLine(cursor.line);
+
+		// Get the text from the start of the line to the cursor
+		const textToCursor = line.slice(0, cursor.ch);
+
+		// Do not autosuggest emojis in curly span/div/injector properties
+		if(line.includes('{')) {
+			const curlyToCursor = textToCursor.slice(textToCursor.indexOf(`{`));
+			const curlySpanRegex = /{(?=((?:[:=](?:"[\w,\-()#%. ]*"|[\w\-()#%.]*)|[^"':={}\s]*)*))\1$/g;
+
+			if(curlySpanRegex.test(curlyToCursor))
+				return;
+		}
+
+		// Check if the text ends with ':xyz'
+		if(/:[^\s:]+$/.test(textToCursor)) {
+			CodeMirror.commands.autocomplete(editor);
+		}
+	});
+};
+
+module.exports = {
+	showAutocompleteEmoji
+};
\ No newline at end of file
diff --git a/shared/naturalcrit/codeEditor/codeEditor.jsx b/shared/naturalcrit/codeEditor/codeEditor.jsx
index a5232a42..b034d1ca 100644
--- a/shared/naturalcrit/codeEditor/codeEditor.jsx
+++ b/shared/naturalcrit/codeEditor/codeEditor.jsx
@@ -5,6 +5,7 @@ const createClass = require('create-react-class');
 const _ = require('lodash');
 const cx = require('classnames');
 const closeTag = require('./close-tag');
+const autoCompleteEmoji = require('./autocompleteEmoji');
 
 let CodeMirror;
 if(typeof window !== 'undefined'){
@@ -36,6 +37,8 @@ if(typeof window !== 'undefined'){
 	//XML code folding is a requirement of the auto-closing tag feature and is not enabled
 	require('codemirror/addon/fold/xml-fold.js');
 	require('codemirror/addon/edit/closetag.js');
+	//Autocompletion
+	require('codemirror/addon/hint/show-hint.js');
 
 	const foldCode = require('./fold-code');
 	foldCode.registerHomebreweryHelper(CodeMirror);
@@ -177,7 +180,10 @@ const CodeEditor = createClass({
 			// 	return el;
 			// }
 		});
+
+		// Add custom behaviors (auto-close curlies and auto-complete emojis)
 		closeTag.autoCloseCurlyBraces(CodeMirror, this.codeMirror);
+		autoCompleteEmoji.showAutocompleteEmoji(CodeMirror, this.codeMirror);
 
 		// Note: codeMirror passes a copy of itself in this callback. cm === this.codeMirror. Either one works.
 		this.codeMirror.on('change', (cm)=>{this.props.onChange(cm.getValue());});
@@ -436,7 +442,7 @@ const CodeEditor = createClass({
 
 	render : function(){
 		return <>
-			<link href={`../homebrew/cm-themes/${this.props.editorTheme}.css`} type="text/css" rel='stylesheet' />
+			<link href={`../homebrew/cm-themes/${this.props.editorTheme}.css`} type='text/css' rel='stylesheet' />
 			<div className='codeEditor' ref='editor' style={this.props.style}/>
 		</>;
 	}
diff --git a/shared/naturalcrit/codeEditor/codeEditor.less b/shared/naturalcrit/codeEditor/codeEditor.less
index 2ab08a5a..34916624 100644
--- a/shared/naturalcrit/codeEditor/codeEditor.less
+++ b/shared/naturalcrit/codeEditor/codeEditor.less
@@ -2,6 +2,11 @@
 @import (less) 'codemirror/addon/fold/foldgutter.css';
 @import (less) 'codemirror/addon/search/matchesonscrollbar.css';
 @import (less) 'codemirror/addon/dialog/dialog.css';
+@import (less) 'codemirror/addon/hint/show-hint.css';
+
+//Icon fonts included so they can appear in emoji autosuggest dropdown
+@import (less) './themes/fonts/iconFonts/diceFont.less';
+@import (less) './themes/fonts/iconFonts/elderberryInn.less';
 
 @keyframes sourceMoveAnimation {
 	50%  {background-color: red;   color: white;}
@@ -34,6 +39,7 @@
     }
   }
 
+
   //.cm-tab {
   //  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAQAAACOs/baAAAARUlEQVR4nGJgIAG8JkXxUAcCtDWemcGR1lY4MvgzCEKY7jSBjgxBDAG09UEQzAe0AMwMHrSOAwEGRtpaMIwAAAAA//8DAG4ID9EKs6YqAAAAAElFTkSuQmCC) no-repeat right;
   //}
@@ -44,3 +50,8 @@
   //  }
   //}
 }
+
+.emojiPreview {
+	font-size: 1.5em;
+	line-height: 1.2em;
+}
\ No newline at end of file
diff --git a/shared/naturalcrit/markdown.js b/shared/naturalcrit/markdown.js
index 1c44c57c..05518b69 100644
--- a/shared/naturalcrit/markdown.js
+++ b/shared/naturalcrit/markdown.js
@@ -4,6 +4,13 @@ const Marked = require('marked');
 const MarkedExtendedTables = require('marked-extended-tables');
 const { markedSmartypantsLite: MarkedSmartypantsLite } = require('marked-smartypants-lite');
 const { gfmHeadingId: MarkedGFMHeadingId } = require('marked-gfm-heading-id');
+const { markedEmoji: MarkedEmojis } = require('marked-emoji');
+
+//Icon fonts included so they can appear in emoji autosuggest dropdown
+const diceFont      = require('../../themes/fonts/iconFonts/diceFont.js');
+const elderberryInn = require('../../themes/fonts/iconFonts/elderberryInn.js');
+const fontAwesome   = require('../../themes/fonts/iconFonts/fontAwesome.js');
+
 const MathParser = require('expr-eval').Parser;
 const renderer = new Marked.Renderer();
 const tokenizer = new Marked.Tokenizer();
@@ -140,7 +147,7 @@ const mustacheSpans = {
 			`${tags.classes    ? ` class="${tags.classes}"` : ''}` +
 			`${tags.id         ? ` id="${tags.id}"`         : ''}` +
 			`${tags.styles     ? ` style="${tags.styles}"`  : ''}` +
-			`${tags.attributes ? ` ${Object.entries(tags.attributes).map(([key, value]) => `${key}="${value}"`).join(' ')}` : ''}` +
+			`${tags.attributes ? ` ${Object.entries(tags.attributes).map(([key, value])=>`${key}="${value}"`).join(' ')}` : ''}` +
 			`>${this.parser.parseInline(token.tokens)}</span>`; // parseInline to turn child tokens into HTML
 	}
 };
@@ -196,7 +203,7 @@ const mustacheDivs = {
 			`${tags.classes    ? ` class="${tags.classes}"` : ''}` +
 			`${tags.id         ? ` id="${tags.id}"`         : ''}` +
 			`${tags.styles     ? ` style="${tags.styles}"`  : ''}` +
-			`${tags.attributes ? ` ${Object.entries(tags.attributes).map(([key, value]) => `${key}="${value}"`).join(' ')}` : ''}` +
+			`${tags.attributes ? ` ${Object.entries(tags.attributes).map(([key, value])=>`${key}="${value}"`).join(' ')}` : ''}` +
 			`>${this.parser.parse(token.tokens)}</div>`; // parse to turn child tokens into HTML
 	}
 };
@@ -244,7 +251,7 @@ const mustacheInjectInline = {
 				`${tags.classes    ? ` class="${tags.classes}"` : ''}` +
 				`${tags.id         ? ` id="${tags.id}"`         : ''}` +
 				`${tags.styles     ? ` style="${tags.styles}"`  : ''}` +
-				`${!_.isEmpty(tags.attributes) ? ` ${Object.entries(tags.attributes).map(([key, value]) => `${key}="${value}"`).join(' ')}` : ''}` +
+				`${!_.isEmpty(tags.attributes) ? ` ${Object.entries(tags.attributes).map(([key, value])=>`${key}="${value}"`).join(' ')}` : ''}` +
 				`${openingTag[2]}`; // parse to turn child tokens into HTML
 		}
 		return text;
@@ -293,7 +300,7 @@ const mustacheInjectBlock = {
 					`${tags.classes    ? ` class="${tags.classes}"` : ''}` +
 					`${tags.id         ? ` id="${tags.id}"`         : ''}` +
 					`${tags.styles     ? ` style="${tags.styles}"`  : ''}` +
-					`${!_.isEmpty(tags.attributes) ? ` ${Object.entries(tags.attributes).map(([key, value]) => `${key}="${value}"`).join(' ')}` : ''}` +
+					`${!_.isEmpty(tags.attributes) ? ` ${Object.entries(tags.attributes).map(([key, value])=>`${key}="${value}"`).join(' ')}` : ''}` +
 					`${openingTag[2]}`; // parse to turn child tokens into HTML
 			}
 			return text;
@@ -347,10 +354,19 @@ const definitionListsSingleLine = {
 		let endIndex = 0;
 		const definitions = [];
 		while (match = regex.exec(src)) {
-			definitions.push({
-				dt : this.lexer.inlineTokens(match[1].trim()),
-				dd : this.lexer.inlineTokens(match[2].trim())
-			});
+			const originalLine = match[0];											// This line and below to handle conflict with emojis
+			let firstLine = originalLine;											// Remove in V4 when definitionListsInline updated to
+			this.lexer.inlineTokens(firstLine.trim())					// require spaces around `::`
+				.filter((t)=>t.type == 'emoji')
+				.map((emoji)=>firstLine = firstLine.replace(emoji.raw, 'x'.repeat(emoji.raw.length)));
+
+			const newMatch = /^([^\n]*?)::([^\n]*)(?:\n|$)/ym.exec(firstLine);
+			if(newMatch) {
+				definitions.push({
+					dt : this.lexer.inlineTokens(originalLine.slice(0, newMatch[1].length).trim()),
+					dd : this.lexer.inlineTokens(originalLine.slice(newMatch[1].length + 2).trim())
+				});
+			}																									// End of emoji hack.
 			endIndex = regex.lastIndex;
 		}
 		if(definitions.length) {
@@ -659,11 +675,29 @@ function MarkedVariables() {
 };
 //^=====--------------------< Variable Handling >-------------------=====^//
 
+// Emoji options
+// To add more icon fonts, need to do these things
+// 1) Add the font file as .woff2 to themes/fonts/iconFonts folder
+// 2) Create a .less file mapping CSS class names to the font character
+// 3) Create a .js file mapping Autosuggest names to CSS class names
+// 4) Import the .less file into shared/naturalcrit/codeEditor/codeEditor.less
+// 5) Import the .less file into themes/V3/blank.style.less
+// 6) Import the .js file to shared/naturalcrit/codeEditor/autocompleteEmoji.js and add to `emojis` object
+// 7) Import the .js file here to markdown.js, and add to `emojis` object below
+const MarkedEmojiOptions = {
+	emojis : {
+		...diceFont,
+		...elderberryInn,
+		...fontAwesome
+	},
+	renderer : (token)=>`<i class="${token.emoji}"></i>`
+};
+
 Marked.use(MarkedVariables());
 Marked.use({ extensions: [definitionListsMultiLine, definitionListsSingleLine, superSubScripts, mustacheSpans, mustacheDivs, mustacheInjectInline] });
 Marked.use(mustacheInjectBlock);
 Marked.use({ renderer: renderer, tokenizer: tokenizer, mangle: false });
-Marked.use(MarkedExtendedTables(), MarkedGFMHeadingId(), MarkedSmartypantsLite());
+Marked.use(MarkedExtendedTables(), MarkedGFMHeadingId(), MarkedSmartypantsLite(), MarkedEmojis(MarkedEmojiOptions));
 
 const nonWordAndColonTest = /[^\w:]/g;
 const cleanUrl = function (sanitize, base, href) {
@@ -733,9 +767,9 @@ const processStyleTags = (string)=>{
 	const id         = _.remove(tags, (tag)=>tag.startsWith('#')).map((tag)=>tag.slice(1))[0]        || null;
 	const classes    = _.remove(tags, (tag)=>(!tag.includes(':')) && (!tag.includes('='))).join(' ') || null;
 	const attributes = _.remove(tags, (tag)=>(tag.includes('='))).map((tag)=>tag.replace(/="?([^"]*)"?/g, '="$1"'))
-		?.filter(attr => !attr.startsWith('class="') && !attr.startsWith('style="') && !attr.startsWith('id="'))
-		.reduce((obj, attr) => {
-			let [key, value] = attr.split("=");
+		?.filter((attr)=>!attr.startsWith('class="') && !attr.startsWith('style="') && !attr.startsWith('id="'))
+		.reduce((obj, attr)=>{
+			let [key, value] = attr.split('=');
 			value = value.replace(/"/g, '');
 			obj[key] = value;
 			return obj;
@@ -750,14 +784,14 @@ const processStyleTags = (string)=>{
 	};
 };
 
-const extractHTMLStyleTags = (htmlString)=> {
+const extractHTMLStyleTags = (htmlString)=>{
 	const id         = htmlString.match(/id="([^"]*)"/)?.[1]    || null;
 	const classes    = htmlString.match(/class="([^"]*)"/)?.[1] || null;
 	const styles     = htmlString.match(/style="([^"]*)"/)?.[1] || null;
 	const attributes = htmlString.match(/[a-zA-Z]+="[^"]*"/g)
-		?.filter(attr => !attr.startsWith('class="') && !attr.startsWith('style="') && !attr.startsWith('id="'))
-		.reduce((obj, attr) => {
-			let [key, value] = attr.split("=");
+		?.filter((attr)=>!attr.startsWith('class="') && !attr.startsWith('style="') && !attr.startsWith('id="'))
+		.reduce((obj, attr)=>{
+			let [key, value] = attr.split('=');
 			value = value.replace(/"/g, '');
 			obj[key] = value;
 			return obj;
diff --git a/themes/V3/5ePHB/style.less b/themes/V3/5ePHB/style.less
index 57a39e50..f000fec1 100644
--- a/themes/V3/5ePHB/style.less
+++ b/themes/V3/5ePHB/style.less
@@ -1,6 +1,4 @@
 @import (less) './themes/assets/assets.less';
-@import (less) './themes/fonts/icon fonts/font-icons.less';
-@import (less) './themes/fonts/icon fonts/diceFont.less';
 
 :root {
 	//Colors
diff --git a/themes/V3/Blank/style.less b/themes/V3/Blank/style.less
index ec890563..31af3769 100644
--- a/themes/V3/Blank/style.less
+++ b/themes/V3/Blank/style.less
@@ -1,6 +1,7 @@
 @import (less) './themes/fonts/5e/fonts.less';
 @import (less) './themes/assets/assets.less';
-@import (less) './themes/fonts/icon fonts/diceFont.less';
+@import (less) './themes/fonts/iconFonts/elderberryInn.less';
+@import (less) './themes/fonts/iconFonts/diceFont.less';
 
 :root {
 	//Colors
diff --git a/themes/fonts/icon fonts/font-icons.less b/themes/fonts/icon fonts/font-icons.less
deleted file mode 100644
index be8efa73..00000000
--- a/themes/fonts/icon fonts/font-icons.less
+++ /dev/null
@@ -1,224 +0,0 @@
-/* Icon Font: Elderberry Inn */
-@font-face {
-	font-family : 'Elderberry-Inn';
-	font-style : normal;
-	font-weight : normal;
-	src : url('../../../fonts/icon fonts/Elderberry-Inn-Icons.woff2');
-} 
-
-.page { 
-	span.ei {
-		display                 : inline-block;
-		margin-right            : 3px;
-		font-family             : 'Elderberry-Inn';
-		line-height             : 1;
-		vertical-align          : baseline;
-		-moz-osx-font-smoothing : grayscale;
-		-webkit-font-smoothing  : antialiased;
-		text-rendering          : auto;
-
-		&.book::before { content : '\E900'; } 
-		&.screen::before { content : '\E901'; } 
-
-		/* Spell levels */ 
-		&.spell-0::before { content : '\E902'; } 
-		&.spell-1::before { content : '\E903'; } 
-		&.spell-2::before { content : '\E904'; } 
-		&.spell-3::before { content : '\E905'; } 
-		&.spell-4::before { content : '\E906'; } 
-		&.spell-5::before { content : '\E907'; } 
-		&.spell-6::before { content : '\E908'; } 
-		&.spell-7::before { content : '\E909'; } 
-		&.spell-8::before { content : '\E90A'; } 
-		&.spell-9::before { content : '\E90B'; }
-
-		/* Damage types */ 
-		&.acid::before { content : '\E90C'; } 
-		&.bludgeoning::before { content : '\E90D'; } 
-		&.cold::before { content : '\E90E'; } 
-		&.fire::before { content : '\E90F'; } 
-		&.force::before { content : '\E910'; } 
-		&.lightning::before { content : '\E911'; } 
-		&.necrotic::before { content : '\E912'; } 
-		&.piercing::before { content : '\E914'; } 
-		&.poison::before { content : '\E913'; } 
-		&.psychic::before { content : '\E915'; } 
-		&.radiant::before { content : '\E916'; } 
-		&.slashing::before { content : '\E917'; } 
-		&.thunder::before { content : '\E918'; }
-
-		/* DnD Conditions */ 
-		&.blinded::before { content : '\E919'; } 
-		&.charmed::before { content : '\E91A'; } 
-		&.deafened::before { content : '\E91B'; } 
-		&.exhaust-1::before { content : '\E91C'; } 
-		&.exhaust-2::before { content : '\E91D'; } 
-		&.exhaust-3::before { content : '\E91E'; } 
-		&.exhaust-4::before { content : '\E91F'; } 
-		&.exhaust-5::before { content : '\E920'; } 
-		&.exhaust-6::before { content : '\E921'; } 
-		&.frightened::before { content : '\E922'; } 
-		&.grappled::before { content : '\E923'; } 
-		&.incapacitated::before { content : '\E924'; } 
-		&.invisible::before { content : '\E926'; } 
-		&.paralyzed::before { content : '\E927'; } 
-		&.petrified::before { content : '\E928'; } 
-		&.poisoned::before { content : '\E929'; } 
-		&.prone::before { content : '\E92A'; } 
-		&.restrained::before { content : '\E92B'; } 
-		&.stunned::before { content : '\E92C'; } 
-		&.unconscious::before { content : '\E925'; }
-
-		/* Character Classes and Features */ 
-		&.barbarian-rage::before { content : '\E92D'; } 
-		&.barbarian-reckless-attack::before { content : '\E92E'; } 
-		&.bardic-inspiration::before { content : '\E92F'; } 
-		&.cleric-channel-divinity::before { content : '\E930'; } 
-		&.druid-wild-shape::before { content : '\E931'; } 
-		&.fighter-action-surge::before { content : '\E932'; } 
-		&.fighter-second-wind::before { content : '\E933'; } 
-		&.monk-flurry-blows::before { content : '\E934'; }
-		&.monk-patient-defense::before { content : '\E935'; } 
-		&.monk-step-of-the-wind::before { content : '\E936'; } 
-		&.monk-step-of-the-wind-2::before { content : '\E937'; } 
-		&.monk-step-of-the-wind-3::before { content : '\E938'; }
-		&.monk-stunning-strike::before { content : '\E939'; }
-		&.monk-stunning-strike-2::before { content : '\E939'; } 
-		&.paladin-divine-smite::before { content : '\E93B'; } 
-		&.paladin-lay-on-hands::before { content : '\E93C'; } 
-		&.barbarian-abilities::before { content : '\E93D'; } 
-		&.barbarian::before { content : '\E93E'; } 
-		&.bard-abilities::before { content : '\E93F'; } 
-		&.bard::before { content : '\E940'; } 
-		&.cleric-abilities::before { content : '\E941'; } 
-		&.cleric::before { content : '\E942'; } 
-		&.druid-abilities::before { content : '\E943'; } 
-		&.druid::before { content : '\E944'; } 
-		&.fighter-abilities::before { content : '\E945'; } 
-		&.fighter::before { content : '\E946'; } 
-		&.monk-abilities::before { content : '\E947'; } 
-		&.monk::before { content : '\E948'; } 
-		&.paladin-abilities::before { content : '\E949'; } 
-		&.paladin::before { content : '\E94A'; } 
-		&.ranger-abilities::before { content : '\E94B'; } 
-		&.ranger::before { content : '\E94C'; } 
-		&.rogue-abilities::before { content : '\E94D'; } 
-		&.rogue::before { content : '\E94E'; } 
-		&.sorcerer-abilities::before { content : '\E94F'; } 
-		&.sorcerer::before { content : '\E950'; } 
-		&.warlock-abilities::before { content : '\E951'; } 
-		&.warlock::before { content : '\E952'; } 
-		&.wizard-abilities::before { content : '\E953'; } 
-		&.wizard::before { content : '\E954'; }
-
-		/* Types of actions */ 
-		&.movement::before { content : '\E955'; } 
-		&.action::before { content : '\E956'; } 
-		&.bonus-action::before { content : '\E957'; } 
-		&.reaction::before { content : '\E958'; } 
-
-		/* SRD Spells */ 
-		&.acid-arrow::before { content : '\E959'; } 
-		&.action-1::before { content : '\E95A'; } 
-		&.alter-self::before { content : '\E95B'; } 
-		&.alter-self-2::before { content : '\E95C'; } 
-		&.animal-friendship::before { content : '\E95E'; } 
-		&.animate-dead::before { content : '\E95F'; } 
-		&.animate-objects::before { content : '\E960'; } 
-		&.animate-objects-2::before { content : '\E961'; } 
-		&.bane::before { content : '\E962'; } 
-		&.bless::before { content : '\E963'; }
-		&.blur::before { content : '\E964'; }
-		&.bonus::before { content : '\E965'; }
-		&.branding-smite::before { content : '\E966'; }
-		&.burning-hands::before { content : '\E967'; }
-		&.charm-person::before { content : '\E968'; }
-		&.chill-touch::before { content : '\E969'; }
-		&.cloudkill::before { content : '\E96A'; }
-		&.comprehend-languages::before { content : '\E96B'; }
-		&.cone-of-cold::before { content : '\E96C'; }
-		&.conjure-elemental::before { content : '\E96D'; }
-		&.conjure-minor-elemental::before { content : '\E96E'; }
-		&.control-water::before { content : '\E96F'; }
-		&.counterspell::before { content : '\E970'; }
-		&.cure-wounds::before { content : '\E971'; }
-		&.dancing-lights::before { content : '\E972'; }
-		&.darkness::before { content : '\E973'; }
-		&.detect-magic::before { content : '\E974'; }
-		&.disguise-self::before { content : '\E975'; }
-		&.disintegrate::before { content : '\E976'; }
-		&.dispel-evil-and-good::before { content : '\E977'; }
-		&.dispel-magic::before { content : '\E978'; }
-		&.dominate-monster::before { content : '\E979'; }
-		&.dominate-person::before { content : '\E97A'; }
-		&.eldritch-blast::before { content : '\E97B'; }
-		&.enlarge-reduce::before { content : '\E97C'; }
-		&.entangle::before { content : '\E97D'; }
-		&.faerie-fire::before { content : '\E97E'; }
-		&.faerie-fire2::before { content : '\E97F'; }
-		&.feather-fall::before { content : '\E980'; }
-		&.find-familiar::before { content : '\E981'; }
-		&.finger-of-death::before { content : '\E982'; } 
-		&.fireball::before { content : '\E983'; } 
-		&.floating-disk::before { content : '\E984'; } 
-		&.fly::before { content : '\E985'; } 
-		&.fog-cloud::before { content : '\E986'; } 
-		&.gaseous-form::before { content : '\E987'; } 
-		&.gaseous-form2::before { content : '\E988'; } 
-		&.gentle-repose::before { content : '\E989'; } 
-		&.gentle-repose2::before { content : '\E98A'; } 
-		&.globe-of-invulnerability::before { content : '\E98B'; } 
-		&.guiding-bolt::before { content : '\E98C'; } 
-		&.healing-word::before { content : '\E98D'; } 
-		&.heat-metal::before { content : '\E98E'; } 
-		&.hellish-rebuke::before { content : '\E98F'; } 
-		&.heroes-feast::before { content : '\E990'; } 
-		&.heroism::before { content : '\E991'; } 
-		&.hideous-laughter::before { content : '\E992'; } 
-		&.identify::before { content : '\E993'; } 
-		&.illusory-script::before { content : '\E994'; } 
-		&.inflict-wounds::before { content : '\E995'; } 
-		&.light::before { content : '\E996'; } 
-		&.longstrider::before { content : '\E997'; } 
-		&.mage-armor::before { content : '\E998'; } 
-		&.mage-hand::before { content : '\E999'; } 
-		&.magic-missile::before { content : '\E99A'; } 
-		&.mass-cure-wounds::before { content : '\E99B'; } 
-		&.mass-healing-word::before { content : '\E99C'; } 
-		&.Mending::before { content : '\E99D'; } 
-		&.message::before { content : '\E99E'; } 
-		&.Minor-illusion::before { content : '\E99F'; } 
-		&.movement1::before { content : '\E9A0'; } 
-		&.polymorph::before { content : '\E9A1'; } 
-		&.power-word-kill::before { content : '\E9A2'; } 
-		&.power-word-stun::before { content : '\E9A3'; } 
-		&.prayer-of-healing::before { content : '\E9A4'; } 
-		&.prestidigitation::before { content : '\E9A5'; } 
-		&.protection-from-evil-and-good::before { content : '\E9A6'; } 
-		&.raise-read::before { content : '\E9A7'; } 
-		&.raise-read2::before { content : '\E9A8'; } 
-		&.reaction1::before { content : '\E9A9'; } 
-		&.resurrection::before { content : '\E9AA'; } 
-		&.resurrection2::before { content : '\E9AB'; } 
-		&.revivify::before { content : '\E9AC'; } 
-		&.revivify2::before { content : '\E9AD'; } 
-		&.sacred-flame::before { content : '\E9AE'; } 
-		&.sanctuary::before { content : '\E9AF'; } 
-		&.scorching-ray::before { content : '\E9B0'; } 
-		&.sending::before { content : '\E9B1'; } 
-		&.shatter::before { content : '\E9B2'; } 
-		&.shield::before { content : '\E9B3'; } 
-		&.silent-image::before { content : '\E9B4'; } 
-		&.sleep::before { content : '\E9B5'; } 
-		&.speak-with-animals::before { content : '\E9B6'; } 
-		&.telekinesis::before { content : '\E9B7'; } 
-		&.true-strike::before { content : '\E9B8'; } 
-		&.vicious-mockery::before { content : '\E9B9'; } 
-		&.wall-of-fire::before { content : '\E9BA'; } 
-		&.wall-of-force::before { content : '\E9BB'; } 
-		&.wall-of-ice::before { content : '\E9BC'; } 
-		&.wall-of-stone::before { content : '\E9BD'; } 
-		&.wall-of-thorns::before { content : '\E9BE'; } 
-		&.wish::before { content : '\E9BF'; } 
-	}
-}
\ No newline at end of file
diff --git a/themes/fonts/iconFonts/diceFont.js b/themes/fonts/iconFonts/diceFont.js
new file mode 100644
index 00000000..6ac75ad2
--- /dev/null
+++ b/themes/fonts/iconFonts/diceFont.js
@@ -0,0 +1,96 @@
+const diceFont = {
+	'df_f'                    : 'df F',
+	'df_f_minus'              : 'df F-minus',
+	'df_f_plus'               : 'df F-plus',
+	'df_f_zero'               : 'df F-zero',
+	'df_d10'                  : 'df d10',
+	'df_d10_1'                : 'df d10-1',
+	'df_d10_10'               : 'df d10-10',
+	'df_d10_2'                : 'df d10-2',
+	'df_d10_3'                : 'df d10-3',
+	'df_d10_4'                : 'df d10-4',
+	'df_d10_5'                : 'df d10-5',
+	'df_d10_6'                : 'df d10-6',
+	'df_d10_7'                : 'df d10-7',
+	'df_d10_8'                : 'df d10-8',
+	'df_d10_9'                : 'df d10-9',
+	'df_d12'                  : 'df d12',
+	'df_d12_1'                : 'df d12-1',
+	'df_d12_10'               : 'df d12-10',
+	'df_d12_11'               : 'df d12-11',
+	'df_d12_12'               : 'df d12-12',
+	'df_d12_2'                : 'df d12-2',
+	'df_d12_3'                : 'df d12-3',
+	'df_d12_4'                : 'df d12-4',
+	'df_d12_5'                : 'df d12-5',
+	'df_d12_6'                : 'df d12-6',
+	'df_d12_7'                : 'df d12-7',
+	'df_d12_8'                : 'df d12-8',
+	'df_d12_9'                : 'df d12-9',
+	'df_d2'                   : 'df d2',
+	'df_d2_1'                 : 'df d2-1',
+	'df_d2_2'                 : 'df d2-2',
+	'df_d20'                  : 'df d20',
+	'df_d20_1'                : 'df d20-1',
+	'df_d20_10'               : 'df d20-10',
+	'df_d20_11'               : 'df d20-11',
+	'df_d20_12'               : 'df d20-12',
+	'df_d20_13'               : 'df d20-13',
+	'df_d20_14'               : 'df d20-14',
+	'df_d20_15'               : 'df d20-15',
+	'df_d20_16'               : 'df d20-16',
+	'df_d20_17'               : 'df d20-17',
+	'df_d20_18'               : 'df d20-18',
+	'df_d20_19'               : 'df d20-19',
+	'df_d20_2'                : 'df d20-2',
+	'df_d20_20'               : 'df d20-20',
+	'df_d20_3'                : 'df d20-3',
+	'df_d20_4'                : 'df d20-4',
+	'df_d20_5'                : 'df d20-5',
+	'df_d20_6'                : 'df d20-6',
+	'df_d20_7'                : 'df d20-7',
+	'df_d20_8'                : 'df d20-8',
+	'df_d20_9'                : 'df d20-9',
+	'df_d4'                   : 'df d4',
+	'df_d4_1'                 : 'df d4-1',
+	'df_d4_2'                 : 'df d4-2',
+	'df_d4_3'                 : 'df d4-3',
+	'df_d4_4'                 : 'df d4-4',
+	'df_d6'                   : 'df d6',
+	'df_d6_1'                 : 'df d6-1',
+	'df_d6_2'                 : 'df d6-2',
+	'df_d6_3'                 : 'df d6-3',
+	'df_d6_4'                 : 'df d6-4',
+	'df_d6_5'                 : 'df d6-5',
+	'df_d6_6'                 : 'df d6-6',
+	'df_d8'                   : 'df d8',
+	'df_d8_1'                 : 'df d8-1',
+	'df_d8_2'                 : 'df d8-2',
+	'df_d8_3'                 : 'df d8-3',
+	'df_d8_4'                 : 'df d8-4',
+	'df_d8_5'                 : 'df d8-5',
+	'df_d8_6'                 : 'df d8-6',
+	'df_d8_7'                 : 'df d8-7',
+	'df_d8_8'                 : 'df d8-8',
+	'df_dot_d6'               : 'df dot-d6',
+	'df_dot_d6_1'             : 'df dot-d6-1',
+	'df_dot_d6_2'             : 'df dot-d6-2',
+	'df_dot_d6_3'             : 'df dot-d6-3',
+	'df_dot_d6_4'             : 'df dot-d6-4',
+	'df_dot_d6_5'             : 'df dot-d6-5',
+	'df_dot_d6_6'             : 'df dot-d6-6',
+	'df_small_dot_d6_1'       : 'df small-dot-d6-1',
+	'df_small_dot_d6_2'       : 'df small-dot-d6-2',
+	'df_small_dot_d6_3'       : 'df small-dot-d6-3',
+	'df_small_dot_d6_4'       : 'df small-dot-d6-4',
+	'df_small_dot_d6_5'       : 'df small-dot-d6-5',
+	'df_small_dot_d6_6'       : 'df small-dot-d6-6',
+	'df_solid_small_dot_d6_1' : 'df solid-small-dot-d6-1',
+	'df_solid_small_dot_d6_2' : 'df solid-small-dot-d6-2',
+	'df_solid_small_dot_d6_3' : 'df solid-small-dot-d6-3',
+	'df_solid_small_dot_d6_4' : 'df solid-small-dot-d6-4',
+	'df_solid_small_dot_d6_5' : 'df solid-small-dot-d6-5',
+	'df_solid_small_dot_d6_6' : 'df solid-small-dot-d6-6'
+};
+
+module.exports = diceFont;
\ No newline at end of file
diff --git a/themes/fonts/icon fonts/diceFont.less b/themes/fonts/iconFonts/diceFont.less
similarity index 98%
rename from themes/fonts/icon fonts/diceFont.less
rename to themes/fonts/iconFonts/diceFont.less
index 069f6f76..6fe226a0 100644
--- a/themes/fonts/icon fonts/diceFont.less
+++ b/themes/fonts/iconFonts/diceFont.less
@@ -3,7 +3,7 @@
 	font-family : 'DiceFont';
 	font-style : normal;
 	font-weight : normal;
-	src : url('../../../fonts/icon fonts/diceFont.woff2');
+	src : url('../../../fonts/iconFonts/diceFont.woff2');
 } 
 
 .df {
diff --git a/themes/fonts/icon fonts/diceFont.woff2 b/themes/fonts/iconFonts/diceFont.woff2
similarity index 100%
rename from themes/fonts/icon fonts/diceFont.woff2
rename to themes/fonts/iconFonts/diceFont.woff2
diff --git a/themes/fonts/icon fonts/diceFont_license.md b/themes/fonts/iconFonts/diceFont_license.md
similarity index 100%
rename from themes/fonts/icon fonts/diceFont_license.md
rename to themes/fonts/iconFonts/diceFont_license.md
diff --git a/themes/fonts/iconFonts/elderberryInn.js b/themes/fonts/iconFonts/elderberryInn.js
new file mode 100644
index 00000000..d23bca08
--- /dev/null
+++ b/themes/fonts/iconFonts/elderberryInn.js
@@ -0,0 +1,208 @@
+const elderberryInn = {
+	'ei_book'   : 'ei book',
+	'ei_screen' : 'ei screen',
+
+	/* Spell levels */
+	'ei_spell_0' : 'ei spell-0',
+	'ei_spell_1' : 'ei spell-1',
+	'ei_spell_2' : 'ei spell-2',
+	'ei_spell_3' : 'ei spell-3',
+	'ei_spell_4' : 'ei spell-4',
+	'ei_spell_5' : 'ei spell-5',
+	'ei_spell_6' : 'ei spell-6',
+	'ei_spell_7' : 'ei spell-7',
+	'ei_spell_8' : 'ei spell-8',
+	'ei_spell_9' : 'ei spell-9',
+
+	/* Damage types */
+	'ei_acid'        : 'ei acid',
+	'ei_bludgeoning' : 'ei bludgeoning',
+	'ei_cold'        : 'ei cold',
+	'ei_fire'        : 'ei fire',
+	'ei_force'       : 'ei force',
+	'ei_lightning'   : 'ei lightning',
+	'ei_necrotic'    : 'ei necrotic',
+	'ei_piercing'    : 'ei piercing',
+	'ei_poison'      : 'ei poison',
+	'ei_psychic'     : 'ei psychic',
+	'ei_radiant'     : 'ei radiant',
+	'ei_slashing'    : 'ei slashing',
+	'ei_thunder'     : 'ei thunder',
+
+	/* DnD Donditions */
+	'ei_blinded'       : 'ei blinded',
+	'ei_charmed'       : 'ei charmed',
+	'ei_deafened'      : 'ei deafened',
+	'ei_exhaust1'      : 'ei exhaust-1',
+	'ei_blinded'       : 'ei blinded',
+	'ei_exhaust2'      : 'ei exhaust-2',
+	'ei_exhaust3'      : 'ei exhaust-3',
+	'ei_exhaust4'      : 'ei exhaust-4',
+	'ei_exhaust5'      : 'ei exhaust-5',
+	'ei_exhaust6'      : 'ei exhaust-6',
+	'ei_frightened'    : 'ei frightened',
+	'ei_grappled'      : 'ei grappled',
+	'ei_incapacitated' : 'ei incapacitated',
+	'ei_invisible'     : 'ei invisible',
+	'ei_paralyzed'     : 'ei paralyzed',
+	'ei_petrified'     : 'ei petrified',
+	'ei_poisoned'      : 'ei poisoned',
+	'ei_prone'         : 'ei prone',
+	'ei_restrained'    : 'ei restrained',
+	'ei_stunned'       : 'ei stunned',
+	'ei_unconscious'   : 'ei unconscious',
+
+	/* Character Classes and Features */
+	'ei_barbarian_rage'            : 'ei barbarian-rage',
+	'ei_barbarian_reckless_attack' : 'ei barbarian-reckless-attack',
+	'ei_bardic_inspiration'        : 'ei bardic-inspiration',
+	'ei_cleric_channel_divinity'   : 'ei cleric-channel-divinity',
+	'ei_druid_wild_shape'          : 'ei druid-wild-shape',
+	'ei_fighter_action_surge'      : 'ei fighter-action-surge',
+	'ei_fighter_second_wind'       : 'ei fighter-second-wind',
+	'ei_monk_flurry_blows'         : 'ei monk-flurry-blows',
+	'ei_monk_patient_defense'      : 'ei monk-patient-defense',
+	'ei_monk_step_of_the_wind'     : 'ei monk-step-of-the-wind',
+	'ei_monk_step_of_the_wind2'    : 'ei monk-step-of-the-wind-2',
+	'ei_monk_step_of_the_wind3'    : 'ei monk-step-of-the-wind-3',
+	'ei_monk_stunning_strike'      : 'ei monk-stunning-strike',
+	'ei_monk_stunning_strike2'     : 'ei monk-stunning-strike-2',
+	'ei_paladin_divine_smite'      : 'ei paladin-divine-smite',
+	'ei_paladin_lay_on_hands'      : 'ei paladin-lay-on-hands',
+	'ei_barbarian_abilities'       : 'ei barbarian-abilities',
+	'ei_barbarian'                 : 'ei barbarian',
+	'ei_bard_abilities'            : 'ei bard-abilities',
+	'ei_bard'                      : 'ei bard',
+	'ei_cleric_abilities'          : 'ei cleric-abilities',
+	'ei_cleric'                    : 'ei cleric',
+	'ei_druid_abilities'           : 'ei druid-abilities',
+	'ei_druid'                     : 'ei druid',
+	'ei_fighter_abilities'         : 'ei fighter-abilities',
+	'ei_fighter'                   : 'ei fighter',
+	'ei_monk_abilities'            : 'ei monk-abilities',
+	'ei_monk'                      : 'ei monk',
+	'ei_paladin_abilities'         : 'ei paladin-abilities',
+	'ei_paladin'                   : 'ei paladin',
+	'ei_ranger_abilities'          : 'ei ranger-abilities',
+	'ei_ranger'                    : 'ei ranger',
+	'ei_rogue_abilities'           : 'ei rogue-abilities',
+	'ei_rogue'                     : 'ei rogue',
+	'ei_sorcerer_abilities'        : 'ei sorcerer-abilities',
+	'ei_sorcerer'                  : 'ei sorcerer',
+	'ei_warlock_abilities'         : 'ei warlock-abilities',
+	'ei_warlock'                   : 'ei warlock',
+	'ei_wizard_abilities'          : 'ei wizard-abilities',
+	'ei_wizard'                    : 'ei wizard',
+
+	/* Types of actions */
+	'ei_movement'     : 'ei movement',
+	'ei_action'       : 'ei action',
+	'ei_bonus_action' : 'ei bonus-action',
+	'ei_reaction'     : 'ei reaction',
+
+	/* SRD Spells */
+	'ei_acid_arrow'                    : 'ei acid-arrow',
+	'ei_action1'                       : 'ei action-1',
+	'ei_alter_self'                    : 'ei alter-self',
+	'ei_alter_self2'                   : 'ei alter-self-2',
+	'ei_animal_friendship'             : 'ei animal-friendship',
+	'ei_animate_dead'                  : 'ei animate-dead',
+	'ei_animate_objects'               : 'ei animate-objects',
+	'ei_animate_objects2'              : 'ei animate-objects-2',
+	'ei_bane'                          : 'ei bane',
+	'ei_bless'                         : 'ei bless',
+	'ei_blur'                          : 'ei blur',
+	'ei_bonus'                         : 'ei bonus',
+	'ei_branding_smite'                : 'ei branding-smite',
+	'ei_burning_hands'                 : 'ei burning-hands',
+	'ei_charm_person'                  : 'ei charm-person',
+	'ei_chill_touch'                   : 'ei chill-touch',
+	'ei_cloudkill'                     : 'ei cloudkill',
+	'ei_comprehend_languages'          : 'ei comprehend-languages',
+	'ei_cone_of_cold'                  : 'ei cone-of-cold',
+	'ei_conjure_elemental'             : 'ei conjure-elemental',
+	'ei_conjure_minor_elemental'       : 'ei conjure-minor-elemental',
+	'ei_control_water'                 : 'ei control-water',
+	'ei_counterspell'                  : 'ei counterspell',
+	'ei_cure_wounds'                   : 'ei cure-wounds',
+	'ei_dancing_lights'                : 'ei dancing-lights',
+	'ei_darkness'                      : 'ei darkness',
+	'ei_detect_magic'                  : 'ei detect-magic',
+	'ei_disguise_self'                 : 'ei disguise-self',
+	'ei_disintegrate'                  : 'ei disintegrate',
+	'ei_dispel_evil_and_good'          : 'ei dispel-evil-and-good',
+	'ei_dispel_magic'                  : 'ei dispel-magic',
+	'ei_dominate_monster'              : 'ei dominate-monster',
+	'ei_dominate_person'               : 'ei dominate-person',
+	'ei_eldritch_blast'                : 'ei eldritch-blast',
+	'ei_enlarge_reduce'                : 'ei enlarge-reduce',
+	'ei_entangle'                      : 'ei entangle',
+	'ei_faerie_fire'                   : 'ei faerie-fire',
+	'ei_faerie_fire2'                  : 'ei faerie-fire2',
+	'ei_feather_fall'                  : 'ei feather-fall',
+	'ei_find_familiar'                 : 'ei find-familiar',
+	'ei_finger_of_death'               : 'ei finger-of-death',
+	'ei_fireball'                      : 'ei fireball',
+	'ei_floating_disk'                 : 'ei floating-disk',
+	'ei_fly'                           : 'ei fly',
+	'ei_fog_cloud'                     : 'ei fog-cloud',
+	'ei_gaseous_form'                  : 'ei gaseous-form',
+	'ei_gaseous_form2'                 : 'ei gaseous-form2',
+	'ei_gentle_repose'                 : 'ei gentle-repose',
+	'ei_gentle_repose2'                : 'ei gentle-repose2',
+	'ei_globe_of_invulnerability'      : 'ei globe-of-invulnerability',
+	'ei_guiding_bolt'                  : 'ei guiding-bolt',
+	'ei_healing_word'                  : 'ei healing-word',
+	'ei_heat_metal'                    : 'ei heat-metal',
+	'ei_hellish_rebuke'                : 'ei hellish-rebuke',
+	'ei_heroes_feast'                  : 'ei heroes-feast',
+	'ei_heroism'                       : 'ei heroism',
+	'ei_hideous_laughter'              : 'ei hideous-laughter',
+	'ei_identify'                      : 'ei identify',
+	'ei_illusory_script'               : 'ei illusory-script',
+	'ei_inflict_wounds'                : 'ei inflict-wounds',
+	'ei_light'                         : 'ei light',
+	'ei_longstrider'                   : 'ei longstrider',
+	'ei_mage_armor'                    : 'ei mage-armor',
+	'ei_mage_hand'                     : 'ei mage-hand',
+	'ei_magic_missile'                 : 'ei magic-missile',
+	'ei_mass_cure_wounds'              : 'ei mass-cure-wounds',
+	'ei_mass_healing_word'             : 'ei mass-healing-word',
+	'ei_mending'                       : 'ei _mending',
+	'ei_message'                       : 'ei message',
+	'ei_minor_illusion'                : 'ei _minor-illusion',
+	'ei_movement1'                     : 'ei movement1',
+	'ei_polymorph'                     : 'ei polymorph',
+	'ei_power_word_kill'               : 'ei power-word-kill',
+	'ei_power_word_stun'               : 'ei power-word-stun',
+	'ei_prayer_of_healing'             : 'ei prayer-of-healing',
+	'ei_prestidigitation'              : 'ei prestidigitation',
+	'ei_protection_from_evil_and_good' : 'ei protection-from-evil-and-good',
+	'ei_raise_dead'                    : 'ei raise-dead',
+	'ei_raise_dead2'                   : 'ei raise-dead2',
+	'ei_reaction1'                     : 'ei reaction1',
+	'ei_resurrection'                  : 'ei resurrection',
+	'ei_resurrection2'                 : 'ei resurrection2',
+	'ei_revivify'                      : 'ei revivify',
+	'ei_revivify2'                     : 'ei revivify2',
+	'ei_sacred_flame'                  : 'ei sacred-flame',
+	'ei_sanctuary'                     : 'ei sanctuary',
+	'ei_scorching_ray'                 : 'ei scorching-ray',
+	'ei_sending'                       : 'ei sending',
+	'ei_shatter'                       : 'ei shatter',
+	'ei_shield'                        : 'ei shield',
+	'ei_silent_image'                  : 'ei silent-image',
+	'ei_sleep'                         : 'ei sleep',
+	'ei_speak_with_animals'            : 'ei speak-with-animals',
+	'ei_telekinesis'                   : 'ei telekinesis',
+	'ei_true_strike'                   : 'ei true-strike',
+	'ei_vicious_mockery'               : 'ei vicious-mockery',
+	'ei_wall_of_fire'                  : 'ei wall-of-fire',
+	'ei_wall_of_force'                 : 'ei wall-of-force',
+	'ei_wall_of_ice'                   : 'ei wall-of-ice',
+	'ei_wall_of_stone'                 : 'ei wall-of-stone',
+	'ei_wall_of_thorns'                : 'ei wall-of-thorns',
+	'ei_wish'                          : 'ei wish'
+};
+
+module.exports = elderberryInn;
\ No newline at end of file
diff --git a/themes/fonts/iconFonts/elderberryInn.less b/themes/fonts/iconFonts/elderberryInn.less
new file mode 100644
index 00000000..adabe5a8
--- /dev/null
+++ b/themes/fonts/iconFonts/elderberryInn.less
@@ -0,0 +1,222 @@
+/* Icon Font: Elderberry Inn */
+@font-face {
+	font-family : 'Elderberry-Inn';
+	font-style : normal;
+	font-weight : normal;
+	src : url('../../../fonts/iconFonts/elderberryInn.woff2');
+} 
+
+.ei {
+	display                 : inline-block;
+	margin-right            : 3px;
+	font-family             : 'Elderberry-Inn';
+	line-height             : 1;
+	vertical-align          : baseline;
+	-moz-osx-font-smoothing : grayscale;
+	-webkit-font-smoothing  : antialiased;
+	text-rendering          : auto;
+
+	&.book::before { content : '\E900'; } 
+	&.screen::before { content : '\E901'; } 
+
+	/* Spell levels */ 
+	&.spell-0::before { content : '\E902'; } 
+	&.spell-1::before { content : '\E903'; } 
+	&.spell-2::before { content : '\E904'; } 
+	&.spell-3::before { content : '\E905'; } 
+	&.spell-4::before { content : '\E906'; } 
+	&.spell-5::before { content : '\E907'; } 
+	&.spell-6::before { content : '\E908'; } 
+	&.spell-7::before { content : '\E909'; } 
+	&.spell-8::before { content : '\E90A'; } 
+	&.spell-9::before { content : '\E90B'; }
+
+	/* Damage types */ 
+	&.acid::before { content : '\E90C'; } 
+	&.bludgeoning::before { content : '\E90D'; } 
+	&.cold::before { content : '\E90E'; } 
+	&.fire::before { content : '\E90F'; } 
+	&.force::before { content : '\E910'; } 
+	&.lightning::before { content : '\E911'; } 
+	&.necrotic::before { content : '\E912'; } 
+	&.piercing::before { content : '\E913'; } 
+	&.poison::before { content : '\E914'; } 
+	&.psychic::before { content : '\E915'; } 
+	&.radiant::before { content : '\E916'; } 
+	&.slashing::before { content : '\E917'; } 
+	&.thunder::before { content : '\E918'; }
+
+	/* DnD Conditions */ 
+	&.blinded::before { content : '\E919'; } 
+	&.charmed::before { content : '\E91A'; } 
+	&.deafened::before { content : '\E91B'; } 
+	&.exhaust-1::before { content : '\E91C'; } 
+	&.exhaust-2::before { content : '\E91D'; } 
+	&.exhaust-3::before { content : '\E91E'; } 
+	&.exhaust-4::before { content : '\E91F'; } 
+	&.exhaust-5::before { content : '\E920'; } 
+	&.exhaust-6::before { content : '\E921'; } 
+	&.frightened::before { content : '\E922'; } 
+	&.grappled::before { content : '\E923'; } 
+	&.incapacitated::before { content : '\E924'; } 
+	&.invisible::before { content : '\E926'; } 
+	&.paralyzed::before { content : '\E927'; } 
+	&.petrified::before { content : '\E928'; } 
+	&.poisoned::before { content : '\E929'; } 
+	&.prone::before { content : '\E92A'; } 
+	&.restrained::before { content : '\E92B'; } 
+	&.stunned::before { content : '\E92C'; } 
+	&.unconscious::before { content : '\E925'; }
+
+	/* Character Classes and Features */ 
+	&.barbarian-rage::before { content : '\E92D'; } 
+	&.barbarian-reckless-attack::before { content : '\E92E'; } 
+	&.bardic-inspiration::before { content : '\E92F'; } 
+	&.cleric-channel-divinity::before { content : '\E930'; } 
+	&.druid-wild-shape::before { content : '\E931'; } 
+	&.fighter-action-surge::before { content : '\E932'; } 
+	&.fighter-second-wind::before { content : '\E933'; } 
+	&.monk-flurry-blows::before { content : '\E934'; }
+	&.monk-patient-defense::before { content : '\E935'; } 
+	&.monk-step-of-the-wind::before { content : '\E936'; } 
+	&.monk-step-of-the-wind-2::before { content : '\E937'; } 
+	&.monk-step-of-the-wind-3::before { content : '\E938'; }
+	&.monk-stunning-strike::before { content : '\E939'; }
+	&.monk-stunning-strike-2::before { content : '\E939'; } 
+	&.paladin-divine-smite::before { content : '\E93B'; } 
+	&.paladin-lay-on-hands::before { content : '\E93C'; } 
+	&.barbarian-abilities::before { content : '\E93D'; } 
+	&.barbarian::before { content : '\E93E'; } 
+	&.bard-abilities::before { content : '\E93F'; } 
+	&.bard::before { content : '\E940'; } 
+	&.cleric-abilities::before { content : '\E941'; } 
+	&.cleric::before { content : '\E942'; } 
+	&.druid-abilities::before { content : '\E943'; } 
+	&.druid::before { content : '\E944'; } 
+	&.fighter-abilities::before { content : '\E945'; } 
+	&.fighter::before { content : '\E946'; } 
+	&.monk-abilities::before { content : '\E947'; } 
+	&.monk::before { content : '\E948'; } 
+	&.paladin-abilities::before { content : '\E949'; } 
+	&.paladin::before { content : '\E94A'; } 
+	&.ranger-abilities::before { content : '\E94B'; } 
+	&.ranger::before { content : '\E94C'; } 
+	&.rogue-abilities::before { content : '\E94D'; } 
+	&.rogue::before { content : '\E94E'; } 
+	&.sorcerer-abilities::before { content : '\E94F'; } 
+	&.sorcerer::before { content : '\E950'; } 
+	&.warlock-abilities::before { content : '\E951'; } 
+	&.warlock::before { content : '\E952'; } 
+	&.wizard-abilities::before { content : '\E953'; } 
+	&.wizard::before { content : '\E954'; }
+
+	/* Types of actions */ 
+	&.movement::before { content : '\E955'; } 
+	&.action::before { content : '\E956'; } 
+	&.bonus-action::before { content : '\E957'; } 
+	&.reaction::before { content : '\E958'; } 
+
+	/* SRD Spells */ 
+	&.acid-arrow::before { content : '\E959'; } 
+	&.action-1::before { content : '\E95A'; } 
+	&.alter-self::before { content : '\E95B'; } 
+	&.alter-self-2::before { content : '\E95C'; } 
+	&.animal-friendship::before { content : '\E95E'; } 
+	&.animate-dead::before { content : '\E95F'; } 
+	&.animate-objects::before { content : '\E960'; } 
+	&.animate-objects-2::before { content : '\E961'; } 
+	&.bane::before { content : '\E962'; } 
+	&.bless::before { content : '\E963'; }
+	&.blur::before { content : '\E964'; }
+	&.bonus::before { content : '\E965'; }
+	&.branding-smite::before { content : '\E966'; }
+	&.burning-hands::before { content : '\E967'; }
+	&.charm-person::before { content : '\E968'; }
+	&.chill-touch::before { content : '\E969'; }
+	&.cloudkill::before { content : '\E96A'; }
+	&.comprehend-languages::before { content : '\E96B'; }
+	&.cone-of-cold::before { content : '\E96C'; }
+	&.conjure-elemental::before { content : '\E96D'; }
+	&.conjure-minor-elemental::before { content : '\E96E'; }
+	&.control-water::before { content : '\E96F'; }
+	&.counterspell::before { content : '\E970'; }
+	&.cure-wounds::before { content : '\E971'; }
+	&.dancing-lights::before { content : '\E972'; }
+	&.darkness::before { content : '\E973'; }
+	&.detect-magic::before { content : '\E974'; }
+	&.disguise-self::before { content : '\E975'; }
+	&.disintegrate::before { content : '\E976'; }
+	&.dispel-evil-and-good::before { content : '\E977'; }
+	&.dispel-magic::before { content : '\E978'; }
+	&.dominate-monster::before { content : '\E979'; }
+	&.dominate-person::before { content : '\E97A'; }
+	&.eldritch-blast::before { content : '\E97B'; }
+	&.enlarge-reduce::before { content : '\E97C'; }
+	&.entangle::before { content : '\E97D'; }
+	&.faerie-fire::before { content : '\E97E'; }
+	&.faerie-fire2::before { content : '\E97F'; }
+	&.feather-fall::before { content : '\E980'; }
+	&.find-familiar::before { content : '\E981'; }
+	&.finger-of-death::before { content : '\E982'; } 
+	&.fireball::before { content : '\E983'; } 
+	&.floating-disk::before { content : '\E984'; } 
+	&.fly::before { content : '\E985'; } 
+	&.fog-cloud::before { content : '\E986'; } 
+	&.gaseous-form::before { content : '\E987'; } 
+	&.gaseous-form2::before { content : '\E988'; } 
+	&.gentle-repose::before { content : '\E989'; } 
+	&.gentle-repose2::before { content : '\E98A'; } 
+	&.globe-of-invulnerability::before { content : '\E98B'; } 
+	&.guiding-bolt::before { content : '\E98C'; } 
+	&.healing-word::before { content : '\E98D'; } 
+	&.heat-metal::before { content : '\E98E'; } 
+	&.hellish-rebuke::before { content : '\E98F'; } 
+	&.heroes-feast::before { content : '\E990'; } 
+	&.heroism::before { content : '\E991'; } 
+	&.hideous-laughter::before { content : '\E992'; } 
+	&.identify::before { content : '\E993'; } 
+	&.illusory-script::before { content : '\E994'; } 
+	&.inflict-wounds::before { content : '\E995'; } 
+	&.light::before { content : '\E996'; } 
+	&.longstrider::before { content : '\E997'; } 
+	&.mage-armor::before { content : '\E998'; } 
+	&.mage-hand::before { content : '\E999'; } 
+	&.magic-missile::before { content : '\E99A'; } 
+	&.mass-cure-wounds::before { content : '\E99B'; } 
+	&.mass-healing-word::before { content : '\E99C'; } 
+	&.Mending::before { content : '\E99D'; } 
+	&.message::before { content : '\E99E'; } 
+	&.Minor-illusion::before { content : '\E99F'; } 
+	&.movement1::before { content : '\E9A0'; } 
+	&.polymorph::before { content : '\E9A1'; } 
+	&.power-word-kill::before { content : '\E9A2'; } 
+	&.power-word-stun::before { content : '\E9A3'; } 
+	&.prayer-of-healing::before { content : '\E9A4'; } 
+	&.prestidigitation::before { content : '\E9A5'; } 
+	&.protection-from-evil-and-good::before { content : '\E9A6'; } 
+	&.raise-dead::before { content : '\E9A7'; } 
+	&.raise-dead2::before { content : '\E9A8'; } 
+	&.reaction1::before { content : '\E9A9'; } 
+	&.resurrection::before { content : '\E9AA'; } 
+	&.resurrection2::before { content : '\E9AB'; } 
+	&.revivify::before { content : '\E9AC'; } 
+	&.revivify2::before { content : '\E9AD'; } 
+	&.sacred-flame::before { content : '\E9AE'; } 
+	&.sanctuary::before { content : '\E9AF'; } 
+	&.scorching-ray::before { content : '\E9B0'; } 
+	&.sending::before { content : '\E9B1'; } 
+	&.shatter::before { content : '\E9B2'; } 
+	&.shield::before { content : '\E9B3'; } 
+	&.silent-image::before { content : '\E9B4'; } 
+	&.sleep::before { content : '\E9B5'; } 
+	&.speak-with-animals::before { content : '\E9B6'; } 
+	&.telekinesis::before { content : '\E9B7'; } 
+	&.true-strike::before { content : '\E9B8'; } 
+	&.vicious-mockery::before { content : '\E9B9'; } 
+	&.wall-of-fire::before { content : '\E9BA'; } 
+	&.wall-of-force::before { content : '\E9BB'; } 
+	&.wall-of-ice::before { content : '\E9BC'; } 
+	&.wall-of-stone::before { content : '\E9BD'; } 
+	&.wall-of-thorns::before { content : '\E9BE'; } 
+	&.wish::before { content : '\E9BF'; } 
+}
\ No newline at end of file
diff --git a/themes/fonts/icon fonts/Elderberry-Inn-Icons.woff2 b/themes/fonts/iconFonts/elderberryInn.woff2
similarity index 100%
rename from themes/fonts/icon fonts/Elderberry-Inn-Icons.woff2
rename to themes/fonts/iconFonts/elderberryInn.woff2
diff --git a/themes/fonts/iconFonts/fontAwesome.js b/themes/fonts/iconFonts/fontAwesome.js
new file mode 100644
index 00000000..764bd5bc
--- /dev/null
+++ b/themes/fonts/iconFonts/fontAwesome.js
@@ -0,0 +1,2054 @@
+const fontAwesome = {
+	// FONT-AWESOME SOLID
+	'fas_0'                                      : 'fas fa-0',
+	'fas_1'                                      : 'fas fa-1',
+	'fas_2'                                      : 'fas fa-2',
+	'fas_3'                                      : 'fas fa-3',
+	'fas_4'                                      : 'fas fa-4',
+	'fas_5'                                      : 'fas fa-5',
+	'fas_6'                                      : 'fas fa-6',
+	'fas_7'                                      : 'fas fa-7',
+	'fas_8'                                      : 'fas fa-8',
+	'fas_9'                                      : 'fas fa-9',
+	'fas_a'                                      : 'fas fa-a',
+	'fas_address_book'                           : 'fas fa-address-book',
+	'fas_address_card'                           : 'fas fa-address-card',
+	'fas_align_center'                           : 'fas fa-align-center',
+	'fas_align_justify'                          : 'fas fa-align-justify',
+	'fas_align_left'                             : 'fas fa-align-left',
+	'fas_align_right'                            : 'fas fa-align-right',
+	'fas_anchor_circle_check'                    : 'fas fa-anchor-circle-check',
+	'fas_anchor_circle_exclamation'              : 'fas fa-anchor-circle-exclamation',
+	'fas_anchor_circle_xmark'                    : 'fas fa-anchor-circle-xmark',
+	'fas_anchor_lock'                            : 'fas fa-anchor-lock',
+	'fas_anchor'                                 : 'fas fa-anchor',
+	'fas_angle_down'                             : 'fas fa-angle-down',
+	'fas_angle_left'                             : 'fas fa-angle-left',
+	'fas_angle_right'                            : 'fas fa-angle-right',
+	'fas_angle_up'                               : 'fas fa-angle-up',
+	'fas_angles_down'                            : 'fas fa-angles-down',
+	'fas_angles_left'                            : 'fas fa-angles-left',
+	'fas_angles_right'                           : 'fas fa-angles-right',
+	'fas_angles_up'                              : 'fas fa-angles-up',
+	'fas_ankh'                                   : 'fas fa-ankh',
+	'fas_apple_whole'                            : 'fas fa-apple-whole',
+	'fas_archway'                                : 'fas fa-archway',
+	'fas_arrow_down_1_9'                         : 'fas fa-arrow-down-1-9',
+	'fas_arrow_down_9_1'                         : 'fas fa-arrow-down-9-1',
+	'fas_arrow_down_a_z'                         : 'fas fa-arrow-down-a-z',
+	'fas_arrow_down_long'                        : 'fas fa-arrow-down-long',
+	'fas_arrow_down_short_wide'                  : 'fas fa-arrow-down-short-wide',
+	'fas_arrow_down_up_across_line'              : 'fas fa-arrow-down-up-across-line',
+	'fas_arrow_down_up_lock'                     : 'fas fa-arrow-down-up-lock',
+	'fas_arrow_down_wide_short'                  : 'fas fa-arrow-down-wide-short',
+	'fas_arrow_down_z_a'                         : 'fas fa-arrow-down-z-a',
+	'fas_arrow_down'                             : 'fas fa-arrow-down',
+	'fas_arrow_left_long'                        : 'fas fa-arrow-left-long',
+	'fas_arrow_left'                             : 'fas fa-arrow-left',
+	'fas_arrow_pointer'                          : 'fas fa-arrow-pointer',
+	'fas_arrow_right_arrow_left'                 : 'fas fa-arrow-right-arrow-left',
+	'fas_arrow_right_from_bracket'               : 'fas fa-arrow-right-from-bracket',
+	'fas_arrow_right_long'                       : 'fas fa-arrow-right-long',
+	'fas_arrow_right_to_bracket'                 : 'fas fa-arrow-right-to-bracket',
+	'fas_arrow_right_to_city'                    : 'fas fa-arrow-right-to-city',
+	'fas_arrow_right'                            : 'fas fa-arrow-right',
+	'fas_arrow_rotate_left'                      : 'fas fa-arrow-rotate-left',
+	'fas_arrow_rotate_right'                     : 'fas fa-arrow-rotate-right',
+	'fas_arrow_trend_down'                       : 'fas fa-arrow-trend-down',
+	'fas_arrow_trend_up'                         : 'fas fa-arrow-trend-up',
+	'fas_arrow_turn_down'                        : 'fas fa-arrow-turn-down',
+	'fas_arrow_turn_up'                          : 'fas fa-arrow-turn-up',
+	'fas_arrow_up_1_9'                           : 'fas fa-arrow-up-1-9',
+	'fas_arrow_up_9_1'                           : 'fas fa-arrow-up-9-1',
+	'fas_arrow_up_a_z'                           : 'fas fa-arrow-up-a-z',
+	'fas_arrow_up_from_bracket'                  : 'fas fa-arrow-up-from-bracket',
+	'fas_arrow_up_from_ground_water'             : 'fas fa-arrow-up-from-ground-water',
+	'fas_arrow_up_from_water_pump'               : 'fas fa-arrow-up-from-water-pump',
+	'fas_arrow_up_long'                          : 'fas fa-arrow-up-long',
+	'fas_arrow_up_right_dots'                    : 'fas fa-arrow-up-right-dots',
+	'fas_arrow_up_right_from_square'             : 'fas fa-arrow-up-right-from-square',
+	'fas_arrow_up_short_wide'                    : 'fas fa-arrow-up-short-wide',
+	'fas_arrow_up_wide_short'                    : 'fas fa-arrow-up-wide-short',
+	'fas_arrow_up_z_a'                           : 'fas fa-arrow-up-z-a',
+	'fas_arrow_up'                               : 'fas fa-arrow-up',
+	'fas_arrows_down_to_line'                    : 'fas fa-arrows-down-to-line',
+	'fas_arrows_down_to_people'                  : 'fas fa-arrows-down-to-people',
+	'fas_arrows_left_right_to_line'              : 'fas fa-arrows-left-right-to-line',
+	'fas_arrows_left_right'                      : 'fas fa-arrows-left-right',
+	'fas_arrows_rotate'                          : 'fas fa-arrows-rotate',
+	'fas_arrows_spin'                            : 'fas fa-arrows-spin',
+	'fas_arrows_split_up_and_left'               : 'fas fa-arrows-split-up-and-left',
+	'fas_arrows_to_circle'                       : 'fas fa-arrows-to-circle',
+	'fas_arrows_to_dot'                          : 'fas fa-arrows-to-dot',
+	'fas_arrows_to_eye'                          : 'fas fa-arrows-to-eye',
+	'fas_arrows_turn_right'                      : 'fas fa-arrows-turn-right',
+	'fas_arrows_turn_to_dots'                    : 'fas fa-arrows-turn-to-dots',
+	'fas_arrows_up_down_left_right'              : 'fas fa-arrows-up-down-left-right',
+	'fas_arrows_up_down'                         : 'fas fa-arrows-up-down',
+	'fas_arrows_up_to_line'                      : 'fas fa-arrows-up-to-line',
+	'fas_asterisk'                               : 'fas fa-asterisk',
+	'fas_at'                                     : 'fas fa-at',
+	'fas_atom'                                   : 'fas fa-atom',
+	'fas_audio_description'                      : 'fas fa-audio-description',
+	'fas_austral_sign'                           : 'fas fa-austral-sign',
+	'fas_award'                                  : 'fas fa-award',
+	'fas_b'                                      : 'fas fa-b',
+	'fas_baby_carriage'                          : 'fas fa-baby-carriage',
+	'fas_baby'                                   : 'fas fa-baby',
+	'fas_backward_fast'                          : 'fas fa-backward-fast',
+	'fas_backward_step'                          : 'fas fa-backward-step',
+	'fas_backward'                               : 'fas fa-backward',
+	'fas_bacon'                                  : 'fas fa-bacon',
+	'fas_bacteria'                               : 'fas fa-bacteria',
+	'fas_bacterium'                              : 'fas fa-bacterium',
+	'fas_bag_shopping'                           : 'fas fa-bag-shopping',
+	'fas_bahai'                                  : 'fas fa-bahai',
+	'fas_baht_sign'                              : 'fas fa-baht-sign',
+	'fas_ban_smoking'                            : 'fas fa-ban-smoking',
+	'fas_ban'                                    : 'fas fa-ban',
+	'fas_bandage'                                : 'fas fa-bandage',
+	'fas_bangladeshi_taka_sign'                  : 'fas fa-bangladeshi-taka-sign',
+	'fas_barcode'                                : 'fas fa-barcode',
+	'fas_bars_progress'                          : 'fas fa-bars-progress',
+	'fas_bars_staggered'                         : 'fas fa-bars-staggered',
+	'fas_bars'                                   : 'fas fa-bars',
+	'fas_baseball_bat_ball'                      : 'fas fa-baseball-bat-ball',
+	'fas_baseball'                               : 'fas fa-baseball',
+	'fas_basket_shopping'                        : 'fas fa-basket-shopping',
+	'fas_basketball'                             : 'fas fa-basketball',
+	'fas_bath'                                   : 'fas fa-bath',
+	'fas_battery_empty'                          : 'fas fa-battery-empty',
+	'fas_battery_full'                           : 'fas fa-battery-full',
+	'fas_battery_half'                           : 'fas fa-battery-half',
+	'fas_battery_quarter'                        : 'fas fa-battery-quarter',
+	'fas_battery_three_quarters'                 : 'fas fa-battery-three-quarters',
+	'fas_bed_pulse'                              : 'fas fa-bed-pulse',
+	'fas_bed'                                    : 'fas fa-bed',
+	'fas_beer_mug_empty'                         : 'fas fa-beer-mug-empty',
+	'fas_bell_concierge'                         : 'fas fa-bell-concierge',
+	'fas_bell_slash'                             : 'fas fa-bell-slash',
+	'fas_bell'                                   : 'fas fa-bell',
+	'fas_bezier_curve'                           : 'fas fa-bezier-curve',
+	'fas_bicycle'                                : 'fas fa-bicycle',
+	'fas_binoculars'                             : 'fas fa-binoculars',
+	'fas_biohazard'                              : 'fas fa-biohazard',
+	'fas_bitcoin_sign'                           : 'fas fa-bitcoin-sign',
+	'fas_blender_phone'                          : 'fas fa-blender-phone',
+	'fas_blender'                                : 'fas fa-blender',
+	'fas_blog'                                   : 'fas fa-blog',
+	'fas_bold'                                   : 'fas fa-bold',
+	'fas_bolt_lightning'                         : 'fas fa-bolt-lightning',
+	'fas_bolt'                                   : 'fas fa-bolt',
+	'fas_bomb'                                   : 'fas fa-bomb',
+	'fas_bone'                                   : 'fas fa-bone',
+	'fas_bong'                                   : 'fas fa-bong',
+	'fas_book_atlas'                             : 'fas fa-book-atlas',
+	'fas_book_bible'                             : 'fas fa-book-bible',
+	'fas_book_bookmark'                          : 'fas fa-book-bookmark',
+	'fas_book_journal_whills'                    : 'fas fa-book-journal-whills',
+	'fas_book_medical'                           : 'fas fa-book-medical',
+	'fas_book_open_reader'                       : 'fas fa-book-open-reader',
+	'fas_book_open'                              : 'fas fa-book-open',
+	'fas_book_quran'                             : 'fas fa-book-quran',
+	'fas_book_skull'                             : 'fas fa-book-skull',
+	'fas_book_tanakh'                            : 'fas fa-book-tanakh',
+	'fas_book'                                   : 'fas fa-book',
+	'fas_bookmark'                               : 'fas fa-bookmark',
+	'fas_border_all'                             : 'fas fa-border-all',
+	'fas_border_none'                            : 'fas fa-border-none',
+	'fas_border_top_left'                        : 'fas fa-border-top-left',
+	'fas_bore_hole'                              : 'fas fa-bore-hole',
+	'fas_bottle_droplet'                         : 'fas fa-bottle-droplet',
+	'fas_bottle_water'                           : 'fas fa-bottle-water',
+	'fas_bowl_food'                              : 'fas fa-bowl-food',
+	'fas_bowl_rice'                              : 'fas fa-bowl-rice',
+	'fas_bowling_ball'                           : 'fas fa-bowling-ball',
+	'fas_box_archive'                            : 'fas fa-box-archive',
+	'fas_box_open'                               : 'fas fa-box-open',
+	'fas_box_tissue'                             : 'fas fa-box-tissue',
+	'fas_box'                                    : 'fas fa-box',
+	'fas_boxes_packing'                          : 'fas fa-boxes-packing',
+	'fas_boxes_stacked'                          : 'fas fa-boxes-stacked',
+	'fas_braille'                                : 'fas fa-braille',
+	'fas_brain'                                  : 'fas fa-brain',
+	'fas_brazilian_real_sign'                    : 'fas fa-brazilian-real-sign',
+	'fas_bread_slice'                            : 'fas fa-bread-slice',
+	'fas_bridge_circle_check'                    : 'fas fa-bridge-circle-check',
+	'fas_bridge_circle_exclamation'              : 'fas fa-bridge-circle-exclamation',
+	'fas_bridge_circle_xmark'                    : 'fas fa-bridge-circle-xmark',
+	'fas_bridge_lock'                            : 'fas fa-bridge-lock',
+	'fas_bridge_water'                           : 'fas fa-bridge-water',
+	'fas_bridge'                                 : 'fas fa-bridge',
+	'fas_briefcase_medical'                      : 'fas fa-briefcase-medical',
+	'fas_briefcase'                              : 'fas fa-briefcase',
+	'fas_broom_ball'                             : 'fas fa-broom-ball',
+	'fas_broom'                                  : 'fas fa-broom',
+	'fas_brush'                                  : 'fas fa-brush',
+	'fas_bucket'                                 : 'fas fa-bucket',
+	'fas_bug_slash'                              : 'fas fa-bug-slash',
+	'fas_bug'                                    : 'fas fa-bug',
+	'fas_bugs'                                   : 'fas fa-bugs',
+	'fas_building_circle_arrow_right'            : 'fas fa-building-circle-arrow-right',
+	'fas_building_circle_check'                  : 'fas fa-building-circle-check',
+	'fas_building_circle_exclamation'            : 'fas fa-building-circle-exclamation',
+	'fas_building_circle_xmark'                  : 'fas fa-building-circle-xmark',
+	'fas_building_columns'                       : 'fas fa-building-columns',
+	'fas_building_flag'                          : 'fas fa-building-flag',
+	'fas_building_lock'                          : 'fas fa-building-lock',
+	'fas_building_ngo'                           : 'fas fa-building-ngo',
+	'fas_building_shield'                        : 'fas fa-building-shield',
+	'fas_building_un'                            : 'fas fa-building-un',
+	'fas_building_user'                          : 'fas fa-building-user',
+	'fas_building_wheat'                         : 'fas fa-building-wheat',
+	'fas_building'                               : 'fas fa-building',
+	'fas_bullhorn'                               : 'fas fa-bullhorn',
+	'fas_bullseye'                               : 'fas fa-bullseye',
+	'fas_burger'                                 : 'fas fa-burger',
+	'fas_burst'                                  : 'fas fa-burst',
+	'fas_bus_simple'                             : 'fas fa-bus-simple',
+	'fas_bus'                                    : 'fas fa-bus',
+	'fas_business_time'                          : 'fas fa-business-time',
+	'fas_c'                                      : 'fas fa-c',
+	'fas_cable_car'                              : 'fas fa-cable-car',
+	'fas_cake_candles'                           : 'fas fa-cake-candles',
+	'fas_calculator'                             : 'fas fa-calculator',
+	'fas_calendar_check'                         : 'fas fa-calendar-check',
+	'fas_calendar_day'                           : 'fas fa-calendar-day',
+	'fas_calendar_days'                          : 'fas fa-calendar-days',
+	'fas_calendar_minus'                         : 'fas fa-calendar-minus',
+	'fas_calendar_plus'                          : 'fas fa-calendar-plus',
+	'fas_calendar_week'                          : 'fas fa-calendar-week',
+	'fas_calendar_xmark'                         : 'fas fa-calendar-xmark',
+	'fas_calendar'                               : 'fas fa-calendar',
+	'fas_camera_retro'                           : 'fas fa-camera-retro',
+	'fas_camera_rotate'                          : 'fas fa-camera-rotate',
+	'fas_camera'                                 : 'fas fa-camera',
+	'fas_campground'                             : 'fas fa-campground',
+	'fas_candy_cane'                             : 'fas fa-candy-cane',
+	'fas_cannabis'                               : 'fas fa-cannabis',
+	'fas_capsules'                               : 'fas fa-capsules',
+	'fas_car_battery'                            : 'fas fa-car-battery',
+	'fas_car_burst'                              : 'fas fa-car-burst',
+	'fas_car_on'                                 : 'fas fa-car-on',
+	'fas_car_rear'                               : 'fas fa-car-rear',
+	'fas_car_side'                               : 'fas fa-car-side',
+	'fas_car_tunnel'                             : 'fas fa-car-tunnel',
+	'fas_car'                                    : 'fas fa-car',
+	'fas_caravan'                                : 'fas fa-caravan',
+	'fas_caret_down'                             : 'fas fa-caret-down',
+	'fas_caret_left'                             : 'fas fa-caret-left',
+	'fas_caret_right'                            : 'fas fa-caret-right',
+	'fas_caret_up'                               : 'fas fa-caret-up',
+	'fas_carrot'                                 : 'fas fa-carrot',
+	'fas_cart_arrow_down'                        : 'fas fa-cart-arrow-down',
+	'fas_cart_flatbed_suitcase'                  : 'fas fa-cart-flatbed-suitcase',
+	'fas_cart_flatbed'                           : 'fas fa-cart-flatbed',
+	'fas_cart_plus'                              : 'fas fa-cart-plus',
+	'fas_cart_shopping'                          : 'fas fa-cart-shopping',
+	'fas_cash_register'                          : 'fas fa-cash-register',
+	'fas_cat'                                    : 'fas fa-cat',
+	'fas_cedi_sign'                              : 'fas fa-cedi-sign',
+	'fas_cent_sign'                              : 'fas fa-cent-sign',
+	'fas_certificate'                            : 'fas fa-certificate',
+	'fas_chair'                                  : 'fas fa-chair',
+	'fas_chalkboard_user'                        : 'fas fa-chalkboard-user',
+	'fas_chalkboard'                             : 'fas fa-chalkboard',
+	'fas_champagne_glasses'                      : 'fas fa-champagne-glasses',
+	'fas_charging_station'                       : 'fas fa-charging-station',
+	'fas_chart_area'                             : 'fas fa-chart-area',
+	'fas_chart_bar'                              : 'fas fa-chart-bar',
+	'fas_chart_column'                           : 'fas fa-chart-column',
+	'fas_chart_gantt'                            : 'fas fa-chart-gantt',
+	'fas_chart_line'                             : 'fas fa-chart-line',
+	'fas_chart_pie'                              : 'fas fa-chart-pie',
+	'fas_chart_simple'                           : 'fas fa-chart-simple',
+	'fas_check_double'                           : 'fas fa-check-double',
+	'fas_check_to_slot'                          : 'fas fa-check-to-slot',
+	'fas_check'                                  : 'fas fa-check',
+	'fas_cheese'                                 : 'fas fa-cheese',
+	'fas_chess_bishop'                           : 'fas fa-chess-bishop',
+	'fas_chess_board'                            : 'fas fa-chess-board',
+	'fas_chess_king'                             : 'fas fa-chess-king',
+	'fas_chess_knight'                           : 'fas fa-chess-knight',
+	'fas_chess_pawn'                             : 'fas fa-chess-pawn',
+	'fas_chess_queen'                            : 'fas fa-chess-queen',
+	'fas_chess_rook'                             : 'fas fa-chess-rook',
+	'fas_chess'                                  : 'fas fa-chess',
+	'fas_chevron_down'                           : 'fas fa-chevron-down',
+	'fas_chevron_left'                           : 'fas fa-chevron-left',
+	'fas_chevron_right'                          : 'fas fa-chevron-right',
+	'fas_chevron_up'                             : 'fas fa-chevron-up',
+	'fas_child_combatant'                        : 'fas fa-child-combatant',
+	'fas_child_dress'                            : 'fas fa-child-dress',
+	'fas_child_reaching'                         : 'fas fa-child-reaching',
+	'fas_child'                                  : 'fas fa-child',
+	'fas_children'                               : 'fas fa-children',
+	'fas_church'                                 : 'fas fa-church',
+	'fas_circle_arrow_down'                      : 'fas fa-circle-arrow-down',
+	'fas_circle_arrow_left'                      : 'fas fa-circle-arrow-left',
+	'fas_circle_arrow_right'                     : 'fas fa-circle-arrow-right',
+	'fas_circle_arrow_up'                        : 'fas fa-circle-arrow-up',
+	'fas_circle_check'                           : 'fas fa-circle-check',
+	'fas_circle_chevron_down'                    : 'fas fa-circle-chevron-down',
+	'fas_circle_chevron_left'                    : 'fas fa-circle-chevron-left',
+	'fas_circle_chevron_right'                   : 'fas fa-circle-chevron-right',
+	'fas_circle_chevron_up'                      : 'fas fa-circle-chevron-up',
+	'fas_circle_dollar_to_slot'                  : 'fas fa-circle-dollar-to-slot',
+	'fas_circle_dot'                             : 'fas fa-circle-dot',
+	'fas_circle_down'                            : 'fas fa-circle-down',
+	'fas_circle_exclamation'                     : 'fas fa-circle-exclamation',
+	'fas_circle_h'                               : 'fas fa-circle-h',
+	'fas_circle_half_stroke'                     : 'fas fa-circle-half-stroke',
+	'fas_circle_info'                            : 'fas fa-circle-info',
+	'fas_circle_left'                            : 'fas fa-circle-left',
+	'fas_circle_minus'                           : 'fas fa-circle-minus',
+	'fas_circle_nodes'                           : 'fas fa-circle-nodes',
+	'fas_circle_notch'                           : 'fas fa-circle-notch',
+	'fas_circle_pause'                           : 'fas fa-circle-pause',
+	'fas_circle_play'                            : 'fas fa-circle-play',
+	'fas_circle_plus'                            : 'fas fa-circle-plus',
+	'fas_circle_question'                        : 'fas fa-circle-question',
+	'fas_circle_radiation'                       : 'fas fa-circle-radiation',
+	'fas_circle_right'                           : 'fas fa-circle-right',
+	'fas_circle_stop'                            : 'fas fa-circle-stop',
+	'fas_circle_up'                              : 'fas fa-circle-up',
+	'fas_circle_user'                            : 'fas fa-circle-user',
+	'fas_circle_xmark'                           : 'fas fa-circle-xmark',
+	'fas_circle'                                 : 'fas fa-circle',
+	'fas_city'                                   : 'fas fa-city',
+	'fas_clapperboard'                           : 'fas fa-clapperboard',
+	'fas_clipboard_check'                        : 'fas fa-clipboard-check',
+	'fas_clipboard_list'                         : 'fas fa-clipboard-list',
+	'fas_clipboard_question'                     : 'fas fa-clipboard-question',
+	'fas_clipboard_user'                         : 'fas fa-clipboard-user',
+	'fas_clipboard'                              : 'fas fa-clipboard',
+	'fas_clock_rotate_left'                      : 'fas fa-clock-rotate-left',
+	'fas_clock'                                  : 'fas fa-clock',
+	'fas_clone'                                  : 'fas fa-clone',
+	'fas_closed_captioning'                      : 'fas fa-closed-captioning',
+	'fas_cloud_arrow_down'                       : 'fas fa-cloud-arrow-down',
+	'fas_cloud_arrow_up'                         : 'fas fa-cloud-arrow-up',
+	'fas_cloud_bolt'                             : 'fas fa-cloud-bolt',
+	'fas_cloud_meatball'                         : 'fas fa-cloud-meatball',
+	'fas_cloud_moon_rain'                        : 'fas fa-cloud-moon-rain',
+	'fas_cloud_moon'                             : 'fas fa-cloud-moon',
+	'fas_cloud_rain'                             : 'fas fa-cloud-rain',
+	'fas_cloud_showers_heavy'                    : 'fas fa-cloud-showers-heavy',
+	'fas_cloud_showers_water'                    : 'fas fa-cloud-showers-water',
+	'fas_cloud_sun_rain'                         : 'fas fa-cloud-sun-rain',
+	'fas_cloud_sun'                              : 'fas fa-cloud-sun',
+	'fas_cloud'                                  : 'fas fa-cloud',
+	'fas_clover'                                 : 'fas fa-clover',
+	'fas_code_branch'                            : 'fas fa-code-branch',
+	'fas_code_commit'                            : 'fas fa-code-commit',
+	'fas_code_compare'                           : 'fas fa-code-compare',
+	'fas_code_fork'                              : 'fas fa-code-fork',
+	'fas_code_merge'                             : 'fas fa-code-merge',
+	'fas_code_pull_request'                      : 'fas fa-code-pull-request',
+	'fas_code'                                   : 'fas fa-code',
+	'fas_coins'                                  : 'fas fa-coins',
+	'fas_colon_sign'                             : 'fas fa-colon-sign',
+	'fas_comment_dollar'                         : 'fas fa-comment-dollar',
+	'fas_comment_dots'                           : 'fas fa-comment-dots',
+	'fas_comment_medical'                        : 'fas fa-comment-medical',
+	'fas_comment_slash'                          : 'fas fa-comment-slash',
+	'fas_comment_sms'                            : 'fas fa-comment-sms',
+	'fas_comment'                                : 'fas fa-comment',
+	'fas_comments_dollar'                        : 'fas fa-comments-dollar',
+	'fas_comments'                               : 'fas fa-comments',
+	'fas_compact_disc'                           : 'fas fa-compact-disc',
+	'fas_compass_drafting'                       : 'fas fa-compass-drafting',
+	'fas_compass'                                : 'fas fa-compass',
+	'fas_compress'                               : 'fas fa-compress',
+	'fas_computer_mouse'                         : 'fas fa-computer-mouse',
+	'fas_computer'                               : 'fas fa-computer',
+	'fas_cookie_bite'                            : 'fas fa-cookie-bite',
+	'fas_cookie'                                 : 'fas fa-cookie',
+	'fas_copy'                                   : 'fas fa-copy',
+	'fas_copyright'                              : 'fas fa-copyright',
+	'fas_couch'                                  : 'fas fa-couch',
+	'fas_cow'                                    : 'fas fa-cow',
+	'fas_credit_card'                            : 'fas fa-credit-card',
+	'fas_crop_simple'                            : 'fas fa-crop-simple',
+	'fas_crop'                                   : 'fas fa-crop',
+	'fas_cross'                                  : 'fas fa-cross',
+	'fas_crosshairs'                             : 'fas fa-crosshairs',
+	'fas_crow'                                   : 'fas fa-crow',
+	'fas_crown'                                  : 'fas fa-crown',
+	'fas_crutch'                                 : 'fas fa-crutch',
+	'fas_cruzeiro_sign'                          : 'fas fa-cruzeiro-sign',
+	'fas_cube'                                   : 'fas fa-cube',
+	'fas_cubes_stacked'                          : 'fas fa-cubes-stacked',
+	'fas_cubes'                                  : 'fas fa-cubes',
+	'fas_d'                                      : 'fas fa-d',
+	'fas_database'                               : 'fas fa-database',
+	'fas_delete_left'                            : 'fas fa-delete-left',
+	'fas_democrat'                               : 'fas fa-democrat',
+	'fas_desktop'                                : 'fas fa-desktop',
+	'fas_dharmachakra'                           : 'fas fa-dharmachakra',
+	'fas_diagram_next'                           : 'fas fa-diagram-next',
+	'fas_diagram_predecessor'                    : 'fas fa-diagram-predecessor',
+	'fas_diagram_project'                        : 'fas fa-diagram-project',
+	'fas_diagram_successor'                      : 'fas fa-diagram-successor',
+	'fas_diamond_turn_right'                     : 'fas fa-diamond-turn-right',
+	'fas_diamond'                                : 'fas fa-diamond',
+	'fas_dice_d20'                               : 'fas fa-dice-d20',
+	'fas_dice_d6'                                : 'fas fa-dice-d6',
+	'fas_dice_five'                              : 'fas fa-dice-five',
+	'fas_dice_four'                              : 'fas fa-dice-four',
+	'fas_dice_one'                               : 'fas fa-dice-one',
+	'fas_dice_six'                               : 'fas fa-dice-six',
+	'fas_dice_three'                             : 'fas fa-dice-three',
+	'fas_dice_two'                               : 'fas fa-dice-two',
+	'fas_dice'                                   : 'fas fa-dice',
+	'fas_disease'                                : 'fas fa-disease',
+	'fas_display'                                : 'fas fa-display',
+	'fas_divide'                                 : 'fas fa-divide',
+	'fas_dna'                                    : 'fas fa-dna',
+	'fas_dog'                                    : 'fas fa-dog',
+	'fas_dollar_sign'                            : 'fas fa-dollar-sign',
+	'fas_dolly'                                  : 'fas fa-dolly',
+	'fas_dong_sign'                              : 'fas fa-dong-sign',
+	'fas_door_closed'                            : 'fas fa-door-closed',
+	'fas_door_open'                              : 'fas fa-door-open',
+	'fas_dove'                                   : 'fas fa-dove',
+	'fas_down_left_and_up_right_to_center'       : 'fas fa-down-left-and-up-right-to-center',
+	'fas_down_long'                              : 'fas fa-down-long',
+	'fas_download'                               : 'fas fa-download',
+	'fas_dragon'                                 : 'fas fa-dragon',
+	'fas_draw_polygon'                           : 'fas fa-draw-polygon',
+	'fas_droplet_slash'                          : 'fas fa-droplet-slash',
+	'fas_droplet'                                : 'fas fa-droplet',
+	'fas_drum_steelpan'                          : 'fas fa-drum-steelpan',
+	'fas_drum'                                   : 'fas fa-drum',
+	'fas_drumstick_bite'                         : 'fas fa-drumstick-bite',
+	'fas_dumbbell'                               : 'fas fa-dumbbell',
+	'fas_dumpster_fire'                          : 'fas fa-dumpster-fire',
+	'fas_dumpster'                               : 'fas fa-dumpster',
+	'fas_dungeon'                                : 'fas fa-dungeon',
+	'fas_e'                                      : 'fas fa-e',
+	'fas_ear_deaf'                               : 'fas fa-ear-deaf',
+	'fas_ear_listen'                             : 'fas fa-ear-listen',
+	'fas_earth_africa'                           : 'fas fa-earth-africa',
+	'fas_earth_americas'                         : 'fas fa-earth-americas',
+	'fas_earth_asia'                             : 'fas fa-earth-asia',
+	'fas_earth_europe'                           : 'fas fa-earth-europe',
+	'fas_earth_oceania'                          : 'fas fa-earth-oceania',
+	'fas_egg'                                    : 'fas fa-egg',
+	'fas_eject'                                  : 'fas fa-eject',
+	'fas_elevator'                               : 'fas fa-elevator',
+	'fas_ellipsis_vertical'                      : 'fas fa-ellipsis-vertical',
+	'fas_ellipsis'                               : 'fas fa-ellipsis',
+	'fas_envelope_circle_check'                  : 'fas fa-envelope-circle-check',
+	'fas_envelope_open_text'                     : 'fas fa-envelope-open-text',
+	'fas_envelope_open'                          : 'fas fa-envelope-open',
+	'fas_envelope'                               : 'fas fa-envelope',
+	'fas_envelopes_bulk'                         : 'fas fa-envelopes-bulk',
+	'fas_equals'                                 : 'fas fa-equals',
+	'fas_eraser'                                 : 'fas fa-eraser',
+	'fas_ethernet'                               : 'fas fa-ethernet',
+	'fas_euro_sign'                              : 'fas fa-euro-sign',
+	'fas_exclamation'                            : 'fas fa-exclamation',
+	'fas_expand'                                 : 'fas fa-expand',
+	'fas_explosion'                              : 'fas fa-explosion',
+	'fas_eye_dropper'                            : 'fas fa-eye-dropper',
+	'fas_eye_low_vision'                         : 'fas fa-eye-low-vision',
+	'fas_eye_slash'                              : 'fas fa-eye-slash',
+	'fas_eye'                                    : 'fas fa-eye',
+	'fas_f'                                      : 'fas fa-f',
+	'fas_face_angry'                             : 'fas fa-face-angry',
+	'fas_face_dizzy'                             : 'fas fa-face-dizzy',
+	'fas_face_flushed'                           : 'fas fa-face-flushed',
+	'fas_face_frown_open'                        : 'fas fa-face-frown-open',
+	'fas_face_frown'                             : 'fas fa-face-frown',
+	'fas_face_grimace'                           : 'fas fa-face-grimace',
+	'fas_face_grin_beam_sweat'                   : 'fas fa-face-grin-beam-sweat',
+	'fas_face_grin_beam'                         : 'fas fa-face-grin-beam',
+	'fas_face_grin_hearts'                       : 'fas fa-face-grin-hearts',
+	'fas_face_grin_squint_tears'                 : 'fas fa-face-grin-squint-tears',
+	'fas_face_grin_squint'                       : 'fas fa-face-grin-squint',
+	'fas_face_grin_stars'                        : 'fas fa-face-grin-stars',
+	'fas_face_grin_tears'                        : 'fas fa-face-grin-tears',
+	'fas_face_grin_tongue_squint'                : 'fas fa-face-grin-tongue-squint',
+	'fas_face_grin_tongue_wink'                  : 'fas fa-face-grin-tongue-wink',
+	'fas_face_grin_tongue'                       : 'fas fa-face-grin-tongue',
+	'fas_face_grin_wide'                         : 'fas fa-face-grin-wide',
+	'fas_face_grin_wink'                         : 'fas fa-face-grin-wink',
+	'fas_face_grin'                              : 'fas fa-face-grin',
+	'fas_face_kiss_beam'                         : 'fas fa-face-kiss-beam',
+	'fas_face_kiss_wink_heart'                   : 'fas fa-face-kiss-wink-heart',
+	'fas_face_kiss'                              : 'fas fa-face-kiss',
+	'fas_face_laugh_beam'                        : 'fas fa-face-laugh-beam',
+	'fas_face_laugh_squint'                      : 'fas fa-face-laugh-squint',
+	'fas_face_laugh_wink'                        : 'fas fa-face-laugh-wink',
+	'fas_face_laugh'                             : 'fas fa-face-laugh',
+	'fas_face_meh_blank'                         : 'fas fa-face-meh-blank',
+	'fas_face_meh'                               : 'fas fa-face-meh',
+	'fas_face_rolling_eyes'                      : 'fas fa-face-rolling-eyes',
+	'fas_face_sad_cry'                           : 'fas fa-face-sad-cry',
+	'fas_face_sad_tear'                          : 'fas fa-face-sad-tear',
+	'fas_face_smile_beam'                        : 'fas fa-face-smile-beam',
+	'fas_face_smile_wink'                        : 'fas fa-face-smile-wink',
+	'fas_face_smile'                             : 'fas fa-face-smile',
+	'fas_face_surprise'                          : 'fas fa-face-surprise',
+	'fas_face_tired'                             : 'fas fa-face-tired',
+	'fas_fan'                                    : 'fas fa-fan',
+	'fas_faucet_drip'                            : 'fas fa-faucet-drip',
+	'fas_faucet'                                 : 'fas fa-faucet',
+	'fas_fax'                                    : 'fas fa-fax',
+	'fas_feather_pointed'                        : 'fas fa-feather-pointed',
+	'fas_feather'                                : 'fas fa-feather',
+	'fas_ferry'                                  : 'fas fa-ferry',
+	'fas_file_arrow_down'                        : 'fas fa-file-arrow-down',
+	'fas_file_arrow_up'                          : 'fas fa-file-arrow-up',
+	'fas_file_audio'                             : 'fas fa-file-audio',
+	'fas_file_circle_check'                      : 'fas fa-file-circle-check',
+	'fas_file_circle_exclamation'                : 'fas fa-file-circle-exclamation',
+	'fas_file_circle_minus'                      : 'fas fa-file-circle-minus',
+	'fas_file_circle_plus'                       : 'fas fa-file-circle-plus',
+	'fas_file_circle_question'                   : 'fas fa-file-circle-question',
+	'fas_file_circle_xmark'                      : 'fas fa-file-circle-xmark',
+	'fas_file_code'                              : 'fas fa-file-code',
+	'fas_file_contract'                          : 'fas fa-file-contract',
+	'fas_file_csv'                               : 'fas fa-file-csv',
+	'fas_file_excel'                             : 'fas fa-file-excel',
+	'fas_file_export'                            : 'fas fa-file-export',
+	'fas_file_image'                             : 'fas fa-file-image',
+	'fas_file_import'                            : 'fas fa-file-import',
+	'fas_file_invoice_dollar'                    : 'fas fa-file-invoice-dollar',
+	'fas_file_invoice'                           : 'fas fa-file-invoice',
+	'fas_file_lines'                             : 'fas fa-file-lines',
+	'fas_file_medical'                           : 'fas fa-file-medical',
+	'fas_file_pdf'                               : 'fas fa-file-pdf',
+	'fas_file_pen'                               : 'fas fa-file-pen',
+	'fas_file_powerpoint'                        : 'fas fa-file-powerpoint',
+	'fas_file_prescription'                      : 'fas fa-file-prescription',
+	'fas_file_shield'                            : 'fas fa-file-shield',
+	'fas_file_signature'                         : 'fas fa-file-signature',
+	'fas_file_video'                             : 'fas fa-file-video',
+	'fas_file_waveform'                          : 'fas fa-file-waveform',
+	'fas_file_word'                              : 'fas fa-file-word',
+	'fas_file_zipper'                            : 'fas fa-file-zipper',
+	'fas_file'                                   : 'fas fa-file',
+	'fas_fill_drip'                              : 'fas fa-fill-drip',
+	'fas_fill'                                   : 'fas fa-fill',
+	'fas_film'                                   : 'fas fa-film',
+	'fas_filter_circle_dollar'                   : 'fas fa-filter-circle-dollar',
+	'fas_filter_circle_xmark'                    : 'fas fa-filter-circle-xmark',
+	'fas_filter'                                 : 'fas fa-filter',
+	'fas_fingerprint'                            : 'fas fa-fingerprint',
+	'fas_fire_burner'                            : 'fas fa-fire-burner',
+	'fas_fire_extinguisher'                      : 'fas fa-fire-extinguisher',
+	'fas_fire_flame_curved'                      : 'fas fa-fire-flame-curved',
+	'fas_fire_flame_simple'                      : 'fas fa-fire-flame-simple',
+	'fas_fire'                                   : 'fas fa-fire',
+	'fas_fish_fins'                              : 'fas fa-fish-fins',
+	'fas_fish'                                   : 'fas fa-fish',
+	'fas_flag_checkered'                         : 'fas fa-flag-checkered',
+	'fas_flag_usa'                               : 'fas fa-flag-usa',
+	'fas_flag'                                   : 'fas fa-flag',
+	'fas_flask_vial'                             : 'fas fa-flask-vial',
+	'fas_flask'                                  : 'fas fa-flask',
+	'fas_floppy_disk'                            : 'fas fa-floppy-disk',
+	'fas_florin_sign'                            : 'fas fa-florin-sign',
+	'fas_folder_closed'                          : 'fas fa-folder-closed',
+	'fas_folder_minus'                           : 'fas fa-folder-minus',
+	'fas_folder_open'                            : 'fas fa-folder-open',
+	'fas_folder_plus'                            : 'fas fa-folder-plus',
+	'fas_folder_tree'                            : 'fas fa-folder-tree',
+	'fas_folder'                                 : 'fas fa-folder',
+	'fas_font_awesome'                           : 'fas fa-font-awesome',
+	'fas_font'                                   : 'fas fa-font',
+	'fas_football'                               : 'fas fa-football',
+	'fas_forward_fast'                           : 'fas fa-forward-fast',
+	'fas_forward_step'                           : 'fas fa-forward-step',
+	'fas_forward'                                : 'fas fa-forward',
+	'fas_franc_sign'                             : 'fas fa-franc-sign',
+	'fas_frog'                                   : 'fas fa-frog',
+	'fas_futbol'                                 : 'fas fa-futbol',
+	'fas_g'                                      : 'fas fa-g',
+	'fas_gamepad'                                : 'fas fa-gamepad',
+	'fas_gas_pump'                               : 'fas fa-gas-pump',
+	'fas_gauge_high'                             : 'fas fa-gauge-high',
+	'fas_gauge_simple_high'                      : 'fas fa-gauge-simple-high',
+	'fas_gauge_simple'                           : 'fas fa-gauge-simple',
+	'fas_gauge'                                  : 'fas fa-gauge',
+	'fas_gavel'                                  : 'fas fa-gavel',
+	'fas_gear'                                   : 'fas fa-gear',
+	'fas_gears'                                  : 'fas fa-gears',
+	'fas_gem'                                    : 'fas fa-gem',
+	'fas_genderless'                             : 'fas fa-genderless',
+	'fas_ghost'                                  : 'fas fa-ghost',
+	'fas_gift'                                   : 'fas fa-gift',
+	'fas_gifts'                                  : 'fas fa-gifts',
+	'fas_glass_water_droplet'                    : 'fas fa-glass-water-droplet',
+	'fas_glass_water'                            : 'fas fa-glass-water',
+	'fas_glasses'                                : 'fas fa-glasses',
+	'fas_globe'                                  : 'fas fa-globe',
+	'fas_golf_ball_tee'                          : 'fas fa-golf-ball-tee',
+	'fas_gopuram'                                : 'fas fa-gopuram',
+	'fas_graduation_cap'                         : 'fas fa-graduation-cap',
+	'fas_greater_than_equal'                     : 'fas fa-greater-than-equal',
+	'fas_greater_than'                           : 'fas fa-greater-than',
+	'fas_grip_lines_vertical'                    : 'fas fa-grip-lines-vertical',
+	'fas_grip_lines'                             : 'fas fa-grip-lines',
+	'fas_grip_vertical'                          : 'fas fa-grip-vertical',
+	'fas_grip'                                   : 'fas fa-grip',
+	'fas_group_arrows_rotate'                    : 'fas fa-group-arrows-rotate',
+	'fas_guarani_sign'                           : 'fas fa-guarani-sign',
+	'fas_guitar'                                 : 'fas fa-guitar',
+	'fas_gun'                                    : 'fas fa-gun',
+	'fas_h'                                      : 'fas fa-h',
+	'fas_hammer'                                 : 'fas fa-hammer',
+	'fas_hamsa'                                  : 'fas fa-hamsa',
+	'fas_hand_back_fist'                         : 'fas fa-hand-back-fist',
+	'fas_hand_dots'                              : 'fas fa-hand-dots',
+	'fas_hand_fist'                              : 'fas fa-hand-fist',
+	'fas_hand_holding_dollar'                    : 'fas fa-hand-holding-dollar',
+	'fas_hand_holding_droplet'                   : 'fas fa-hand-holding-droplet',
+	'fas_hand_holding_hand'                      : 'fas fa-hand-holding-hand',
+	'fas_hand_holding_heart'                     : 'fas fa-hand-holding-heart',
+	'fas_hand_holding_medical'                   : 'fas fa-hand-holding-medical',
+	'fas_hand_holding'                           : 'fas fa-hand-holding',
+	'fas_hand_lizard'                            : 'fas fa-hand-lizard',
+	'fas_hand_middle_finger'                     : 'fas fa-hand-middle-finger',
+	'fas_hand_peace'                             : 'fas fa-hand-peace',
+	'fas_hand_point_down'                        : 'fas fa-hand-point-down',
+	'fas_hand_point_left'                        : 'fas fa-hand-point-left',
+	'fas_hand_point_right'                       : 'fas fa-hand-point-right',
+	'fas_hand_point_up'                          : 'fas fa-hand-point-up',
+	'fas_hand_pointer'                           : 'fas fa-hand-pointer',
+	'fas_hand_scissors'                          : 'fas fa-hand-scissors',
+	'fas_hand_sparkles'                          : 'fas fa-hand-sparkles',
+	'fas_hand_spock'                             : 'fas fa-hand-spock',
+	'fas_hand'                                   : 'fas fa-hand',
+	'fas_handcuffs'                              : 'fas fa-handcuffs',
+	'fas_hands_asl_interpreting'                 : 'fas fa-hands-asl-interpreting',
+	'fas_hands_bound'                            : 'fas fa-hands-bound',
+	'fas_hands_bubbles'                          : 'fas fa-hands-bubbles',
+	'fas_hands_clapping'                         : 'fas fa-hands-clapping',
+	'fas_hands_holding_child'                    : 'fas fa-hands-holding-child',
+	'fas_hands_holding_circle'                   : 'fas fa-hands-holding-circle',
+	'fas_hands_holding'                          : 'fas fa-hands-holding',
+	'fas_hands_praying'                          : 'fas fa-hands-praying',
+	'fas_hands'                                  : 'fas fa-hands',
+	'fas_handshake_angle'                        : 'fas fa-handshake-angle',
+	'fas_handshake_simple_slash'                 : 'fas fa-handshake-simple-slash',
+	'fas_handshake_simple'                       : 'fas fa-handshake-simple',
+	'fas_handshake_slash'                        : 'fas fa-handshake-slash',
+	'fas_handshake'                              : 'fas fa-handshake',
+	'fas_hanukiah'                               : 'fas fa-hanukiah',
+	'fas_hard_drive'                             : 'fas fa-hard-drive',
+	'fas_hashtag'                                : 'fas fa-hashtag',
+	'fas_hat_cowboy_side'                        : 'fas fa-hat-cowboy-side',
+	'fas_hat_cowboy'                             : 'fas fa-hat-cowboy',
+	'fas_hat_wizard'                             : 'fas fa-hat-wizard',
+	'fas_head_side_cough_slash'                  : 'fas fa-head-side-cough-slash',
+	'fas_head_side_cough'                        : 'fas fa-head-side-cough',
+	'fas_head_side_mask'                         : 'fas fa-head-side-mask',
+	'fas_head_side_virus'                        : 'fas fa-head-side-virus',
+	'fas_heading'                                : 'fas fa-heading',
+	'fas_headphones_simple'                      : 'fas fa-headphones-simple',
+	'fas_headphones'                             : 'fas fa-headphones',
+	'fas_headset'                                : 'fas fa-headset',
+	'fas_heart_circle_bolt'                      : 'fas fa-heart-circle-bolt',
+	'fas_heart_circle_check'                     : 'fas fa-heart-circle-check',
+	'fas_heart_circle_exclamation'               : 'fas fa-heart-circle-exclamation',
+	'fas_heart_circle_minus'                     : 'fas fa-heart-circle-minus',
+	'fas_heart_circle_plus'                      : 'fas fa-heart-circle-plus',
+	'fas_heart_circle_xmark'                     : 'fas fa-heart-circle-xmark',
+	'fas_heart_crack'                            : 'fas fa-heart-crack',
+	'fas_heart_pulse'                            : 'fas fa-heart-pulse',
+	'fas_heart'                                  : 'fas fa-heart',
+	'fas_helicopter_symbol'                      : 'fas fa-helicopter-symbol',
+	'fas_helicopter'                             : 'fas fa-helicopter',
+	'fas_helmet_safety'                          : 'fas fa-helmet-safety',
+	'fas_helmet_un'                              : 'fas fa-helmet-un',
+	'fas_highlighter'                            : 'fas fa-highlighter',
+	'fas_hill_avalanche'                         : 'fas fa-hill-avalanche',
+	'fas_hill_rockslide'                         : 'fas fa-hill-rockslide',
+	'fas_hippo'                                  : 'fas fa-hippo',
+	'fas_hockey_puck'                            : 'fas fa-hockey-puck',
+	'fas_holly_berry'                            : 'fas fa-holly-berry',
+	'fas_horse_head'                             : 'fas fa-horse-head',
+	'fas_horse'                                  : 'fas fa-horse',
+	'fas_hospital_user'                          : 'fas fa-hospital-user',
+	'fas_hospital'                               : 'fas fa-hospital',
+	'fas_hot_tub_person'                         : 'fas fa-hot-tub-person',
+	'fas_hotdog'                                 : 'fas fa-hotdog',
+	'fas_hotel'                                  : 'fas fa-hotel',
+	'fas_hourglass_end'                          : 'fas fa-hourglass-end',
+	'fas_hourglass_half'                         : 'fas fa-hourglass-half',
+	'fas_hourglass_start'                        : 'fas fa-hourglass-start',
+	'fas_hourglass'                              : 'fas fa-hourglass',
+	'fas_house_chimney_crack'                    : 'fas fa-house-chimney-crack',
+	'fas_house_chimney_medical'                  : 'fas fa-house-chimney-medical',
+	'fas_house_chimney_user'                     : 'fas fa-house-chimney-user',
+	'fas_house_chimney_window'                   : 'fas fa-house-chimney-window',
+	'fas_house_chimney'                          : 'fas fa-house-chimney',
+	'fas_house_circle_check'                     : 'fas fa-house-circle-check',
+	'fas_house_circle_exclamation'               : 'fas fa-house-circle-exclamation',
+	'fas_house_circle_xmark'                     : 'fas fa-house-circle-xmark',
+	'fas_house_crack'                            : 'fas fa-house-crack',
+	'fas_house_fire'                             : 'fas fa-house-fire',
+	'fas_house_flag'                             : 'fas fa-house-flag',
+	'fas_house_flood_water_circle_arrow_right'   : 'fas fa-house-flood-water-circle-arrow-right',
+	'fas_house_flood_water'                      : 'fas fa-house-flood-water',
+	'fas_house_laptop'                           : 'fas fa-house-laptop',
+	'fas_house_lock'                             : 'fas fa-house-lock',
+	'fas_house_medical_circle_check'             : 'fas fa-house-medical-circle-check',
+	'fas_house_medical_circle_exclamation'       : 'fas fa-house-medical-circle-exclamation',
+	'fas_house_medical_circle_xmark'             : 'fas fa-house-medical-circle-xmark',
+	'fas_house_medical_flag'                     : 'fas fa-house-medical-flag',
+	'fas_house_medical'                          : 'fas fa-house-medical',
+	'fas_house_signal'                           : 'fas fa-house-signal',
+	'fas_house_tsunami'                          : 'fas fa-house-tsunami',
+	'fas_house_user'                             : 'fas fa-house-user',
+	'fas_house'                                  : 'fas fa-house',
+	'fas_hryvnia_sign'                           : 'fas fa-hryvnia-sign',
+	'fas_hurricane'                              : 'fas fa-hurricane',
+	'fas_i_cursor'                               : 'fas fa-i-cursor',
+	'fas_i'                                      : 'fas fa-i',
+	'fas_ice_cream'                              : 'fas fa-ice-cream',
+	'fas_icicles'                                : 'fas fa-icicles',
+	'fas_icons'                                  : 'fas fa-icons',
+	'fas_id_badge'                               : 'fas fa-id-badge',
+	'fas_id_card_clip'                           : 'fas fa-id-card-clip',
+	'fas_id_card'                                : 'fas fa-id-card',
+	'fas_igloo'                                  : 'fas fa-igloo',
+	'fas_image_portrait'                         : 'fas fa-image-portrait',
+	'fas_image'                                  : 'fas fa-image',
+	'fas_images'                                 : 'fas fa-images',
+	'fas_inbox'                                  : 'fas fa-inbox',
+	'fas_indent'                                 : 'fas fa-indent',
+	'fas_indian_rupee_sign'                      : 'fas fa-indian-rupee-sign',
+	'fas_industry'                               : 'fas fa-industry',
+	'fas_infinity'                               : 'fas fa-infinity',
+	'fas_info'                                   : 'fas fa-info',
+	'fas_italic'                                 : 'fas fa-italic',
+	'fas_j'                                      : 'fas fa-j',
+	'fas_jar_wheat'                              : 'fas fa-jar-wheat',
+	'fas_jar'                                    : 'fas fa-jar',
+	'fas_jedi'                                   : 'fas fa-jedi',
+	'fas_jet_fighter_up'                         : 'fas fa-jet-fighter-up',
+	'fas_jet_fighter'                            : 'fas fa-jet-fighter',
+	'fas_joint'                                  : 'fas fa-joint',
+	'fas_jug_detergent'                          : 'fas fa-jug-detergent',
+	'fas_k'                                      : 'fas fa-k',
+	'fas_kaaba'                                  : 'fas fa-kaaba',
+	'fas_key'                                    : 'fas fa-key',
+	'fas_keyboard'                               : 'fas fa-keyboard',
+	'fas_khanda'                                 : 'fas fa-khanda',
+	'fas_kip_sign'                               : 'fas fa-kip-sign',
+	'fas_kit_medical'                            : 'fas fa-kit-medical',
+	'fas_kitchen_set'                            : 'fas fa-kitchen-set',
+	'fas_kiwi_bird'                              : 'fas fa-kiwi-bird',
+	'fas_l'                                      : 'fas fa-l',
+	'fas_land_mine_on'                           : 'fas fa-land-mine-on',
+	'fas_landmark_dome'                          : 'fas fa-landmark-dome',
+	'fas_landmark_flag'                          : 'fas fa-landmark-flag',
+	'fas_landmark'                               : 'fas fa-landmark',
+	'fas_language'                               : 'fas fa-language',
+	'fas_laptop_code'                            : 'fas fa-laptop-code',
+	'fas_laptop_file'                            : 'fas fa-laptop-file',
+	'fas_laptop_medical'                         : 'fas fa-laptop-medical',
+	'fas_laptop'                                 : 'fas fa-laptop',
+	'fas_lari_sign'                              : 'fas fa-lari-sign',
+	'fas_layer_group'                            : 'fas fa-layer-group',
+	'fas_leaf'                                   : 'fas fa-leaf',
+	'fas_left_long'                              : 'fas fa-left-long',
+	'fas_left_right'                             : 'fas fa-left-right',
+	'fas_lemon'                                  : 'fas fa-lemon',
+	'fas_less_than_equal'                        : 'fas fa-less-than-equal',
+	'fas_less_than'                              : 'fas fa-less-than',
+	'fas_life_ring'                              : 'fas fa-life-ring',
+	'fas_lightbulb'                              : 'fas fa-lightbulb',
+	'fas_lines_leaning'                          : 'fas fa-lines-leaning',
+	'fas_link_slash'                             : 'fas fa-link-slash',
+	'fas_link'                                   : 'fas fa-link',
+	'fas_lira_sign'                              : 'fas fa-lira-sign',
+	'fas_list_check'                             : 'fas fa-list-check',
+	'fas_list_ol'                                : 'fas fa-list-ol',
+	'fas_list_ul'                                : 'fas fa-list-ul',
+	'fas_list'                                   : 'fas fa-list',
+	'fas_litecoin_sign'                          : 'fas fa-litecoin-sign',
+	'fas_location_arrow'                         : 'fas fa-location-arrow',
+	'fas_location_crosshairs'                    : 'fas fa-location-crosshairs',
+	'fas_location_dot'                           : 'fas fa-location-dot',
+	'fas_location_pin_lock'                      : 'fas fa-location-pin-lock',
+	'fas_location_pin'                           : 'fas fa-location-pin',
+	'fas_lock_open'                              : 'fas fa-lock-open',
+	'fas_lock'                                   : 'fas fa-lock',
+	'fas_locust'                                 : 'fas fa-locust',
+	'fas_lungs_virus'                            : 'fas fa-lungs-virus',
+	'fas_lungs'                                  : 'fas fa-lungs',
+	'fas_m'                                      : 'fas fa-m',
+	'fas_magnet'                                 : 'fas fa-magnet',
+	'fas_magnifying_glass_arrow_right'           : 'fas fa-magnifying-glass-arrow-right',
+	'fas_magnifying_glass_chart'                 : 'fas fa-magnifying-glass-chart',
+	'fas_magnifying_glass_dollar'                : 'fas fa-magnifying-glass-dollar',
+	'fas_magnifying_glass_location'              : 'fas fa-magnifying-glass-location',
+	'fas_magnifying_glass_minus'                 : 'fas fa-magnifying-glass-minus',
+	'fas_magnifying_glass_plus'                  : 'fas fa-magnifying-glass-plus',
+	'fas_magnifying_glass'                       : 'fas fa-magnifying-glass',
+	'fas_manat_sign'                             : 'fas fa-manat-sign',
+	'fas_map_location_dot'                       : 'fas fa-map-location-dot',
+	'fas_map_location'                           : 'fas fa-map-location',
+	'fas_map_pin'                                : 'fas fa-map-pin',
+	'fas_map'                                    : 'fas fa-map',
+	'fas_marker'                                 : 'fas fa-marker',
+	'fas_mars_and_venus_burst'                   : 'fas fa-mars-and-venus-burst',
+	'fas_mars_and_venus'                         : 'fas fa-mars-and-venus',
+	'fas_mars_double'                            : 'fas fa-mars-double',
+	'fas_mars_stroke_right'                      : 'fas fa-mars-stroke-right',
+	'fas_mars_stroke_up'                         : 'fas fa-mars-stroke-up',
+	'fas_mars_stroke'                            : 'fas fa-mars-stroke',
+	'fas_mars'                                   : 'fas fa-mars',
+	'fas_martini_glass_citrus'                   : 'fas fa-martini-glass-citrus',
+	'fas_martini_glass_empty'                    : 'fas fa-martini-glass-empty',
+	'fas_martini_glass'                          : 'fas fa-martini-glass',
+	'fas_mask_face'                              : 'fas fa-mask-face',
+	'fas_mask_ventilator'                        : 'fas fa-mask-ventilator',
+	'fas_mask'                                   : 'fas fa-mask',
+	'fas_masks_theater'                          : 'fas fa-masks-theater',
+	'fas_mattress_pillow'                        : 'fas fa-mattress-pillow',
+	'fas_maximize'                               : 'fas fa-maximize',
+	'fas_medal'                                  : 'fas fa-medal',
+	'fas_memory'                                 : 'fas fa-memory',
+	'fas_menorah'                                : 'fas fa-menorah',
+	'fas_mercury'                                : 'fas fa-mercury',
+	'fas_message'                                : 'fas fa-message',
+	'fas_meteor'                                 : 'fas fa-meteor',
+	'fas_microchip'                              : 'fas fa-microchip',
+	'fas_microphone_lines_slash'                 : 'fas fa-microphone-lines-slash',
+	'fas_microphone_lines'                       : 'fas fa-microphone-lines',
+	'fas_microphone_slash'                       : 'fas fa-microphone-slash',
+	'fas_microphone'                             : 'fas fa-microphone',
+	'fas_microscope'                             : 'fas fa-microscope',
+	'fas_mill_sign'                              : 'fas fa-mill-sign',
+	'fas_minimize'                               : 'fas fa-minimize',
+	'fas_minus'                                  : 'fas fa-minus',
+	'fas_mitten'                                 : 'fas fa-mitten',
+	'fas_mobile_button'                          : 'fas fa-mobile-button',
+	'fas_mobile_retro'                           : 'fas fa-mobile-retro',
+	'fas_mobile_screen_button'                   : 'fas fa-mobile-screen-button',
+	'fas_mobile_screen'                          : 'fas fa-mobile-screen',
+	'fas_mobile'                                 : 'fas fa-mobile',
+	'fas_money_bill_1_wave'                      : 'fas fa-money-bill-1-wave',
+	'fas_money_bill_1'                           : 'fas fa-money-bill-1',
+	'fas_money_bill_transfer'                    : 'fas fa-money-bill-transfer',
+	'fas_money_bill_trend_up'                    : 'fas fa-money-bill-trend-up',
+	'fas_money_bill_wave'                        : 'fas fa-money-bill-wave',
+	'fas_money_bill_wheat'                       : 'fas fa-money-bill-wheat',
+	'fas_money_bill'                             : 'fas fa-money-bill',
+	'fas_money_bills'                            : 'fas fa-money-bills',
+	'fas_money_check_dollar'                     : 'fas fa-money-check-dollar',
+	'fas_money_check'                            : 'fas fa-money-check',
+	'fas_monument'                               : 'fas fa-monument',
+	'fas_moon'                                   : 'fas fa-moon',
+	'fas_mortar_pestle'                          : 'fas fa-mortar-pestle',
+	'fas_mosque'                                 : 'fas fa-mosque',
+	'fas_mosquito_net'                           : 'fas fa-mosquito-net',
+	'fas_mosquito'                               : 'fas fa-mosquito',
+	'fas_motorcycle'                             : 'fas fa-motorcycle',
+	'fas_mound'                                  : 'fas fa-mound',
+	'fas_mountain_city'                          : 'fas fa-mountain-city',
+	'fas_mountain_sun'                           : 'fas fa-mountain-sun',
+	'fas_mountain'                               : 'fas fa-mountain',
+	'fas_mug_hot'                                : 'fas fa-mug-hot',
+	'fas_mug_saucer'                             : 'fas fa-mug-saucer',
+	'fas_music'                                  : 'fas fa-music',
+	'fas_n'                                      : 'fas fa-n',
+	'fas_naira_sign'                             : 'fas fa-naira-sign',
+	'fas_network_wired'                          : 'fas fa-network-wired',
+	'fas_neuter'                                 : 'fas fa-neuter',
+	'fas_newspaper'                              : 'fas fa-newspaper',
+	'fas_not_equal'                              : 'fas fa-not-equal',
+	'fas_notdef'                                 : 'fas fa-notdef',
+	'fas_note_sticky'                            : 'fas fa-note-sticky',
+	'fas_notes_medical'                          : 'fas fa-notes-medical',
+	'fas_o'                                      : 'fas fa-o',
+	'fas_object_group'                           : 'fas fa-object-group',
+	'fas_object_ungroup'                         : 'fas fa-object-ungroup',
+	'fas_oil_can'                                : 'fas fa-oil-can',
+	'fas_oil_well'                               : 'fas fa-oil-well',
+	'fas_om'                                     : 'fas fa-om',
+	'fas_otter'                                  : 'fas fa-otter',
+	'fas_outdent'                                : 'fas fa-outdent',
+	'fas_p'                                      : 'fas fa-p',
+	'fas_pager'                                  : 'fas fa-pager',
+	'fas_paint_roller'                           : 'fas fa-paint-roller',
+	'fas_paintbrush'                             : 'fas fa-paintbrush',
+	'fas_palette'                                : 'fas fa-palette',
+	'fas_pallet'                                 : 'fas fa-pallet',
+	'fas_panorama'                               : 'fas fa-panorama',
+	'fas_paper_plane'                            : 'fas fa-paper-plane',
+	'fas_paperclip'                              : 'fas fa-paperclip',
+	'fas_parachute_box'                          : 'fas fa-parachute-box',
+	'fas_paragraph'                              : 'fas fa-paragraph',
+	'fas_passport'                               : 'fas fa-passport',
+	'fas_paste'                                  : 'fas fa-paste',
+	'fas_pause'                                  : 'fas fa-pause',
+	'fas_paw'                                    : 'fas fa-paw',
+	'fas_peace'                                  : 'fas fa-peace',
+	'fas_pen_clip'                               : 'fas fa-pen-clip',
+	'fas_pen_fancy'                              : 'fas fa-pen-fancy',
+	'fas_pen_nib'                                : 'fas fa-pen-nib',
+	'fas_pen_ruler'                              : 'fas fa-pen-ruler',
+	'fas_pen_to_square'                          : 'fas fa-pen-to-square',
+	'fas_pen'                                    : 'fas fa-pen',
+	'fas_pencil'                                 : 'fas fa-pencil',
+	'fas_people_arrows'                          : 'fas fa-people-arrows',
+	'fas_people_carry_box'                       : 'fas fa-people-carry-box',
+	'fas_people_group'                           : 'fas fa-people-group',
+	'fas_people_line'                            : 'fas fa-people-line',
+	'fas_people_pulling'                         : 'fas fa-people-pulling',
+	'fas_people_robbery'                         : 'fas fa-people-robbery',
+	'fas_people_roof'                            : 'fas fa-people-roof',
+	'fas_pepper_hot'                             : 'fas fa-pepper-hot',
+	'fas_percent'                                : 'fas fa-percent',
+	'fas_person_arrow_down_to_line'              : 'fas fa-person-arrow-down-to-line',
+	'fas_person_arrow_up_from_line'              : 'fas fa-person-arrow-up-from-line',
+	'fas_person_biking'                          : 'fas fa-person-biking',
+	'fas_person_booth'                           : 'fas fa-person-booth',
+	'fas_person_breastfeeding'                   : 'fas fa-person-breastfeeding',
+	'fas_person_burst'                           : 'fas fa-person-burst',
+	'fas_person_cane'                            : 'fas fa-person-cane',
+	'fas_person_chalkboard'                      : 'fas fa-person-chalkboard',
+	'fas_person_circle_check'                    : 'fas fa-person-circle-check',
+	'fas_person_circle_exclamation'              : 'fas fa-person-circle-exclamation',
+	'fas_person_circle_minus'                    : 'fas fa-person-circle-minus',
+	'fas_person_circle_plus'                     : 'fas fa-person-circle-plus',
+	'fas_person_circle_question'                 : 'fas fa-person-circle-question',
+	'fas_person_circle_xmark'                    : 'fas fa-person-circle-xmark',
+	'fas_person_digging'                         : 'fas fa-person-digging',
+	'fas_person_dots_from_line'                  : 'fas fa-person-dots-from-line',
+	'fas_person_dress_burst'                     : 'fas fa-person-dress-burst',
+	'fas_person_dress'                           : 'fas fa-person-dress',
+	'fas_person_drowning'                        : 'fas fa-person-drowning',
+	'fas_person_falling_burst'                   : 'fas fa-person-falling-burst',
+	'fas_person_falling'                         : 'fas fa-person-falling',
+	'fas_person_half_dress'                      : 'fas fa-person-half-dress',
+	'fas_person_harassing'                       : 'fas fa-person-harassing',
+	'fas_person_hiking'                          : 'fas fa-person-hiking',
+	'fas_person_military_pointing'               : 'fas fa-person-military-pointing',
+	'fas_person_military_rifle'                  : 'fas fa-person-military-rifle',
+	'fas_person_military_to_person'              : 'fas fa-person-military-to-person',
+	'fas_person_praying'                         : 'fas fa-person-praying',
+	'fas_person_pregnant'                        : 'fas fa-person-pregnant',
+	'fas_person_rays'                            : 'fas fa-person-rays',
+	'fas_person_rifle'                           : 'fas fa-person-rifle',
+	'fas_person_running'                         : 'fas fa-person-running',
+	'fas_person_shelter'                         : 'fas fa-person-shelter',
+	'fas_person_skating'                         : 'fas fa-person-skating',
+	'fas_person_skiing_nordic'                   : 'fas fa-person-skiing-nordic',
+	'fas_person_skiing'                          : 'fas fa-person-skiing',
+	'fas_person_snowboarding'                    : 'fas fa-person-snowboarding',
+	'fas_person_swimming'                        : 'fas fa-person-swimming',
+	'fas_person_through_window'                  : 'fas fa-person-through-window',
+	'fas_person_walking_arrow_loop_left'         : 'fas fa-person-walking-arrow-loop-left',
+	'fas_person_walking_arrow_right'             : 'fas fa-person-walking-arrow-right',
+	'fas_person_walking_dashed_line_arrow_right' : 'fas fa-person-walking-dashed-line-arrow-right',
+	'fas_person_walking_luggage'                 : 'fas fa-person-walking-luggage',
+	'fas_person_walking_with_cane'               : 'fas fa-person-walking-with-cane',
+	'fas_person_walking'                         : 'fas fa-person-walking',
+	'fas_person'                                 : 'fas fa-person',
+	'fas_peseta_sign'                            : 'fas fa-peseta-sign',
+	'fas_peso_sign'                              : 'fas fa-peso-sign',
+	'fas_phone_flip'                             : 'fas fa-phone-flip',
+	'fas_phone_slash'                            : 'fas fa-phone-slash',
+	'fas_phone_volume'                           : 'fas fa-phone-volume',
+	'fas_phone'                                  : 'fas fa-phone',
+	'fas_photo_film'                             : 'fas fa-photo-film',
+	'fas_piggy_bank'                             : 'fas fa-piggy-bank',
+	'fas_pills'                                  : 'fas fa-pills',
+	'fas_pizza_slice'                            : 'fas fa-pizza-slice',
+	'fas_place_of_worship'                       : 'fas fa-place-of-worship',
+	'fas_plane_arrival'                          : 'fas fa-plane-arrival',
+	'fas_plane_circle_check'                     : 'fas fa-plane-circle-check',
+	'fas_plane_circle_exclamation'               : 'fas fa-plane-circle-exclamation',
+	'fas_plane_circle_xmark'                     : 'fas fa-plane-circle-xmark',
+	'fas_plane_departure'                        : 'fas fa-plane-departure',
+	'fas_plane_lock'                             : 'fas fa-plane-lock',
+	'fas_plane_slash'                            : 'fas fa-plane-slash',
+	'fas_plane_up'                               : 'fas fa-plane-up',
+	'fas_plane'                                  : 'fas fa-plane',
+	'fas_plant_wilt'                             : 'fas fa-plant-wilt',
+	'fas_plate_wheat'                            : 'fas fa-plate-wheat',
+	'fas_play'                                   : 'fas fa-play',
+	'fas_plug_circle_bolt'                       : 'fas fa-plug-circle-bolt',
+	'fas_plug_circle_check'                      : 'fas fa-plug-circle-check',
+	'fas_plug_circle_exclamation'                : 'fas fa-plug-circle-exclamation',
+	'fas_plug_circle_minus'                      : 'fas fa-plug-circle-minus',
+	'fas_plug_circle_plus'                       : 'fas fa-plug-circle-plus',
+	'fas_plug_circle_xmark'                      : 'fas fa-plug-circle-xmark',
+	'fas_plug'                                   : 'fas fa-plug',
+	'fas_plus_minus'                             : 'fas fa-plus-minus',
+	'fas_plus'                                   : 'fas fa-plus',
+	'fas_podcast'                                : 'fas fa-podcast',
+	'fas_poo_storm'                              : 'fas fa-poo-storm',
+	'fas_poo'                                    : 'fas fa-poo',
+	'fas_poop'                                   : 'fas fa-poop',
+	'fas_power_off'                              : 'fas fa-power-off',
+	'fas_prescription_bottle_medical'            : 'fas fa-prescription-bottle-medical',
+	'fas_prescription_bottle'                    : 'fas fa-prescription-bottle',
+	'fas_prescription'                           : 'fas fa-prescription',
+	'fas_print'                                  : 'fas fa-print',
+	'fas_pump_medical'                           : 'fas fa-pump-medical',
+	'fas_pump_soap'                              : 'fas fa-pump-soap',
+	'fas_puzzle_piece'                           : 'fas fa-puzzle-piece',
+	'fas_q'                                      : 'fas fa-q',
+	'fas_qrcode'                                 : 'fas fa-qrcode',
+	'fas_question'                               : 'fas fa-question',
+	'fas_quote_left'                             : 'fas fa-quote-left',
+	'fas_quote_right'                            : 'fas fa-quote-right',
+	'fas_r'                                      : 'fas fa-r',
+	'fas_radiation'                              : 'fas fa-radiation',
+	'fas_radio'                                  : 'fas fa-radio',
+	'fas_rainbow'                                : 'fas fa-rainbow',
+	'fas_ranking_star'                           : 'fas fa-ranking-star',
+	'fas_receipt'                                : 'fas fa-receipt',
+	'fas_record_vinyl'                           : 'fas fa-record-vinyl',
+	'fas_rectangle_ad'                           : 'fas fa-rectangle-ad',
+	'fas_rectangle_list'                         : 'fas fa-rectangle-list',
+	'fas_rectangle_xmark'                        : 'fas fa-rectangle-xmark',
+	'fas_recycle'                                : 'fas fa-recycle',
+	'fas_registered'                             : 'fas fa-registered',
+	'fas_repeat'                                 : 'fas fa-repeat',
+	'fas_reply_all'                              : 'fas fa-reply-all',
+	'fas_reply'                                  : 'fas fa-reply',
+	'fas_republican'                             : 'fas fa-republican',
+	'fas_restroom'                               : 'fas fa-restroom',
+	'fas_retweet'                                : 'fas fa-retweet',
+	'fas_ribbon'                                 : 'fas fa-ribbon',
+	'fas_right_from_bracket'                     : 'fas fa-right-from-bracket',
+	'fas_right_left'                             : 'fas fa-right-left',
+	'fas_right_long'                             : 'fas fa-right-long',
+	'fas_right_to_bracket'                       : 'fas fa-right-to-bracket',
+	'fas_ring'                                   : 'fas fa-ring',
+	'fas_road_barrier'                           : 'fas fa-road-barrier',
+	'fas_road_bridge'                            : 'fas fa-road-bridge',
+	'fas_road_circle_check'                      : 'fas fa-road-circle-check',
+	'fas_road_circle_exclamation'                : 'fas fa-road-circle-exclamation',
+	'fas_road_circle_xmark'                      : 'fas fa-road-circle-xmark',
+	'fas_road_lock'                              : 'fas fa-road-lock',
+	'fas_road_spikes'                            : 'fas fa-road-spikes',
+	'fas_road'                                   : 'fas fa-road',
+	'fas_robot'                                  : 'fas fa-robot',
+	'fas_rocket'                                 : 'fas fa-rocket',
+	'fas_rotate_left'                            : 'fas fa-rotate-left',
+	'fas_rotate_right'                           : 'fas fa-rotate-right',
+	'fas_rotate'                                 : 'fas fa-rotate',
+	'fas_route'                                  : 'fas fa-route',
+	'fas_rss'                                    : 'fas fa-rss',
+	'fas_ruble_sign'                             : 'fas fa-ruble-sign',
+	'fas_rug'                                    : 'fas fa-rug',
+	'fas_ruler_combined'                         : 'fas fa-ruler-combined',
+	'fas_ruler_horizontal'                       : 'fas fa-ruler-horizontal',
+	'fas_ruler_vertical'                         : 'fas fa-ruler-vertical',
+	'fas_ruler'                                  : 'fas fa-ruler',
+	'fas_rupee_sign'                             : 'fas fa-rupee-sign',
+	'fas_rupiah_sign'                            : 'fas fa-rupiah-sign',
+	'fas_s'                                      : 'fas fa-s',
+	'fas_sack_dollar'                            : 'fas fa-sack-dollar',
+	'fas_sack_xmark'                             : 'fas fa-sack-xmark',
+	'fas_sailboat'                               : 'fas fa-sailboat',
+	'fas_satellite_dish'                         : 'fas fa-satellite-dish',
+	'fas_satellite'                              : 'fas fa-satellite',
+	'fas_scale_balanced'                         : 'fas fa-scale-balanced',
+	'fas_scale_unbalanced_flip'                  : 'fas fa-scale-unbalanced-flip',
+	'fas_scale_unbalanced'                       : 'fas fa-scale-unbalanced',
+	'fas_school_circle_check'                    : 'fas fa-school-circle-check',
+	'fas_school_circle_exclamation'              : 'fas fa-school-circle-exclamation',
+	'fas_school_circle_xmark'                    : 'fas fa-school-circle-xmark',
+	'fas_school_flag'                            : 'fas fa-school-flag',
+	'fas_school_lock'                            : 'fas fa-school-lock',
+	'fas_school'                                 : 'fas fa-school',
+	'fas_scissors'                               : 'fas fa-scissors',
+	'fas_screwdriver_wrench'                     : 'fas fa-screwdriver-wrench',
+	'fas_screwdriver'                            : 'fas fa-screwdriver',
+	'fas_scroll_torah'                           : 'fas fa-scroll-torah',
+	'fas_scroll'                                 : 'fas fa-scroll',
+	'fas_sd_card'                                : 'fas fa-sd-card',
+	'fas_section'                                : 'fas fa-section',
+	'fas_seedling'                               : 'fas fa-seedling',
+	'fas_server'                                 : 'fas fa-server',
+	'fas_shapes'                                 : 'fas fa-shapes',
+	'fas_share_from_square'                      : 'fas fa-share-from-square',
+	'fas_share_nodes'                            : 'fas fa-share-nodes',
+	'fas_share'                                  : 'fas fa-share',
+	'fas_sheet_plastic'                          : 'fas fa-sheet-plastic',
+	'fas_shekel_sign'                            : 'fas fa-shekel-sign',
+	'fas_shield_cat'                             : 'fas fa-shield-cat',
+	'fas_shield_dog'                             : 'fas fa-shield-dog',
+	'fas_shield_halved'                          : 'fas fa-shield-halved',
+	'fas_shield_heart'                           : 'fas fa-shield-heart',
+	'fas_shield_virus'                           : 'fas fa-shield-virus',
+	'fas_shield'                                 : 'fas fa-shield',
+	'fas_ship'                                   : 'fas fa-ship',
+	'fas_shirt'                                  : 'fas fa-shirt',
+	'fas_shoe_prints'                            : 'fas fa-shoe-prints',
+	'fas_shop_lock'                              : 'fas fa-shop-lock',
+	'fas_shop_slash'                             : 'fas fa-shop-slash',
+	'fas_shop'                                   : 'fas fa-shop',
+	'fas_shower'                                 : 'fas fa-shower',
+	'fas_shrimp'                                 : 'fas fa-shrimp',
+	'fas_shuffle'                                : 'fas fa-shuffle',
+	'fas_shuttle_space'                          : 'fas fa-shuttle-space',
+	'fas_sign_hanging'                           : 'fas fa-sign-hanging',
+	'fas_signal'                                 : 'fas fa-signal',
+	'fas_signature'                              : 'fas fa-signature',
+	'fas_signs_post'                             : 'fas fa-signs-post',
+	'fas_sim_card'                               : 'fas fa-sim-card',
+	'fas_sink'                                   : 'fas fa-sink',
+	'fas_sitemap'                                : 'fas fa-sitemap',
+	'fas_skull_crossbones'                       : 'fas fa-skull-crossbones',
+	'fas_skull'                                  : 'fas fa-skull',
+	'fas_slash'                                  : 'fas fa-slash',
+	'fas_sleigh'                                 : 'fas fa-sleigh',
+	'fas_sliders'                                : 'fas fa-sliders',
+	'fas_smog'                                   : 'fas fa-smog',
+	'fas_smoking'                                : 'fas fa-smoking',
+	'fas_snowflake'                              : 'fas fa-snowflake',
+	'fas_snowman'                                : 'fas fa-snowman',
+	'fas_snowplow'                               : 'fas fa-snowplow',
+	'fas_soap'                                   : 'fas fa-soap',
+	'fas_socks'                                  : 'fas fa-socks',
+	'fas_solar_panel'                            : 'fas fa-solar-panel',
+	'fas_sort_down'                              : 'fas fa-sort-down',
+	'fas_sort_up'                                : 'fas fa-sort-up',
+	'fas_sort'                                   : 'fas fa-sort',
+	'fas_spa'                                    : 'fas fa-spa',
+	'fas_spaghetti_monster_flying'               : 'fas fa-spaghetti-monster-flying',
+	'fas_spell_check'                            : 'fas fa-spell-check',
+	'fas_spider'                                 : 'fas fa-spider',
+	'fas_spinner'                                : 'fas fa-spinner',
+	'fas_splotch'                                : 'fas fa-splotch',
+	'fas_spoon'                                  : 'fas fa-spoon',
+	'fas_spray_can_sparkles'                     : 'fas fa-spray-can-sparkles',
+	'fas_spray_can'                              : 'fas fa-spray-can',
+	'fas_square_arrow_up_right'                  : 'fas fa-square-arrow-up-right',
+	'fas_square_caret_down'                      : 'fas fa-square-caret-down',
+	'fas_square_caret_left'                      : 'fas fa-square-caret-left',
+	'fas_square_caret_right'                     : 'fas fa-square-caret-right',
+	'fas_square_caret_up'                        : 'fas fa-square-caret-up',
+	'fas_square_check'                           : 'fas fa-square-check',
+	'fas_square_envelope'                        : 'fas fa-square-envelope',
+	'fas_square_full'                            : 'fas fa-square-full',
+	'fas_square_h'                               : 'fas fa-square-h',
+	'fas_square_minus'                           : 'fas fa-square-minus',
+	'fas_square_nfi'                             : 'fas fa-square-nfi',
+	'fas_square_parking'                         : 'fas fa-square-parking',
+	'fas_square_pen'                             : 'fas fa-square-pen',
+	'fas_square_person_confined'                 : 'fas fa-square-person-confined',
+	'fas_square_phone_flip'                      : 'fas fa-square-phone-flip',
+	'fas_square_phone'                           : 'fas fa-square-phone',
+	'fas_square_plus'                            : 'fas fa-square-plus',
+	'fas_square_poll_horizontal'                 : 'fas fa-square-poll-horizontal',
+	'fas_square_poll_vertical'                   : 'fas fa-square-poll-vertical',
+	'fas_square_root_variable'                   : 'fas fa-square-root-variable',
+	'fas_square_rss'                             : 'fas fa-square-rss',
+	'fas_square_share_nodes'                     : 'fas fa-square-share-nodes',
+	'fas_square_up_right'                        : 'fas fa-square-up-right',
+	'fas_square_virus'                           : 'fas fa-square-virus',
+	'fas_square_xmark'                           : 'fas fa-square-xmark',
+	'fas_square'                                 : 'fas fa-square',
+	'fas_staff_snake'                            : 'fas fa-staff-snake',
+	'fas_stairs'                                 : 'fas fa-stairs',
+	'fas_stamp'                                  : 'fas fa-stamp',
+	'fas_stapler'                                : 'fas fa-stapler',
+	'fas_star_and_crescent'                      : 'fas fa-star-and-crescent',
+	'fas_star_half_stroke'                       : 'fas fa-star-half-stroke',
+	'fas_star_half'                              : 'fas fa-star-half',
+	'fas_star_of_david'                          : 'fas fa-star-of-david',
+	'fas_star_of_life'                           : 'fas fa-star-of-life',
+	'fas_star'                                   : 'fas fa-star',
+	'fas_sterling_sign'                          : 'fas fa-sterling-sign',
+	'fas_stethoscope'                            : 'fas fa-stethoscope',
+	'fas_stop'                                   : 'fas fa-stop',
+	'fas_stopwatch_20'                           : 'fas fa-stopwatch-20',
+	'fas_stopwatch'                              : 'fas fa-stopwatch',
+	'fas_store_slash'                            : 'fas fa-store-slash',
+	'fas_store'                                  : 'fas fa-store',
+	'fas_street_view'                            : 'fas fa-street-view',
+	'fas_strikethrough'                          : 'fas fa-strikethrough',
+	'fas_stroopwafel'                            : 'fas fa-stroopwafel',
+	'fas_subscript'                              : 'fas fa-subscript',
+	'fas_suitcase_medical'                       : 'fas fa-suitcase-medical',
+	'fas_suitcase_rolling'                       : 'fas fa-suitcase-rolling',
+	'fas_suitcase'                               : 'fas fa-suitcase',
+	'fas_sun_plant_wilt'                         : 'fas fa-sun-plant-wilt',
+	'fas_sun'                                    : 'fas fa-sun',
+	'fas_superscript'                            : 'fas fa-superscript',
+	'fas_swatchbook'                             : 'fas fa-swatchbook',
+	'fas_synagogue'                              : 'fas fa-synagogue',
+	'fas_syringe'                                : 'fas fa-syringe',
+	'fas_t'                                      : 'fas fa-t',
+	'fas_table_cells_column_lock'                : 'fas fa-table-cells-column-lock',
+	'fas_table_cells_large'                      : 'fas fa-table-cells-large',
+	'fas_table_cells_row_lock'                   : 'fas fa-table-cells-row-lock',
+	'fas_table_cells'                            : 'fas fa-table-cells',
+	'fas_table_columns'                          : 'fas fa-table-columns',
+	'fas_table_list'                             : 'fas fa-table-list',
+	'fas_table_tennis_paddle_ball'               : 'fas fa-table-tennis-paddle-ball',
+	'fas_table'                                  : 'fas fa-table',
+	'fas_tablet_button'                          : 'fas fa-tablet-button',
+	'fas_tablet_screen_button'                   : 'fas fa-tablet-screen-button',
+	'fas_tablet'                                 : 'fas fa-tablet',
+	'fas_tablets'                                : 'fas fa-tablets',
+	'fas_tachograph_digital'                     : 'fas fa-tachograph-digital',
+	'fas_tag'                                    : 'fas fa-tag',
+	'fas_tags'                                   : 'fas fa-tags',
+	'fas_tape'                                   : 'fas fa-tape',
+	'fas_tarp_droplet'                           : 'fas fa-tarp-droplet',
+	'fas_tarp'                                   : 'fas fa-tarp',
+	'fas_taxi'                                   : 'fas fa-taxi',
+	'fas_teeth_open'                             : 'fas fa-teeth-open',
+	'fas_teeth'                                  : 'fas fa-teeth',
+	'fas_temperature_arrow_down'                 : 'fas fa-temperature-arrow-down',
+	'fas_temperature_arrow_up'                   : 'fas fa-temperature-arrow-up',
+	'fas_temperature_empty'                      : 'fas fa-temperature-empty',
+	'fas_temperature_full'                       : 'fas fa-temperature-full',
+	'fas_temperature_half'                       : 'fas fa-temperature-half',
+	'fas_temperature_high'                       : 'fas fa-temperature-high',
+	'fas_temperature_low'                        : 'fas fa-temperature-low',
+	'fas_temperature_quarter'                    : 'fas fa-temperature-quarter',
+	'fas_temperature_three_quarters'             : 'fas fa-temperature-three-quarters',
+	'fas_tenge_sign'                             : 'fas fa-tenge-sign',
+	'fas_tent_arrow_down_to_line'                : 'fas fa-tent-arrow-down-to-line',
+	'fas_tent_arrow_left_right'                  : 'fas fa-tent-arrow-left-right',
+	'fas_tent_arrow_turn_left'                   : 'fas fa-tent-arrow-turn-left',
+	'fas_tent_arrows_down'                       : 'fas fa-tent-arrows-down',
+	'fas_tent'                                   : 'fas fa-tent',
+	'fas_tents'                                  : 'fas fa-tents',
+	'fas_terminal'                               : 'fas fa-terminal',
+	'fas_text_height'                            : 'fas fa-text-height',
+	'fas_text_slash'                             : 'fas fa-text-slash',
+	'fas_text_width'                             : 'fas fa-text-width',
+	'fas_thermometer'                            : 'fas fa-thermometer',
+	'fas_thumbs_down'                            : 'fas fa-thumbs-down',
+	'fas_thumbs_up'                              : 'fas fa-thumbs-up',
+	'fas_thumbtack'                              : 'fas fa-thumbtack',
+	'fas_ticket_simple'                          : 'fas fa-ticket-simple',
+	'fas_ticket'                                 : 'fas fa-ticket',
+	'fas_timeline'                               : 'fas fa-timeline',
+	'fas_toggle_off'                             : 'fas fa-toggle-off',
+	'fas_toggle_on'                              : 'fas fa-toggle-on',
+	'fas_toilet_paper_slash'                     : 'fas fa-toilet-paper-slash',
+	'fas_toilet_paper'                           : 'fas fa-toilet-paper',
+	'fas_toilet_portable'                        : 'fas fa-toilet-portable',
+	'fas_toilet'                                 : 'fas fa-toilet',
+	'fas_toilets_portable'                       : 'fas fa-toilets-portable',
+	'fas_toolbox'                                : 'fas fa-toolbox',
+	'fas_tooth'                                  : 'fas fa-tooth',
+	'fas_torii_gate'                             : 'fas fa-torii-gate',
+	'fas_tornado'                                : 'fas fa-tornado',
+	'fas_tower_broadcast'                        : 'fas fa-tower-broadcast',
+	'fas_tower_cell'                             : 'fas fa-tower-cell',
+	'fas_tower_observation'                      : 'fas fa-tower-observation',
+	'fas_tractor'                                : 'fas fa-tractor',
+	'fas_trademark'                              : 'fas fa-trademark',
+	'fas_traffic_light'                          : 'fas fa-traffic-light',
+	'fas_trailer'                                : 'fas fa-trailer',
+	'fas_train_subway'                           : 'fas fa-train-subway',
+	'fas_train_tram'                             : 'fas fa-train-tram',
+	'fas_train'                                  : 'fas fa-train',
+	'fas_transgender'                            : 'fas fa-transgender',
+	'fas_trash_arrow_up'                         : 'fas fa-trash-arrow-up',
+	'fas_trash_can_arrow_up'                     : 'fas fa-trash-can-arrow-up',
+	'fas_trash_can'                              : 'fas fa-trash-can',
+	'fas_trash'                                  : 'fas fa-trash',
+	'fas_tree_city'                              : 'fas fa-tree-city',
+	'fas_tree'                                   : 'fas fa-tree',
+	'fas_triangle_exclamation'                   : 'fas fa-triangle-exclamation',
+	'fas_trophy'                                 : 'fas fa-trophy',
+	'fas_trowel_bricks'                          : 'fas fa-trowel-bricks',
+	'fas_trowel'                                 : 'fas fa-trowel',
+	'fas_truck_arrow_right'                      : 'fas fa-truck-arrow-right',
+	'fas_truck_droplet'                          : 'fas fa-truck-droplet',
+	'fas_truck_fast'                             : 'fas fa-truck-fast',
+	'fas_truck_field_un'                         : 'fas fa-truck-field-un',
+	'fas_truck_field'                            : 'fas fa-truck-field',
+	'fas_truck_front'                            : 'fas fa-truck-front',
+	'fas_truck_medical'                          : 'fas fa-truck-medical',
+	'fas_truck_monster'                          : 'fas fa-truck-monster',
+	'fas_truck_moving'                           : 'fas fa-truck-moving',
+	'fas_truck_pickup'                           : 'fas fa-truck-pickup',
+	'fas_truck_plane'                            : 'fas fa-truck-plane',
+	'fas_truck_ramp_box'                         : 'fas fa-truck-ramp-box',
+	'fas_truck'                                  : 'fas fa-truck',
+	'fas_tty'                                    : 'fas fa-tty',
+	'fas_turkish_lira_sign'                      : 'fas fa-turkish-lira-sign',
+	'fas_turn_down'                              : 'fas fa-turn-down',
+	'fas_turn_up'                                : 'fas fa-turn-up',
+	'fas_tv'                                     : 'fas fa-tv',
+	'fas_u'                                      : 'fas fa-u',
+	'fas_umbrella_beach'                         : 'fas fa-umbrella-beach',
+	'fas_umbrella'                               : 'fas fa-umbrella',
+	'fas_underline'                              : 'fas fa-underline',
+	'fas_universal_access'                       : 'fas fa-universal-access',
+	'fas_unlock_keyhole'                         : 'fas fa-unlock-keyhole',
+	'fas_unlock'                                 : 'fas fa-unlock',
+	'fas_up_down_left_right'                     : 'fas fa-up-down-left-right',
+	'fas_up_down'                                : 'fas fa-up-down',
+	'fas_up_long'                                : 'fas fa-up-long',
+	'fas_up_right_and_down_left_from_center'     : 'fas fa-up-right-and-down-left-from-center',
+	'fas_up_right_from_square'                   : 'fas fa-up-right-from-square',
+	'fas_upload'                                 : 'fas fa-upload',
+	'fas_user_astronaut'                         : 'fas fa-user-astronaut',
+	'fas_user_check'                             : 'fas fa-user-check',
+	'fas_user_clock'                             : 'fas fa-user-clock',
+	'fas_user_doctor'                            : 'fas fa-user-doctor',
+	'fas_user_gear'                              : 'fas fa-user-gear',
+	'fas_user_graduate'                          : 'fas fa-user-graduate',
+	'fas_user_group'                             : 'fas fa-user-group',
+	'fas_user_injured'                           : 'fas fa-user-injured',
+	'fas_user_large_slash'                       : 'fas fa-user-large-slash',
+	'fas_user_large'                             : 'fas fa-user-large',
+	'fas_user_lock'                              : 'fas fa-user-lock',
+	'fas_user_minus'                             : 'fas fa-user-minus',
+	'fas_user_ninja'                             : 'fas fa-user-ninja',
+	'fas_user_nurse'                             : 'fas fa-user-nurse',
+	'fas_user_pen'                               : 'fas fa-user-pen',
+	'fas_user_plus'                              : 'fas fa-user-plus',
+	'fas_user_secret'                            : 'fas fa-user-secret',
+	'fas_user_shield'                            : 'fas fa-user-shield',
+	'fas_user_slash'                             : 'fas fa-user-slash',
+	'fas_user_tag'                               : 'fas fa-user-tag',
+	'fas_user_tie'                               : 'fas fa-user-tie',
+	'fas_user_xmark'                             : 'fas fa-user-xmark',
+	'fas_user'                                   : 'fas fa-user',
+	'fas_users_between_lines'                    : 'fas fa-users-between-lines',
+	'fas_users_gear'                             : 'fas fa-users-gear',
+	'fas_users_line'                             : 'fas fa-users-line',
+	'fas_users_rays'                             : 'fas fa-users-rays',
+	'fas_users_rectangle'                        : 'fas fa-users-rectangle',
+	'fas_users_slash'                            : 'fas fa-users-slash',
+	'fas_users_viewfinder'                       : 'fas fa-users-viewfinder',
+	'fas_users'                                  : 'fas fa-users',
+	'fas_utensils'                               : 'fas fa-utensils',
+	'fas_v'                                      : 'fas fa-v',
+	'fas_van_shuttle'                            : 'fas fa-van-shuttle',
+	'fas_vault'                                  : 'fas fa-vault',
+	'fas_vector_square'                          : 'fas fa-vector-square',
+	'fas_venus_double'                           : 'fas fa-venus-double',
+	'fas_venus_mars'                             : 'fas fa-venus-mars',
+	'fas_venus'                                  : 'fas fa-venus',
+	'fas_vest_patches'                           : 'fas fa-vest-patches',
+	'fas_vest'                                   : 'fas fa-vest',
+	'fas_vial_circle_check'                      : 'fas fa-vial-circle-check',
+	'fas_vial_virus'                             : 'fas fa-vial-virus',
+	'fas_vial'                                   : 'fas fa-vial',
+	'fas_vials'                                  : 'fas fa-vials',
+	'fas_video_slash'                            : 'fas fa-video-slash',
+	'fas_video'                                  : 'fas fa-video',
+	'fas_vihara'                                 : 'fas fa-vihara',
+	'fas_virus_covid_slash'                      : 'fas fa-virus-covid-slash',
+	'fas_virus_covid'                            : 'fas fa-virus-covid',
+	'fas_virus_slash'                            : 'fas fa-virus-slash',
+	'fas_virus'                                  : 'fas fa-virus',
+	'fas_viruses'                                : 'fas fa-viruses',
+	'fas_voicemail'                              : 'fas fa-voicemail',
+	'fas_volcano'                                : 'fas fa-volcano',
+	'fas_volleyball'                             : 'fas fa-volleyball',
+	'fas_volume_high'                            : 'fas fa-volume-high',
+	'fas_volume_low'                             : 'fas fa-volume-low',
+	'fas_volume_off'                             : 'fas fa-volume-off',
+	'fas_volume_xmark'                           : 'fas fa-volume-xmark',
+	'fas_vr_cardboard'                           : 'fas fa-vr-cardboard',
+	'fas_w'                                      : 'fas fa-w',
+	'fas_walkie_talkie'                          : 'fas fa-walkie-talkie',
+	'fas_wallet'                                 : 'fas fa-wallet',
+	'fas_wand_magic_sparkles'                    : 'fas fa-wand-magic-sparkles',
+	'fas_wand_magic'                             : 'fas fa-wand-magic',
+	'fas_wand_sparkles'                          : 'fas fa-wand-sparkles',
+	'fas_warehouse'                              : 'fas fa-warehouse',
+	'fas_water_ladder'                           : 'fas fa-water-ladder',
+	'fas_water'                                  : 'fas fa-water',
+	'fas_wave_square'                            : 'fas fa-wave-square',
+	'fas_weight_hanging'                         : 'fas fa-weight-hanging',
+	'fas_weight_scale'                           : 'fas fa-weight-scale',
+	'fas_wheat_awn_circle_exclamation'           : 'fas fa-wheat-awn-circle-exclamation',
+	'fas_wheat_awn'                              : 'fas fa-wheat-awn',
+	'fas_wheelchair_move'                        : 'fas fa-wheelchair-move',
+	'fas_wheelchair'                             : 'fas fa-wheelchair',
+	'fas_whiskey_glass'                          : 'fas fa-whiskey-glass',
+	'fas_wifi'                                   : 'fas fa-wifi',
+	'fas_wind'                                   : 'fas fa-wind',
+	'fas_window_maximize'                        : 'fas fa-window-maximize',
+	'fas_window_minimize'                        : 'fas fa-window-minimize',
+	'fas_window_restore'                         : 'fas fa-window-restore',
+	'fas_wine_bottle'                            : 'fas fa-wine-bottle',
+	'fas_wine_glass_empty'                       : 'fas fa-wine-glass-empty',
+	'fas_wine_glass'                             : 'fas fa-wine-glass',
+	'fas_won_sign'                               : 'fas fa-won-sign',
+	'fas_worm'                                   : 'fas fa-worm',
+	'fas_wrench'                                 : 'fas fa-wrench',
+	'fas_x_ray'                                  : 'fas fa-x-ray',
+	'fas_x'                                      : 'fas fa-x',
+	'fas_xmark'                                  : 'fas fa-xmark',
+	'fas_xmarks_lines'                           : 'fas fa-xmarks-lines',
+	'fas_y'                                      : 'fas fa-y',
+	'fas_yen_sign'                               : 'fas fa-yen-sign',
+	'fas_yin_yang'                               : 'fas fa-yin-yang',
+	'fas_z'                                      : 'fas fa-z',
+
+	//FONT-AWESOME REGULAR
+	'far_address_book'            : 'far fa-address-book',
+	'far_address_card'            : 'far fa-address-card',
+	'far_bell_slash'              : 'far fa-bell-slash',
+	'far_bell'                    : 'far fa-bell',
+	'far_bookmark'                : 'far fa-bookmark',
+	'far_building'                : 'far fa-building',
+	'far_calendar_check'          : 'far fa-calendar-check',
+	'far_calendar_days'           : 'far fa-calendar-days',
+	'far_calendar_minus'          : 'far fa-calendar-minus',
+	'far_calendar_plus'           : 'far fa-calendar-plus',
+	'far_calendar_xmark'          : 'far fa-calendar-xmark',
+	'far_calendar'                : 'far fa-calendar',
+	'far_chart_bar'               : 'far fa-chart-bar',
+	'far_chess_bishop'            : 'far fa-chess-bishop',
+	'far_chess_king'              : 'far fa-chess-king',
+	'far_chess_knight'            : 'far fa-chess-knight',
+	'far_chess_pawn'              : 'far fa-chess-pawn',
+	'far_chess_queen'             : 'far fa-chess-queen',
+	'far_chess_rook'              : 'far fa-chess-rook',
+	'far_circle_check'            : 'far fa-circle-check',
+	'far_circle_dot'              : 'far fa-circle-dot',
+	'far_circle_down'             : 'far fa-circle-down',
+	'far_circle_left'             : 'far fa-circle-left',
+	'far_circle_pause'            : 'far fa-circle-pause',
+	'far_circle_play'             : 'far fa-circle-play',
+	'far_circle_question'         : 'far fa-circle-question',
+	'far_circle_right'            : 'far fa-circle-right',
+	'far_circle_stop'             : 'far fa-circle-stop',
+	'far_circle_up'               : 'far fa-circle-up',
+	'far_circle_user'             : 'far fa-circle-user',
+	'far_circle_xmark'            : 'far fa-circle-xmark',
+	'far_circle'                  : 'far fa-circle',
+	'far_clipboard'               : 'far fa-clipboard',
+	'far_clock'                   : 'far fa-clock',
+	'far_clone'                   : 'far fa-clone',
+	'far_closed_captioning'       : 'far fa-closed-captioning',
+	'far_comment_dots'            : 'far fa-comment-dots',
+	'far_comment'                 : 'far fa-comment',
+	'far_comments'                : 'far fa-comments',
+	'far_compass'                 : 'far fa-compass',
+	'far_copy'                    : 'far fa-copy',
+	'far_copyright'               : 'far fa-copyright',
+	'far_credit_card'             : 'far fa-credit-card',
+	'far_envelope_open'           : 'far fa-envelope-open',
+	'far_envelope'                : 'far fa-envelope',
+	'far_eye_slash'               : 'far fa-eye-slash',
+	'far_eye'                     : 'far fa-eye',
+	'far_face_angry'              : 'far fa-face-angry',
+	'far_face_dizzy'              : 'far fa-face-dizzy',
+	'far_face_flushed'            : 'far fa-face-flushed',
+	'far_face_frown_open'         : 'far fa-face-frown-open',
+	'far_face_frown'              : 'far fa-face-frown',
+	'far_face_grimace'            : 'far fa-face-grimace',
+	'far_face_grin_beam_sweat'    : 'far fa-face-grin-beam-sweat',
+	'far_face_grin_beam'          : 'far fa-face-grin-beam',
+	'far_face_grin_hearts'        : 'far fa-face-grin-hearts',
+	'far_face_grin_squint_tears'  : 'far fa-face-grin-squint-tears',
+	'far_face_grin_squint'        : 'far fa-face-grin-squint',
+	'far_face_grin_stars'         : 'far fa-face-grin-stars',
+	'far_face_grin_tears'         : 'far fa-face-grin-tears',
+	'far_face_grin_tongue_squint' : 'far fa-face-grin-tongue-squint',
+	'far_face_grin_tongue_wink'   : 'far fa-face-grin-tongue-wink',
+	'far_face_grin_tongue'        : 'far fa-face-grin-tongue',
+	'far_face_grin_wide'          : 'far fa-face-grin-wide',
+	'far_face_grin_wink'          : 'far fa-face-grin-wink',
+	'far_face_grin'               : 'far fa-face-grin',
+	'far_face_kiss_beam'          : 'far fa-face-kiss-beam',
+	'far_face_kiss_wink_heart'    : 'far fa-face-kiss-wink-heart',
+	'far_face_kiss'               : 'far fa-face-kiss',
+	'far_face_laugh_beam'         : 'far fa-face-laugh-beam',
+	'far_face_laugh_squint'       : 'far fa-face-laugh-squint',
+	'far_face_laugh_wink'         : 'far fa-face-laugh-wink',
+	'far_face_laugh'              : 'far fa-face-laugh',
+	'far_face_meh_blank'          : 'far fa-face-meh-blank',
+	'far_face_meh'                : 'far fa-face-meh',
+	'far_face_rolling_eyes'       : 'far fa-face-rolling-eyes',
+	'far_face_sad_cry'            : 'far fa-face-sad-cry',
+	'far_face_sad_tear'           : 'far fa-face-sad-tear',
+	'far_face_smile_beam'         : 'far fa-face-smile-beam',
+	'far_face_smile_wink'         : 'far fa-face-smile-wink',
+	'far_face_smile'              : 'far fa-face-smile',
+	'far_face_surprise'           : 'far fa-face-surprise',
+	'far_face_tired'              : 'far fa-face-tired',
+	'far_file_audio'              : 'far fa-file-audio',
+	'far_file_code'               : 'far fa-file-code',
+	'far_file_excel'              : 'far fa-file-excel',
+	'far_file_image'              : 'far fa-file-image',
+	'far_file_lines'              : 'far fa-file-lines',
+	'far_file_pdf'                : 'far fa-file-pdf',
+	'far_file_powerpoint'         : 'far fa-file-powerpoint',
+	'far_file_video'              : 'far fa-file-video',
+	'far_file_word'               : 'far fa-file-word',
+	'far_file_zipper'             : 'far fa-file-zipper',
+	'far_file'                    : 'far fa-file',
+	'far_flag'                    : 'far fa-flag',
+	'far_floppy_disk'             : 'far fa-floppy-disk',
+	'far_folder_closed'           : 'far fa-folder-closed',
+	'far_folder_open'             : 'far fa-folder-open',
+	'far_folder'                  : 'far fa-folder',
+	'far_font_awesome'            : 'far fa-font-awesome',
+	'far_futbol'                  : 'far fa-futbol',
+	'far_gem'                     : 'far fa-gem',
+	'far_hand_back_fist'          : 'far fa-hand-back-fist',
+	'far_hand_lizard'             : 'far fa-hand-lizard',
+	'far_hand_peace'              : 'far fa-hand-peace',
+	'far_hand_point_down'         : 'far fa-hand-point-down',
+	'far_hand_point_left'         : 'far fa-hand-point-left',
+	'far_hand_point_right'        : 'far fa-hand-point-right',
+	'far_hand_point_up'           : 'far fa-hand-point-up',
+	'far_hand_pointer'            : 'far fa-hand-pointer',
+	'far_hand_scissors'           : 'far fa-hand-scissors',
+	'far_hand_spock'              : 'far fa-hand-spock',
+	'far_hand'                    : 'far fa-hand',
+	'far_handshake'               : 'far fa-handshake',
+	'far_hard_drive'              : 'far fa-hard-drive',
+	'far_heart'                   : 'far fa-heart',
+	'far_hospital'                : 'far fa-hospital',
+	'far_hourglass_half'          : 'far fa-hourglass-half',
+	'far_hourglass'               : 'far fa-hourglass',
+	'far_id_badge'                : 'far fa-id-badge',
+	'far_id_card'                 : 'far fa-id-card',
+	'far_image'                   : 'far fa-image',
+	'far_images'                  : 'far fa-images',
+	'far_keyboard'                : 'far fa-keyboard',
+	'far_lemon'                   : 'far fa-lemon',
+	'far_life_ring'               : 'far fa-life-ring',
+	'far_lightbulb'               : 'far fa-lightbulb',
+	'far_map'                     : 'far fa-map',
+	'far_message'                 : 'far fa-message',
+	'far_money_bill_1'            : 'far fa-money-bill-1',
+	'far_moon'                    : 'far fa-moon',
+	'far_newspaper'               : 'far fa-newspaper',
+	'far_note_sticky'             : 'far fa-note-sticky',
+	'far_object_group'            : 'far fa-object-group',
+	'far_object_ungroup'          : 'far fa-object-ungroup',
+	'far_paper_plane'             : 'far fa-paper-plane',
+	'far_paste'                   : 'far fa-paste',
+	'far_pen_to_square'           : 'far fa-pen-to-square',
+	'far_rectangle_list'          : 'far fa-rectangle-list',
+	'far_rectangle_xmark'         : 'far fa-rectangle-xmark',
+	'far_registered'              : 'far fa-registered',
+	'far_share_from_square'       : 'far fa-share-from-square',
+	'far_snowflake'               : 'far fa-snowflake',
+	'far_square_caret_down'       : 'far fa-square-caret-down',
+	'far_square_caret_left'       : 'far fa-square-caret-left',
+	'far_square_caret_right'      : 'far fa-square-caret-right',
+	'far_square_caret_up'         : 'far fa-square-caret-up',
+	'far_square_check'            : 'far fa-square-check',
+	'far_square_full'             : 'far fa-square-full',
+	'far_square_minus'            : 'far fa-square-minus',
+	'far_square_plus'             : 'far fa-square-plus',
+	'far_square'                  : 'far fa-square',
+	'far_star_half_stroke'        : 'far fa-star-half-stroke',
+	'far_star_half'               : 'far fa-star-half',
+	'far_star'                    : 'far fa-star',
+	'far_sun'                     : 'far fa-sun',
+	'far_thumbs_down'             : 'far fa-thumbs-down',
+	'far_thumbs_up'               : 'far fa-thumbs-up',
+	'far_trash_can'               : 'far fa-trash-can',
+	'far_user'                    : 'far fa-user',
+	'far_window_maximize'         : 'far fa-window-maximize',
+	'far_window_minimize'         : 'far fa-window-minimize',
+	'far_window_restore'          : 'far fa-window-restore',
+
+	//FONT-AWESOME BRANDS
+	'fab_42_group'                       : 'fab fa-42-group',
+	'fab_500px'                          : 'fab fa-500px',
+	'fab_accessible_icon'                : 'fab fa-accessible-icon',
+	'fab_accusoft'                       : 'fab fa-accusoft',
+	'fab_adn'                            : 'fab fa-adn',
+	'fab_adversal'                       : 'fab fa-adversal',
+	'fab_affiliatetheme'                 : 'fab fa-affiliatetheme',
+	'fab_airbnb'                         : 'fab fa-airbnb',
+	'fab_algolia'                        : 'fab fa-algolia',
+	'fab_alipay'                         : 'fab fa-alipay',
+	'fab_amazon_pay'                     : 'fab fa-amazon-pay',
+	'fab_amazon'                         : 'fab fa-amazon',
+	'fab_amilia'                         : 'fab fa-amilia',
+	'fab_android'                        : 'fab fa-android',
+	'fab_angellist'                      : 'fab fa-angellist',
+	'fab_angrycreative'                  : 'fab fa-angrycreative',
+	'fab_angular'                        : 'fab fa-angular',
+	'fab_app_store_ios'                  : 'fab fa-app-store-ios',
+	'fab_app_store'                      : 'fab fa-app-store',
+	'fab_apper'                          : 'fab fa-apper',
+	'fab_apple_pay'                      : 'fab fa-apple-pay',
+	'fab_apple'                          : 'fab fa-apple',
+	'fab_artstation'                     : 'fab fa-artstation',
+	'fab_asymmetrik'                     : 'fab fa-asymmetrik',
+	'fab_atlassian'                      : 'fab fa-atlassian',
+	'fab_audible'                        : 'fab fa-audible',
+	'fab_autoprefixer'                   : 'fab fa-autoprefixer',
+	'fab_avianex'                        : 'fab fa-avianex',
+	'fab_aviato'                         : 'fab fa-aviato',
+	'fab_aws'                            : 'fab fa-aws',
+	'fab_bandcamp'                       : 'fab fa-bandcamp',
+	'fab_battle_net'                     : 'fab fa-battle-net',
+	'fab_behance'                        : 'fab fa-behance',
+	'fab_bilibili'                       : 'fab fa-bilibili',
+	'fab_bimobject'                      : 'fab fa-bimobject',
+	'fab_bitbucket'                      : 'fab fa-bitbucket',
+	'fab_bitcoin'                        : 'fab fa-bitcoin',
+	'fab_bity'                           : 'fab fa-bity',
+	'fab_black_tie'                      : 'fab fa-black-tie',
+	'fab_blackberry'                     : 'fab fa-blackberry',
+	'fab_blogger_b'                      : 'fab fa-blogger-b',
+	'fab_blogger'                        : 'fab fa-blogger',
+	'fab_bluesky'                        : 'fab fa-bluesky',
+	'fab_bluetooth_b'                    : 'fab fa-bluetooth-b',
+	'fab_bluetooth'                      : 'fab fa-bluetooth',
+	'fab_bootstrap'                      : 'fab fa-bootstrap',
+	'fab_bots'                           : 'fab fa-bots',
+	'fab_brave_reverse'                  : 'fab fa-brave-reverse',
+	'fab_brave'                          : 'fab fa-brave',
+	'fab_btc'                            : 'fab fa-btc',
+	'fab_buffer'                         : 'fab fa-buffer',
+	'fab_buromobelexperte'               : 'fab fa-buromobelexperte',
+	'fab_buy_n_large'                    : 'fab fa-buy-n-large',
+	'fab_buysellads'                     : 'fab fa-buysellads',
+	'fab_canadian_maple_leaf'            : 'fab fa-canadian-maple-leaf',
+	'fab_cc_amazon_pay'                  : 'fab fa-cc-amazon-pay',
+	'fab_cc_amex'                        : 'fab fa-cc-amex',
+	'fab_cc_apple_pay'                   : 'fab fa-cc-apple-pay',
+	'fab_cc_diners_club'                 : 'fab fa-cc-diners-club',
+	'fab_cc_discover'                    : 'fab fa-cc-discover',
+	'fab_cc_jcb'                         : 'fab fa-cc-jcb',
+	'fab_cc_mastercard'                  : 'fab fa-cc-mastercard',
+	'fab_cc_paypal'                      : 'fab fa-cc-paypal',
+	'fab_cc_stripe'                      : 'fab fa-cc-stripe',
+	'fab_cc_visa'                        : 'fab fa-cc-visa',
+	'fab_centercode'                     : 'fab fa-centercode',
+	'fab_centos'                         : 'fab fa-centos',
+	'fab_chrome'                         : 'fab fa-chrome',
+	'fab_chromecast'                     : 'fab fa-chromecast',
+	'fab_cloudflare'                     : 'fab fa-cloudflare',
+	'fab_cloudscale'                     : 'fab fa-cloudscale',
+	'fab_cloudsmith'                     : 'fab fa-cloudsmith',
+	'fab_cloudversify'                   : 'fab fa-cloudversify',
+	'fab_cmplid'                         : 'fab fa-cmplid',
+	'fab_codepen'                        : 'fab fa-codepen',
+	'fab_codiepie'                       : 'fab fa-codiepie',
+	'fab_confluence'                     : 'fab fa-confluence',
+	'fab_connectdevelop'                 : 'fab fa-connectdevelop',
+	'fab_contao'                         : 'fab fa-contao',
+	'fab_cotton_bureau'                  : 'fab fa-cotton-bureau',
+	'fab_cpanel'                         : 'fab fa-cpanel',
+	'fab_creative_commons_by'            : 'fab fa-creative-commons-by',
+	'fab_creative_commons_nc_eu'         : 'fab fa-creative-commons-nc-eu',
+	'fab_creative_commons_nc_jp'         : 'fab fa-creative-commons-nc-jp',
+	'fab_creative_commons_nc'            : 'fab fa-creative-commons-nc',
+	'fab_creative_commons_nd'            : 'fab fa-creative-commons-nd',
+	'fab_creative_commons_pd_alt'        : 'fab fa-creative-commons-pd-alt',
+	'fab_creative_commons_pd'            : 'fab fa-creative-commons-pd',
+	'fab_creative_commons_remix'         : 'fab fa-creative-commons-remix',
+	'fab_creative_commons_sa'            : 'fab fa-creative-commons-sa',
+	'fab_creative_commons_sampling_plus' : 'fab fa-creative-commons-sampling-plus',
+	'fab_creative_commons_sampling'      : 'fab fa-creative-commons-sampling',
+	'fab_creative_commons_share'         : 'fab fa-creative-commons-share',
+	'fab_creative_commons_zero'          : 'fab fa-creative-commons-zero',
+	'fab_creative_commons'               : 'fab fa-creative-commons',
+	'fab_critical_role'                  : 'fab fa-critical-role',
+	'fab_css3_alt'                       : 'fab fa-css3-alt',
+	'fab_css3'                           : 'fab fa-css3',
+	'fab_cuttlefish'                     : 'fab fa-cuttlefish',
+	'fab_d_and_d_beyond'                 : 'fab fa-d-and-d-beyond',
+	'fab_d_and_d'                        : 'fab fa-d-and-d',
+	'fab_dailymotion'                    : 'fab fa-dailymotion',
+	'fab_dashcube'                       : 'fab fa-dashcube',
+	'fab_debian'                         : 'fab fa-debian',
+	'fab_deezer'                         : 'fab fa-deezer',
+	'fab_delicious'                      : 'fab fa-delicious',
+	'fab_deploydog'                      : 'fab fa-deploydog',
+	'fab_deskpro'                        : 'fab fa-deskpro',
+	'fab_dev'                            : 'fab fa-dev',
+	'fab_deviantart'                     : 'fab fa-deviantart',
+	'fab_dhl'                            : 'fab fa-dhl',
+	'fab_diaspora'                       : 'fab fa-diaspora',
+	'fab_digg'                           : 'fab fa-digg',
+	'fab_digital_ocean'                  : 'fab fa-digital-ocean',
+	'fab_discord'                        : 'fab fa-discord',
+	'fab_discourse'                      : 'fab fa-discourse',
+	'fab_dochub'                         : 'fab fa-dochub',
+	'fab_docker'                         : 'fab fa-docker',
+	'fab_draft2digital'                  : 'fab fa-draft2digital',
+	'fab_dribbble'                       : 'fab fa-dribbble',
+	'fab_dropbox'                        : 'fab fa-dropbox',
+	'fab_drupal'                         : 'fab fa-drupal',
+	'fab_dyalog'                         : 'fab fa-dyalog',
+	'fab_earlybirds'                     : 'fab fa-earlybirds',
+	'fab_ebay'                           : 'fab fa-ebay',
+	'fab_edge_legacy'                    : 'fab fa-edge-legacy',
+	'fab_edge'                           : 'fab fa-edge',
+	'fab_elementor'                      : 'fab fa-elementor',
+	'fab_ello'                           : 'fab fa-ello',
+	'fab_ember'                          : 'fab fa-ember',
+	'fab_empire'                         : 'fab fa-empire',
+	'fab_envira'                         : 'fab fa-envira',
+	'fab_erlang'                         : 'fab fa-erlang',
+	'fab_ethereum'                       : 'fab fa-ethereum',
+	'fab_etsy'                           : 'fab fa-etsy',
+	'fab_evernote'                       : 'fab fa-evernote',
+	'fab_expeditedssl'                   : 'fab fa-expeditedssl',
+	'fab_facebook_f'                     : 'fab fa-facebook-f',
+	'fab_facebook_messenger'             : 'fab fa-facebook-messenger',
+	'fab_facebook'                       : 'fab fa-facebook',
+	'fab_fantasy_flight_games'           : 'fab fa-fantasy-flight-games',
+	'fab_fedex'                          : 'fab fa-fedex',
+	'fab_fedora'                         : 'fab fa-fedora',
+	'fab_figma'                          : 'fab fa-figma',
+	'fab_firefox_browser'                : 'fab fa-firefox-browser',
+	'fab_firefox'                        : 'fab fa-firefox',
+	'fab_first_order_alt'                : 'fab fa-first-order-alt',
+	'fab_first_order'                    : 'fab fa-first-order',
+	'fab_firstdraft'                     : 'fab fa-firstdraft',
+	'fab_flickr'                         : 'fab fa-flickr',
+	'fab_flipboard'                      : 'fab fa-flipboard',
+	'fab_fly'                            : 'fab fa-fly',
+	'fab_font_awesome'                   : 'fab fa-font-awesome',
+	'fab_fonticons_fi'                   : 'fab fa-fonticons-fi',
+	'fab_fonticons'                      : 'fab fa-fonticons',
+	'fab_fort_awesome_alt'               : 'fab fa-fort-awesome-alt',
+	'fab_fort_awesome'                   : 'fab fa-fort-awesome',
+	'fab_forumbee'                       : 'fab fa-forumbee',
+	'fab_foursquare'                     : 'fab fa-foursquare',
+	'fab_free_code_camp'                 : 'fab fa-free-code-camp',
+	'fab_freebsd'                        : 'fab fa-freebsd',
+	'fab_fulcrum'                        : 'fab fa-fulcrum',
+	'fab_galactic_republic'              : 'fab fa-galactic-republic',
+	'fab_galactic_senate'                : 'fab fa-galactic-senate',
+	'fab_get_pocket'                     : 'fab fa-get-pocket',
+	'fab_gg_circle'                      : 'fab fa-gg-circle',
+	'fab_gg'                             : 'fab fa-gg',
+	'fab_git_alt'                        : 'fab fa-git-alt',
+	'fab_git'                            : 'fab fa-git',
+	'fab_github_alt'                     : 'fab fa-github-alt',
+	'fab_github'                         : 'fab fa-github',
+	'fab_gitkraken'                      : 'fab fa-gitkraken',
+	'fab_gitlab'                         : 'fab fa-gitlab',
+	'fab_gitter'                         : 'fab fa-gitter',
+	'fab_glide_g'                        : 'fab fa-glide-g',
+	'fab_glide'                          : 'fab fa-glide',
+	'fab_gofore'                         : 'fab fa-gofore',
+	'fab_golang'                         : 'fab fa-golang',
+	'fab_goodreads_g'                    : 'fab fa-goodreads-g',
+	'fab_goodreads'                      : 'fab fa-goodreads',
+	'fab_google_drive'                   : 'fab fa-google-drive',
+	'fab_google_pay'                     : 'fab fa-google-pay',
+	'fab_google_play'                    : 'fab fa-google-play',
+	'fab_google_plus_g'                  : 'fab fa-google-plus-g',
+	'fab_google_plus'                    : 'fab fa-google-plus',
+	'fab_google_scholar'                 : 'fab fa-google-scholar',
+	'fab_google_wallet'                  : 'fab fa-google-wallet',
+	'fab_google'                         : 'fab fa-google',
+	'fab_gratipay'                       : 'fab fa-gratipay',
+	'fab_grav'                           : 'fab fa-grav',
+	'fab_gripfire'                       : 'fab fa-gripfire',
+	'fab_grunt'                          : 'fab fa-grunt',
+	'fab_guilded'                        : 'fab fa-guilded',
+	'fab_gulp'                           : 'fab fa-gulp',
+	'fab_hacker_news'                    : 'fab fa-hacker-news',
+	'fab_hackerrank'                     : 'fab fa-hackerrank',
+	'fab_hashnode'                       : 'fab fa-hashnode',
+	'fab_hips'                           : 'fab fa-hips',
+	'fab_hire_a_helper'                  : 'fab fa-hire-a-helper',
+	'fab_hive'                           : 'fab fa-hive',
+	'fab_hooli'                          : 'fab fa-hooli',
+	'fab_hornbill'                       : 'fab fa-hornbill',
+	'fab_hotjar'                         : 'fab fa-hotjar',
+	'fab_houzz'                          : 'fab fa-houzz',
+	'fab_html5'                          : 'fab fa-html5',
+	'fab_hubspot'                        : 'fab fa-hubspot',
+	'fab_ideal'                          : 'fab fa-ideal',
+	'fab_imdb'                           : 'fab fa-imdb',
+	'fab_instagram'                      : 'fab fa-instagram',
+	'fab_instalod'                       : 'fab fa-instalod',
+	'fab_intercom'                       : 'fab fa-intercom',
+	'fab_internet_explorer'              : 'fab fa-internet-explorer',
+	'fab_invision'                       : 'fab fa-invision',
+	'fab_ioxhost'                        : 'fab fa-ioxhost',
+	'fab_itch_io'                        : 'fab fa-itch-io',
+	'fab_itunes_note'                    : 'fab fa-itunes-note',
+	'fab_itunes'                         : 'fab fa-itunes',
+	'fab_java'                           : 'fab fa-java',
+	'fab_jedi_order'                     : 'fab fa-jedi-order',
+	'fab_jenkins'                        : 'fab fa-jenkins',
+	'fab_jira'                           : 'fab fa-jira',
+	'fab_joget'                          : 'fab fa-joget',
+	'fab_joomla'                         : 'fab fa-joomla',
+	'fab_js'                             : 'fab fa-js',
+	'fab_jsfiddle'                       : 'fab fa-jsfiddle',
+	'fab_jxl'                            : 'fab fa-jxl',
+	'fab_kaggle'                         : 'fab fa-kaggle',
+	'fab_keybase'                        : 'fab fa-keybase',
+	'fab_keycdn'                         : 'fab fa-keycdn',
+	'fab_kickstarter_k'                  : 'fab fa-kickstarter-k',
+	'fab_kickstarter'                    : 'fab fa-kickstarter',
+	'fab_korvue'                         : 'fab fa-korvue',
+	'fab_laravel'                        : 'fab fa-laravel',
+	'fab_lastfm'                         : 'fab fa-lastfm',
+	'fab_leanpub'                        : 'fab fa-leanpub',
+	'fab_less'                           : 'fab fa-less',
+	'fab_letterboxd'                     : 'fab fa-letterboxd',
+	'fab_line'                           : 'fab fa-line',
+	'fab_linkedin_in'                    : 'fab fa-linkedin-in',
+	'fab_linkedin'                       : 'fab fa-linkedin',
+	'fab_linode'                         : 'fab fa-linode',
+	'fab_linux'                          : 'fab fa-linux',
+	'fab_lyft'                           : 'fab fa-lyft',
+	'fab_magento'                        : 'fab fa-magento',
+	'fab_mailchimp'                      : 'fab fa-mailchimp',
+	'fab_mandalorian'                    : 'fab fa-mandalorian',
+	'fab_markdown'                       : 'fab fa-markdown',
+	'fab_mastodon'                       : 'fab fa-mastodon',
+	'fab_maxcdn'                         : 'fab fa-maxcdn',
+	'fab_mdb'                            : 'fab fa-mdb',
+	'fab_medapps'                        : 'fab fa-medapps',
+	'fab_medium'                         : 'fab fa-medium',
+	'fab_medrt'                          : 'fab fa-medrt',
+	'fab_meetup'                         : 'fab fa-meetup',
+	'fab_megaport'                       : 'fab fa-megaport',
+	'fab_mendeley'                       : 'fab fa-mendeley',
+	'fab_meta'                           : 'fab fa-meta',
+	'fab_microblog'                      : 'fab fa-microblog',
+	'fab_microsoft'                      : 'fab fa-microsoft',
+	'fab_mintbit'                        : 'fab fa-mintbit',
+	'fab_mix'                            : 'fab fa-mix',
+	'fab_mixcloud'                       : 'fab fa-mixcloud',
+	'fab_mixer'                          : 'fab fa-mixer',
+	'fab_mizuni'                         : 'fab fa-mizuni',
+	'fab_modx'                           : 'fab fa-modx',
+	'fab_monero'                         : 'fab fa-monero',
+	'fab_napster'                        : 'fab fa-napster',
+	'fab_neos'                           : 'fab fa-neos',
+	'fab_nfc_directional'                : 'fab fa-nfc-directional',
+	'fab_nfc_symbol'                     : 'fab fa-nfc-symbol',
+	'fab_nimblr'                         : 'fab fa-nimblr',
+	'fab_node_js'                        : 'fab fa-node-js',
+	'fab_node'                           : 'fab fa-node',
+	'fab_npm'                            : 'fab fa-npm',
+	'fab_ns8'                            : 'fab fa-ns8',
+	'fab_nutritionix'                    : 'fab fa-nutritionix',
+	'fab_octopus_deploy'                 : 'fab fa-octopus-deploy',
+	'fab_odnoklassniki'                  : 'fab fa-odnoklassniki',
+	'fab_odysee'                         : 'fab fa-odysee',
+	'fab_old_republic'                   : 'fab fa-old-republic',
+	'fab_opencart'                       : 'fab fa-opencart',
+	'fab_openid'                         : 'fab fa-openid',
+	'fab_opensuse'                       : 'fab fa-opensuse',
+	'fab_opera'                          : 'fab fa-opera',
+	'fab_optin_monster'                  : 'fab fa-optin-monster',
+	'fab_orcid'                          : 'fab fa-orcid',
+	'fab_osi'                            : 'fab fa-osi',
+	'fab_padlet'                         : 'fab fa-padlet',
+	'fab_page4'                          : 'fab fa-page4',
+	'fab_pagelines'                      : 'fab fa-pagelines',
+	'fab_palfed'                         : 'fab fa-palfed',
+	'fab_patreon'                        : 'fab fa-patreon',
+	'fab_paypal'                         : 'fab fa-paypal',
+	'fab_perbyte'                        : 'fab fa-perbyte',
+	'fab_periscope'                      : 'fab fa-periscope',
+	'fab_phabricator'                    : 'fab fa-phabricator',
+	'fab_phoenix_framework'              : 'fab fa-phoenix-framework',
+	'fab_phoenix_squadron'               : 'fab fa-phoenix-squadron',
+	'fab_php'                            : 'fab fa-php',
+	'fab_pied_piper_alt'                 : 'fab fa-pied-piper-alt',
+	'fab_pied_piper_hat'                 : 'fab fa-pied-piper-hat',
+	'fab_pied_piper_pp'                  : 'fab fa-pied-piper-pp',
+	'fab_pied_piper'                     : 'fab fa-pied-piper',
+	'fab_pinterest_p'                    : 'fab fa-pinterest-p',
+	'fab_pinterest'                      : 'fab fa-pinterest',
+	'fab_pix'                            : 'fab fa-pix',
+	'fab_pixiv'                          : 'fab fa-pixiv',
+	'fab_playstation'                    : 'fab fa-playstation',
+	'fab_product_hunt'                   : 'fab fa-product-hunt',
+	'fab_pushed'                         : 'fab fa-pushed',
+	'fab_python'                         : 'fab fa-python',
+	'fab_qq'                             : 'fab fa-qq',
+	'fab_quinscape'                      : 'fab fa-quinscape',
+	'fab_quora'                          : 'fab fa-quora',
+	'fab_r_project'                      : 'fab fa-r-project',
+	'fab_raspberry_pi'                   : 'fab fa-raspberry-pi',
+	'fab_ravelry'                        : 'fab fa-ravelry',
+	'fab_react'                          : 'fab fa-react',
+	'fab_reacteurope'                    : 'fab fa-reacteurope',
+	'fab_readme'                         : 'fab fa-readme',
+	'fab_rebel'                          : 'fab fa-rebel',
+	'fab_red_river'                      : 'fab fa-red-river',
+	'fab_reddit_alien'                   : 'fab fa-reddit-alien',
+	'fab_reddit'                         : 'fab fa-reddit',
+	'fab_redhat'                         : 'fab fa-redhat',
+	'fab_renren'                         : 'fab fa-renren',
+	'fab_replyd'                         : 'fab fa-replyd',
+	'fab_researchgate'                   : 'fab fa-researchgate',
+	'fab_resolving'                      : 'fab fa-resolving',
+	'fab_rev'                            : 'fab fa-rev',
+	'fab_rocketchat'                     : 'fab fa-rocketchat',
+	'fab_rockrms'                        : 'fab fa-rockrms',
+	'fab_rust'                           : 'fab fa-rust',
+	'fab_safari'                         : 'fab fa-safari',
+	'fab_salesforce'                     : 'fab fa-salesforce',
+	'fab_sass'                           : 'fab fa-sass',
+	'fab_schlix'                         : 'fab fa-schlix',
+	'fab_screenpal'                      : 'fab fa-screenpal',
+	'fab_scribd'                         : 'fab fa-scribd',
+	'fab_searchengin'                    : 'fab fa-searchengin',
+	'fab_sellcast'                       : 'fab fa-sellcast',
+	'fab_sellsy'                         : 'fab fa-sellsy',
+	'fab_servicestack'                   : 'fab fa-servicestack',
+	'fab_shirtsinbulk'                   : 'fab fa-shirtsinbulk',
+	'fab_shoelace'                       : 'fab fa-shoelace',
+	'fab_shopify'                        : 'fab fa-shopify',
+	'fab_shopware'                       : 'fab fa-shopware',
+	'fab_signal_messenger'               : 'fab fa-signal-messenger',
+	'fab_simplybuilt'                    : 'fab fa-simplybuilt',
+	'fab_sistrix'                        : 'fab fa-sistrix',
+	'fab_sith'                           : 'fab fa-sith',
+	'fab_sitrox'                         : 'fab fa-sitrox',
+	'fab_sketch'                         : 'fab fa-sketch',
+	'fab_skyatlas'                       : 'fab fa-skyatlas',
+	'fab_skype'                          : 'fab fa-skype',
+	'fab_slack'                          : 'fab fa-slack',
+	'fab_slideshare'                     : 'fab fa-slideshare',
+	'fab_snapchat'                       : 'fab fa-snapchat',
+	'fab_soundcloud'                     : 'fab fa-soundcloud',
+	'fab_sourcetree'                     : 'fab fa-sourcetree',
+	'fab_space_awesome'                  : 'fab fa-space-awesome',
+	'fab_speakap'                        : 'fab fa-speakap',
+	'fab_speaker_deck'                   : 'fab fa-speaker-deck',
+	'fab_spotify'                        : 'fab fa-spotify',
+	'fab_square_behance'                 : 'fab fa-square-behance',
+	'fab_square_dribbble'                : 'fab fa-square-dribbble',
+	'fab_square_facebook'                : 'fab fa-square-facebook',
+	'fab_square_font_awesome_stroke'     : 'fab fa-square-font-awesome-stroke',
+	'fab_square_font_awesome'            : 'fab fa-square-font-awesome',
+	'fab_square_git'                     : 'fab fa-square-git',
+	'fab_square_github'                  : 'fab fa-square-github',
+	'fab_square_gitlab'                  : 'fab fa-square-gitlab',
+	'fab_square_google_plus'             : 'fab fa-square-google-plus',
+	'fab_square_hacker_news'             : 'fab fa-square-hacker-news',
+	'fab_square_instagram'               : 'fab fa-square-instagram',
+	'fab_square_js'                      : 'fab fa-square-js',
+	'fab_square_lastfm'                  : 'fab fa-square-lastfm',
+	'fab_square_letterboxd'              : 'fab fa-square-letterboxd',
+	'fab_square_odnoklassniki'           : 'fab fa-square-odnoklassniki',
+	'fab_square_pied_piper'              : 'fab fa-square-pied-piper',
+	'fab_square_pinterest'               : 'fab fa-square-pinterest',
+	'fab_square_reddit'                  : 'fab fa-square-reddit',
+	'fab_square_snapchat'                : 'fab fa-square-snapchat',
+	'fab_square_steam'                   : 'fab fa-square-steam',
+	'fab_square_threads'                 : 'fab fa-square-threads',
+	'fab_square_tumblr'                  : 'fab fa-square-tumblr',
+	'fab_square_twitter'                 : 'fab fa-square-twitter',
+	'fab_square_upwork'                  : 'fab fa-square-upwork',
+	'fab_square_viadeo'                  : 'fab fa-square-viadeo',
+	'fab_square_vimeo'                   : 'fab fa-square-vimeo',
+	'fab_square_web_awesome_stroke'      : 'fab fa-square-web-awesome-stroke',
+	'fab_square_web_awesome'             : 'fab fa-square-web-awesome',
+	'fab_square_whatsapp'                : 'fab fa-square-whatsapp',
+	'fab_square_x_twitter'               : 'fab fa-square-x-twitter',
+	'fab_square_xing'                    : 'fab fa-square-xing',
+	'fab_square_youtube'                 : 'fab fa-square-youtube',
+	'fab_squarespace'                    : 'fab fa-squarespace',
+	'fab_stack_exchange'                 : 'fab fa-stack-exchange',
+	'fab_stack_overflow'                 : 'fab fa-stack-overflow',
+	'fab_stackpath'                      : 'fab fa-stackpath',
+	'fab_staylinked'                     : 'fab fa-staylinked',
+	'fab_steam_symbol'                   : 'fab fa-steam-symbol',
+	'fab_steam'                          : 'fab fa-steam',
+	'fab_sticker_mule'                   : 'fab fa-sticker-mule',
+	'fab_strava'                         : 'fab fa-strava',
+	'fab_stripe_s'                       : 'fab fa-stripe-s',
+	'fab_stripe'                         : 'fab fa-stripe',
+	'fab_stubber'                        : 'fab fa-stubber',
+	'fab_studiovinari'                   : 'fab fa-studiovinari',
+	'fab_stumbleupon_circle'             : 'fab fa-stumbleupon-circle',
+	'fab_stumbleupon'                    : 'fab fa-stumbleupon',
+	'fab_superpowers'                    : 'fab fa-superpowers',
+	'fab_supple'                         : 'fab fa-supple',
+	'fab_suse'                           : 'fab fa-suse',
+	'fab_swift'                          : 'fab fa-swift',
+	'fab_symfony'                        : 'fab fa-symfony',
+	'fab_teamspeak'                      : 'fab fa-teamspeak',
+	'fab_telegram'                       : 'fab fa-telegram',
+	'fab_tencent_weibo'                  : 'fab fa-tencent-weibo',
+	'fab_the_red_yeti'                   : 'fab fa-the-red-yeti',
+	'fab_themeco'                        : 'fab fa-themeco',
+	'fab_themeisle'                      : 'fab fa-themeisle',
+	'fab_think_peaks'                    : 'fab fa-think-peaks',
+	'fab_threads'                        : 'fab fa-threads',
+	'fab_tiktok'                         : 'fab fa-tiktok',
+	'fab_trade_federation'               : 'fab fa-trade-federation',
+	'fab_trello'                         : 'fab fa-trello',
+	'fab_tumblr'                         : 'fab fa-tumblr',
+	'fab_twitch'                         : 'fab fa-twitch',
+	'fab_twitter'                        : 'fab fa-twitter',
+	'fab_typo3'                          : 'fab fa-typo3',
+	'fab_uber'                           : 'fab fa-uber',
+	'fab_ubuntu'                         : 'fab fa-ubuntu',
+	'fab_uikit'                          : 'fab fa-uikit',
+	'fab_umbraco'                        : 'fab fa-umbraco',
+	'fab_uncharted'                      : 'fab fa-uncharted',
+	'fab_uniregistry'                    : 'fab fa-uniregistry',
+	'fab_unity'                          : 'fab fa-unity',
+	'fab_unsplash'                       : 'fab fa-unsplash',
+	'fab_untappd'                        : 'fab fa-untappd',
+	'fab_ups'                            : 'fab fa-ups',
+	'fab_upwork'                         : 'fab fa-upwork',
+	'fab_usb'                            : 'fab fa-usb',
+	'fab_usps'                           : 'fab fa-usps',
+	'fab_ussunnah'                       : 'fab fa-ussunnah',
+	'fab_vaadin'                         : 'fab fa-vaadin',
+	'fab_viacoin'                        : 'fab fa-viacoin',
+	'fab_viadeo'                         : 'fab fa-viadeo',
+	'fab_viber'                          : 'fab fa-viber',
+	'fab_vimeo_v'                        : 'fab fa-vimeo-v',
+	'fab_vimeo'                          : 'fab fa-vimeo',
+	'fab_vine'                           : 'fab fa-vine',
+	'fab_vk'                             : 'fab fa-vk',
+	'fab_vnv'                            : 'fab fa-vnv',
+	'fab_vuejs'                          : 'fab fa-vuejs',
+	'fab_watchman_monitoring'            : 'fab fa-watchman-monitoring',
+	'fab_waze'                           : 'fab fa-waze',
+	'fab_web_awesome'                    : 'fab fa-web-awesome',
+	'fab_webflow'                        : 'fab fa-webflow',
+	'fab_weebly'                         : 'fab fa-weebly',
+	'fab_weibo'                          : 'fab fa-weibo',
+	'fab_weixin'                         : 'fab fa-weixin',
+	'fab_whatsapp'                       : 'fab fa-whatsapp',
+	'fab_whmcs'                          : 'fab fa-whmcs',
+	'fab_wikipedia_w'                    : 'fab fa-wikipedia-w',
+	'fab_windows'                        : 'fab fa-windows',
+	'fab_wirsindhandwerk'                : 'fab fa-wirsindhandwerk',
+	'fab_wix'                            : 'fab fa-wix',
+	'fab_wizards_of_the_coast'           : 'fab fa-wizards-of-the-coast',
+	'fab_wodu'                           : 'fab fa-wodu',
+	'fab_wolf_pack_battalion'            : 'fab fa-wolf-pack-battalion',
+	'fab_wordpress_simple'               : 'fab fa-wordpress-simple',
+	'fab_wordpress'                      : 'fab fa-wordpress',
+	'fab_wpbeginner'                     : 'fab fa-wpbeginner',
+	'fab_wpexplorer'                     : 'fab fa-wpexplorer',
+	'fab_wpforms'                        : 'fab fa-wpforms',
+	'fab_wpressr'                        : 'fab fa-wpressr',
+	'fab_x_twitter'                      : 'fab fa-x-twitter',
+	'fab_xbox'                           : 'fab fa-xbox',
+	'fab_xing'                           : 'fab fa-xing',
+	'fab_y_combinator'                   : 'fab fa-y-combinator',
+	'fab_yahoo'                          : 'fab fa-yahoo',
+	'fab_yammer'                         : 'fab fa-yammer',
+	'fab_yandex_international'           : 'fab fa-yandex-international',
+	'fab_yandex'                         : 'fab fa-yandex',
+	'fab_yarn'                           : 'fab fa-yarn',
+	'fab_yelp'                           : 'fab fa-yelp',
+	'fab_yoast'                          : 'fab fa-yoast',
+	'fab_youtube'                        : 'fab fa-youtube',
+	'fab_zhihu'                          : 'fab fa-zhihu'
+};
+
+module.exports = fontAwesome;
\ No newline at end of file


Test patch:
diff --git a/tests/markdown/emojis.test.js b/tests/markdown/emojis.test.js
new file mode 100644
index 00000000..a4abbc6a
--- /dev/null
+++ b/tests/markdown/emojis.test.js
@@ -0,0 +1,58 @@
+const Markdown = require('naturalcrit/markdown.js');
+const dedent = require('dedent-tabs').default;
+
+// Marked.js adds line returns after closing tags on some default tokens.
+// This removes those line returns for comparison sake.
+String.prototype.trimReturns = function(){
+	return this.replace(/\r?\n|\r/g, '');
+};
+
+const emoji = 'df_d12_2';
+
+describe(`When emojis/icons are active`, ()=>{
+	it('when a word is between two colons (:word:), and a matching emoji exists, it is rendered as an emoji', function() {
+		const source = `:${emoji}:`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<p><i class="df d12-2"></i></p>`);
+	});
+
+	it('when a word is between two colons (:word:), and no matching emoji exists, it is not parsed', function() {
+		const source = `:invalid:`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<p>:invalid:</p>`);
+	});
+
+	it('two valid emojis with no whitespace are prioritized over definition lists', function() {
+		const source = `:${emoji}::${emoji}:`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<p><i class="df d12-2"></i><i class="df d12-2"></i></p>`);
+	});
+
+	it('definition lists that are not also part of an emoji can coexist with normal emojis', function() {
+		const source = `definition :: term ${emoji}::${emoji}:`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<dl><dt>definition</dt><dd>term df_d12_2:<i class="df d12-2"></i></dd></dl>`);
+	});
+
+	it('A valid emoji is compatible with curly injectors', function() {
+		const source = `:${emoji}:{color:blue,myClass}`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<p><i class="df d12-2 myClass" style="color:blue;"></i></p>`);
+	});
+
+	it('Emojis are not parsed inside of curly span CSS blocks', function() {
+		const source = `{{color:${emoji} text}}`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<span class="inline-block" style="color:df_d12_2;">text</span>`);
+	});
+
+	it('Emojis are not parsed inside of curly div CSS blocks', function() {
+		const source = dedent`{{color:${emoji}
+													text
+													}}`;
+		const rendered = Markdown.render(source).trimReturns();
+		expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe(`<div class="block" style="color:df_d12_2;"><p>text</p></div>`);
+	});
+
+	// another test of the editor to confirm an autocomplete menu opens
+});
\ No newline at end of file