├── CHANGELOG.md
├── .gitignore
├── modules
└── @apostrophecms
│ ├── characterCount
│ ├── ui
│ │ └── apos
│ │ │ ├── scss
│ │ │ └── _characterCountStyles.scss
│ │ │ ├── tiptap-extensions
│ │ │ └── characterCountConfig.js
│ │ │ ├── components
│ │ │ ├── RichTextCCInsert.vue
│ │ │ └── RichTextCCToolbar.vue
│ │ │ └── mixins
│ │ │ └── characterCountMixin.js
│ ├── index.js
│ └── lib
│ │ └── characterCountExtension.js
│ ├── smilies
│ ├── index.js
│ ├── ui
│ │ └── apos
│ │ │ └── tiptap-extensions
│ │ │ └── smilie.js
│ └── lib
│ │ ├── smilies.js
│ │ └── replacementEmojis.js
│ └── typography
│ ├── index.js
│ └── ui
│ └── apos
│ └── tiptap-extensions
│ └── typography.js
├── index.js
├── package.json
└── README.md
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | ## 1.0.0 (2023-11-29)
4 |
5 | - Initial release
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | package-lock.json
2 | npm-debug.log
3 | node_modules
4 |
5 | numbered-bookmarks.json
6 | .DS_Store
7 | .vscode
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/ui/apos/scss/_characterCountStyles.scss:
--------------------------------------------------------------------------------
1 | .character-count {
2 | padding: 10px;
3 | font-size: 12px;
4 | line-height: 1.5;
5 | }
6 |
7 | .apos-is-active {
8 | background-color: var(--a-base-7);
9 | }
10 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | bundle: {
3 | directory: 'modules',
4 | modules: [ `@apostrophecms/typography`, '@apostrophecms/smilies', '@apostrophecms/characterCount' ]
5 | },
6 | init(self) {
7 | console.log('👋 from the rich text widget extension!');
8 | }
9 | };
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@apostrophecms/rich-text-example-extensions",
3 | "version": "1.0.0",
4 | "description": "Adds new functionality to the ApostropheCMS rich-text-widget",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "@tiptap/extension-typography": "^2.0.0-beta.217",
13 | "emoji-regex": "^10.2.1"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/smilies/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | improve: '@apostrophecms/rich-text-widget',
3 | options: {
4 | smiliesConfig: {}
5 | },
6 | extendMethods(self) {
7 | return {
8 | // We need to extend this method so that our configuration data is available
9 | getBrowserData(_super, req) {
10 | const initialData = _super(req);
11 | const finalData = {
12 | ...initialData,
13 | aposSmiliesConfig: self.options.smiliesConfig
14 | }
15 | return finalData;
16 | }
17 | }
18 | }
19 | };
--------------------------------------------------------------------------------
/modules/@apostrophecms/typography/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | improve: '@apostrophecms/rich-text-widget',
3 | options: {
4 | typoConfig: {}
5 | },
6 | extendMethods(self) {
7 | return {
8 | // We need to extend this method so that our configuration data is available
9 | getBrowserData(_super, req) {
10 | const initialData = _super(req);
11 | const finalData = {
12 | ...initialData,
13 | aposTypoConfig: self.options.typoConfig
14 | }
15 | return finalData;
16 | }
17 | }
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/smilies/ui/apos/tiptap-extensions/smilie.js:
--------------------------------------------------------------------------------
1 | // imports our custom extension
2 | import { Smilie } from '../../../lib/smilies.js';
3 | export default (options) => {
4 | // gets options added in each area
5 | const perAreaConfig = options.smiliesConfig || {};
6 | // gets options added at project level to the widget `modules/@apostrophecms/rich-text-widget/index.js`
7 | const globalConfig = self.apos.modules['@apostrophecms/rich-text-widget'].aposSmiliesConfig || {};
8 | const configuration = Object.assign({}, globalConfig, perAreaConfig);
9 | // instantiates the extension with our options
10 | return Smilie.configure(configuration);
11 | };
--------------------------------------------------------------------------------
/modules/@apostrophecms/typography/ui/apos/tiptap-extensions/typography.js:
--------------------------------------------------------------------------------
1 | // imports the tiptap extension from node_modules
2 | import Typography from '@tiptap/extension-typography';
3 | export default (options) => {
4 | // gets options added in each area
5 | const perAreaConfig = options.typoConfig || {};
6 | // gets options added at project level to the widget `modules/@apostrophecms/rich-text-widget/index.js`
7 | const globalConfig = self.apos.modules['@apostrophecms/rich-text-widget'].aposTypoConfig || {};
8 | const configuration = Object.assign({}, globalConfig, perAreaConfig);
9 | // instantiates the extension with our options
10 | return Typography.configure(configuration);
11 | };
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/ui/apos/tiptap-extensions/characterCountConfig.js:
--------------------------------------------------------------------------------
1 | // imports our custom extension
2 | import CharacterCount from '../../../lib/characterCountExtension';
3 | export default (options) => {
4 | // gets options added in each area
5 | const perAreaConfig = options.charCountConfig || {};
6 | // gets options added at project level to the widget `modules/@apostrophecms/rich-text-widget/index.js`
7 | const globalConfig = self.apos.modules['@apostrophecms/rich-text-widget'].aposCharCountConfig || {};
8 | const configuration = Object.assign({}, globalConfig, perAreaConfig);
9 | // instantiates the extension with our options
10 | return CharacterCount.configure(configuration);
11 | };
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | improve: '@apostrophecms/rich-text-widget',
3 | options: {
4 | charCountConfig: {}
5 | },
6 | extendMethods(self) {
7 | return {
8 | getBrowserData(_super, req) {
9 | const initialData = _super(req);
10 | // This adds the character count to the toolbar
11 | const finalTools = {
12 | ...initialData.tools,
13 | characterCount: {
14 | component: 'RichTextCCToolbar',
15 | label: 'CC'
16 | }
17 | };
18 |
19 | // This makes the character count available to be added to the insert menu
20 | const finalInsert = {
21 | ...initialData.insertMenu,
22 | characterCount: {
23 | label: 'CC',
24 | icon: 'eye-icon',
25 | description: 'Character count',
26 | component: 'RichTextCCInsert'
27 | }
28 | };
29 |
30 | // Also adds in the configuration options
31 | const finalData = {
32 | ...initialData,
33 | tools: finalTools,
34 | insertMenu: finalInsert,
35 | aposCharCountConfig: self.options.charCountConfig
36 | }
37 | return finalData;
38 | }
39 | }
40 | }
41 | };
42 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/ui/apos/components/RichTextCCInsert.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
Document stats
9 | Total characters: {{ totalCharactersCount }}{{ editorLimitText }}
10 |
11 | Total words: {{ totalWordsCount }}
12 |
13 |
16 |
17 |
18 |
19 |
20 |
41 |
42 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/smilies/lib/smilies.js:
--------------------------------------------------------------------------------
1 | // Extension adapted from the tiptap.dev site examples
2 |
3 | // Import the functions we need from tiptap core
4 | import { textInputRule, Extension } from '@tiptap/core';
5 |
6 | // Import the list of emojis and regex for each
7 | import replacementEmojis from './replacementEmojis';
8 |
9 | const Smilie = Extension.create({
10 | name: 'smilie',
11 | addInputRules() {
12 | const inputRules = [];
13 | const tone = this.options.tone || 2;
14 | const convertedEmojis = changeTone(replacementEmojis, tone);
15 | for (let index = 0; index < convertedEmojis.length; index++) {
16 | inputRules[index] = textInputRule(convertedEmojis[index]);
17 | }
18 | return inputRules;
19 | },
20 | });
21 |
22 | function changeTone(replacementEmojis, tone) {
23 | return replacementEmojis.map(item => ({
24 | find: item.find,
25 | replace: changeSkinTone(item.replace, tone),
26 | }));
27 | }
28 |
29 | function changeSkinTone(emoji, tone) {
30 | const skinTones = [
31 | '\u{1F3FB}', // Light skin tone
32 | '\u{1F3FC}', // Medium-light skin tone
33 | '\u{1F3FD}', // Medium skin tone
34 | '\u{1F3FE}', // Medium-dark skin tone
35 | '\u{1F3FF}', // Dark skin tone
36 | ];
37 |
38 | const modifier = skinTones[tone - 1];
39 |
40 | // Split the emoji into its individual components
41 | const components = emoji.split(/(\p{Emoji}|\u{200D})/gu);
42 |
43 | // Modify the components that can have a skin tone modifier
44 | const modifiedComponents = components.map((component) => {
45 | if (/\p{Emoji_Modifier_Base}/u.test(component)) {
46 | // Replace existing modifier or add new one
47 | const replaced = component.replace(/[\u{1F3FB}-\u{1F3FF}]/gu, '');
48 | return replaced + modifier;
49 | }
50 | return component;
51 | });
52 |
53 | // Reassemble the modified components
54 | return modifiedComponents.join('');
55 | }
56 |
57 | export { Smilie, Smilie as default };
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/ui/apos/mixins/characterCountMixin.js:
--------------------------------------------------------------------------------
1 | export default {
2 | data() {
3 | return {
4 | generation: 1,
5 | // triggerValidation: false,
6 | formModifiers: ['small', 'margin-micro'],
7 | totalCharactersCount: 0,
8 | totalWordsCount: 0
9 | };
10 | },
11 | props: {
12 | options: {
13 | type: Object,
14 | required: true
15 | },
16 | editor: {
17 | type: Object,
18 | required: true
19 | }
20 | },
21 | computed: {
22 | moduleOptions() {
23 | return apos.modules[apos.area.widgetManagers['@apostrophecms/rich-text']]
24 | .aposCharCountConfig;
25 | },
26 | widgetOptions() {
27 | if (this.options?.charCountConfig) {
28 | return this.options.charCountConfig;
29 | }
30 | return {};
31 | },
32 | editorLimitText() {
33 | if (this.moduleOptions?.limit || this.widgetOptions?.limit) {
34 | const limit = this.widgetOptions.limit
35 | ? this.widgetOptions.limit
36 | : this.moduleOptions.limit;
37 | return `/${limit}`;
38 | }
39 | return '';
40 | },
41 | hasSelection() {
42 | const { state } = this.editor;
43 | const { selection } = this.editor.state;
44 | const { from, to } = selection;
45 | const text = state.doc.textBetween(from, to, '');
46 | return text !== '';
47 | }
48 | },
49 | mounted() {
50 | this.calculateTotalCharacters();
51 | this.calculateTotalWords();
52 | },
53 | watch: {
54 | active(newVal) {
55 | if (newVal) {
56 | this.calculateTotalCharacters();
57 | this.calculateTotalWords();
58 | window.addEventListener('keydown', this.keyboardHandler);
59 | } else {
60 | window.removeEventListener('keydown', this.keyboardHandler);
61 | }
62 | },
63 | },
64 | methods: {
65 | keyboardHandler(e) {
66 | if (e.keyCode === 27 || e.keyCode === 13) {
67 | this.close();
68 | e.preventDefault();
69 | }
70 | },
71 | async populateFields() {
72 | this.generation++;
73 | },
74 | calculateTotalCharacters() {
75 | this.totalCharactersCount = this.editor.commands.getTotalCharactersCount();
76 | },
77 | calculateTotalWords() {
78 | this.totalWordsCount = this.editor.commands.getTotalWordsCount();
79 | }
80 | }
81 | };
82 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/ui/apos/components/RichTextCCToolbar.vue:
--------------------------------------------------------------------------------
1 |
2 |
26 |
27 |
28 |
86 |
87 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/characterCount/lib/characterCountExtension.js:
--------------------------------------------------------------------------------
1 | import { Extension } from '@tiptap/core';
2 | import { Plugin, PluginKey } from '@tiptap/pm/state';
3 |
4 | const CharacterCount = Extension.create({
5 | name: 'characterCount',
6 |
7 | addOptions() {
8 | return {
9 | limit: null
10 | };
11 | },
12 |
13 | addCommands() {
14 | return {
15 | getHighlightedStats:
16 | (type = 'characters') =>
17 | ({ state }) => {
18 | const { from, to } = state.selection;
19 |
20 | if (from === to) return 0;
21 |
22 | // Extract text for character count (no extra spaces at node boundaries)
23 | const textForCharacters = state.doc.textBetween(from, to, null, '');
24 | const charactersCount = textForCharacters.length;
25 |
26 | // Extract text for word count (with spaces at node boundaries)
27 | const textForWords = state.doc.textBetween(from, to, ' ', ' ');
28 | let wordsCount = textForWords
29 | .split(' ')
30 | .filter((word) => word !== '').length;
31 |
32 | // if selection has an isolated slash at the end, remove it from the count
33 | if (/\s\/$/.test(textForWords)) {
34 | wordsCount--;
35 | }
36 |
37 | return type === 'characters' ? charactersCount : wordsCount;
38 | },
39 |
40 | getTotalCharactersCount:
41 | () =>
42 | ({ state }) => {
43 | const text = state.doc.textContent;
44 | return text[text.length - 1] === '/' ? text.length - 1 : text.length;
45 | },
46 | getTotalWordsCount:
47 | () =>
48 | ({ state }) => {
49 | let wordCount = 0;
50 | state.doc.descendants((node) => {
51 | if (node.isText) {
52 | const words = node.text.trim().split(/\s+/).filter(Boolean);
53 | wordCount += words.length;
54 | }
55 | });
56 |
57 | const docText = state.doc.textContent;
58 | const endsWithIsolatedSlash = /\s\/$/.test(docText);
59 |
60 | if (endsWithIsolatedSlash) {
61 | wordCount = wordCount > 0 ? wordCount - 1 : 0;
62 | }
63 |
64 | return wordCount;
65 | }
66 | };
67 | },
68 |
69 | addProseMirrorPlugins() {
70 | return [
71 | new Plugin({
72 | key: new PluginKey('characterCount'),
73 | filterTransaction: (transaction, state) => {
74 | const limit = this.options.limit;
75 | if (
76 | !transaction.docChanged ||
77 | limit === 0 ||
78 | limit === null ||
79 | limit === undefined
80 | ) {
81 | return true;
82 | }
83 |
84 | // Check if the transaction is a paste operation
85 | const isPaste = transaction.getMeta('paste');
86 |
87 | // Get the total characters count from the new state
88 | const totalCharacters = transaction.doc.textContent.length;
89 |
90 | // If the total number of characters exceeds the limit, rollback the transaction
91 | if (totalCharacters > limit) {
92 | if (isPaste) {
93 | // For pasted content, try to remove the exceeding content
94 | const over = totalCharacters - limit;
95 | const pos = transaction.selection.$head.pos;
96 | const from = pos - over;
97 | const to = pos;
98 | transaction.deleteRange(from, to);
99 | } else {
100 | // If the limit will be exceeded, block the transaction
101 | return false;
102 | }
103 | }
104 |
105 | // Allow the transaction if within the limit
106 | return true;
107 | }
108 | })
109 | ];
110 | }
111 | });
112 |
113 | export default CharacterCount;
114 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
17 |
18 | This module bundle adds three new extensions to the `@apostrophecms/rich-text-widget`. While you may find these new extensions useful, they are also a great learning resource and the basis for a series of upcoming tutorials.
19 |
20 | ### Typography
21 | The first extension, `@apostrophecms/typography` adds a whole series of autocomplete actions to your editor. One example, typing `(tm)` will autoconvert to `™`. For a whole list check out the [documentation](https://tiptap.dev/api/extensions/typography). Note that some auto-convert rules (like fractions) won't work if you have the insert menu turned on. You can configure this module either at the project level in the `modules/@apostrophecms/rich-text-editor/index.js` file, or in the configuration section for the rich-text-widget of individual areas.
22 | Example:
23 | ```js
24 | widgets: {
25 | '@apostrophecms/rich-text': {
26 | insert: [
27 | ...
28 | ],
29 | toolbar: [
30 | ...
31 | ],
32 | styles: [
33 | ...
34 | ],
35 | typoConfig: {
36 | // Will no longer convert `(tm)` to ™
37 | trademark: false,
38 | // Will convert `->` to `=>`
39 | rightArrow: '=>'
40 | }
41 | },
42 | '@apostrophecms/image': {},
43 | '@apostrophecms/video': {}
44 | }
45 | ```
46 |
47 | Wow! Cool! Neat! But... why? Because this extension shows how to take an existing tiptap extension, that doesn't require a new button or any other control element, and add it to the rich text editor.
48 |
49 | ### Smilies 😀
50 | The second extension, `@apostrophecms/smilies` adds a host of keyboard shortcuts for smilie emojis, plus my favorite non-emoji ( `:ashrug `, `¯\_(ツ)_/¯`). You can see the full list in [the code](modules/@apostrophecms/smilies/lib/replacementEmojis.js). Wow! Cool! Neat! But... isn't there a keyboard shortcut for that now? Yup, but this extension is a great way to learn how to create your own small tiptap extension and add it to the rich-text-widget! You can configure this module either at the project level in the `modules/@apostrophecms/rich-text-editor/index.js` file, or in the configuration section for the rich-text-widget of individual areas to select what skin tone (1 = lightest, 5 = darkest) for the replacement emojis. Note that not all operating systems can display skin tone emojis correctly, so some may not appear as expected.
51 | Example:
52 |
53 | ```js
54 | widgets: {
55 | '@apostrophecms/rich-text': {
56 | insert: [
57 | ...
58 | ],
59 | toolbar: [
60 | ...
61 | ],
62 | styles: [
63 | ...
64 | ],
65 | smiliesConfig: {
66 | tone: 2
67 | }
68 | },
69 | '@apostrophecms/image': {},
70 | '@apostrophecms/video': {}
71 | }
72 | ```
73 |
74 | ### Character Count
75 | The third extension, `@apostrophecms/characterCount` allows you to display how many characters and words you have typed in your editor box. You can either open the box from the toolbar or the insert menu. If you add it to the toolbar, it will also tell you how many characters you have highlighted. You can limit the number of characters that can be added to the editor box through the configuration.
76 |
77 | ```js
78 | widgets: {
79 | '@apostrophecms/rich-text': {
80 | insert: [
81 | 'table',
82 | 'image',
83 | // optionally, add here to have it appear on the insert menu
84 | 'characterCount'
85 | ],
86 | toolbar: [
87 | ...
88 | // optionally, add it here to have it appear on the toolbar
89 | 'characterCount',
90 | ],
91 | styles: [
92 | ...
93 | ],
94 | charCountConfig: {
95 | // How X!
96 | limit: 280
97 | }
98 | },
99 | '@apostrophecms/image': {},
100 | '@apostrophecms/video': {}
101 | }
102 | ```
103 |
104 | Wow... okay, okay. Even I can't get that excited about this one. So, why? This extension will show you how to implement a new button on the toolbar or item in the insert menu to bring up the character count box. It will also give you a basic overview of how you would implement the Vue components for each.
105 |
106 | ## Installation
107 |
108 | To install the module, use the command line to run this command in an Apostrophe project's root directory:
109 |
110 | ```
111 | npm install @apostrophecms/rich-text-example-extensions
112 | ```
113 |
114 | ## Usage
115 |
116 | Configure the modules in the `app.js` file:
117 |
118 | ```javascript
119 | require('apostrophe')({
120 | shortName: 'my-project',
121 | // Activate the bundle -> subject to change with renaming/ownership change
122 | bundles: [ '@apostrophecms/rich-text-example-extensions' ],
123 | modules: {
124 | // The typography module
125 | '@apostrophecms/typography': {},
126 | // The smilies module
127 | '@apostrophecms/smilies': {},
128 | // The character count module
129 | '@apostrophecms/characterCount': {}
130 | }
131 | });
132 | ```
133 |
134 | Enabling any of these modules will improve the rich-text-widget, making them available without additional configurations. You will only need to add the `characterCount` to the toolbar or insert menu (or both!) configuration as shown above.
135 |
--------------------------------------------------------------------------------
/modules/@apostrophecms/smilies/lib/replacementEmojis.js:
--------------------------------------------------------------------------------
1 | const replacementEmojis = [
2 | { find: /:100 $/, replace: '💯'},
3 | { find: /:1234 $/, replace: '🔢'},
4 | { find: /:grinning $/, replace: '😀'},
5 | { find: /:smiley $/, replace: '😃'},
6 | { find: /:smile $/, replace: '😄'},
7 | { find: /:grin $/, replace: '😁'},
8 | { find: /:laughing $/, replace: '😆'},
9 | { find: /:satisfied $/, replace: '😆'},
10 | { find: /:sweat_smile $/, replace: '😅'},
11 | { find: /:rofl $/, replace: '🤣'},
12 | { find: /:joy $/, replace: '😂'},
13 | { find: /:slightly_smiling_face $/, replace: '🙂'},
14 | { find: /:upside_down_face $/, replace: '🙃'},
15 | { find: /:wink $/, replace: '😉'},
16 | { find: /:blush $/, replace: '😊'},
17 | { find: /:innocent $/, replace: '😇'},
18 | { find: /:smiling_face_with_three_hearts $/, replace: '🥰'},
19 | { find: /:heart_eyes $/, replace: '😍'},
20 | { find: /:star_struck $/, replace: '🤩'},
21 | { find: /:kissing_heart $/, replace: '😘'},
22 | { find: /:kissing $/, replace: '😗'},
23 | { find: /:relaxed $/, replace: '☺️'},
24 | { find: /:kissing_closed_eyes $/, replace: '😚'},
25 | { find: /:kissing_smiling_eyes $/, replace: '😙'},
26 | { find: /:smiling_face_with_tear $/, replace: '🥲'},
27 | { find: /:yum $/, replace: '😋'},
28 | { find: /:stuck_out_tongue $/, replace: '😛'},
29 | { find: /:stuck_out_tongue_winking_eye $/, replace: '😜'},
30 | { find: /:zany_face $/, replace: '🤪'},
31 | { find: /:stuck_out_tongue_closed_eyes $/, replace: '😝'},
32 | { find: /:money_mouth_face $/, replace: '🤑'},
33 | { find: /:hugs $/, replace: '🤗'},
34 | { find: /:hand_over_mouth $/, replace: '🤭'},
35 | { find: /:shushing_face $/, replace: '🤫'},
36 | { find: /:thinking $/, replace: '🤔'},
37 | { find: /:zipper_mouth_face $/, replace: '🤐'},
38 | { find: /:raised_eyebrow $/, replace: '🤨'},
39 | { find: /:neutral_face $/, replace: '😐'},
40 | { find: /:expressionless $/, replace: '😑'},
41 | { find: /:no_mouth $/, replace: '😶'},
42 | { find: /:smirk $/, replace: '😏'},
43 | { find: /:unamused $/, replace: '😒'},
44 | { find: /:roll_eyes $/, replace: '🙄'},
45 | { find: /:grimacing $/, replace: '😬'},
46 | { find: /:lying_face $/, replace: '🤥'},
47 | { find: /:relieved $/, replace: '😌'},
48 | { find: /:pensive $/, replace: '😔'},
49 | { find: /:sleepy $/, replace: '😪'},
50 | { find: /:drooling_face $/, replace: '🤤'},
51 | { find: /:sleeping $/, replace: '😴'},
52 | { find: /:mask $/, replace: '😷'},
53 | { find: /:face_with_thermometer $/, replace: '🤒'},
54 | { find: /:face_with_head_bandage $/, replace: '🤕'},
55 | { find: /:nauseated_face $/, replace: '🤢'},
56 | { find: /:vomiting_face $/, replace: '🤮'},
57 | { find: /:sneezing_face $/, replace: '🤧'},
58 | { find: /:hot_face $/, replace: '🥵'},
59 | { find: /:cold_face $/, replace: '🥶'},
60 | { find: /:woozy_face $/, replace: '🥴'},
61 | { find: /:dizzy_face $/, replace: '😵'},
62 | { find: /:exploding_head $/, replace: '🤯'},
63 | { find: /:cowboy_hat_face $/, replace: '🤠'},
64 | { find: /:partying_face $/, replace: '🥳'},
65 | { find: /:disguised_face $/, replace: '🥸'},
66 | { find: /:sunglasses $/, replace: '😎'},
67 | { find: /:nerd_face $/, replace: '🤓'},
68 | { find: /:monocle_face $/, replace: '🧐'},
69 | { find: /:confused $/, replace: '😕'},
70 | { find: /:worried $/, replace: '😟'},
71 | { find: /:slightly_frowning_face $/, replace: '🙁'},
72 | { find: /:frowning_face $/, replace: '☹️'},
73 | { find: /:open_mouth $/, replace: '😮'},
74 | { find: /:hushed $/, replace: '😯'},
75 | { find: /:astonished $/, replace: '😲'},
76 | { find: /:flushed $/, replace: '😳'},
77 | { find: /:pleading_face $/, replace: '🥺'},
78 | { find: /:frowning $/, replace: '😦'},
79 | { find: /:anguished $/, replace: '😧'},
80 | { find: /:fearful $/, replace: '😨'},
81 | { find: /:cold_sweat $/, replace: '😰'},
82 | { find: /:disappointed_relieved $/, replace: '😥'},
83 | { find: /:cry $/, replace: '😢'},
84 | { find: /:sob $/, replace: '😭'},
85 | { find: /:scream $/, replace: '😱'},
86 | { find: /:confounded $/, replace: '😖'},
87 | { find: /:persevere $/, replace: '😣'},
88 | { find: /:disappointed $/, replace: '😞'},
89 | { find: /:sweat $/, replace: '😓'},
90 | { find: /:weary $/, replace: '😩'},
91 | { find: /:tired_face $/, replace: '😫'},
92 | { find: /:yawning_face $/, replace: '🥱'},
93 | { find: /:triumph $/, replace: '😤'},
94 | { find: /:rage $/, replace: '😡'},
95 | { find: /:pout $/, replace: '😡'},
96 | { find: /:angry $/, replace: '😠'},
97 | { find: /:cursing_face $/, replace: '🤬'},
98 | { find: /:smiling_imp $/, replace: '😈'},
99 | { find: /:imp $/, replace: '👿'},
100 | { find: /:skull $/, replace: '💀'},
101 | { find: /:skull_and_crossbones $/, replace: '☠️'},
102 | { find: /:hankey $/, replace: '💩'},
103 | { find: /:poop $/, replace: '💩'},
104 | { find: /:shit $/, replace: '💩'},
105 | { find: /:clown_face $/, replace: '🤡'},
106 | { find: /:japanese_ogre $/, replace: '👹'},
107 | { find: /:japanese_goblin $/, replace: '👺'},
108 | { find: /:ghost $/, replace: '👻'},
109 | { find: /:alien $/, replace: '👽'},
110 | { find: /:space_invader $/, replace: '👾'},
111 | { find: /:robot $/, replace: '🤖'},
112 | { find: /:smiley_cat $/, replace: '😺'},
113 | { find: /:smile_cat $/, replace: '😸'},
114 | { find: /:joy_cat $/, replace: '😹'},
115 | { find: /:heart_eyes_cat $/, replace: '😻'},
116 | { find: /:smirk_cat $/, replace: '😼'},
117 | { find: /:kissing_cat $/, replace: '😽'},
118 | { find: /:scream_cat $/, replace: '🙀'},
119 | { find: /:crying_cat_face $/, replace: '😿'},
120 | { find: /:pouting_cat $/, replace: '😾'},
121 | { find: /:see_no_evil $/, replace: '🙈'},
122 | { find: /:hear_no_evil $/, replace: '🙉'},
123 | { find: /:speak_no_evil $/, replace: '🙊'},
124 | { find: /:kiss $/, replace: '💋'},
125 | { find: /:love_letter $/, replace: '💌'},
126 | { find: /:cupid $/, replace: '💘'},
127 | { find: /:gift_heart $/, replace: '💝'},
128 | { find: /:sparkling_heart $/, replace: '💖'},
129 | { find: /:heartpulse $/, replace: '💗'},
130 | { find: /:heartbeat $/, replace: '💓'},
131 | { find: /:revolving_hearts $/, replace: '💞'},
132 | { find: /:two_hearts $/, replace: '💕'},
133 | { find: /:heart_decoration $/, replace: '💟'},
134 | { find: /:heavy_heart_exclamation $/, replace: '❣️'},
135 | { find: /:broken_heart $/, replace: '💔'},
136 | { find: /:heart $/, replace: '❤️'},
137 | { find: /:orange_heart $/, replace: '🧡'},
138 | { find: /:yellow_heart $/, replace: '💛'},
139 | { find: /:green_heart $/, replace: '💚'},
140 | { find: /:blue_heart $/, replace: '💙'},
141 | { find: /:purple_heart $/, replace: '💜'},
142 | { find: /:brown_heart $/, replace: '🤎'},
143 | { find: /:black_heart $/, replace: '🖤'},
144 | { find: /:white_heart $/, replace: '🤍'},
145 | { find: /:anger $/, replace: '💢'},
146 | { find: /:boom $/, replace: '💥'},
147 | { find: /:collision $/, replace: '💥'},
148 | { find: /:dizzy $/, replace: '💫'},
149 | { find: /:sweat_drops $/, replace: '💦'},
150 | { find: /:dash $/, replace: '💨'},
151 | { find: /:hole $/, replace: '🕳️'},
152 | { find: /:bomb $/, replace: '💣'},
153 | { find: /:speech_balloon $/, replace: '💬'},
154 | { find: /:eye_speech_bubble $/, replace: '👁️🗨️'},
155 | { find: /:left_speech_bubble $/, replace: '🗨️'},
156 | { find: /:right_anger_bubble $/, replace: '🗯️'},
157 | { find: /:thought_balloon $/, replace: '💭'},
158 | { find: /:zzz $/, replace: '💤'},
159 | { find: /:wave $/, replace: '👋'},
160 | { find: /:raised_back_of_hand $/, replace: '🤚'},
161 | { find: /:raised_hand_with_fingers_splayed $/, replace: '🖐️'},
162 | { find: /:hand $/, replace: '✋'},
163 | { find: /:raised_hand $/, replace: '✋'},
164 | { find: /:vulcan_salute $/, replace: '🖖'},
165 | { find: /:ok_hand $/, replace: '👌'},
166 | { find: /:pinched_fingers $/, replace: '🤌'},
167 | { find: /:pinching_hand $/, replace: '🤏'},
168 | { find: /:v $/, replace: '✌️'},
169 | { find: /:crossed_fingers $/, replace: '🤞'},
170 | { find: /:love_you_gesture $/, replace: '🤟'},
171 | { find: /:metal $/, replace: '🤘'},
172 | { find: /:call_me_hand $/, replace: '🤙'},
173 | { find: /:point_left $/, replace: '👈'},
174 | { find: /:point_right $/, replace: '👉'},
175 | { find: /:point_up_2 $/, replace: '👆'},
176 | { find: /:middle_finger $/, replace: '🖕'},
177 | { find: /:fu $/, replace: '🖕'},
178 | { find: /:point_down $/, replace: '👇'},
179 | { find: /:point_up $/, replace: '☝️'},
180 | { find: /:\+1 $/, replace: '👍'},
181 | { find: /:thumbsup $/, replace: '👍'},
182 | { find: /:-1 $/, replace: '👎'},
183 | { find: /:thumbsdown $/, replace: '👎'},
184 | { find: /:fist_raised $/, replace: '✊'},
185 | { find: /:fist $/, replace: '✊'},
186 | { find: /:fist_oncoming $/, replace: '👊'},
187 | { find: /:facepunch $/, replace: '👊'},
188 | { find: /:punch $/, replace: '👊'},
189 | { find: /:fist_left $/, replace: '🤛'},
190 | { find: /:fist_right $/, replace: '🤜'},
191 | { find: /:clap $/, replace: '👏'},
192 | { find: /:raised_hands $/, replace: '🙌'},
193 | { find: /:open_hands $/, replace: '👐'},
194 | { find: /:palms_up_together $/, replace: '🤲'},
195 | { find: /:handshake $/, replace: '🤝'},
196 | { find: /:pray $/, replace: '🙏'},
197 | { find: /:writing_hand $/, replace: '✍️'},
198 | { find: /:nail_care $/, replace: '💅'},
199 | { find: /:selfie $/, replace: '🤳'},
200 | { find: /:muscle $/, replace: '💪'},
201 | { find: /:mechanical_arm $/, replace: '🦾'},
202 | { find: /:mechanical_leg $/, replace: '🦿'},
203 | { find: /:leg $/, replace: '🦵'},
204 | { find: /:foot $/, replace: '🦶'},
205 | { find: /:ear $/, replace: '👂'},
206 | { find: /:ear_with_hearing_aid $/, replace: '🦻'},
207 | { find: /:nose $/, replace: '👃'},
208 | { find: /:brain $/, replace: '🧠'},
209 | { find: /:anatomical_heart $/, replace: '🫀'},
210 | { find: /:lungs $/, replace: '🫁'},
211 | { find: /:tooth $/, replace: '🦷'},
212 | { find: /:bone $/, replace: '🦴'},
213 | { find: /:eyes $/, replace: '👀'},
214 | { find: /:eye $/, replace: '👁️'},
215 | { find: /:tongue $/, replace: '👅'},
216 | { find: /:lips $/, replace: '👄'},
217 | { find: /:baby $/, replace: '👶'},
218 | { find: /:child $/, replace: '🧒'},
219 | { find: /:boy $/, replace: '👦'},
220 | { find: /:girl $/, replace: '👧'},
221 | { find: /:adult $/, replace: '🧑'},
222 | { find: /:blond_haired_person $/, replace: '👱'},
223 | { find: /:man $/, replace: '👨'},
224 | { find: /:bearded_person $/, replace: '🧔'},
225 | { find: /:red_haired_man $/, replace: '👨🦰'},
226 | { find: /:curly_haired_man $/, replace: '👨🦱'},
227 | { find: /:white_haired_man $/, replace: '👨🦳'},
228 | { find: /:bald_man $/, replace: '👨🦲'},
229 | { find: /:woman $/, replace: '👩'},
230 | { find: /:red_haired_woman $/, replace: '👩🦰'},
231 | { find: /:person_red_hair $/, replace: '🧑🦰'},
232 | { find: /:curly_haired_woman $/, replace: '👩🦱'},
233 | { find: /:person_curly_hair $/, replace: '🧑🦱'},
234 | { find: /:white_haired_woman $/, replace: '👩🦳'},
235 | { find: /:person_white_hair $/, replace: '🧑🦳'},
236 | { find: /:bald_woman $/, replace: '👩🦲'},
237 | { find: /:person_bald $/, replace: '🧑🦲'},
238 | { find: /:blond_haired_woman $/, replace: '👱♀️'},
239 | { find: /:blonde_woman $/, replace: '👱♀️'},
240 | { find: /:blond_haired_man $/, replace: '👱♂️'},
241 | { find: /:older_adult $/, replace: '🧓'},
242 | { find: /:older_man $/, replace: '👴'},
243 | { find: /:older_woman $/, replace: '👵'},
244 | { find: /:frowning_person $/, replace: '🙍'},
245 | { find: /:frowning_man $/, replace: '🙍♂️'},
246 | { find: /:frowning_woman $/, replace: '🙍♀️'},
247 | { find: /:pouting_face $/, replace: '🙎'},
248 | { find: /:pouting_man $/, replace: '🙎♂️'},
249 | { find: /:pouting_woman $/, replace: '🙎♀️'},
250 | { find: /:no_good $/, replace: '🙅'},
251 | { find: /:no_good_man $/, replace: '🙅♂️'},
252 | { find: /:ng_man $/, replace: '🙅♂️'},
253 | { find: /:no_good_woman $/, replace: '🙅♀️'},
254 | { find: /:ng_woman $/, replace: '🙅♀️'},
255 | { find: /:ok_person $/, replace: '🙆'},
256 | { find: /:ok_man $/, replace: '🙆♂️'},
257 | { find: /:ok_woman $/, replace: '🙆♀️'},
258 | { find: /:tipping_hand_person $/, replace: '💁'},
259 | { find: /:information_desk_person $/, replace: '💁'},
260 | { find: /:tipping_hand_man $/, replace: '💁♂️'},
261 | { find: /:sassy_man $/, replace: '💁♂️'},
262 | { find: /:tipping_hand_woman $/, replace: '💁♀️'},
263 | { find: /:sassy_woman $/, replace: '💁♀️'},
264 | { find: /:raising_hand $/, replace: '🙋'},
265 | { find: /:raising_hand_man $/, replace: '🙋♂️'},
266 | { find: /:raising_hand_woman $/, replace: '🙋♀️'},
267 | { find: /:deaf_person $/, replace: '🧏'},
268 | { find: /:deaf_man $/, replace: '🧏♂️'},
269 | { find: /:deaf_woman $/, replace: '🧏♀️'},
270 | { find: /:bow $/, replace: '🙇'},
271 | { find: /:bowing_man $/, replace: '🙇♂️'},
272 | { find: /:bowing_woman $/, replace: '🙇♀️'},
273 | { find: /:facepalm $/, replace: '🤦'},
274 | { find: /:man_facepalming $/, replace: '🤦♂️'},
275 | { find: /:woman_facepalming $/, replace: '🤦♀️'},
276 | { find: /:shrug $/, replace: '🤷'},
277 | { find: /:man_shrugging $/, replace: '🤷♂️'},
278 | { find: /:woman_shrugging $/, replace: '🤷♀️'},
279 | { find: /:health_worker $/, replace: '🧑⚕️'},
280 | { find: /:man_health_worker $/, replace: '👨⚕️'},
281 | { find: /:woman_health_worker $/, replace: '👩⚕️'},
282 | { find: /:student $/, replace: '🧑🎓'},
283 | { find: /:man_student $/, replace: '👨🎓'},
284 | { find: /:woman_student $/, replace: '👩🎓'},
285 | { find: /:teacher $/, replace: '🧑🏫'},
286 | { find: /:man_teacher $/, replace: '👨🏫'},
287 | { find: /:woman_teacher $/, replace: '👩🏫'},
288 | { find: /:judge $/, replace: '🧑⚖️'},
289 | { find: /:man_judge $/, replace: '👨⚖️'},
290 | { find: /:woman_judge $/, replace: '👩⚖️'},
291 | { find: /:farmer $/, replace: '🧑🌾'},
292 | { find: /:man_farmer $/, replace: '👨🌾'},
293 | { find: /:woman_farmer $/, replace: '👩🌾'},
294 | { find: /:cook $/, replace: '🧑🍳'},
295 | { find: /:man_cook $/, replace: '👨🍳'},
296 | { find: /:woman_cook $/, replace: '👩🍳'},
297 | { find: /:mechanic $/, replace: '🧑🔧'},
298 | { find: /:man_mechanic $/, replace: '👨🔧'},
299 | { find: /:woman_mechanic $/, replace: '👩🔧'},
300 | { find: /:factory_worker $/, replace: '🧑🏭'},
301 | { find: /:man_factory_worker $/, replace: '👨🏭'},
302 | { find: /:woman_factory_worker $/, replace: '👩🏭'},
303 | { find: /:office_worker $/, replace: '🧑💼'},
304 | { find: /:man_office_worker $/, replace: '👨💼'},
305 | { find: /:woman_office_worker $/, replace: '👩💼'},
306 | { find: /:scientist $/, replace: '🧑🔬'},
307 | { find: /:man_scientist $/, replace: '👨🔬'},
308 | { find: /:woman_scientist $/, replace: '👩🔬'},
309 | { find: /:technologist $/, replace: '🧑💻'},
310 | { find: /:man_technologist $/, replace: '👨💻'},
311 | { find: /:woman_technologist $/, replace: '👩💻'},
312 | { find: /:singer $/, replace: '🧑🎤'},
313 | { find: /:man_singer $/, replace: '👨🎤'},
314 | { find: /:woman_singer $/, replace: '👩🎤'},
315 | { find: /:artist $/, replace: '🧑🎨'},
316 | { find: /:man_artist $/, replace: '👨🎨'},
317 | { find: /:woman_artist $/, replace: '👩🎨'},
318 | { find: /:pilot $/, replace: '🧑✈️'},
319 | { find: /:man_pilot $/, replace: '👨✈️'},
320 | { find: /:woman_pilot $/, replace: '👩✈️'},
321 | { find: /:astronaut $/, replace: '🧑🚀'},
322 | { find: /:man_astronaut $/, replace: '👨🚀'},
323 | { find: /:woman_astronaut $/, replace: '👩🚀'},
324 | { find: /:firefighter $/, replace: '🧑🚒'},
325 | { find: /:man_firefighter $/, replace: '👨🚒'},
326 | { find: /:woman_firefighter $/, replace: '👩🚒'},
327 | { find: /:police_officer $/, replace: '👮'},
328 | { find: /:cop $/, replace: '👮'},
329 | { find: /:policeman $/, replace: '👮♂️'},
330 | { find: /:policewoman $/, replace: '👮♀️'},
331 | { find: /:detective $/, replace: '🕵️'},
332 | { find: /:male_detective $/, replace: '🕵️♂️'},
333 | { find: /:female_detective $/, replace: '🕵️♀️'},
334 | { find: /:guard $/, replace: '💂'},
335 | { find: /:guardsman $/, replace: '💂♂️'},
336 | { find: /:guardswoman $/, replace: '💂♀️'},
337 | { find: /:ninja $/, replace: '🥷'},
338 | { find: /:construction_worker $/, replace: '👷'},
339 | { find: /:construction_worker_man $/, replace: '👷♂️'},
340 | { find: /:construction_worker_woman $/, replace: '👷♀️'},
341 | { find: /:prince $/, replace: '🤴'},
342 | { find: /:princess $/, replace: '👸'},
343 | { find: /:person_with_turban $/, replace: '👳'},
344 | { find: /:man_with_turban $/, replace: '👳♂️'},
345 | { find: /:woman_with_turban $/, replace: '👳♀️'},
346 | { find: /:man_with_gua_pi_mao $/, replace: '👲'},
347 | { find: /:woman_with_headscarf $/, replace: '🧕'},
348 | { find: /:person_in_tuxedo $/, replace: '🤵'},
349 | { find: /:man_in_tuxedo $/, replace: '🤵♂️'},
350 | { find: /:woman_in_tuxedo $/, replace: '🤵♀️'},
351 | { find: /:person_with_veil $/, replace: '👰'},
352 | { find: /:man_with_veil $/, replace: '👰♂️'},
353 | { find: /:woman_with_veil $/, replace: '👰♀️'},
354 | { find: /:bride_with_veil $/, replace: '👰♀️'},
355 | { find: /:pregnant_woman $/, replace: '🤰'},
356 | { find: /:breast_feeding $/, replace: '🤱'},
357 | { find: /:woman_feeding_baby $/, replace: '👩🍼'},
358 | { find: /:man_feeding_baby $/, replace: '👨🍼'},
359 | { find: /:person_feeding_baby $/, replace: '🧑🍼'},
360 | { find: /:angel $/, replace: '👼'},
361 | { find: /:santa $/, replace: '🎅'},
362 | { find: /:mrs_claus $/, replace: '🤶'},
363 | { find: /:mx_claus $/, replace: '🧑🎄'},
364 | { find: /:superhero $/, replace: '🦸'},
365 | { find: /:superhero_man $/, replace: '🦸♂️'},
366 | { find: /:superhero_woman $/, replace: '🦸♀️'},
367 | { find: /:supervillain $/, replace: '🦹'},
368 | { find: /:supervillain_man $/, replace: '🦹♂️'},
369 | { find: /:supervillain_woman $/, replace: '🦹♀️'},
370 | { find: /:mage $/, replace: '🧙'},
371 | { find: /:mage_man $/, replace: '🧙♂️'},
372 | { find: /:mage_woman $/, replace: '🧙♀️'},
373 | { find: /:fairy $/, replace: '🧚'},
374 | { find: /:fairy_man $/, replace: '🧚♂️'},
375 | { find: /:fairy_woman $/, replace: '🧚♀️'},
376 | { find: /:vampire $/, replace: '🧛'},
377 | { find: /:vampire_man $/, replace: '🧛♂️'},
378 | { find: /:vampire_woman $/, replace: '🧛♀️'},
379 | { find: /:merperson $/, replace: '🧜'},
380 | { find: /:merman $/, replace: '🧜♂️'},
381 | { find: /:mermaid $/, replace: '🧜♀️'},
382 | { find: /:elf $/, replace: '🧝'},
383 | { find: /:elf_man $/, replace: '🧝♂️'},
384 | { find: /:elf_woman $/, replace: '🧝♀️'},
385 | { find: /:genie $/, replace: '🧞'},
386 | { find: /:genie_man $/, replace: '🧞♂️'},
387 | { find: /:genie_woman $/, replace: '🧞♀️'},
388 | { find: /:zombie $/, replace: '🧟'},
389 | { find: /:zombie_man $/, replace: '🧟♂️'},
390 | { find: /:zombie_woman $/, replace: '🧟♀️'},
391 | { find: /:massage $/, replace: '💆'},
392 | { find: /:massage_man $/, replace: '💆♂️'},
393 | { find: /:massage_woman $/, replace: '💆♀️'},
394 | { find: /:haircut $/, replace: '💇'},
395 | { find: /:haircut_man $/, replace: '💇♂️'},
396 | { find: /:haircut_woman $/, replace: '💇♀️'},
397 | { find: /:walking $/, replace: '🚶'},
398 | { find: /:walking_man $/, replace: '🚶♂️'},
399 | { find: /:walking_woman $/, replace: '🚶♀️'},
400 | { find: /:standing_person $/, replace: '🧍'},
401 | { find: /:standing_man $/, replace: '🧍♂️'},
402 | { find: /:standing_woman $/, replace: '🧍♀️'},
403 | { find: /:kneeling_person $/, replace: '🧎'},
404 | { find: /:kneeling_man $/, replace: '🧎♂️'},
405 | { find: /:kneeling_woman $/, replace: '🧎♀️'},
406 | { find: /:person_with_probing_cane $/, replace: '🧑🦯'},
407 | { find: /:man_with_probing_cane $/, replace: '👨🦯'},
408 | { find: /:woman_with_probing_cane $/, replace: '👩🦯'},
409 | { find: /:person_in_motorized_wheelchair $/, replace: '🧑🦼'},
410 | { find: /:man_in_motorized_wheelchair $/, replace: '👨🦼'},
411 | { find: /:woman_in_motorized_wheelchair $/, replace: '👩🦼'},
412 | { find: /:person_in_manual_wheelchair $/, replace: '🧑🦽'},
413 | { find: /:man_in_manual_wheelchair $/, replace: '👨🦽'},
414 | { find: /:woman_in_manual_wheelchair $/, replace: '👩🦽'},
415 | { find: /:runner $/, replace: '🏃'},
416 | { find: /:running $/, replace: '🏃'},
417 | { find: /:running_man $/, replace: '🏃♂️'},
418 | { find: /:running_woman $/, replace: '🏃♀️'},
419 | { find: /:woman_dancing $/, replace: '💃'},
420 | { find: /:dancer $/, replace: '💃'},
421 | { find: /:man_dancing $/, replace: '🕺'},
422 | { find: /:business_suit_levitating $/, replace: '🕴️'},
423 | { find: /:dancers $/, replace: '👯'},
424 | { find: /:dancing_men $/, replace: '👯♂️'},
425 | { find: /:dancing_women $/, replace: '👯♀️'},
426 | { find: /:sauna_person $/, replace: '🧖'},
427 | { find: /:sauna_man $/, replace: '🧖♂️'},
428 | { find: /:sauna_woman $/, replace: '🧖♀️'},
429 | { find: /:climbing $/, replace: '🧗'},
430 | { find: /:climbing_man $/, replace: '🧗♂️'},
431 | { find: /:climbing_woman $/, replace: '🧗♀️'},
432 | { find: /:person_fencing $/, replace: '🤺'},
433 | { find: /:horse_racing $/, replace: '🏇'},
434 | { find: /:skier $/, replace: '⛷️'},
435 | { find: /:snowboarder $/, replace: '🏂'},
436 | { find: /:golfing $/, replace: '🏌️'},
437 | { find: /:golfing_man $/, replace: '🏌️♂️'},
438 | { find: /:golfing_woman $/, replace: '🏌️♀️'},
439 | { find: /:surfer $/, replace: '🏄'},
440 | { find: /:surfing_man $/, replace: '🏄♂️'},
441 | { find: /:surfing_woman $/, replace: '🏄♀️'},
442 | { find: /:rowboat $/, replace: '🚣'},
443 | { find: /:rowing_man $/, replace: '🚣♂️'},
444 | { find: /:rowing_woman $/, replace: '🚣♀️'},
445 | { find: /:swimmer $/, replace: '🏊'},
446 | { find: /:swimming_man $/, replace: '🏊♂️'},
447 | { find: /:swimming_woman $/, replace: '🏊♀️'},
448 | { find: /:bouncing_ball_person $/, replace: '⛹️'},
449 | { find: /:bouncing_ball_man $/, replace: '⛹️♂️'},
450 | { find: /:basketball_man $/, replace: '⛹️♂️'},
451 | { find: /:bouncing_ball_woman $/, replace: '⛹️♀️'},
452 | { find: /:basketball_woman $/, replace: '⛹️♀️'},
453 | { find: /:weight_lifting $/, replace: '🏋️'},
454 | { find: /:weight_lifting_man $/, replace: '🏋️♂️'},
455 | { find: /:weight_lifting_woman $/, replace: '🏋️♀️'},
456 | { find: /:bicyclist $/, replace: '🚴'},
457 | { find: /:biking_man $/, replace: '🚴♂️'},
458 | { find: /:biking_woman $/, replace: '🚴♀️'},
459 | { find: /:mountain_bicyclist $/, replace: '🚵'},
460 | { find: /:mountain_biking_man $/, replace: '🚵♂️'},
461 | { find: /:mountain_biking_woman $/, replace: '🚵♀️'},
462 | { find: /:cartwheeling $/, replace: '🤸'},
463 | { find: /:man_cartwheeling $/, replace: '🤸♂️'},
464 | { find: /:woman_cartwheeling $/, replace: '🤸♀️'},
465 | { find: /:wrestling $/, replace: '🤼'},
466 | { find: /:men_wrestling $/, replace: '🤼♂️'},
467 | { find: /:women_wrestling $/, replace: '🤼♀️'},
468 | { find: /:water_polo $/, replace: '🤽'},
469 | { find: /:man_playing_water_polo $/, replace: '🤽♂️'},
470 | { find: /:woman_playing_water_polo $/, replace: '🤽♀️'},
471 | { find: /:handball_person $/, replace: '🤾'},
472 | { find: /:man_playing_handball $/, replace: '🤾♂️'},
473 | { find: /:woman_playing_handball $/, replace: '🤾♀️'},
474 | { find: /:juggling_person $/, replace: '🤹'},
475 | { find: /:man_juggling $/, replace: '🤹♂️'},
476 | { find: /:woman_juggling $/, replace: '🤹♀️'},
477 | { find: /:lotus_position $/, replace: '🧘'},
478 | { find: /:lotus_position_man $/, replace: '🧘♂️'},
479 | { find: /:lotus_position_woman $/, replace: '🧘♀️'},
480 | { find: /:bath $/, replace: '🛀'},
481 | { find: /:sleeping_bed $/, replace: '🛌'},
482 | { find: /:people_holding_hands $/, replace: '🧑🤝🧑'},
483 | { find: /:two_women_holding_hands $/, replace: '👭'},
484 | { find: /:couple $/, replace: '👫'},
485 | { find: /:two_men_holding_hands $/, replace: '👬'},
486 | { find: /:couplekiss $/, replace: '💏'},
487 | { find: /:couplekiss_man_woman $/, replace: '👩❤️💋👨'},
488 | { find: /:couplekiss_man_man $/, replace: '👨❤️💋👨'},
489 | { find: /:couplekiss_woman_woman $/, replace: '👩❤️💋👩'},
490 | { find: /:couple_with_heart $/, replace: '💑'},
491 | { find: /:couple_with_heart_woman_man $/, replace: '👩❤️👨'},
492 | { find: /:couple_with_heart_man_man $/, replace: '👨❤️👨'},
493 | { find: /:couple_with_heart_woman_woman $/, replace: '👩❤️👩'},
494 | { find: /:family $/, replace: '👪'},
495 | { find: /:family_man_woman_boy $/, replace: '👨👩👦'},
496 | { find: /:family_man_woman_girl $/, replace: '👨👩👧'},
497 | { find: /:family_man_woman_girl_boy $/, replace: '👨👩👧👦'},
498 | { find: /:family_man_woman_boy_boy $/, replace: '👨👩👦👦'},
499 | { find: /:family_man_woman_girl_girl $/, replace: '👨👩👧👧'},
500 | { find: /:family_man_man_boy $/, replace: '👨👨👦'},
501 | { find: /:family_man_man_girl $/, replace: '👨👨👧'},
502 | { find: /:family_man_man_girl_boy $/, replace: '👨👨👧👦'},
503 | { find: /:family_man_man_boy_boy $/, replace: '👨👨👦👦'},
504 | { find: /:family_man_man_girl_girl $/, replace: '👨👨👧👧'},
505 | { find: /:family_woman_woman_boy $/, replace: '👩👩👦'},
506 | { find: /:family_woman_woman_girl $/, replace: '👩👩👧'},
507 | { find: /:family_woman_woman_girl_boy $/, replace: '👩👩👧👦'},
508 | { find: /:family_woman_woman_boy_boy $/, replace: '👩👩👦👦'},
509 | { find: /:family_woman_woman_girl_girl $/, replace: '👩👩👧👧'},
510 | { find: /:family_man_boy $/, replace: '👨👦'},
511 | { find: /:family_man_boy_boy $/, replace: '👨👦👦'},
512 | { find: /:family_man_girl $/, replace: '👨👧'},
513 | { find: /:family_man_girl_boy $/, replace: '👨👧👦'},
514 | { find: /:family_man_girl_girl $/, replace: '👨👧👧'},
515 | { find: /:family_woman_boy $/, replace: '👩👦'},
516 | { find: /:family_woman_boy_boy $/, replace: '👩👦👦'},
517 | { find: /:family_woman_girl $/, replace: '👩👧'},
518 | { find: /:family_woman_girl_boy $/, replace: '👩👧👦'},
519 | { find: /:family_woman_girl_girl $/, replace: '👩👧👧'},
520 | { find: /:speaking_head $/, replace: '🗣️'},
521 | { find: /:bust_in_silhouette $/, replace: '👤'},
522 | { find: /:busts_in_silhouette $/, replace: '👥'},
523 | { find: /:people_hugging $/, replace: '🫂'},
524 | { find: /:footprints $/, replace: '👣'},
525 | { find: /:monkey_face $/, replace: '🐵'},
526 | { find: /:monkey $/, replace: '🐒'},
527 | { find: /:gorilla $/, replace: '🦍'},
528 | { find: /:orangutan $/, replace: '🦧'},
529 | { find: /:dog $/, replace: '🐶'},
530 | { find: /:dog2 $/, replace: '🐕'},
531 | { find: /:guide_dog $/, replace: '🦮'},
532 | { find: /:service_dog $/, replace: '🐕🦺'},
533 | { find: /:poodle $/, replace: '🐩'},
534 | { find: /:wolf $/, replace: '🐺'},
535 | { find: /:fox_face $/, replace: '🦊'},
536 | { find: /:raccoon $/, replace: '🦝'},
537 | { find: /:cat $/, replace: '🐱'},
538 | { find: /:cat2 $/, replace: '🐈'},
539 | { find: /:black_cat $/, replace: '🐈⬛'},
540 | { find: /:lion $/, replace: '🦁'},
541 | { find: /:tiger $/, replace: '🐯'},
542 | { find: /:tiger2 $/, replace: '🐅'},
543 | { find: /:leopard $/, replace: '🐆'},
544 | { find: /:horse $/, replace: '🐴'},
545 | { find: /:racehorse $/, replace: '🐎'},
546 | { find: /:unicorn $/, replace: '🦄'},
547 | { find: /:zebra $/, replace: '🦓'},
548 | { find: /:deer $/, replace: '🦌'},
549 | { find: /:bison $/, replace: '🦬'},
550 | { find: /:cow $/, replace: '🐮'},
551 | { find: /:ox $/, replace: '🐂'},
552 | { find: /:water_buffalo $/, replace: '🐃'},
553 | { find: /:cow2 $/, replace: '🐄'},
554 | { find: /:pig $/, replace: '🐷'},
555 | { find: /:pig2 $/, replace: '🐖'},
556 | { find: /:boar $/, replace: '🐗'},
557 | { find: /:pig_nose $/, replace: '🐽'},
558 | { find: /:ram $/, replace: '🐏'},
559 | { find: /:sheep $/, replace: '🐑'},
560 | { find: /:goat $/, replace: '🐐'},
561 | { find: /:dromedary_camel $/, replace: '🐪'},
562 | { find: /:camel $/, replace: '🐫'},
563 | { find: /:llama $/, replace: '🦙'},
564 | { find: /:giraffe $/, replace: '🦒'},
565 | { find: /:elephant $/, replace: '🐘'},
566 | { find: /:mammoth $/, replace: '🦣'},
567 | { find: /:rhinoceros $/, replace: '🦏'},
568 | { find: /:hippopotamus $/, replace: '🦛'},
569 | { find: /:mouse $/, replace: '🐭'},
570 | { find: /:mouse2 $/, replace: '🐁'},
571 | { find: /:rat $/, replace: '🐀'},
572 | { find: /:hamster $/, replace: '🐹'},
573 | { find: /:rabbit $/, replace: '🐰'},
574 | { find: /:rabbit2 $/, replace: '🐇'},
575 | { find: /:chipmunk $/, replace: '🐿️'},
576 | { find: /:beaver $/, replace: '🦫'},
577 | { find: /:hedgehog $/, replace: '🦔'},
578 | { find: /:bat $/, replace: '🦇'},
579 | { find: /:bear $/, replace: '🐻'},
580 | { find: /:polar_bear $/, replace: '🐻❄️'},
581 | { find: /:koala $/, replace: '🐨'},
582 | { find: /:panda_face $/, replace: '🐼'},
583 | { find: /:sloth $/, replace: '🦥'},
584 | { find: /:otter $/, replace: '🦦'},
585 | { find: /:skunk $/, replace: '🦨'},
586 | { find: /:kangaroo $/, replace: '🦘'},
587 | { find: /:badger $/, replace: '🦡'},
588 | { find: /:feet $/, replace: '🐾'},
589 | { find: /:paw_prints $/, replace: '🐾'},
590 | { find: /:turkey $/, replace: '🦃'},
591 | { find: /:chicken $/, replace: '🐔'},
592 | { find: /:rooster $/, replace: '🐓'},
593 | { find: /:hatching_chick $/, replace: '🐣'},
594 | { find: /:baby_chick $/, replace: '🐤'},
595 | { find: /:hatched_chick $/, replace: '🐥'},
596 | { find: /:bird $/, replace: '🐦'},
597 | { find: /:penguin $/, replace: '🐧'},
598 | { find: /:dove $/, replace: '🕊️'},
599 | { find: /:eagle $/, replace: '🦅'},
600 | { find: /:duck $/, replace: '🦆'},
601 | { find: /:swan $/, replace: '🦢'},
602 | { find: /:owl $/, replace: '🦉'},
603 | { find: /:dodo $/, replace: '🦤'},
604 | { find: /:feather $/, replace: '🪶'},
605 | { find: /:flamingo $/, replace: '🦩'},
606 | { find: /:peacock $/, replace: '🦚'},
607 | { find: /:parrot $/, replace: '🦜'},
608 | { find: /:frog $/, replace: '🐸'},
609 | { find: /:crocodile $/, replace: '🐊'},
610 | { find: /:turtle $/, replace: '🐢'},
611 | { find: /:lizard $/, replace: '🦎'},
612 | { find: /:snake $/, replace: '🐍'},
613 | { find: /:dragon_face $/, replace: '🐲'},
614 | { find: /:dragon $/, replace: '🐉'},
615 | { find: /:sauropod $/, replace: '🦕'},
616 | { find: /:t-rex $/, replace: '🦖'},
617 | { find: /:whale $/, replace: '🐳'},
618 | { find: /:whale2 $/, replace: '🐋'},
619 | { find: /:dolphin $/, replace: '🐬'},
620 | { find: /:flipper $/, replace: '🐬'},
621 | { find: /:seal $/, replace: '🦭'},
622 | { find: /:fish $/, replace: '🐟'},
623 | { find: /:tropical_fish $/, replace: '🐠'},
624 | { find: /:blowfish $/, replace: '🐡'},
625 | { find: /:shark $/, replace: '🦈'},
626 | { find: /:octopus $/, replace: '🐙'},
627 | { find: /:shell $/, replace: '🐚'},
628 | { find: /:snail $/, replace: '🐌'},
629 | { find: /:butterfly $/, replace: '🦋'},
630 | { find: /:bug $/, replace: '🐛'},
631 | { find: /:ant $/, replace: '🐜'},
632 | { find: /:bee $/, replace: '🐝'},
633 | { find: /:honeybee $/, replace: '🐝'},
634 | { find: /:beetle $/, replace: '🪲'},
635 | { find: /:lady_beetle $/, replace: '🐞'},
636 | { find: /:cricket $/, replace: '🦗'},
637 | { find: /:cockroach $/, replace: '🪳'},
638 | { find: /:spider $/, replace: '🕷️'},
639 | { find: /:spider_web $/, replace: '🕸️'},
640 | { find: /:scorpion $/, replace: '🦂'},
641 | { find: /:mosquito $/, replace: '🦟'},
642 | { find: /:fly $/, replace: '🪰'},
643 | { find: /:worm $/, replace: '🪱'},
644 | { find: /:microbe $/, replace: '🦠'},
645 | { find: /:bouquet $/, replace: '💐'},
646 | { find: /:cherry_blossom $/, replace: '🌸'},
647 | { find: /:white_flower $/, replace: '💮'},
648 | { find: /:rosette $/, replace: '🏵️'},
649 | { find: /:rose $/, replace: '🌹'},
650 | { find: /:wilted_flower $/, replace: '🥀'},
651 | { find: /:hibiscus $/, replace: '🌺'},
652 | { find: /:sunflower $/, replace: '🌻'},
653 | { find: /:blossom $/, replace: '🌼'},
654 | { find: /:tulip $/, replace: '🌷'},
655 | { find: /:seedling $/, replace: '🌱'},
656 | { find: /:potted_plant $/, replace: '🪴'},
657 | { find: /:evergreen_tree $/, replace: '🌲'},
658 | { find: /:deciduous_tree $/, replace: '🌳'},
659 | { find: /:palm_tree $/, replace: '🌴'},
660 | { find: /:cactus $/, replace: '🌵'},
661 | { find: /:ear_of_rice $/, replace: '🌾'},
662 | { find: /:herb $/, replace: '🌿'},
663 | { find: /:shamrock $/, replace: '☘️'},
664 | { find: /:four_leaf_clover $/, replace: '🍀'},
665 | { find: /:maple_leaf $/, replace: '🍁'},
666 | { find: /:fallen_leaf $/, replace: '🍂'},
667 | { find: /:leaves $/, replace: '🍃'},
668 | { find: /:grapes $/, replace: '🍇'},
669 | { find: /:melon $/, replace: '🍈'},
670 | { find: /:watermelon $/, replace: '🍉'},
671 | { find: /:tangerine $/, replace: '🍊'},
672 | { find: /:orange $/, replace: '🍊'},
673 | { find: /:mandarin $/, replace: '🍊'},
674 | { find: /:lemon $/, replace: '🍋'},
675 | { find: /:banana $/, replace: '🍌'},
676 | { find: /:pineapple $/, replace: '🍍'},
677 | { find: /:mango $/, replace: '🥭'},
678 | { find: /:apple $/, replace: '🍎'},
679 | { find: /:green_apple $/, replace: '🍏'},
680 | { find: /:pear $/, replace: '🍐'},
681 | { find: /:peach $/, replace: '🍑'},
682 | { find: /:cherries $/, replace: '🍒'},
683 | { find: /:strawberry $/, replace: '🍓'},
684 | { find: /:blueberries $/, replace: '🫐'},
685 | { find: /:kiwi_fruit $/, replace: '🥝'},
686 | { find: /:tomato $/, replace: '🍅'},
687 | { find: /:olive $/, replace: '🫒'},
688 | { find: /:coconut $/, replace: '🥥'},
689 | { find: /:avocado $/, replace: '🥑'},
690 | { find: /:eggplant $/, replace: '🍆'},
691 | { find: /:potato $/, replace: '🥔'},
692 | { find: /:carrot $/, replace: '🥕'},
693 | { find: /:corn $/, replace: '🌽'},
694 | { find: /:hot_pepper $/, replace: '🌶️'},
695 | { find: /:bell_pepper $/, replace: '🫑'},
696 | { find: /:cucumber $/, replace: '🥒'},
697 | { find: /:leafy_green $/, replace: '🥬'},
698 | { find: /:broccoli $/, replace: '🥦'},
699 | { find: /:garlic $/, replace: '🧄'},
700 | { find: /:onion $/, replace: '🧅'},
701 | { find: /:mushroom $/, replace: '🍄'},
702 | { find: /:peanuts $/, replace: '🥜'},
703 | { find: /:chestnut $/, replace: '🌰'},
704 | { find: /:bread $/, replace: '🍞'},
705 | { find: /:croissant $/, replace: '🥐'},
706 | { find: /:baguette_bread $/, replace: '🥖'},
707 | { find: /:flatbread $/, replace: '🫓'},
708 | { find: /:pretzel $/, replace: '🥨'},
709 | { find: /:bagel $/, replace: '🥯'},
710 | { find: /:pancakes $/, replace: '🥞'},
711 | { find: /:waffle $/, replace: '🧇'},
712 | { find: /:cheese $/, replace: '🧀'},
713 | { find: /:meat_on_bone $/, replace: '🍖'},
714 | { find: /:poultry_leg $/, replace: '🍗'},
715 | { find: /:cut_of_meat $/, replace: '🥩'},
716 | { find: /:bacon $/, replace: '🥓'},
717 | { find: /:hamburger $/, replace: '🍔'},
718 | { find: /:fries $/, replace: '🍟'},
719 | { find: /:pizza $/, replace: '🍕'},
720 | { find: /:hotdog $/, replace: '🌭'},
721 | { find: /:sandwich $/, replace: '🥪'},
722 | { find: /:taco $/, replace: '🌮'},
723 | { find: /:burrito $/, replace: '🌯'},
724 | { find: /:tamale $/, replace: '🫔'},
725 | { find: /:stuffed_flatbread $/, replace: '🥙'},
726 | { find: /:falafel $/, replace: '🧆'},
727 | { find: /:egg $/, replace: '🥚'},
728 | { find: /:fried_egg $/, replace: '🍳'},
729 | { find: /:shallow_pan_of_food $/, replace: '🥘'},
730 | { find: /:stew $/, replace: '🍲'},
731 | { find: /:fondue $/, replace: '🫕'},
732 | { find: /:bowl_with_spoon $/, replace: '🥣'},
733 | { find: /:green_salad $/, replace: '🥗'},
734 | { find: /:popcorn $/, replace: '🍿'},
735 | { find: /:butter $/, replace: '🧈'},
736 | { find: /:salt $/, replace: '🧂'},
737 | { find: /:canned_food $/, replace: '🥫'},
738 | { find: /:bento $/, replace: '🍱'},
739 | { find: /:rice_cracker $/, replace: '🍘'},
740 | { find: /:rice_ball $/, replace: '🍙'},
741 | { find: /:rice $/, replace: '🍚'},
742 | { find: /:curry $/, replace: '🍛'},
743 | { find: /:ramen $/, replace: '🍜'},
744 | { find: /:spaghetti $/, replace: '🍝'},
745 | { find: /:sweet_potato $/, replace: '🍠'},
746 | { find: /:oden $/, replace: '🍢'},
747 | { find: /:sushi $/, replace: '🍣'},
748 | { find: /:fried_shrimp $/, replace: '🍤'},
749 | { find: /:fish_cake $/, replace: '🍥'},
750 | { find: /:moon_cake $/, replace: '🥮'},
751 | { find: /:dango $/, replace: '🍡'},
752 | { find: /:dumpling $/, replace: '🥟'},
753 | { find: /:fortune_cookie $/, replace: '🥠'},
754 | { find: /:takeout_box $/, replace: '🥡'},
755 | { find: /:crab $/, replace: '🦀'},
756 | { find: /:lobster $/, replace: '🦞'},
757 | { find: /:shrimp $/, replace: '🦐'},
758 | { find: /:squid $/, replace: '🦑'},
759 | { find: /:oyster $/, replace: '🦪'},
760 | { find: /:icecream $/, replace: '🍦'},
761 | { find: /:shaved_ice $/, replace: '🍧'},
762 | { find: /:ice_cream $/, replace: '🍨'},
763 | { find: /:doughnut $/, replace: '🍩'},
764 | { find: /:cookie $/, replace: '🍪'},
765 | { find: /:birthday $/, replace: '🎂'},
766 | { find: /:cake $/, replace: '🍰'},
767 | { find: /:cupcake $/, replace: '🧁'},
768 | { find: /:pie $/, replace: '🥧'},
769 | { find: /:chocolate_bar $/, replace: '🍫'},
770 | { find: /:candy $/, replace: '🍬'},
771 | { find: /:lollipop $/, replace: '🍭'},
772 | { find: /:custard $/, replace: '🍮'},
773 | { find: /:honey_pot $/, replace: '🍯'},
774 | { find: /:baby_bottle $/, replace: '🍼'},
775 | { find: /:milk_glass $/, replace: '🥛'},
776 | { find: /:coffee $/, replace: '☕'},
777 | { find: /:teapot $/, replace: '🫖'},
778 | { find: /:tea $/, replace: '🍵'},
779 | { find: /:sake $/, replace: '🍶'},
780 | { find: /:champagne $/, replace: '🍾'},
781 | { find: /:wine_glass $/, replace: '🍷'},
782 | { find: /:cocktail $/, replace: '🍸'},
783 | { find: /:tropical_drink $/, replace: '🍹'},
784 | { find: /:beer $/, replace: '🍺'},
785 | { find: /:beers $/, replace: '🍻'},
786 | { find: /:clinking_glasses $/, replace: '🥂'},
787 | { find: /:tumbler_glass $/, replace: '🥃'},
788 | { find: /:cup_with_straw $/, replace: '🥤'},
789 | { find: /:bubble_tea $/, replace: '🧋'},
790 | { find: /:beverage_box $/, replace: '🧃'},
791 | { find: /:mate $/, replace: '🧉'},
792 | { find: /:ice_cube $/, replace: '🧊'},
793 | { find: /:chopsticks $/, replace: '🥢'},
794 | { find: /:plate_with_cutlery $/, replace: '🍽️'},
795 | { find: /:fork_and_knife $/, replace: '🍴'},
796 | { find: /:spoon $/, replace: '🥄'},
797 | { find: /:hocho $/, replace: '🔪'},
798 | { find: /:knife $/, replace: '🔪'},
799 | { find: /:amphora $/, replace: '🏺'},
800 | { find: /:earth_africa $/, replace: '🌍'},
801 | { find: /:earth_americas $/, replace: '🌎'},
802 | { find: /:earth_asia $/, replace: '🌏'},
803 | { find: /:globe_with_meridians $/, replace: '🌐'},
804 | { find: /:world_map $/, replace: '🗺️'},
805 | { find: /:japan $/, replace: '🗾'},
806 | { find: /:compass $/, replace: '🧭'},
807 | { find: /:mountain_snow $/, replace: '🏔️'},
808 | { find: /:mountain $/, replace: '⛰️'},
809 | { find: /:volcano $/, replace: '🌋'},
810 | { find: /:mount_fuji $/, replace: '🗻'},
811 | { find: /:camping $/, replace: '🏕️'},
812 | { find: /:beach_umbrella $/, replace: '🏖️'},
813 | { find: /:desert $/, replace: '🏜️'},
814 | { find: /:desert_island $/, replace: '🏝️'},
815 | { find: /:national_park $/, replace: '🏞️'},
816 | { find: /:stadium $/, replace: '🏟️'},
817 | { find: /:classical_building $/, replace: '🏛️'},
818 | { find: /:building_construction $/, replace: '🏗️'},
819 | { find: /:bricks $/, replace: '🧱'},
820 | { find: /:rock $/, replace: '🪨'},
821 | { find: /:wood $/, replace: '🪵'},
822 | { find: /:hut $/, replace: '🛖'},
823 | { find: /:houses $/, replace: '🏘️'},
824 | { find: /:derelict_house $/, replace: '🏚️'},
825 | { find: /:house $/, replace: '🏠'},
826 | { find: /:house_with_garden $/, replace: '🏡'},
827 | { find: /:office $/, replace: '🏢'},
828 | { find: /:post_office $/, replace: '🏣'},
829 | { find: /:european_post_office $/, replace: '🏤'},
830 | { find: /:hospital $/, replace: '🏥'},
831 | { find: /:bank $/, replace: '🏦'},
832 | { find: /:hotel $/, replace: '🏨'},
833 | { find: /:love_hotel $/, replace: '🏩'},
834 | { find: /:convenience_store $/, replace: '🏪'},
835 | { find: /:school $/, replace: '🏫'},
836 | { find: /:department_store $/, replace: '🏬'},
837 | { find: /:factory $/, replace: '🏭'},
838 | { find: /:japanese_castle $/, replace: '🏯'},
839 | { find: /:european_castle $/, replace: '🏰'},
840 | { find: /:wedding $/, replace: '💒'},
841 | { find: /:tokyo_tower $/, replace: '🗼'},
842 | { find: /:statue_of_liberty $/, replace: '🗽'},
843 | { find: /:church $/, replace: '⛪'},
844 | { find: /:mosque $/, replace: '🕌'},
845 | { find: /:hindu_temple $/, replace: '🛕'},
846 | { find: /:synagogue $/, replace: '🕍'},
847 | { find: /:shinto_shrine $/, replace: '⛩️'},
848 | { find: /:kaaba $/, replace: '🕋'},
849 | { find: /:fountain $/, replace: '⛲'},
850 | { find: /:tent $/, replace: '⛺'},
851 | { find: /:foggy $/, replace: '🌁'},
852 | { find: /:night_with_stars $/, replace: '🌃'},
853 | { find: /:cityscape $/, replace: '🏙️'},
854 | { find: /:sunrise_over_mountains $/, replace: '🌄'},
855 | { find: /:sunrise $/, replace: '🌅'},
856 | { find: /:city_sunset $/, replace: '🌆'},
857 | { find: /:city_sunrise $/, replace: '🌇'},
858 | { find: /:bridge_at_night $/, replace: '🌉'},
859 | { find: /:hotsprings $/, replace: '♨️'},
860 | { find: /:carousel_horse $/, replace: '🎠'},
861 | { find: /:ferris_wheel $/, replace: '🎡'},
862 | { find: /:roller_coaster $/, replace: '🎢'},
863 | { find: /:barber $/, replace: '💈'},
864 | { find: /:circus_tent $/, replace: '🎪'},
865 | { find: /:steam_locomotive $/, replace: '🚂'},
866 | { find: /:railway_car $/, replace: '🚃'},
867 | { find: /:bullettrain_side $/, replace: '🚄'},
868 | { find: /:bullettrain_front $/, replace: '🚅'},
869 | { find: /:train2 $/, replace: '🚆'},
870 | { find: /:metro $/, replace: '🚇'},
871 | { find: /:light_rail $/, replace: '🚈'},
872 | { find: /:station $/, replace: '🚉'},
873 | { find: /:tram $/, replace: '🚊'},
874 | { find: /:monorail $/, replace: '🚝'},
875 | { find: /:mountain_railway $/, replace: '🚞'},
876 | { find: /:train $/, replace: '🚋'},
877 | { find: /:bus $/, replace: '🚌'},
878 | { find: /:oncoming_bus $/, replace: '🚍'},
879 | { find: /:trolleybus $/, replace: '🚎'},
880 | { find: /:minibus $/, replace: '🚐'},
881 | { find: /:ambulance $/, replace: '🚑'},
882 | { find: /:fire_engine $/, replace: '🚒'},
883 | { find: /:police_car $/, replace: '🚓'},
884 | { find: /:oncoming_police_car $/, replace: '🚔'},
885 | { find: /:taxi $/, replace: '🚕'},
886 | { find: /:oncoming_taxi $/, replace: '🚖'},
887 | { find: /:car $/, replace: '🚗'},
888 | { find: /:red_car $/, replace: '🚗'},
889 | { find: /:oncoming_automobile $/, replace: '🚘'},
890 | { find: /:blue_car $/, replace: '🚙'},
891 | { find: /:pickup_truck $/, replace: '🛻'},
892 | { find: /:truck $/, replace: '🚚'},
893 | { find: /:articulated_lorry $/, replace: '🚛'},
894 | { find: /:tractor $/, replace: '🚜'},
895 | { find: /:racing_car $/, replace: '🏎️'},
896 | { find: /:motorcycle $/, replace: '🏍️'},
897 | { find: /:motor_scooter $/, replace: '🛵'},
898 | { find: /:manual_wheelchair $/, replace: '🦽'},
899 | { find: /:motorized_wheelchair $/, replace: '🦼'},
900 | { find: /:auto_rickshaw $/, replace: '🛺'},
901 | { find: /:bike $/, replace: '🚲'},
902 | { find: /:kick_scooter $/, replace: '🛴'},
903 | { find: /:skateboard $/, replace: '🛹'},
904 | { find: /:roller_skate $/, replace: '🛼'},
905 | { find: /:busstop $/, replace: '🚏'},
906 | { find: /:motorway $/, replace: '🛣️'},
907 | { find: /:railway_track $/, replace: '🛤️'},
908 | { find: /:oil_drum $/, replace: '🛢️'},
909 | { find: /:fuelpump $/, replace: '⛽'},
910 | { find: /:rotating_light $/, replace: '🚨'},
911 | { find: /:traffic_light $/, replace: '🚥'},
912 | { find: /:vertical_traffic_light $/, replace: '🚦'},
913 | { find: /:stop_sign $/, replace: '🛑'},
914 | { find: /:construction $/, replace: '🚧'},
915 | { find: /:anchor $/, replace: '⚓'},
916 | { find: /:boat $/, replace: '⛵'},
917 | { find: /:sailboat $/, replace: '⛵'},
918 | { find: /:canoe $/, replace: '🛶'},
919 | { find: /:speedboat $/, replace: '🚤'},
920 | { find: /:passenger_ship $/, replace: '🛳️'},
921 | { find: /:ferry $/, replace: '⛴️'},
922 | { find: /:motor_boat $/, replace: '🛥️'},
923 | { find: /:ship $/, replace: '🚢'},
924 | { find: /:airplane $/, replace: '✈️'},
925 | { find: /:small_airplane $/, replace: '🛩️'},
926 | { find: /:flight_departure $/, replace: '🛫'},
927 | { find: /:flight_arrival $/, replace: '🛬'},
928 | { find: /:parachute $/, replace: '🪂'},
929 | { find: /:seat $/, replace: '💺'},
930 | { find: /:helicopter $/, replace: '🚁'},
931 | { find: /:suspension_railway $/, replace: '🚟'},
932 | { find: /:mountain_cableway $/, replace: '🚠'},
933 | { find: /:aerial_tramway $/, replace: '🚡'},
934 | { find: /:artificial_satellite $/, replace: '🛰️'},
935 | { find: /:rocket $/, replace: '🚀'},
936 | { find: /:flying_saucer $/, replace: '🛸'},
937 | { find: /:bellhop_bell $/, replace: '🛎️'},
938 | { find: /:luggage $/, replace: '🧳'},
939 | { find: /:hourglass $/, replace: '⌛'},
940 | { find: /:hourglass_flowing_sand $/, replace: '⏳'},
941 | { find: /:watch $/, replace: '⌚'},
942 | { find: /:alarm_clock $/, replace: '⏰'},
943 | { find: /:stopwatch $/, replace: '⏱️'},
944 | { find: /:timer_clock $/, replace: '⏲️'},
945 | { find: /:mantelpiece_clock $/, replace: '🕰️'},
946 | { find: /:clock12 $/, replace: '🕛'},
947 | { find: /:clock1230 $/, replace: '🕧'},
948 | { find: /:clock1 $/, replace: '🕐'},
949 | { find: /:clock130 $/, replace: '🕜'},
950 | { find: /:clock2 $/, replace: '🕑'},
951 | { find: /:clock230 $/, replace: '🕝'},
952 | { find: /:clock3 $/, replace: '🕒'},
953 | { find: /:clock330 $/, replace: '🕞'},
954 | { find: /:clock4 $/, replace: '🕓'},
955 | { find: /:clock430 $/, replace: '🕟'},
956 | { find: /:clock5 $/, replace: '🕔'},
957 | { find: /:clock530 $/, replace: '🕠'},
958 | { find: /:clock6 $/, replace: '🕕'},
959 | { find: /:clock630 $/, replace: '🕡'},
960 | { find: /:clock7 $/, replace: '🕖'},
961 | { find: /:clock730 $/, replace: '🕢'},
962 | { find: /:clock8 $/, replace: '🕗'},
963 | { find: /:clock830 $/, replace: '🕣'},
964 | { find: /:clock9 $/, replace: '🕘'},
965 | { find: /:clock930 $/, replace: '🕤'},
966 | { find: /:clock10 $/, replace: '🕙'},
967 | { find: /:clock1030 $/, replace: '🕥'},
968 | { find: /:clock11 $/, replace: '🕚'},
969 | { find: /:clock1130 $/, replace: '🕦'},
970 | { find: /:new_moon $/, replace: '🌑'},
971 | { find: /:waxing_crescent_moon $/, replace: '🌒'},
972 | { find: /:first_quarter_moon $/, replace: '🌓'},
973 | { find: /:moon $/, replace: '🌔'},
974 | { find: /:waxing_gibbous_moon $/, replace: '🌔'},
975 | { find: /:full_moon $/, replace: '🌕'},
976 | { find: /:waning_gibbous_moon $/, replace: '🌖'},
977 | { find: /:last_quarter_moon $/, replace: '🌗'},
978 | { find: /:waning_crescent_moon $/, replace: '🌘'},
979 | { find: /:crescent_moon $/, replace: '🌙'},
980 | { find: /:new_moon_with_face $/, replace: '🌚'},
981 | { find: /:first_quarter_moon_with_face $/, replace: '🌛'},
982 | { find: /:last_quarter_moon_with_face $/, replace: '🌜'},
983 | { find: /:thermometer $/, replace: '🌡️'},
984 | { find: /:sunny $/, replace: '☀️'},
985 | { find: /:full_moon_with_face $/, replace: '🌝'},
986 | { find: /:sun_with_face $/, replace: '🌞'},
987 | { find: /:ringed_planet $/, replace: '🪐'},
988 | { find: /:star $/, replace: '⭐'},
989 | { find: /:star2 $/, replace: '🌟'},
990 | { find: /:stars $/, replace: '🌠'},
991 | { find: /:milky_way $/, replace: '🌌'},
992 | { find: /:cloud $/, replace: '☁️'},
993 | { find: /:partly_sunny $/, replace: '⛅'},
994 | { find: /:cloud_with_lightning_and_rain $/, replace: '⛈️'},
995 | { find: /:sun_behind_small_cloud $/, replace: '🌤️'},
996 | { find: /:sun_behind_large_cloud $/, replace: '🌥️'},
997 | { find: /:sun_behind_rain_cloud $/, replace: '🌦️'},
998 | { find: /:cloud_with_rain $/, replace: '🌧️'},
999 | { find: /:cloud_with_snow $/, replace: '🌨️'},
1000 | { find: /:cloud_with_lightning $/, replace: '🌩️'},
1001 | { find: /:tornado $/, replace: '🌪️'},
1002 | { find: /:fog $/, replace: '🌫️'},
1003 | { find: /:wind_face $/, replace: '🌬️'},
1004 | { find: /:cyclone $/, replace: '🌀'},
1005 | { find: /:rainbow $/, replace: '🌈'},
1006 | { find: /:closed_umbrella $/, replace: '🌂'},
1007 | { find: /:open_umbrella $/, replace: '☂️'},
1008 | { find: /:umbrella $/, replace: '☔'},
1009 | { find: /:parasol_on_ground $/, replace: '⛱️'},
1010 | { find: /:zap $/, replace: '⚡'},
1011 | { find: /:snowflake $/, replace: '❄️'},
1012 | { find: /:snowman_with_snow $/, replace: '☃️'},
1013 | { find: /:snowman $/, replace: '⛄'},
1014 | { find: /:comet $/, replace: '☄️'},
1015 | { find: /:fire $/, replace: '🔥'},
1016 | { find: /:droplet $/, replace: '💧'},
1017 | { find: /:ocean $/, replace: '🌊'},
1018 | { find: /:jack_o_lantern $/, replace: '🎃'},
1019 | { find: /:christmas_tree $/, replace: '🎄'},
1020 | { find: /:fireworks $/, replace: '🎆'},
1021 | { find: /:sparkler $/, replace: '🎇'},
1022 | { find: /:firecracker $/, replace: '🧨'},
1023 | { find: /:sparkles $/, replace: '✨'},
1024 | { find: /:balloon $/, replace: '🎈'},
1025 | { find: /:tada $/, replace: '🎉'},
1026 | { find: /:confetti_ball $/, replace: '🎊'},
1027 | { find: /:tanabata_tree $/, replace: '🎋'},
1028 | { find: /:bamboo $/, replace: '🎍'},
1029 | { find: /:dolls $/, replace: '🎎'},
1030 | { find: /:flags $/, replace: '🎏'},
1031 | { find: /:wind_chime $/, replace: '🎐'},
1032 | { find: /:rice_scene $/, replace: '🎑'},
1033 | { find: /:red_envelope $/, replace: '🧧'},
1034 | { find: /:ribbon $/, replace: '🎀'},
1035 | { find: /:gift $/, replace: '🎁'},
1036 | { find: /:reminder_ribbon $/, replace: '🎗️'},
1037 | { find: /:tickets $/, replace: '🎟️'},
1038 | { find: /:ticket $/, replace: '🎫'},
1039 | { find: /:medal_military $/, replace: '🎖️'},
1040 | { find: /:trophy $/, replace: '🏆'},
1041 | { find: /:medal_sports $/, replace: '🏅'},
1042 | { find: /:1st_place_medal $/, replace: '🥇'},
1043 | { find: /:2nd_place_medal $/, replace: '🥈'},
1044 | { find: /:3rd_place_medal $/, replace: '🥉'},
1045 | { find: /:soccer $/, replace: '⚽'},
1046 | { find: /:baseball $/, replace: '⚾'},
1047 | { find: /:softball $/, replace: '🥎'},
1048 | { find: /:basketball $/, replace: '🏀'},
1049 | { find: /:volleyball $/, replace: '🏐'},
1050 | { find: /:football $/, replace: '🏈'},
1051 | { find: /:rugby_football $/, replace: '🏉'},
1052 | { find: /:tennis $/, replace: '🎾'},
1053 | { find: /:flying_disc $/, replace: '🥏'},
1054 | { find: /:bowling $/, replace: '🎳'},
1055 | { find: /:cricket_game $/, replace: '🏏'},
1056 | { find: /:field_hockey $/, replace: '🏑'},
1057 | { find: /:ice_hockey $/, replace: '🏒'},
1058 | { find: /:lacrosse $/, replace: '🥍'},
1059 | { find: /:ping_pong $/, replace: '🏓'},
1060 | { find: /:badminton $/, replace: '🏸'},
1061 | { find: /:boxing_glove $/, replace: '🥊'},
1062 | { find: /:martial_arts_uniform $/, replace: '🥋'},
1063 | { find: /:goal_net $/, replace: '🥅'},
1064 | { find: /:golf $/, replace: '⛳'},
1065 | { find: /:ice_skate $/, replace: '⛸️'},
1066 | { find: /:fishing_pole_and_fish $/, replace: '🎣'},
1067 | { find: /:diving_mask $/, replace: '🤿'},
1068 | { find: /:running_shirt_with_sash $/, replace: '🎽'},
1069 | { find: /:ski $/, replace: '🎿'},
1070 | { find: /:sled $/, replace: '🛷'},
1071 | { find: /:curling_stone $/, replace: '🥌'},
1072 | { find: /:dart $/, replace: '🎯'},
1073 | { find: /:yo_yo $/, replace: '🪀'},
1074 | { find: /:kite $/, replace: '🪁'},
1075 | { find: /:8ball $/, replace: '🎱'},
1076 | { find: /:crystal_ball $/, replace: '🔮'},
1077 | { find: /:magic_wand $/, replace: '🪄'},
1078 | { find: /:nazar_amulet $/, replace: '🧿'},
1079 | { find: /:video_game $/, replace: '🎮'},
1080 | { find: /:joystick $/, replace: '🕹️'},
1081 | { find: /:slot_machine $/, replace: '🎰'},
1082 | { find: /:game_die $/, replace: '🎲'},
1083 | { find: /:jigsaw $/, replace: '🧩'},
1084 | { find: /:teddy_bear $/, replace: '🧸'},
1085 | { find: /:pinata $/, replace: '🪅'},
1086 | { find: /:nesting_dolls $/, replace: '🪆'},
1087 | { find: /:spades $/, replace: '♠️'},
1088 | { find: /:hearts $/, replace: '♥️'},
1089 | { find: /:diamonds $/, replace: '♦️'},
1090 | { find: /:clubs $/, replace: '♣️'},
1091 | { find: /:chess_pawn $/, replace: '♟️'},
1092 | { find: /:black_joker $/, replace: '🃏'},
1093 | { find: /:mahjong $/, replace: '🀄'},
1094 | { find: /:flower_playing_cards $/, replace: '🎴'},
1095 | { find: /:performing_arts $/, replace: '🎭'},
1096 | { find: /:framed_picture $/, replace: '🖼️'},
1097 | { find: /:art $/, replace: '🎨'},
1098 | { find: /:thread $/, replace: '🧵'},
1099 | { find: /:sewing_needle $/, replace: '🪡'},
1100 | { find: /:yarn $/, replace: '🧶'},
1101 | { find: /:knot $/, replace: '🪢'},
1102 | { find: /:eyeglasses $/, replace: '👓'},
1103 | { find: /:dark_sunglasses $/, replace: '🕶️'},
1104 | { find: /:goggles $/, replace: '🥽'},
1105 | { find: /:lab_coat $/, replace: '🥼'},
1106 | { find: /:safety_vest $/, replace: '🦺'},
1107 | { find: /:necktie $/, replace: '👔'},
1108 | { find: /:shirt $/, replace: '👕'},
1109 | { find: /:tshirt $/, replace: '👕'},
1110 | { find: /:jeans $/, replace: '👖'},
1111 | { find: /:scarf $/, replace: '🧣'},
1112 | { find: /:gloves $/, replace: '🧤'},
1113 | { find: /:coat $/, replace: '🧥'},
1114 | { find: /:socks $/, replace: '🧦'},
1115 | { find: /:dress $/, replace: '👗'},
1116 | { find: /:kimono $/, replace: '👘'},
1117 | { find: /:sari $/, replace: '🥻'},
1118 | { find: /:one_piece_swimsuit $/, replace: '🩱'},
1119 | { find: /:swim_brief $/, replace: '🩲'},
1120 | { find: /:shorts $/, replace: '🩳'},
1121 | { find: /:bikini $/, replace: '👙'},
1122 | { find: /:womans_clothes $/, replace: '👚'},
1123 | { find: /:purse $/, replace: '👛'},
1124 | { find: /:handbag $/, replace: '👜'},
1125 | { find: /:pouch $/, replace: '👝'},
1126 | { find: /:shopping $/, replace: '🛍️'},
1127 | { find: /:school_satchel $/, replace: '🎒'},
1128 | { find: /:thong_sandal $/, replace: '🩴'},
1129 | { find: /:mans_shoe $/, replace: '👞'},
1130 | { find: /:shoe $/, replace: '👞'},
1131 | { find: /:athletic_shoe $/, replace: '👟'},
1132 | { find: /:hiking_boot $/, replace: '🥾'},
1133 | { find: /:flat_shoe $/, replace: '🥿'},
1134 | { find: /:high_heel $/, replace: '👠'},
1135 | { find: /:sandal $/, replace: '👡'},
1136 | { find: /:ballet_shoes $/, replace: '🩰'},
1137 | { find: /:boot $/, replace: '👢'},
1138 | { find: /:crown $/, replace: '👑'},
1139 | { find: /:womans_hat $/, replace: '👒'},
1140 | { find: /:tophat $/, replace: '🎩'},
1141 | { find: /:mortar_board $/, replace: '🎓'},
1142 | { find: /:billed_cap $/, replace: '🧢'},
1143 | { find: /:military_helmet $/, replace: '🪖'},
1144 | { find: /:rescue_worker_helmet $/, replace: '⛑️'},
1145 | { find: /:prayer_beads $/, replace: '📿'},
1146 | { find: /:lipstick $/, replace: '💄'},
1147 | { find: /:ring $/, replace: '💍'},
1148 | { find: /:gem $/, replace: '💎'},
1149 | { find: /:mute $/, replace: '🔇'},
1150 | { find: /:speaker $/, replace: '🔈'},
1151 | { find: /:sound $/, replace: '🔉'},
1152 | { find: /:loud_sound $/, replace: '🔊'},
1153 | { find: /:loudspeaker $/, replace: '📢'},
1154 | { find: /:mega $/, replace: '📣'},
1155 | { find: /:postal_horn $/, replace: '📯'},
1156 | { find: /:bell $/, replace: '🔔'},
1157 | { find: /:no_bell $/, replace: '🔕'},
1158 | { find: /:musical_score $/, replace: '🎼'},
1159 | { find: /:musical_note $/, replace: '🎵'},
1160 | { find: /:notes $/, replace: '🎶'},
1161 | { find: /:studio_microphone $/, replace: '🎙️'},
1162 | { find: /:level_slider $/, replace: '🎚️'},
1163 | { find: /:control_knobs $/, replace: '🎛️'},
1164 | { find: /:microphone $/, replace: '🎤'},
1165 | { find: /:headphones $/, replace: '🎧'},
1166 | { find: /:radio $/, replace: '📻'},
1167 | { find: /:saxophone $/, replace: '🎷'},
1168 | { find: /:accordion $/, replace: '🪗'},
1169 | { find: /:guitar $/, replace: '🎸'},
1170 | { find: /:musical_keyboard $/, replace: '🎹'},
1171 | { find: /:trumpet $/, replace: '🎺'},
1172 | { find: /:violin $/, replace: '🎻'},
1173 | { find: /:banjo $/, replace: '🪕'},
1174 | { find: /:drum $/, replace: '🥁'},
1175 | { find: /:long_drum $/, replace: '🪘'},
1176 | { find: /:iphone $/, replace: '📱'},
1177 | { find: /:calling $/, replace: '📲'},
1178 | { find: /:phone $/, replace: '☎️'},
1179 | { find: /:telephone $/, replace: '☎️'},
1180 | { find: /:telephone_receiver $/, replace: '📞'},
1181 | { find: /:pager $/, replace: '📟'},
1182 | { find: /:fax $/, replace: '📠'},
1183 | { find: /:battery $/, replace: '🔋'},
1184 | { find: /:electric_plug $/, replace: '🔌'},
1185 | { find: /:computer $/, replace: '💻'},
1186 | { find: /:desktop_computer $/, replace: '🖥️'},
1187 | { find: /:printer $/, replace: '🖨️'},
1188 | { find: /:keyboard $/, replace: '⌨️'},
1189 | { find: /:computer_mouse $/, replace: '🖱️'},
1190 | { find: /:trackball $/, replace: '🖲️'},
1191 | { find: /:minidisc $/, replace: '💽'},
1192 | { find: /:floppy_disk $/, replace: '💾'},
1193 | { find: /:cd $/, replace: '💿'},
1194 | { find: /:dvd $/, replace: '📀'},
1195 | { find: /:abacus $/, replace: '🧮'},
1196 | { find: /:movie_camera $/, replace: '🎥'},
1197 | { find: /:film_strip $/, replace: '🎞️'},
1198 | { find: /:film_projector $/, replace: '📽️'},
1199 | { find: /:clapper $/, replace: '🎬'},
1200 | { find: /:tv $/, replace: '📺'},
1201 | { find: /:camera $/, replace: '📷'},
1202 | { find: /:camera_flash $/, replace: '📸'},
1203 | { find: /:video_camera $/, replace: '📹'},
1204 | { find: /:vhs $/, replace: '📼'},
1205 | { find: /:mag $/, replace: '🔍'},
1206 | { find: /:mag_right $/, replace: '🔎'},
1207 | { find: /:candle $/, replace: '🕯️'},
1208 | { find: /:bulb $/, replace: '💡'},
1209 | { find: /:flashlight $/, replace: '🔦'},
1210 | { find: /:izakaya_lantern $/, replace: '🏮'},
1211 | { find: /:lantern $/, replace: '🏮'},
1212 | { find: /:diya_lamp $/, replace: '🪔'},
1213 | { find: /:notebook_with_decorative_cover $/, replace: '📔'},
1214 | { find: /:closed_book $/, replace: '📕'},
1215 | { find: /:book $/, replace: '📖'},
1216 | { find: /:open_book $/, replace: '📖'},
1217 | { find: /:green_book $/, replace: '📗'},
1218 | { find: /:blue_book $/, replace: '📘'},
1219 | { find: /:orange_book $/, replace: '📙'},
1220 | { find: /:books $/, replace: '📚'},
1221 | { find: /:notebook $/, replace: '📓'},
1222 | { find: /:ledger $/, replace: '📒'},
1223 | { find: /:page_with_curl $/, replace: '📃'},
1224 | { find: /:scroll $/, replace: '📜'},
1225 | { find: /:page_facing_up $/, replace: '📄'},
1226 | { find: /:newspaper $/, replace: '📰'},
1227 | { find: /:newspaper_roll $/, replace: '🗞️'},
1228 | { find: /:bookmark_tabs $/, replace: '📑'},
1229 | { find: /:bookmark $/, replace: '🔖'},
1230 | { find: /:label $/, replace: '🏷️'},
1231 | { find: /:moneybag $/, replace: '💰'},
1232 | { find: /:coin $/, replace: '🪙'},
1233 | { find: /:yen $/, replace: '💴'},
1234 | { find: /:dollar $/, replace: '💵'},
1235 | { find: /:euro $/, replace: '💶'},
1236 | { find: /:pound $/, replace: '💷'},
1237 | { find: /:money_with_wings $/, replace: '💸'},
1238 | { find: /:credit_card $/, replace: '💳'},
1239 | { find: /:receipt $/, replace: '🧾'},
1240 | { find: /:chart $/, replace: '💹'},
1241 | { find: /:envelope $/, replace: '✉️'},
1242 | { find: /:email $/, replace: '📧'},
1243 | { find: /:e-mail $/, replace: '📧'},
1244 | { find: /:incoming_envelope $/, replace: '📨'},
1245 | { find: /:envelope_with_arrow $/, replace: '📩'},
1246 | { find: /:outbox_tray $/, replace: '📤'},
1247 | { find: /:inbox_tray $/, replace: '📥'},
1248 | { find: /:package $/, replace: '📦'},
1249 | { find: /:mailbox $/, replace: '📫'},
1250 | { find: /:mailbox_closed $/, replace: '📪'},
1251 | { find: /:mailbox_with_mail $/, replace: '📬'},
1252 | { find: /:mailbox_with_no_mail $/, replace: '📭'},
1253 | { find: /:postbox $/, replace: '📮'},
1254 | { find: /:ballot_box $/, replace: '🗳️'},
1255 | { find: /:pencil2 $/, replace: '✏️'},
1256 | { find: /:black_nib $/, replace: '✒️'},
1257 | { find: /:fountain_pen $/, replace: '🖋️'},
1258 | { find: /:pen $/, replace: '🖊️'},
1259 | { find: /:paintbrush $/, replace: '🖌️'},
1260 | { find: /:crayon $/, replace: '🖍️'},
1261 | { find: /:memo $/, replace: '📝'},
1262 | { find: /:pencil $/, replace: '📝'},
1263 | { find: /:briefcase $/, replace: '💼'},
1264 | { find: /:file_folder $/, replace: '📁'},
1265 | { find: /:open_file_folder $/, replace: '📂'},
1266 | { find: /:card_index_dividers $/, replace: '🗂️'},
1267 | { find: /:date $/, replace: '📅'},
1268 | { find: /:calendar $/, replace: '📆'},
1269 | { find: /:spiral_notepad $/, replace: '🗒️'},
1270 | { find: /:spiral_calendar $/, replace: '🗓️'},
1271 | { find: /:card_index $/, replace: '📇'},
1272 | { find: /:chart_with_upwards_trend $/, replace: '📈'},
1273 | { find: /:chart_with_downwards_trend $/, replace: '📉'},
1274 | { find: /:bar_chart $/, replace: '📊'},
1275 | { find: /:clipboard $/, replace: '📋'},
1276 | { find: /:pushpin $/, replace: '📌'},
1277 | { find: /:round_pushpin $/, replace: '📍'},
1278 | { find: /:paperclip $/, replace: '📎'},
1279 | { find: /:paperclips $/, replace: '🖇️'},
1280 | { find: /:straight_ruler $/, replace: '📏'},
1281 | { find: /:triangular_ruler $/, replace: '📐'},
1282 | { find: /:scissors $/, replace: '✂️'},
1283 | { find: /:card_file_box $/, replace: '🗃️'},
1284 | { find: /:file_cabinet $/, replace: '🗄️'},
1285 | { find: /:wastebasket $/, replace: '🗑️'},
1286 | { find: /:lock $/, replace: '🔒'},
1287 | { find: /:unlock $/, replace: '🔓'},
1288 | { find: /:lock_with_ink_pen $/, replace: '🔏'},
1289 | { find: /:closed_lock_with_key $/, replace: '🔐'},
1290 | { find: /:key $/, replace: '🔑'},
1291 | { find: /:old_key $/, replace: '🗝️'},
1292 | { find: /:hammer $/, replace: '🔨'},
1293 | { find: /:axe $/, replace: '🪓'},
1294 | { find: /:pick $/, replace: '⛏️'},
1295 | { find: /:hammer_and_pick $/, replace: '⚒️'},
1296 | { find: /:hammer_and_wrench $/, replace: '🛠️'},
1297 | { find: /:dagger $/, replace: '🗡️'},
1298 | { find: /:crossed_swords $/, replace: '⚔️'},
1299 | { find: /:gun $/, replace: '🔫'},
1300 | { find: /:boomerang $/, replace: '🪃'},
1301 | { find: /:bow_and_arrow $/, replace: '🏹'},
1302 | { find: /:shield $/, replace: '🛡️'},
1303 | { find: /:carpentry_saw $/, replace: '🪚'},
1304 | { find: /:wrench $/, replace: '🔧'},
1305 | { find: /:screwdriver $/, replace: '🪛'},
1306 | { find: /:nut_and_bolt $/, replace: '🔩'},
1307 | { find: /:gear $/, replace: '⚙️'},
1308 | { find: /:clamp $/, replace: '🗜️'},
1309 | { find: /:balance_scale $/, replace: '⚖️'},
1310 | { find: /:probing_cane $/, replace: '🦯'},
1311 | { find: /:link $/, replace: '🔗'},
1312 | { find: /:chains $/, replace: '⛓️'},
1313 | { find: /:hook $/, replace: '🪝'},
1314 | { find: /:toolbox $/, replace: '🧰'},
1315 | { find: /:magnet $/, replace: '🧲'},
1316 | { find: /:ladder $/, replace: '🪜'},
1317 | { find: /:alembic $/, replace: '⚗️'},
1318 | { find: /:test_tube $/, replace: '🧪'},
1319 | { find: /:petri_dish $/, replace: '🧫'},
1320 | { find: /:dna $/, replace: '🧬'},
1321 | { find: /:microscope $/, replace: '🔬'},
1322 | { find: /:telescope $/, replace: '🔭'},
1323 | { find: /:satellite $/, replace: '📡'},
1324 | { find: /:syringe $/, replace: '💉'},
1325 | { find: /:drop_of_blood $/, replace: '🩸'},
1326 | { find: /:pill $/, replace: '💊'},
1327 | { find: /:adhesive_bandage $/, replace: '🩹'},
1328 | { find: /:stethoscope $/, replace: '🩺'},
1329 | { find: /:door $/, replace: '🚪'},
1330 | { find: /:elevator $/, replace: '🛗'},
1331 | { find: /:mirror $/, replace: '🪞'},
1332 | { find: /:window $/, replace: '🪟'},
1333 | { find: /:bed $/, replace: '🛏️'},
1334 | { find: /:couch_and_lamp $/, replace: '🛋️'},
1335 | { find: /:chair $/, replace: '🪑'},
1336 | { find: /:toilet $/, replace: '🚽'},
1337 | { find: /:plunger $/, replace: '🪠'},
1338 | { find: /:shower $/, replace: '🚿'},
1339 | { find: /:bathtub $/, replace: '🛁'},
1340 | { find: /:mouse_trap $/, replace: '🪤'},
1341 | { find: /:razor $/, replace: '🪒'},
1342 | { find: /:lotion_bottle $/, replace: '🧴'},
1343 | { find: /:safety_pin $/, replace: '🧷'},
1344 | { find: /:broom $/, replace: '🧹'},
1345 | { find: /:basket $/, replace: '🧺'},
1346 | { find: /:roll_of_paper $/, replace: '🧻'},
1347 | { find: /:bucket $/, replace: '🪣'},
1348 | { find: /:soap $/, replace: '🧼'},
1349 | { find: /:toothbrush $/, replace: '🪥'},
1350 | { find: /:sponge $/, replace: '🧽'},
1351 | { find: /:fire_extinguisher $/, replace: '🧯'},
1352 | { find: /:shopping_cart $/, replace: '🛒'},
1353 | { find: /:smoking $/, replace: '🚬'},
1354 | { find: /:coffin $/, replace: '⚰️'},
1355 | { find: /:headstone $/, replace: '🪦'},
1356 | { find: /:funeral_urn $/, replace: '⚱️'},
1357 | { find: /:moyai $/, replace: '🗿'},
1358 | { find: /:placard $/, replace: '🪧'},
1359 | { find: /:atm $/, replace: '🏧'},
1360 | { find: /:put_litter_in_its_place $/, replace: '🚮'},
1361 | { find: /:potable_water $/, replace: '🚰'},
1362 | { find: /:wheelchair $/, replace: '♿'},
1363 | { find: /:mens $/, replace: '🚹'},
1364 | { find: /:womens $/, replace: '🚺'},
1365 | { find: /:restroom $/, replace: '🚻'},
1366 | { find: /:baby_symbol $/, replace: '🚼'},
1367 | { find: /:wc $/, replace: '🚾'},
1368 | { find: /:passport_control $/, replace: '🛂'},
1369 | { find: /:customs $/, replace: '🛃'},
1370 | { find: /:baggage_claim $/, replace: '🛄'},
1371 | { find: /:left_luggage $/, replace: '🛅'},
1372 | { find: /:warning $/, replace: '⚠️'},
1373 | { find: /:children_crossing $/, replace: '🚸'},
1374 | { find: /:no_entry $/, replace: '⛔'},
1375 | { find: /:no_entry_sign $/, replace: '🚫'},
1376 | { find: /:no_bicycles $/, replace: '🚳'},
1377 | { find: /:no_smoking $/, replace: '🚭'},
1378 | { find: /:do_not_litter $/, replace: '🚯'},
1379 | { find: /:non-potable_water $/, replace: '🚱'},
1380 | { find: /:no_pedestrians $/, replace: '🚷'},
1381 | { find: /:no_mobile_phones $/, replace: '📵'},
1382 | { find: /:underage $/, replace: '🔞'},
1383 | { find: /:radioactive $/, replace: '☢️'},
1384 | { find: /:biohazard $/, replace: '☣️'},
1385 | { find: /:arrow_up $/, replace: '⬆️'},
1386 | { find: /:arrow_upper_right $/, replace: '↗️'},
1387 | { find: /:arrow_right $/, replace: '➡️'},
1388 | { find: /:arrow_lower_right $/, replace: '↘️'},
1389 | { find: /:arrow_down $/, replace: '⬇️'},
1390 | { find: /:arrow_lower_left $/, replace: '↙️'},
1391 | { find: /:arrow_left $/, replace: '⬅️'},
1392 | { find: /:arrow_upper_left $/, replace: '↖️'},
1393 | { find: /:arrow_up_down $/, replace: '↕️'},
1394 | { find: /:left_right_arrow $/, replace: '↔️'},
1395 | { find: /:leftwards_arrow_with_hook $/, replace: '↩️'},
1396 | { find: /:arrow_right_hook $/, replace: '↪️'},
1397 | { find: /:arrow_heading_up $/, replace: '⤴️'},
1398 | { find: /:arrow_heading_down $/, replace: '⤵️'},
1399 | { find: /:arrows_clockwise $/, replace: '🔃'},
1400 | { find: /:arrows_counterclockwise $/, replace: '🔄'},
1401 | { find: /:back $/, replace: '🔙'},
1402 | { find: /:end $/, replace: '🔚'},
1403 | { find: /:on $/, replace: '🔛'},
1404 | { find: /:soon $/, replace: '🔜'},
1405 | { find: /:top $/, replace: '🔝'},
1406 | { find: /:place_of_worship $/, replace: '🛐'},
1407 | { find: /:atom_symbol $/, replace: '⚛️'},
1408 | { find: /:om $/, replace: '🕉️'},
1409 | { find: /:star_of_david $/, replace: '✡️'},
1410 | { find: /:wheel_of_dharma $/, replace: '☸️'},
1411 | { find: /:yin_yang $/, replace: '☯️'},
1412 | { find: /:latin_cross $/, replace: '✝️'},
1413 | { find: /:orthodox_cross $/, replace: '☦️'},
1414 | { find: /:star_and_crescent $/, replace: '☪️'},
1415 | { find: /:peace_symbol $/, replace: '☮️'},
1416 | { find: /:menorah $/, replace: '🕎'},
1417 | { find: /:six_pointed_star $/, replace: '🔯'},
1418 | { find: /:aries $/, replace: '♈'},
1419 | { find: /:taurus $/, replace: '♉'},
1420 | { find: /:gemini $/, replace: '♊'},
1421 | { find: /:cancer $/, replace: '♋'},
1422 | { find: /:leo $/, replace: '♌'},
1423 | { find: /:virgo $/, replace: '♍'},
1424 | { find: /:libra $/, replace: '♎'},
1425 | { find: /:scorpius $/, replace: '♏'},
1426 | { find: /:sagittarius $/, replace: '♐'},
1427 | { find: /:capricorn $/, replace: '♑'},
1428 | { find: /:aquarius $/, replace: '♒'},
1429 | { find: /:pisces $/, replace: '♓'},
1430 | { find: /:ophiuchus $/, replace: '⛎'},
1431 | { find: /:twisted_rightwards_arrows $/, replace: '🔀'},
1432 | { find: /:repeat $/, replace: '🔁'},
1433 | { find: /:repeat_one $/, replace: '🔂'},
1434 | { find: /:arrow_forward $/, replace: '▶️'},
1435 | { find: /:fast_forward $/, replace: '⏩'},
1436 | { find: /:next_track_button $/, replace: '⏭️'},
1437 | { find: /:play_or_pause_button $/, replace: '⏯️'},
1438 | { find: /:arrow_backward $/, replace: '◀️'},
1439 | { find: /:rewind $/, replace: '⏪'},
1440 | { find: /:previous_track_button $/, replace: '⏮️'},
1441 | { find: /:arrow_up_small $/, replace: '🔼'},
1442 | { find: /:arrow_double_up $/, replace: '⏫'},
1443 | { find: /:arrow_down_small $/, replace: '🔽'},
1444 | { find: /:arrow_double_down $/, replace: '⏬'},
1445 | { find: /:pause_button $/, replace: '⏸️'},
1446 | { find: /:stop_button $/, replace: '⏹️'},
1447 | { find: /:record_button $/, replace: '⏺️'},
1448 | { find: /:eject_button $/, replace: '⏏️'},
1449 | { find: /:cinema $/, replace: '🎦'},
1450 | { find: /:low_brightness $/, replace: '🔅'},
1451 | { find: /:high_brightness $/, replace: '🔆'},
1452 | { find: /:signal_strength $/, replace: '📶'},
1453 | { find: /:vibration_mode $/, replace: '📳'},
1454 | { find: /:mobile_phone_off $/, replace: '📴'},
1455 | { find: /:female_sign $/, replace: '♀️'},
1456 | { find: /:male_sign $/, replace: '♂️'},
1457 | { find: /:transgender_symbol $/, replace: '⚧️'},
1458 | { find: /:heavy_multiplication_x $/, replace: '✖️'},
1459 | { find: /:heavy_plus_sign $/, replace: '➕'},
1460 | { find: /:heavy_minus_sign $/, replace: '➖'},
1461 | { find: /:heavy_division_sign $/, replace: '➗'},
1462 | { find: /:infinity $/, replace: '♾️'},
1463 | { find: /:bangbang $/, replace: '‼️'},
1464 | { find: /:interrobang $/, replace: '⁉️'},
1465 | { find: /:question $/, replace: '❓'},
1466 | { find: /:grey_question $/, replace: '❔'},
1467 | { find: /:grey_exclamation $/, replace: '❕'},
1468 | { find: /:exclamation $/, replace: '❗'},
1469 | { find: /:heavy_exclamation_mark $/, replace: '❗'},
1470 | { find: /:wavy_dash $/, replace: '〰️'},
1471 | { find: /:currency_exchange $/, replace: '💱'},
1472 | { find: /:heavy_dollar_sign $/, replace: '💲'},
1473 | { find: /:medical_symbol $/, replace: '⚕️'},
1474 | { find: /:recycle $/, replace: '♻️'},
1475 | { find: /:fleur_de_lis $/, replace: '⚜️'},
1476 | { find: /:trident $/, replace: '🔱'},
1477 | { find: /:name_badge $/, replace: '📛'},
1478 | { find: /:beginner $/, replace: '🔰'},
1479 | { find: /:o $/, replace: '⭕'},
1480 | { find: /:white_check_mark $/, replace: '✅'},
1481 | { find: /:ballot_box_with_check $/, replace: '☑️'},
1482 | { find: /:heavy_check_mark $/, replace: '✔️'},
1483 | { find: /:x $/, replace: '❌'},
1484 | { find: /:negative_squared_cross_mark $/, replace: '❎'},
1485 | { find: /:curly_loop $/, replace: '➰'},
1486 | { find: /:loop $/, replace: '➿'},
1487 | { find: /:part_alternation_mark $/, replace: '〽️'},
1488 | { find: /:eight_spoked_asterisk $/, replace: '✳️'},
1489 | { find: /:eight_pointed_black_star $/, replace: '✴️'},
1490 | { find: /:sparkle $/, replace: '❇️'},
1491 | { find: /:copyright $/, replace: '©️'},
1492 | { find: /:registered $/, replace: '®️'},
1493 | { find: /:tm $/, replace: '™️'},
1494 | { find: /:hash $/, replace: '#️⃣'},
1495 | { find: /:asterisk $/, replace: '*️⃣'},
1496 | { find: /:zero $/, replace: '0️⃣'},
1497 | { find: /:one $/, replace: '1️⃣'},
1498 | { find: /:two $/, replace: '2️⃣'},
1499 | { find: /:three $/, replace: '3️⃣'},
1500 | { find: /:four $/, replace: '4️⃣'},
1501 | { find: /:five $/, replace: '5️⃣'},
1502 | { find: /:six $/, replace: '6️⃣'},
1503 | { find: /:seven $/, replace: '7️⃣'},
1504 | { find: /:eight $/, replace: '8️⃣'},
1505 | { find: /:nine $/, replace: '9️⃣'},
1506 | { find: /:keycap_ten $/, replace: '🔟'},
1507 | { find: /:capital_abcd $/, replace: '🔠'},
1508 | { find: /:abcd $/, replace: '🔡'},
1509 | { find: /:symbols $/, replace: '🔣'},
1510 | { find: /:abc $/, replace: '🔤'},
1511 | { find: /:a $/, replace: '🅰️'},
1512 | { find: /:ab $/, replace: '🆎'},
1513 | { find: /:b $/, replace: '🅱️'},
1514 | { find: /:cl $/, replace: '🆑'},
1515 | { find: /:cool $/, replace: '🆒'},
1516 | { find: /:free $/, replace: '🆓'},
1517 | { find: /:information_source $/, replace: 'ℹ️'},
1518 | { find: /:id $/, replace: '🆔'},
1519 | { find: /:m $/, replace: 'Ⓜ️'},
1520 | { find: /:new $/, replace: '🆕'},
1521 | { find: /:ng $/, replace: '🆖'},
1522 | { find: /:o2 $/, replace: '🅾️'},
1523 | { find: /:ok $/, replace: '🆗'},
1524 | { find: /:parking $/, replace: '🅿️'},
1525 | { find: /:sos $/, replace: '🆘'},
1526 | { find: /:up $/, replace: '🆙'},
1527 | { find: /:vs $/, replace: '🆚'},
1528 | { find: /:koko $/, replace: '🈁'},
1529 | { find: /:sa $/, replace: '🈂️'},
1530 | { find: /:ideograph_advantage $/, replace: '🉐'},
1531 | { find: /:accept $/, replace: '🉑'},
1532 | { find: /:congratulations $/, replace: '㊗️'},
1533 | { find: /:secret $/, replace: '㊙️'},
1534 | { find: /:u6e80 $/, replace: '🈵'},
1535 | { find: /:red_circle $/, replace: '🔴'},
1536 | { find: /:orange_circle $/, replace: '🟠'},
1537 | { find: /:yellow_circle $/, replace: '🟡'},
1538 | { find: /:green_circle $/, replace: '🟢'},
1539 | { find: /:large_blue_circle $/, replace: '🔵'},
1540 | { find: /:purple_circle $/, replace: '🟣'},
1541 | { find: /:brown_circle $/, replace: '🟤'},
1542 | { find: /:black_circle $/, replace: '⚫'},
1543 | { find: /:white_circle $/, replace: '⚪'},
1544 | { find: /:red_square $/, replace: '🟥'},
1545 | { find: /:orange_square $/, replace: '🟧'},
1546 | { find: /:yellow_square $/, replace: '🟨'},
1547 | { find: /:green_square $/, replace: '🟩'},
1548 | { find: /:blue_square $/, replace: '🟦'},
1549 | { find: /:purple_square $/, replace: '🟪'},
1550 | { find: /:brown_square $/, replace: '🟫'},
1551 | { find: /:black_large_square $/, replace: '⬛'},
1552 | { find: /:white_large_square $/, replace: '⬜'},
1553 | { find: /:black_medium_square $/, replace: '◼️'},
1554 | { find: /:white_medium_square $/, replace: '◻️'},
1555 | { find: /:black_medium_small_square $/, replace: '◾'},
1556 | { find: /:white_medium_small_square $/, replace: '◽'},
1557 | { find: /:black_small_square $/, replace: '▪️'},
1558 | { find: /:white_small_square $/, replace: '▫️'},
1559 | { find: /:large_orange_diamond $/, replace: '🔶'},
1560 | { find: /:large_blue_diamond $/, replace: '🔷'},
1561 | { find: /:small_orange_diamond $/, replace: '🔸'},
1562 | { find: /:small_blue_diamond $/, replace: '🔹'},
1563 | { find: /:small_red_triangle $/, replace: '🔺'},
1564 | { find: /:small_red_triangle_down $/, replace: '🔻'},
1565 | { find: /:diamond_shape_with_a_dot_inside $/, replace: '💠'},
1566 | { find: /:radio_button $/, replace: '🔘'},
1567 | { find: /:white_square_button $/, replace: '🔳'},
1568 | { find: /:black_square_button $/, replace: '🔲'},
1569 | { find: /:checkered_flag $/, replace: '🏁'},
1570 | { find: /:triangular_flag_on_post $/, replace: '🚩'},
1571 | { find: /:crossed_flags $/, replace: '🎌'},
1572 | { find: /:black_flag $/, replace: '🏴'},
1573 | { find: /:white_flag $/, replace: '🏳️'},
1574 | { find: /:rainbow_flag $/, replace: '🏳️🌈'},
1575 | { find: /:transgender_flag $/, replace: '🏳️⚧️'},
1576 | { find: /:pirate_flag $/, replace: '🏴☠️'},
1577 | { find: /:ascension_island $/, replace: '🇦🇨'},
1578 | { find: /:andorra $/, replace: '🇦🇩'},
1579 | { find: /:united_arab_emirates $/, replace: '🇦🇪'},
1580 | { find: /:afghanistan $/, replace: '🇦🇫'},
1581 | { find: /:antigua_barbuda $/, replace: '🇦🇬'},
1582 | { find: /:anguilla $/, replace: '🇦🇮'},
1583 | { find: /:albania $/, replace: '🇦🇱'},
1584 | { find: /:armenia $/, replace: '🇦🇲'},
1585 | { find: /:angola $/, replace: '🇦🇴'},
1586 | { find: /:antarctica $/, replace: '🇦🇶'},
1587 | { find: /:argentina $/, replace: '🇦🇷'},
1588 | { find: /:american_samoa $/, replace: '🇦🇸'},
1589 | { find: /:austria $/, replace: '🇦🇹'},
1590 | { find: /:australia $/, replace: '🇦🇺'},
1591 | { find: /:aruba $/, replace: '🇦🇼'},
1592 | { find: /:aland_islands $/, replace: '🇦🇽'},
1593 | { find: /:azerbaijan $/, replace: '🇦🇿'},
1594 | { find: /:bosnia_herzegovina $/, replace: '🇧🇦'},
1595 | { find: /:barbados $/, replace: '🇧🇧'},
1596 | { find: /:bangladesh $/, replace: '🇧🇩'},
1597 | { find: /:belgium $/, replace: '🇧🇪'},
1598 | { find: /:burkina_faso $/, replace: '🇧🇫'},
1599 | { find: /:bulgaria $/, replace: '🇧🇬'},
1600 | { find: /:bahrain $/, replace: '🇧🇭'},
1601 | { find: /:burundi $/, replace: '🇧🇮'},
1602 | { find: /:benin $/, replace: '🇧🇯'},
1603 | { find: /:st_barthelemy $/, replace: '🇧🇱'},
1604 | { find: /:bermuda $/, replace: '🇧🇲'},
1605 | { find: /:brunei $/, replace: '🇧🇳'},
1606 | { find: /:bolivia $/, replace: '🇧🇴'},
1607 | { find: /:caribbean_netherlands $/, replace: '🇧🇶'},
1608 | { find: /:brazil $/, replace: '🇧🇷'},
1609 | { find: /:bahamas $/, replace: '🇧🇸'},
1610 | { find: /:bhutan $/, replace: '🇧🇹'},
1611 | { find: /:bouvet_island $/, replace: '🇧🇻'},
1612 | { find: /:botswana $/, replace: '🇧🇼'},
1613 | { find: /:belarus $/, replace: '🇧🇾'},
1614 | { find: /:belize $/, replace: '🇧🇿'},
1615 | { find: /:canada $/, replace: '🇨🇦'},
1616 | { find: /:cocos_islands $/, replace: '🇨🇨'},
1617 | { find: /:congo_kinshasa $/, replace: '🇨🇩'},
1618 | { find: /:central_african_republic $/, replace: '🇨🇫'},
1619 | { find: /:congo_brazzaville $/, replace: '🇨🇬'},
1620 | { find: /:switzerland $/, replace: '🇨🇭'},
1621 | { find: /:cote_divoire $/, replace: '🇨🇮'},
1622 | { find: /:cook_islands $/, replace: '🇨🇰'},
1623 | { find: /:chile $/, replace: '🇨🇱'},
1624 | { find: /:cameroon $/, replace: '🇨🇲'},
1625 | { find: /:cn $/, replace: '🇨🇳'},
1626 | { find: /:colombia $/, replace: '🇨🇴'},
1627 | { find: /:clipperton_island $/, replace: '🇨🇵'},
1628 | { find: /:costa_rica $/, replace: '🇨🇷'},
1629 | { find: /:cuba $/, replace: '🇨🇺'},
1630 | { find: /:cape_verde $/, replace: '🇨🇻'},
1631 | { find: /:curacao $/, replace: '🇨🇼'},
1632 | { find: /:christmas_island $/, replace: '🇨🇽'},
1633 | { find: /:cyprus $/, replace: '🇨🇾'},
1634 | { find: /:czech_republic $/, replace: '🇨🇿'},
1635 | { find: /:de $/, replace: '🇩🇪'},
1636 | { find: /:diego_garcia $/, replace: '🇩🇬'},
1637 | { find: /:djibouti $/, replace: '🇩🇯'},
1638 | { find: /:denmark $/, replace: '🇩🇰'},
1639 | { find: /:dominica $/, replace: '🇩🇲'},
1640 | { find: /:dominican_republic $/, replace: '🇩🇴'},
1641 | { find: /:algeria $/, replace: '🇩🇿'},
1642 | { find: /:ceuta_melilla $/, replace: '🇪🇦'},
1643 | { find: /:ecuador $/, replace: '🇪🇨'},
1644 | { find: /:estonia $/, replace: '🇪🇪'},
1645 | { find: /:egypt $/, replace: '🇪🇬'},
1646 | { find: /:western_sahara $/, replace: '🇪🇭'},
1647 | { find: /:eritrea $/, replace: '🇪🇷'},
1648 | { find: /:es $/, replace: '🇪🇸'},
1649 | { find: /:ethiopia $/, replace: '🇪🇹'},
1650 | { find: /:eu $/, replace: '🇪🇺'},
1651 | { find: /:european_union $/, replace: '🇪🇺'},
1652 | { find: /:finland $/, replace: '🇫🇮'},
1653 | { find: /:fiji $/, replace: '🇫🇯'},
1654 | { find: /:falkland_islands $/, replace: '🇫🇰'},
1655 | { find: /:micronesia $/, replace: '🇫🇲'},
1656 | { find: /:faroe_islands $/, replace: '🇫🇴'},
1657 | { find: /:fr $/, replace: '🇫🇷'},
1658 | { find: /:gabon $/, replace: '🇬🇦'},
1659 | { find: /:gb $/, replace: '🇬🇧'},
1660 | { find: /:uk $/, replace: '🇬🇧'},
1661 | { find: /:grenada $/, replace: '🇬🇩'},
1662 | { find: /:georgia $/, replace: '🇬🇪'},
1663 | { find: /:french_guiana $/, replace: '🇬🇫'},
1664 | { find: /:guernsey $/, replace: '🇬🇬'},
1665 | { find: /:ghana $/, replace: '🇬🇭'},
1666 | { find: /:gibraltar $/, replace: '🇬🇮'},
1667 | { find: /:greenland $/, replace: '🇬🇱'},
1668 | { find: /:gambia $/, replace: '🇬🇲'},
1669 | { find: /:guinea $/, replace: '🇬🇳'},
1670 | { find: /:guadeloupe $/, replace: '🇬🇵'},
1671 | { find: /:equatorial_guinea $/, replace: '🇬🇶'},
1672 | { find: /:greece $/, replace: '🇬🇷'},
1673 | { find: /:south_georgia_south_sandwich_islands $/, replace: '🇬🇸'},
1674 | { find: /:guatemala $/, replace: '🇬🇹'},
1675 | { find: /:guam $/, replace: '🇬🇺'},
1676 | { find: /:guinea_bissau $/, replace: '🇬🇼'},
1677 | { find: /:guyana $/, replace: '🇬🇾'},
1678 | { find: /:hong_kong $/, replace: '🇭🇰'},
1679 | { find: /:heard_mcdonald_islands $/, replace: '🇭🇲'},
1680 | { find: /:honduras $/, replace: '🇭🇳'},
1681 | { find: /:croatia $/, replace: '🇭🇷'},
1682 | { find: /:haiti $/, replace: '🇭🇹'},
1683 | { find: /:hungary $/, replace: '🇭🇺'},
1684 | { find: /:canary_islands $/, replace: '🇮🇨'},
1685 | { find: /:indonesia $/, replace: '🇮🇩'},
1686 | { find: /:ireland $/, replace: '🇮🇪'},
1687 | { find: /:israel $/, replace: '🇮🇱'},
1688 | { find: /:isle_of_man $/, replace: '🇮🇲'},
1689 | { find: /:india $/, replace: '🇮🇳'},
1690 | { find: /:british_indian_ocean_territory $/, replace: '🇮🇴'},
1691 | { find: /:iraq $/, replace: '🇮🇶'},
1692 | { find: /:iran $/, replace: '🇮🇷'},
1693 | { find: /:iceland $/, replace: '🇮🇸'},
1694 | { find: /:it $/, replace: '🇮🇹'},
1695 | { find: /:jersey $/, replace: '🇯🇪'},
1696 | { find: /:jamaica $/, replace: '🇯🇲'},
1697 | { find: /:jordan $/, replace: '🇯🇴'},
1698 | { find: /:jp $/, replace: '🇯🇵'},
1699 | { find: /:kenya $/, replace: '🇰🇪'},
1700 | { find: /:kyrgyzstan $/, replace: '🇰🇬'},
1701 | { find: /:cambodia $/, replace: '🇰🇭'},
1702 | { find: /:kiribati $/, replace: '🇰🇮'},
1703 | { find: /:comoros $/, replace: '🇰🇲'},
1704 | { find: /:st_kitts_nevis $/, replace: '🇰🇳'},
1705 | { find: /:north_korea $/, replace: '🇰🇵'},
1706 | { find: /:kr $/, replace: '🇰🇷'},
1707 | { find: /:kuwait $/, replace: '🇰🇼'},
1708 | { find: /:cayman_islands $/, replace: '🇰🇾'},
1709 | { find: /:kazakhstan $/, replace: '🇰🇿'},
1710 | { find: /:laos $/, replace: '🇱🇦'},
1711 | { find: /:lebanon $/, replace: '🇱🇧'},
1712 | { find: /:st_lucia $/, replace: '🇱🇨'},
1713 | { find: /:liechtenstein $/, replace: '🇱🇮'},
1714 | { find: /:sri_lanka $/, replace: '🇱🇰'},
1715 | { find: /:liberia $/, replace: '🇱🇷'},
1716 | { find: /:lesotho $/, replace: '🇱🇸'},
1717 | { find: /:lithuania $/, replace: '🇱🇹'},
1718 | { find: /:luxembourg $/, replace: '🇱🇺'},
1719 | { find: /:latvia $/, replace: '🇱🇻'},
1720 | { find: /:libya $/, replace: '🇱🇾'},
1721 | { find: /:morocco $/, replace: '🇲🇦'},
1722 | { find: /:monaco $/, replace: '🇲🇨'},
1723 | { find: /:moldova $/, replace: '🇲🇩'},
1724 | { find: /:montenegro $/, replace: '🇲🇪'},
1725 | { find: /:st_martin $/, replace: '🇲🇫'},
1726 | { find: /:madagascar $/, replace: '🇲🇬'},
1727 | { find: /:marshall_islands $/, replace: '🇲🇭'},
1728 | { find: /:macedonia $/, replace: '🇲🇰'},
1729 | { find: /:mali $/, replace: '🇲🇱'},
1730 | { find: /:myanmar $/, replace: '🇲🇲'},
1731 | { find: /:mongolia $/, replace: '🇲🇳'},
1732 | { find: /:macau $/, replace: '🇲🇴'},
1733 | { find: /:northern_mariana_islands $/, replace: '🇲🇵'},
1734 | { find: /:martinique $/, replace: '🇲🇶'},
1735 | { find: /:mauritania $/, replace: '🇲🇷'},
1736 | { find: /:montserrat $/, replace: '🇲🇸'},
1737 | { find: /:malta $/, replace: '🇲🇹'},
1738 | { find: /:mauritius $/, replace: '🇲🇺'},
1739 | { find: /:maldives $/, replace: '🇲🇻'},
1740 | { find: /:malawi $/, replace: '🇲🇼'},
1741 | { find: /:mexico $/, replace: '🇲🇽'},
1742 | { find: /:malaysia $/, replace: '🇲🇾'},
1743 | { find: /:mozambique $/, replace: '🇲🇿'},
1744 | { find: /:namibia $/, replace: '🇳🇦'},
1745 | { find: /:new_caledonia $/, replace: '🇳🇨'},
1746 | { find: /:niger $/, replace: '🇳🇪'},
1747 | { find: /:norfolk_island $/, replace: '🇳🇫'},
1748 | { find: /:nigeria $/, replace: '🇳🇬'},
1749 | { find: /:nicaragua $/, replace: '🇳🇮'},
1750 | { find: /:netherlands $/, replace: '🇳🇱'},
1751 | { find: /:norway $/, replace: '🇳🇴'},
1752 | { find: /:nepal $/, replace: '🇳🇵'},
1753 | { find: /:nauru $/, replace: '🇳🇷'},
1754 | { find: /:niue $/, replace: '🇳🇺'},
1755 | { find: /:new_zealand $/, replace: '🇳🇿'},
1756 | { find: /:oman $/, replace: '🇴🇲'},
1757 | { find: /:panama $/, replace: '🇵🇦'},
1758 | { find: /:peru $/, replace: '🇵🇪'},
1759 | { find: /:french_polynesia $/, replace: '🇵🇫'},
1760 | { find: /:papua_new_guinea $/, replace: '🇵🇬'},
1761 | { find: /:philippines $/, replace: '🇵🇭'},
1762 | { find: /:pakistan $/, replace: '🇵🇰'},
1763 | { find: /:poland $/, replace: '🇵🇱'},
1764 | { find: /:st_pierre_miquelon $/, replace: '🇵🇲'},
1765 | { find: /:pitcairn_islands $/, replace: '🇵🇳'},
1766 | { find: /:puerto_rico $/, replace: '🇵🇷'},
1767 | { find: /:palestinian_territories $/, replace: '🇵🇸'},
1768 | { find: /:portugal $/, replace: '🇵🇹'},
1769 | { find: /:palau $/, replace: '🇵🇼'},
1770 | { find: /:paraguay $/, replace: '🇵🇾'},
1771 | { find: /:qatar $/, replace: '🇶🇦'},
1772 | { find: /:reunion $/, replace: '🇷🇪'},
1773 | { find: /:romania $/, replace: '🇷🇴'},
1774 | { find: /:serbia $/, replace: '🇷🇸'},
1775 | { find: /:ru $/, replace: '🇷🇺'},
1776 | { find: /:rwanda $/, replace: '🇷🇼'},
1777 | { find: /:saudi_arabia $/, replace: '🇸🇦'},
1778 | { find: /:solomon_islands $/, replace: '🇸🇧'},
1779 | { find: /:seychelles $/, replace: '🇸🇨'},
1780 | { find: /:sudan $/, replace: '🇸🇩'},
1781 | { find: /:sweden $/, replace: '🇸🇪'},
1782 | { find: /:singapore $/, replace: '🇸🇬'},
1783 | { find: /:st_helena $/, replace: '🇸🇭'},
1784 | { find: /:slovenia $/, replace: '🇸🇮'},
1785 | { find: /:svalbard_jan_mayen $/, replace: '🇸🇯'},
1786 | { find: /:slovakia $/, replace: '🇸🇰'},
1787 | { find: /:sierra_leone $/, replace: '🇸🇱'},
1788 | { find: /:san_marino $/, replace: '🇸🇲'},
1789 | { find: /:senegal $/, replace: '🇸🇳'},
1790 | { find: /:somalia $/, replace: '🇸🇴'},
1791 | { find: /:suriname $/, replace: '🇸🇷'},
1792 | { find: /:south_sudan $/, replace: '🇸🇸'},
1793 | { find: /:sao_tome_principe $/, replace: '🇸🇹'},
1794 | { find: /:el_salvador $/, replace: '🇸🇻'},
1795 | { find: /:sint_maarten $/, replace: '🇸🇽'},
1796 | { find: /:syria $/, replace: '🇸🇾'},
1797 | { find: /:swaziland $/, replace: '🇸🇿'},
1798 | { find: /:tristan_da_cunha $/, replace: '🇹🇦'},
1799 | { find: /:turks_caicos_islands $/, replace: '🇹🇨'},
1800 | { find: /:chad $/, replace: '🇹🇩'},
1801 | { find: /:french_southern_territories $/, replace: '🇹🇫'},
1802 | { find: /:togo $/, replace: '🇹🇬'},
1803 | { find: /:thailand $/, replace: '🇹🇭'},
1804 | { find: /:tajikistan $/, replace: '🇹🇯'},
1805 | { find: /:tokelau $/, replace: '🇹🇰'},
1806 | { find: /:timor_leste $/, replace: '🇹🇱'},
1807 | { find: /:turkmenistan $/, replace: '🇹🇲'},
1808 | { find: /:tunisia $/, replace: '🇹🇳'},
1809 | { find: /:tonga $/, replace: '🇹🇴'},
1810 | { find: /:tr $/, replace: '🇹🇷'},
1811 | { find: /:trinidad_tobago $/, replace: '🇹🇹'},
1812 | { find: /:tuvalu $/, replace: '🇹🇻'},
1813 | { find: /:taiwan $/, replace: '🇹🇼'},
1814 | { find: /:tanzania $/, replace: '🇹🇿'},
1815 | { find: /:ukraine $/, replace: '🇺🇦'},
1816 | { find: /:uganda $/, replace: '🇺🇬'},
1817 | { find: /:us_outlying_islands $/, replace: '🇺🇲'},
1818 | { find: /:united_nations $/, replace: '🇺🇳'},
1819 | { find: /:us $/, replace: '🇺🇸'},
1820 | { find: /:uruguay $/, replace: '🇺🇾'},
1821 | { find: /:uzbekistan $/, replace: '🇺🇿'},
1822 | { find: /:vatican_city $/, replace: '🇻🇦'},
1823 | { find: /:st_vincent_grenadines $/, replace: '🇻🇨'},
1824 | { find: /:venezuela $/, replace: '🇻🇪'},
1825 | { find: /:british_virgin_islands $/, replace: '🇻🇬'},
1826 | { find: /:us_virgin_islands $/, replace: '🇻🇮'},
1827 | { find: /:vietnam $/, replace: '🇻🇳'},
1828 | { find: /:vanuatu $/, replace: '🇻🇺'},
1829 | { find: /:wallis_futuna $/, replace: '🇼🇫'},
1830 | { find: /:samoa $/, replace: '🇼🇸'},
1831 | { find: /:kosovo $/, replace: '🇽🇰'},
1832 | { find: /:yemen $/, replace: '🇾🇪'},
1833 | { find: /:mayotte $/, replace: '🇾🇹'},
1834 | { find: /:south_africa $/, replace: '🇿🇦'},
1835 | { find: /:zambia $/, replace: '🇿🇲'},
1836 | { find: /:zimbabwe $/, replace: '🇿🇼'},
1837 | { find: /:england $/, replace: '🏴'},
1838 | { find: /:scotland $/, replace: '🏴'},
1839 | { find: /:wales $/, replace: '🏴'},
1840 | { find: /:ashrug $/, replace: '¯\\_(ツ)_/¯'}
1841 | ];
1842 |
1843 | export default replacementEmojis;
--------------------------------------------------------------------------------