From 85e37ae6130750662a18bbec0f6580295af3e14e Mon Sep 17 00:00:00 2001 From: gounux Date: Thu, 18 Jul 2024 09:27:19 +0200 Subject: [PATCH 01/10] add qchat skeleton --- qtribu/gui/wdg_qchat.py | 151 +++++++++++++++++++ qtribu/gui/wdg_qchat.ui | 255 +++++++++++++++++++++++++++++++++ qtribu/plugin_main.py | 2 + qtribu/toolbelt/preferences.py | 4 + 4 files changed, 412 insertions(+) create mode 100644 qtribu/gui/wdg_qchat.py create mode 100644 qtribu/gui/wdg_qchat.ui diff --git a/qtribu/gui/wdg_qchat.py b/qtribu/gui/wdg_qchat.py new file mode 100644 index 00000000..c7a2e8e5 --- /dev/null +++ b/qtribu/gui/wdg_qchat.py @@ -0,0 +1,151 @@ +# standard +from datetime import datetime +from pathlib import Path +from typing import Any + +from qgis.gui import QgsDockWidget + +# PyQGIS +from qgis.PyQt import uic +from qgis.PyQt.QtWidgets import QTreeWidgetItem, QWidget + +from qtribu.logic.qchat_client import QChatApiClient + +# plugin +from qtribu.toolbelt import PlgLogger, PlgOptionsManager + +# -- GLOBALS -- +MARKER_VALUE = "---" + + +class QChatWidget(QgsDockWidget): + def __init__(self, parent: QWidget = None): + """QWidget to see and post messages on chat + + :param parent: parent widget or application + :type parent: QWidget + """ + super().__init__(parent) + self.log = PlgLogger().log + self.plg_settings = PlgOptionsManager() + uic.loadUi(Path(__file__).parent / f"{Path(__file__).stem}.ui", self) + + # fill fields from saved settings + self.settings = self.plg_settings.get_plg_settings() + self.load_settings() + + # initialize QChat API client + self.qchat_client = QChatApiClient(self.settings.qchat_instance_uri) + + # load rooms + rooms = self.qchat_client.get_rooms() + self.cb_room.addItem(MARKER_VALUE) + for room in rooms: + self.cb_room.addItem(room["name"]) + self.current_room = MARKER_VALUE + + self.cb_room.currentIndexChanged.connect(self.on_room_changed) + + # connect signal listener + self.connected = False + self.btn_connect.pressed.connect(self.on_connect_button_clicked) + + # tree widget initialization + self.tw_chat.setHeaderLabels( + [ + self.tr("Room"), + self.tr("Date"), + self.tr("Nick"), + self.tr("Message"), + ] + ) + + def load_settings(self) -> dict: + """Load options from QgsSettings into UI form.""" + self.lb_instance.setText(self.settings.qchat_instance_uri) + self.le_nickname.setText(self.settings.qchat_nickname) + + def save_settings(self) -> None: + """Save form text into QgsSettings.""" + self.settings.qchat_nickname = self.le_nickname.text() + self.plg_settings.save_from_object(self.settings) + + def on_room_changed(self) -> None: + """ + Action called when room index is changed in the room combobox + """ + old_room = self.current_room + new_room = self.cb_room.currentText() + if new_room == MARKER_VALUE: + self.disconnect_from_room() + self.current_room = MARKER_VALUE + return + self.disconnect_from_room(log=old_room != MARKER_VALUE) + self.connect_to_room(new_room) + self.current_room = new_room + + def on_connect_button_clicked(self) -> None: + """ + Action called when clicking on "Connect" / "Disconnect" button + """ + if self.connected: + self.disconnect_from_room() + else: + room = self.cb_room.currentText() + if room == MARKER_VALUE: + return + self.connect_to_room(room) + + def connect_to_room(self, room: str, log: bool = True) -> None: + messages = self.qchat_client.get_last_messages(room) + messages.reverse() + if log: + self.tw_chat.insertTopLevelItem( + 0, + QTreeWidgetItem( + [ + room, + datetime.now().strftime("%H:%M"), + self.tr("Admin"), + self.tr("Connected to room '{room}'").format(room=room), + ] + ), + ) + for message in messages: + qtw_item = self.add_message_to_treeview(room, message) + self.tw_chat.insertTopLevelItem(0, qtw_item) + + self.btn_connect.setText(self.tr("Disconnect")) + self.lb_status.setText("Connected") + self.connected = True + + def disconnect_from_room(self, log: bool = True) -> None: + if log: + self.tw_chat.insertTopLevelItem( + 0, + QTreeWidgetItem( + [ + self.current_room, + datetime.now().strftime("%H:%M"), + self.tr("Admin"), + self.tr("Disconnected from room '{room}'").format( + room=self.current_room + ), + ] + ), + ) + self.btn_connect.setText(self.tr("Connect")) + self.lb_status.setText("Disconnected") + self.connected = False + + def add_message_to_treeview(self, room: str, message: dict[str, Any]) -> None: + item = QTreeWidgetItem( + [ + room, + # TODO: convert date to nice format like %H:%M + message["date_posted"], + message["author"], + message["message"], + ] + ) + return item diff --git a/qtribu/gui/wdg_qchat.ui b/qtribu/gui/wdg_qchat.ui new file mode 100644 index 00000000..98a5db53 --- /dev/null +++ b/qtribu/gui/wdg_qchat.ui @@ -0,0 +1,255 @@ + + + QChatWidget + + + + 0 + 0 + 441 + 887 + + + + + 0 + 0 + + + + QChat + + + + + 0 + 0 + + + + + 5 + + + 5 + + + 10 + + + 5 + + + 10 + + + + + + 0 + 0 + + + + Rooms + + + + + + Room: + + + + + + + Status: + + + + + + + + 0 + 0 + + + + Instance: + + + + + + + + + + Not connected + + + + + + + Connect + + + + + + + INSTANCE + + + + + + + + + + + 0 + 0 + + + + + 0 + 1 + + + + + 0 + 1 + + + + Chat + + + false + + + + + + true + + + false + + + true + + + 4 + + + true + + + 64 + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + + + + + + + + 0 + 0 + + + + + 0 + 3 + + + + + 0 + 5 + + + + User + + + + + + Nickname: + + + + + + + + + + Message: + + + + + + + + + + Send message + + + + + + + + + + + + QgsCollapsibleGroupBox + QGroupBox +
qgscollapsiblegroupbox.h
+ 1 +
+
+ + grb_rooms + grb_chat + grb_user + + + +
diff --git a/qtribu/plugin_main.py b/qtribu/plugin_main.py index 06756692..35878b10 100644 --- a/qtribu/plugin_main.py +++ b/qtribu/plugin_main.py @@ -22,6 +22,7 @@ from qtribu.gui.dlg_settings import PlgOptionsFactory from qtribu.gui.form_article import ArticleForm from qtribu.gui.form_rdp_news import RdpNewsForm +from qtribu.gui.wdg_qchat import QChatWidget from qtribu.logic.news_feed.rss_reader import RssMiniReader from qtribu.logic.splash_changer import SplashChanger from qtribu.toolbelt import PlgLogger, PlgOptionsManager @@ -170,6 +171,7 @@ def initGui(self): self.iface.addPluginToWebMenu(__title__, self.action_show_latest_content) self.iface.addPluginToWebMenu(__title__, self.action_form_rdp_news) self.iface.addPluginToWebMenu(__title__, self.action_form_article) + self.iface.addPluginToWebMenu(__title__, self.action_open_chat) self.iface.addPluginToWebMenu(__title__, self.action_splash) self.iface.addPluginToWebMenu(__title__, self.action_settings) self.iface.addPluginToWebMenu(__title__, self.action_help) diff --git a/qtribu/toolbelt/preferences.py b/qtribu/toolbelt/preferences.py index 666228e0..537ba018 100644 --- a/qtribu/toolbelt/preferences.py +++ b/qtribu/toolbelt/preferences.py @@ -48,6 +48,10 @@ class PlgSettingsStructure: qchat_color_self: str = "#00cc00" qchat_color_admin: str = "#ffa500" + # QChat + qchat_instance_uri: str = "http://localhost:8000" + qchat_nickname: str = "John Doe" + # usage browser: int = 1 notify_push_info: bool = True From 09d632197c4613b736a4baba72a73c3359bef7bf Mon Sep 17 00:00:00 2001 From: gounux Date: Thu, 18 Jul 2024 17:10:50 +0200 Subject: [PATCH 02/10] set nice icons --- qtribu/gui/wdg_qchat.py | 1 + 1 file changed, 1 insertion(+) diff --git a/qtribu/gui/wdg_qchat.py b/qtribu/gui/wdg_qchat.py index c7a2e8e5..117bb151 100644 --- a/qtribu/gui/wdg_qchat.py +++ b/qtribu/gui/wdg_qchat.py @@ -49,6 +49,7 @@ def __init__(self, parent: QWidget = None): # connect signal listener self.connected = False self.btn_connect.pressed.connect(self.on_connect_button_clicked) + self.btn_connect.setIcon(QIcon(QgsApplication.iconPath("mIconConnect.svg"))) # tree widget initialization self.tw_chat.setHeaderLabels( From 2cf91e031f73af656519a98f7bcc4af512270e1f Mon Sep 17 00:00:00 2001 From: gounux Date: Sun, 21 Jul 2024 15:05:56 +0200 Subject: [PATCH 03/10] update qchat default settings --- qtribu/toolbelt/preferences.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/qtribu/toolbelt/preferences.py b/qtribu/toolbelt/preferences.py index 537ba018..a04654f7 100644 --- a/qtribu/toolbelt/preferences.py +++ b/qtribu/toolbelt/preferences.py @@ -49,8 +49,8 @@ class PlgSettingsStructure: qchat_color_admin: str = "#ffa500" # QChat - qchat_instance_uri: str = "http://localhost:8000" - qchat_nickname: str = "John Doe" + qchat_instance_uri: str = "https://qchat.guilhemallaman.net" + qchat_nickname: str = "J.D." # usage browser: int = 1 From 54daa5a9dc1b9e1ddd7ffbf8601f6e0a04f70c01 Mon Sep 17 00:00:00 2001 From: gounux Date: Tue, 23 Jul 2024 16:44:42 +0200 Subject: [PATCH 04/10] edit default qchat instance --- qtribu/toolbelt/preferences.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qtribu/toolbelt/preferences.py b/qtribu/toolbelt/preferences.py index a04654f7..be130249 100644 --- a/qtribu/toolbelt/preferences.py +++ b/qtribu/toolbelt/preferences.py @@ -49,7 +49,7 @@ class PlgSettingsStructure: qchat_color_admin: str = "#ffa500" # QChat - qchat_instance_uri: str = "https://qchat.guilhemallaman.net" + qchat_instance_uri: str = "https://gischat.geotribu.net" qchat_nickname: str = "J.D." # usage From 206e28a8b3c82b9a41a00bc2a4eef9802cbd9614 Mon Sep 17 00:00:00 2001 From: gounux Date: Tue, 23 Jul 2024 18:36:48 +0200 Subject: [PATCH 05/10] edit action order --- qtribu/plugin_main.py | 1 - 1 file changed, 1 deletion(-) diff --git a/qtribu/plugin_main.py b/qtribu/plugin_main.py index 35878b10..ce902bc2 100644 --- a/qtribu/plugin_main.py +++ b/qtribu/plugin_main.py @@ -171,7 +171,6 @@ def initGui(self): self.iface.addPluginToWebMenu(__title__, self.action_show_latest_content) self.iface.addPluginToWebMenu(__title__, self.action_form_rdp_news) self.iface.addPluginToWebMenu(__title__, self.action_form_article) - self.iface.addPluginToWebMenu(__title__, self.action_open_chat) self.iface.addPluginToWebMenu(__title__, self.action_splash) self.iface.addPluginToWebMenu(__title__, self.action_settings) self.iface.addPluginToWebMenu(__title__, self.action_help) From e6a0c0d807561c5e4bf0386f9b2a94d9d8651493 Mon Sep 17 00:00:00 2001 From: "Julien M." Date: Wed, 24 Jul 2024 15:38:19 +0200 Subject: [PATCH 06/10] feature(gischat): add emoji picker --- qtribu/gui/dck_qchat.py | 25 +- qtribu/gui/dck_qchat.ui | 689 ++++++----- qtribu/gui/dlg_emoji_picker.py | 2115 ++++++++++++++++++++++++++++++++ 3 files changed, 2502 insertions(+), 327 deletions(-) create mode 100644 qtribu/gui/dlg_emoji_picker.py diff --git a/qtribu/gui/dck_qchat.py b/qtribu/gui/dck_qchat.py index 6323a0d5..772ee0ee 100644 --- a/qtribu/gui/dck_qchat.py +++ b/qtribu/gui/dck_qchat.py @@ -14,6 +14,7 @@ from qgis.PyQt.QtGui import QBrush, QColor, QCursor, QIcon from qgis.PyQt.QtWidgets import QAction, QMenu, QMessageBox, QTreeWidgetItem, QWidget +# plugin from qtribu.__about__ import __title__ from qtribu.constants import ( ADMIN_MESSAGES_AVATAR, @@ -27,10 +28,9 @@ INTERNAL_MESSAGE_AUTHOR, QCHAT_NICKNAME_MINLENGTH, ) +from qtribu.gui.dlg_emoji_picker import QEmojiPicker from qtribu.logic.qchat_client import QChatApiClient from qtribu.tasks.dizzy import DizzyTask - -# plugin from qtribu.toolbelt import PlgLogger, PlgOptionsManager from qtribu.toolbelt.commons import open_url_in_webviewer, play_resource_sound from qtribu.toolbelt.preferences import PlgSettingsStructure @@ -58,6 +58,14 @@ def __init__(self, iface: QgisInterface, parent: QWidget = None): self.task_manager = QgsApplication.taskManager() self.log = PlgLogger().log self.plg_settings = PlgOptionsManager() + self.emoji_picker = QEmojiPicker( + parent=self, + # this option can say how many emojis are in a row + items_per_row=8, + # with this enabled, the emoji search will be faster but less accurate + performance_search=True, + ) + uic.loadUi(Path(__file__).parent / f"{Path(__file__).stem}.ui", self) # rules and status signal listener @@ -114,6 +122,8 @@ def __init__(self, iface: QgisInterface, parent: QWidget = None): self.btn_send.setIcon( QIcon(QgsApplication.iconPath("mActionDoubleArrowRight.svg")) ) + # connect emojis picker + self.btn_emojis_picker.pressed.connect(self.on_emoji_picker_pressed) @property def settings(self) -> PlgSettingsStructure: @@ -625,6 +635,17 @@ def check_cheatcode(self, message: dict[str, str]) -> bool: return True return False + def on_emoji_picker_pressed(self) -> Optional[str]: + """Display the emoji picker and insert the selected one at the end of message line edit. + + :return: selected emoji + :rtype: str + """ + selected_emoji = self.emoji_picker.select() + self.lne_message.insert(selected_emoji) + + return selected_emoji + def on_renew_clicked(self) -> None: msg_box = QMessageBox() msg_box.setWindowTitle(self.tr("QGIS")) diff --git a/qtribu/gui/dck_qchat.ui b/qtribu/gui/dck_qchat.ui index 64362264..daaefa52 100644 --- a/qtribu/gui/dck_qchat.ui +++ b/qtribu/gui/dck_qchat.ui @@ -1,330 +1,369 @@ - QChatWidget - - - - 0 - 0 - 441 - 887 - - - - - 0 - 0 - - - - QChat - - - - - 0 - 0 - - - - - 5 - - - 5 - - - 10 - - - 5 - - - 10 - - - - - - 0 - 0 - - - - Instance - - - - - - - - PointingHandCursor - - - Rules - - - - - - - PointingHandCursor - - - Check instance status - - - Status - - - - - - - - - - - - - 0 - 0 - - - - Room - - - - - - Room: - - - - - - - - - - - - - 0 - 0 + QChatWidget + + + + 0 + 0 + 341 + 672 + + + + + 0 + 0 - - - PointingHandCursor - - - Connect - - - - - - - - - Status: - - - - - - - Not connected - - - - - - - - - - - 0 - 0 - - - - - 0 - 1 - - - - - 0 - 1 - - - - QChat - - - false - - - - - - true - - - false - - - true - - - 3 - - - true - - - 64 - - - - 1 - - - - - 2 - - - - - 3 - - - - - - - - PointingHandCursor - - - Clear - - - - - - - - - - false - - - - 0 - 0 - - - - - 0 - 3 - - - - - 0 - 5 - - - - User - - - - - - Nickname: - - - - - - - Message: - - - - - - - PointingHandCursor - - - Send message - - - - - - - ForbiddenCursor - - - Nickname set in QTribu's plugin settings - - - Nickname - - - - - - - - + + + QChat + + + + + 0 + 0 + + + + + 5 + + + 5 + + + 10 + + + 5 + + + 10 + + + + + + 0 + 0 + + + + Instance + + + + + + + + PointingHandCursor + + + Rules + + + + + + + PointingHandCursor + + + Check instance status + + + Status + + + + + + + + + + + + + 0 + 0 + + + + Room + + + + + + Room: + + + + + + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + Connect + + + + + + + + + Status: + + + + + + + Not connected + + + + + + + + + + + 0 + 0 + + + + + 0 + 1 + + + + + 0 + 1 + + + + QChat + + + false + + + + + + true + + + false + + + true + + + 4 + + + true + + + 64 + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + + + + PointingHandCursor + + + Clear + + + + + + + + + + false + + + + 0 + 0 + + + + + 0 + 3 + + + + + 0 + 5 + + + + User + + + + + + Nickname: + + + + + + + Message: + + + + + + + 255 + + + + + + + PointingHandCursor + + + Send message + + + + + + + ForbiddenCursor + + + Nickname set in QTribu's plugin settings + + + Nickname + + + + + + + + + + + + PointingHandCursor + + + Qt::NoFocus + + + Qt::NoContextMenu + + + Pick an emoji. Not sure it'll be properly rendered for every users, still it's a bit of un. + + + + + + ๐Ÿ˜€ + + + + + + + + + PointingHandCursor + + + Send message + + + + + + + + + + PointingHandCursor + + + Settings + + + + - - - - - - - - PointingHandCursor - - - Settings - - - - - - - - - QgsCollapsibleGroupBox - QGroupBox -
qgscollapsiblegroupbox.h
- 1 -
- - QgsFilterLineEdit - QLineEdit -
qgsfilterlineedit.h
-
-
- - grb_instance - grb_qchat - grb_user - - - + + + + QgsCollapsibleGroupBox + QGroupBox +
qgscollapsiblegroupbox.h
+ 1 +
+
+ + grb_instance + grb_qchat + grb_user + + +
diff --git a/qtribu/gui/dlg_emoji_picker.py b/qtribu/gui/dlg_emoji_picker.py new file mode 100644 index 00000000..da5fc02e --- /dev/null +++ b/qtribu/gui/dlg_emoji_picker.py @@ -0,0 +1,2115 @@ +import typing + +from qgis.PyQt import QtCore, QtGui +from qgis.PyQt.QtWidgets import ( + QDialog, + QGridLayout, + QGroupBox, + QHBoxLayout, + QLabel, + QLineEdit, + QPushButton, + QScrollArea, + QSizePolicy, + QSpacerItem, + QVBoxLayout, + QWidget, +) + + +class QEmojiPicker(QDialog): + """A simple emoji picker""" + + def __init__( + self, + parent: typing.Optional[QWidget] = None, + flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = None, + items_per_row=8, + performance_search=True, + ): + """ + Args: + parent: The parent window + flags: Qt flags + items_per_row: How many items per row should be displayed + performance_search: If True, the search input will display the emojis faster. See `self.on_input(...)` for more details + """ + if flags: + super().__init__(parent, flags) + else: + super().__init__(parent) + # initializes the ui + self.setupUi(self) + self.retranslateUi(self) + + self.items_per_row = items_per_row + self.performance_search = performance_search + + self.selected_emoji = None + + # connects `self.on_input(...)` whenever the search input text is changed + self.search_line_edit.textChanged.connect(self.on_input) + + # the emojis. a pretty long dict... + self.emojis = { + "Smileys & People": { + "๐Ÿ˜€": "Grinning Face", + "๐Ÿ˜ƒ": "Grinning Face with Big Eyes", + "๐Ÿ˜„": "Grinning Face with Smiling Eyes", + "๐Ÿ˜": "Beaming Face with Smiling Eyes", + "๐Ÿ˜†": "Grinning Squinting Face", + "๐Ÿ˜…": "Grinning Face with Sweat", + "๐Ÿคฃ": "Rolling on the Floor Laughing", + "๐Ÿ˜‚": "Face with Tears of Joy", + "๐Ÿ™‚": "Slightly Smiling Face", + "๐Ÿ™ƒ": "Upside-Down Face", + "๐Ÿ˜‰": "Winking Face", + "๐Ÿ˜Š": "Smiling Face with Smiling Eyes", + "๐Ÿ˜‡": "Smiling Face with Halo", + "๐Ÿฅฐ": "Smiling Face with Hearts", + "๐Ÿ˜": "Smiling Face with Heart-Eyes", + "๐Ÿคฉ": "Star-Struck", + "๐Ÿ˜˜": "Face Blowing a Kiss", + "๐Ÿ˜—": "Kissing Face", + "โ˜บ๏ธ": "Smiling Face", + "๐Ÿ˜š": "Kissing Face with Closed Eyes", + "๐Ÿ˜™": "Kissing Face with Smiling Eyes", + "๐Ÿฅฒ": "Smiling Face with Tear", + "๐Ÿ˜‹": "Face Savoring Food", + "๐Ÿ˜›": "Face with Tongue", + "๐Ÿ˜œ": "Winking Face with Tongue", + "๐Ÿคช": "Zany Face", + "๐Ÿ˜": "Squinting Face with Tongue", + "๐Ÿค‘": "Money-Mouth Face", + "๐Ÿค—": "Hugging Face", + "๐Ÿคญ": "Face with Hand Over Mouth", + "๐Ÿคซ": "Shushing Face", + "๐Ÿค”": "Thinking Face", + "๐Ÿค": "Zipper-Mouth Face", + "๐Ÿคจ": "Face with Raised Eyebrow", + "๐Ÿ˜": "Neutral Face", + "๐Ÿ˜‘": "Expressionless Face", + "๐Ÿ˜ถ": "Face Without Mouth", + "๐Ÿ˜": "Smirking Face", + "๐Ÿ˜’": "Unamused Face", + "๐Ÿ™„": "Face with Rolling Eyes", + "๐Ÿ˜ฌ": "Grimacing Face", + "๐Ÿคฅ": "Lying Face", + "๐Ÿ˜Œ": "Relieved Face", + "๐Ÿ˜”": "Pensive Face", + "๐Ÿ˜ช": "Sleepy Face", + "๐Ÿคค": "Drooling Face", + "๐Ÿ˜ด": "Sleeping Face", + "๐Ÿ˜ท": "Face with Medical Mask", + "๐Ÿค’": "Face with Thermometer", + "๐Ÿค•": "Face with Head-Bandage", + "๐Ÿคข": "Nauseated Face", + "๐Ÿคฎ": "Face Vomiting", + "๐Ÿคง": "Sneezing Face", + "๐Ÿฅต": "Hot Face", + "๐Ÿฅถ": "Cold Face", + "๐Ÿฅด": "Woozy Face", + "๐Ÿ˜ต": "Dizzy Face", + "๐Ÿคฏ": "Exploding Head", + "๐Ÿค ": "Cowboy Hat Face", + "๐Ÿฅณ": "Partying Face", + "๐Ÿฅธ": "Disguised Face", + "๐Ÿ˜Ž": "Smiling Face with Sunglasses", + "๐Ÿค“": "Nerd Face", + "๐Ÿง": "Face with Monocle", + "๐Ÿ˜•": "Confused Face", + "๐Ÿ˜Ÿ": "Worried Face", + "๐Ÿ™": "Slightly Frowning Face", + "โ˜น๏ธ": "Frowning Face", + "๐Ÿ˜ฎ": "Face with Open Mouth", + "๐Ÿ˜ฏ": "Hushed Face", + "๐Ÿ˜ฒ": "Astonished Face", + "๐Ÿ˜ณ": "Flushed Face", + "๐Ÿฅบ": "Pleading Face", + "๐Ÿ˜ฆ": "Frowning Face with Open Mouth", + "๐Ÿ˜ง": "Anguished Face", + "๐Ÿ˜จ": "Fearful Face", + "๐Ÿ˜ฐ": "Anxious Face with Sweat", + "๐Ÿ˜ฅ": "Sad but Relieved Face", + "๐Ÿ˜ข": "Crying Face", + "๐Ÿ˜ญ": "Loudly Crying Face", + "๐Ÿ˜ฑ": "Face Screaming in Fear", + "๐Ÿ˜–": "Confounded Face", + "๐Ÿ˜ฃ": "Persevering Face", + "๐Ÿ˜ž": "Disappointed Face", + "๐Ÿ˜“": "Downcast Face with Sweat", + "๐Ÿ˜ฉ": "Weary Face", + "๐Ÿ˜ซ": "Tired Face", + "๐Ÿฅฑ": "Yawning Face", + "๐Ÿ˜ค": "Face with Steam From Nose", + "๐Ÿ˜ก": "Pouting Face", + "๐Ÿ˜ ": "Angry Face", + "๐Ÿคฌ": "Face with Symbols on Mouth", + "๐Ÿ˜ˆ": "Smiling Face with Horns", + "๐Ÿ‘ฟ": "Angry Face with Horns", + "๐Ÿ’€": "Skull", + "โ˜ ๏ธ": "Skull and Crossbones", + "๐Ÿ’ฉ": "Pile of Poo", + "๐Ÿคก": "Clown Face", + "๐Ÿ‘น": "Ogre", + "๐Ÿ‘บ": "Goblin", + "๐Ÿ‘ป": "Ghost", + "๐Ÿ‘ฝ": "Alien", + "๐Ÿ‘พ": "Alien Monster", + "๐Ÿค–": "Robot", + "๐Ÿ˜บ": "Grinning Cat", + "๐Ÿ˜ธ": "Grinning Cat with Smiling Eyes", + "๐Ÿ˜น": "Cat with Tears of Joy", + "๐Ÿ˜ป": "Smiling Cat with Heart-Eyes", + "๐Ÿ˜ผ": "Cat with Wry Smile", + "๐Ÿ˜ฝ": "Kissing Cat", + "๐Ÿ™€": "Weary Cat", + "๐Ÿ˜ฟ": "Crying Cat", + "๐Ÿ˜พ": "Pouting Cat", + "๐Ÿ’‹": "Kiss Mark", + "๐Ÿ‘‹": "Waving Hand", + "๐Ÿคš": "Raised Back of Hand", + "๐Ÿ–๏ธ": "Hand with Fingers Splayed", + "โœ‹": "Raised Hand", + "๐Ÿ––": "Vulcan Salute", + "๐Ÿ‘Œ": "OK Hand", + "๐ŸคŒ": "Pinched Fingers", + "๐Ÿค": "Pinching Hand", + "โœŒ๏ธ": "Victory Hand", + "๐Ÿคž": "Crossed Fingers", + "๐ŸคŸ": "Love-You Gesture", + "๐Ÿค˜": "Sign of the Horns", + "๐Ÿค™": "Call Me Hand", + "๐Ÿ‘ˆ": "Backhand Index Pointing Left", + "๐Ÿ‘‰": "Backhand Index Pointing Right", + "๐Ÿ‘†": "Backhand Index Pointing Up", + "๐Ÿ–•": "Middle Finger", + "๐Ÿ‘‡": "Backhand Index Pointing Down", + "โ˜๏ธ": "Index Pointing Up", + "๐Ÿ‘": "Thumbs Up", + "๐Ÿ‘Ž": "Thumbs Down", + "โœŠ": "Raised Fist", + "๐Ÿ‘Š": "Oncoming Fist", + "๐Ÿค›": "Left-Facing Fist", + "๐Ÿคœ": "Right-Facing Fist", + "๐Ÿ‘": "Clapping Hands", + "๐Ÿ™Œ": "Raising Hands", + "๐Ÿ‘": "Open Hands", + "๐Ÿคฒ": "Palms Up Together", + "๐Ÿค": "Handshake", + "๐Ÿ™": "Folded Hands", + "โœ๏ธ": "Writing Hand", + "๐Ÿ’…": "Nail Polish", + "๐Ÿคณ": "Selfie", + "๐Ÿ’ช": "Flexed Biceps", + "๐Ÿฆพ": "Mechanical Arm", + "๐Ÿฆฟ": "Mechanical Leg", + "๐Ÿฆต": "Leg", + "๐Ÿฆถ": "Foot", + "๐Ÿ‘‚": "Ear", + "๐Ÿฆป": "Ear with Hearing Aid", + "๐Ÿ‘ƒ": "Nose", + "๐Ÿง ": "Brain", + "๐Ÿซ€": "Anatomical Heart", + "๐Ÿซ": "Lungs", + "๐Ÿฆท": "Tooth", + "๐Ÿฆด": "Bone", + "๐Ÿ‘€": "Eyes", + "๐Ÿ‘๏ธ": "Eye", + "๐Ÿ‘…": "Tongue", + "๐Ÿ‘„": "Mouth", + "๐Ÿ‘ถ": "Baby", + "๐Ÿง’": "Child", + "๐Ÿ‘ฆ": "Boy", + "๐Ÿ‘ง": "Girl", + "๐Ÿง‘": "Person", + "๐Ÿ‘ฑ": "Person: Blond Hair", + "๐Ÿ‘จ": "Man", + "๐Ÿง”": "Person: Beard", + "๐Ÿ‘จโ€๐Ÿฆฐ": "Man: Red Hair", + "๐Ÿ‘จโ€๐Ÿฆฑ": "Man: Curly Hair", + "๐Ÿ‘จโ€๐Ÿฆณ": "Man: White Hair", + "๐Ÿ‘จโ€๐Ÿฆฒ": "Man: Bald", + "๐Ÿ‘ฉ": "Woman", + "๐Ÿ‘ฉโ€๐Ÿฆฐ": "Woman: Red Hair", + "๐Ÿง‘โ€๐Ÿฆฐ": "Person: Red Hair", + "๐Ÿ‘ฉโ€๐Ÿฆฑ": "Woman: Curly Hair", + "๐Ÿง‘โ€๐Ÿฆฑ": "Person: Curly Hair", + "๐Ÿ‘ฉโ€๐Ÿฆณ": "Woman: White Hair", + "๐Ÿง‘โ€๐Ÿฆณ": "Person: White Hair", + "๐Ÿ‘ฉโ€๐Ÿฆฒ": "Woman: Bald", + "๐Ÿง‘โ€๐Ÿฆฒ": "Person: Bald", + "๐Ÿ‘ฑโ€โ™€๏ธ": "Woman: Blond Hair", + "๐Ÿ‘ฑโ€โ™‚๏ธ": "Man: Blond Hair", + "๐Ÿง“": "Older Person", + "๐Ÿ‘ด": "Old Man", + "๐Ÿ‘ต": "Old Woman", + "๐Ÿ™": "Person Frowning", + "๐Ÿ™โ€โ™‚๏ธ": "Man Frowning", + "๐Ÿ™โ€โ™€๏ธ": "Woman Frowning", + "๐Ÿ™Ž": "Person Pouting", + "๐Ÿ™Žโ€โ™‚๏ธ": "Man Pouting", + "๐Ÿ™Žโ€โ™€๏ธ": "Woman Pouting", + "๐Ÿ™…": "Person Gesturing No", + "๐Ÿ™…โ€โ™‚๏ธ": "Man Gesturing No", + "๐Ÿ™…โ€โ™€๏ธ": "Woman Gesturing No", + "๐Ÿ™†": "Person Gesturing OK", + "๐Ÿ™†โ€โ™‚๏ธ": "Man Gesturing OK", + "๐Ÿ™†โ€โ™€๏ธ": "Woman Gesturing OK", + "๐Ÿ’": "Person Tipping Hand", + "๐Ÿ’โ€โ™‚๏ธ": "Man Tipping Hand", + "๐Ÿ’โ€โ™€๏ธ": "Woman Tipping Hand", + "๐Ÿ™‹": "Person Raising Hand", + "๐Ÿ™‹โ€โ™‚๏ธ": "Man Raising Hand", + "๐Ÿ™‹โ€โ™€๏ธ": "Woman Raising Hand", + "๐Ÿง": "Deaf Person", + "๐Ÿงโ€โ™‚๏ธ": "Deaf Man", + "๐Ÿงโ€โ™€๏ธ": "Deaf Woman", + "๐Ÿ™‡": "Person Bowing", + "๐Ÿ™‡โ€โ™‚๏ธ": "Man Bowing", + "๐Ÿ™‡โ€โ™€๏ธ": "Woman Bowing", + "๐Ÿคฆ": "Person Facepalming", + "๐Ÿคฆโ€โ™‚๏ธ": "Man Facepalming", + "๐Ÿคฆโ€โ™€๏ธ": "Woman Facepalming", + "๐Ÿคท": "Person Shrugging", + "๐Ÿคทโ€โ™‚๏ธ": "Man Shrugging", + "๐Ÿคทโ€โ™€๏ธ": "Woman Shrugging", + "๐Ÿง‘โ€โš•๏ธ": "Health Worker", + "๐Ÿ‘จโ€โš•๏ธ": "Man Health Worker", + "๐Ÿ‘ฉโ€โš•๏ธ": "Woman Health Worker", + "๐Ÿง‘โ€๐ŸŽ“": "Student", + "๐Ÿ‘จโ€๐ŸŽ“": "Man Student", + "๐Ÿ‘ฉโ€๐ŸŽ“": "Woman Student", + "๐Ÿง‘โ€๐Ÿซ": "Teacher", + "๐Ÿ‘จโ€๐Ÿซ": "Man Teacher", + "๐Ÿ‘ฉโ€๐Ÿซ": "Woman Teacher", + "๐Ÿง‘โ€โš–๏ธ": "Judge", + "๐Ÿ‘จโ€โš–๏ธ": "Man Judge", + "๐Ÿ‘ฉโ€โš–๏ธ": "Woman Judge", + "๐Ÿง‘โ€๐ŸŒพ": "Farmer", + "๐Ÿ‘จโ€๐ŸŒพ": "Man Farmer", + "๐Ÿ‘ฉโ€๐ŸŒพ": "Woman Farmer", + "๐Ÿง‘โ€๐Ÿณ": "Cook", + "๐Ÿ‘จโ€๐Ÿณ": "Man Cook", + "๐Ÿ‘ฉโ€๐Ÿณ": "Woman Cook", + "๐Ÿง‘โ€๐Ÿ”ง": "Mechanic", + "๐Ÿ‘จโ€๐Ÿ”ง": "Man Mechanic", + "๐Ÿ‘ฉโ€๐Ÿ”ง": "Woman Mechanic", + "๐Ÿง‘โ€๐Ÿญ": "Factory Worker", + "๐Ÿ‘จโ€๐Ÿญ": "Man Factory Worker", + "๐Ÿ‘ฉโ€๐Ÿญ": "Woman Factory Worker", + "๐Ÿง‘โ€๐Ÿ’ผ": "Office Worker", + "๐Ÿ‘จโ€๐Ÿ’ผ": "Man Office Worker", + "๐Ÿ‘ฉโ€๐Ÿ’ผ": "Woman Office Worker", + "๐Ÿง‘โ€๐Ÿ”ฌ": "Scientist", + "๐Ÿ‘จโ€๐Ÿ”ฌ": "Man Scientist", + "๐Ÿ‘ฉโ€๐Ÿ”ฌ": "Woman Scientist", + "๐Ÿง‘โ€๐Ÿ’ป": "Technologist", + "๐Ÿ‘จโ€๐Ÿ’ป": "Man Technologist", + "๐Ÿ‘ฉโ€๐Ÿ’ป": "Woman Technologist", + "๐Ÿง‘โ€๐ŸŽค": "Singer", + "๐Ÿ‘จโ€๐ŸŽค": "Man Singer", + "๐Ÿ‘ฉโ€๐ŸŽค": "Woman Singer", + "๐Ÿง‘โ€๐ŸŽจ": "Artist", + "๐Ÿ‘จโ€๐ŸŽจ": "Man Artist", + "๐Ÿ‘ฉโ€๐ŸŽจ": "Woman Artist", + "๐Ÿง‘โ€โœˆ๏ธ": "Pilot", + "๐Ÿ‘จโ€โœˆ๏ธ": "Man Pilot", + "๐Ÿ‘ฉโ€โœˆ๏ธ": "Woman Pilot", + "๐Ÿง‘โ€๐Ÿš€": "Astronaut", + "๐Ÿ‘จโ€๐Ÿš€": "Man Astronaut", + "๐Ÿ‘ฉโ€๐Ÿš€": "Woman Astronaut", + "๐Ÿง‘โ€๐Ÿš’": "Firefighter", + "๐Ÿ‘จโ€๐Ÿš’": "Man Firefighter", + "๐Ÿ‘ฉโ€๐Ÿš’": "Woman Firefighter", + "๐Ÿ‘ฎ": "Police Officer", + "๐Ÿ‘ฎโ€โ™‚๏ธ": "Man Police Officer", + "๐Ÿ‘ฎโ€โ™€๏ธ": "Woman Police Officer", + "๐Ÿ•ต๏ธ": "Detective", + "๐Ÿ•ต๏ธโ€โ™‚๏ธ": "Man Detective", + "๐Ÿ•ต๏ธโ€โ™€๏ธ": "Woman Detective", + "๐Ÿ’‚": "Guard", + "๐Ÿ’‚โ€โ™‚๏ธ": "Man Guard", + "๐Ÿ’‚โ€โ™€๏ธ": "Woman Guard", + "๐Ÿฅท": "Ninja", + "๐Ÿ‘ท": "Construction Worker", + "๐Ÿ‘ทโ€โ™‚๏ธ": "Man Construction Worker", + "๐Ÿ‘ทโ€โ™€๏ธ": "Woman Construction Worker", + "๐Ÿคด": "Prince", + "๐Ÿ‘ธ": "Princess", + "๐Ÿ‘ณ": "Person Wearing Turban", + "๐Ÿ‘ณโ€โ™‚๏ธ": "Man Wearing Turban", + "๐Ÿ‘ณโ€โ™€๏ธ": "Woman Wearing Turban", + "๐Ÿ‘ฒ": "Person With Skullcap", + "๐Ÿง•": "Woman with Headscarf", + "๐Ÿคต": "Person in Tuxedo", + "๐Ÿคตโ€โ™‚๏ธ": "Man in Tuxedo", + "๐Ÿคตโ€โ™€๏ธ": "Woman in Tuxedo", + "๐Ÿ‘ฐ": "Person With Veil", + "๐Ÿ‘ฐโ€โ™‚๏ธ": "Man with Veil", + "๐Ÿ‘ฐโ€โ™€๏ธ": "Woman with Veil", + "๐Ÿคฐ": "Pregnant Woman", + "๐Ÿคฑ": "Breast-Feeding", + "๐Ÿ‘ฉโ€๐Ÿผ": "Woman Feeding Baby", + "๐Ÿ‘จโ€๐Ÿผ": "Man Feeding Baby", + "๐Ÿง‘โ€๐Ÿผ": "Person Feeding Baby", + "๐Ÿ‘ผ": "Baby Angel", + "๐ŸŽ…": "Santa Claus", + "๐Ÿคถ": "Mrs. Claus", + "๐Ÿง‘โ€๐ŸŽ„": "Mx Claus", + "๐Ÿฆธ": "Superhero", + "๐Ÿฆธโ€โ™‚๏ธ": "Man Superhero", + "๐Ÿฆธโ€โ™€๏ธ": "Woman Superhero", + "๐Ÿฆน": "Supervillain", + "๐Ÿฆนโ€โ™‚๏ธ": "Man Supervillain", + "๐Ÿฆนโ€โ™€๏ธ": "Woman Supervillain", + "๐Ÿง™": "Mage", + "๐Ÿง™โ€โ™‚๏ธ": "Man Mage", + "๐Ÿง™โ€โ™€๏ธ": "Woman Mage", + "๐Ÿงš": "Fairy", + "๐Ÿงšโ€โ™‚๏ธ": "Man Fairy", + "๐Ÿงšโ€โ™€๏ธ": "Woman Fairy", + "๐Ÿง›": "Vampire", + "๐Ÿง›โ€โ™‚๏ธ": "Man Vampire", + "๐Ÿง›โ€โ™€๏ธ": "Woman Vampire", + "๐Ÿงœ": "Merperson", + "๐Ÿงœโ€โ™‚๏ธ": "Merman", + "๐Ÿงœโ€โ™€๏ธ": "Mermaid", + "๐Ÿง": "Elf", + "๐Ÿงโ€โ™‚๏ธ": "Man Elf", + "๐Ÿงโ€โ™€๏ธ": "Woman Elf", + "๐Ÿงž": "Genie", + "๐Ÿงžโ€โ™‚๏ธ": "Man Genie", + "๐Ÿงžโ€โ™€๏ธ": "Woman Genie", + "๐ŸงŸ": "Zombie", + "๐ŸงŸโ€โ™‚๏ธ": "Man Zombie", + "๐ŸงŸโ€โ™€๏ธ": "Woman Zombie", + "๐Ÿ’†": "Person Getting Massage", + "๐Ÿ’†โ€โ™‚๏ธ": "Man Getting Massage", + "๐Ÿ’†โ€โ™€๏ธ": "Woman Getting Massage", + "๐Ÿ’‡": "Person Getting Haircut", + "๐Ÿ’‡โ€โ™‚๏ธ": "Man Getting Haircut", + "๐Ÿ’‡โ€โ™€๏ธ": "Woman Getting Haircut", + "๐Ÿšถ": "Person Walking", + "๐Ÿšถโ€โ™‚๏ธ": "Man Walking", + "๐Ÿšถโ€โ™€๏ธ": "Woman Walking", + "๐Ÿง": "Person Standing", + "๐Ÿงโ€โ™‚๏ธ": "Man Standing", + "๐Ÿงโ€โ™€๏ธ": "Woman Standing", + "๐ŸงŽ": "Person Kneeling", + "๐ŸงŽโ€โ™‚๏ธ": "Man Kneeling", + "๐ŸงŽโ€โ™€๏ธ": "Woman Kneeling", + "๐Ÿง‘โ€๐Ÿฆฏ": "Person with White Cane", + "๐Ÿ‘จโ€๐Ÿฆฏ": "Man with White Cane", + "๐Ÿ‘ฉโ€๐Ÿฆฏ": "Woman with White Cane", + "๐Ÿง‘โ€๐Ÿฆผ": "Person in Motorized Wheelchair", + "๐Ÿ‘จโ€๐Ÿฆผ": "Man in Motorized Wheelchair", + "๐Ÿ‘ฉโ€๐Ÿฆผ": "Woman in Motorized Wheelchair", + "๐Ÿง‘โ€๐Ÿฆฝ": "Person in Manual Wheelchair", + "๐Ÿ‘จโ€๐Ÿฆฝ": "Man in Manual Wheelchair", + "๐Ÿ‘ฉโ€๐Ÿฆฝ": "Woman in Manual Wheelchair", + "๐Ÿƒ": "Person Running", + "๐Ÿƒโ€โ™‚๏ธ": "Man Running", + "๐Ÿƒโ€โ™€๏ธ": "Woman Running", + "๐Ÿ’ƒ": "Woman Dancing", + "๐Ÿ•บ": "Man Dancing", + "๐Ÿ•ด๏ธ": "Person in Suit Levitating", + "๐Ÿ‘ฏ": "People with Bunny Ears", + "๐Ÿ‘ฏโ€โ™‚๏ธ": "Men with Bunny Ears", + "๐Ÿ‘ฏโ€โ™€๏ธ": "Women with Bunny Ears", + "๐Ÿง–": "Person in Steamy Room", + "๐Ÿง–โ€โ™‚๏ธ": "Man in Steamy Room", + "๐Ÿง–โ€โ™€๏ธ": "Woman in Steamy Room", + "๐Ÿง˜": "Person in Lotus Position", + "๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘": "People Holding Hands", + "๐Ÿ‘ญ": "Women Holding Hands", + "๐Ÿ‘ซ": "Woman and Man Holding Hands", + "๐Ÿ‘ฌ": "Men Holding Hands", + "๐Ÿ’": "Kiss", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ": "Kiss: Woman, Man", + "๐Ÿ‘จโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ": "Kiss: Man, Man", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ": "Kiss: Woman, Woman", + "๐Ÿ’‘": "Couple with Heart", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ": "Couple with Heart: Woman, Man", + "๐Ÿ‘จโ€โค๏ธโ€๐Ÿ‘จ": "Couple with Heart: Man, Man", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ": "Couple with Heart: Woman, Woman", + "๐Ÿ‘ช": "Family", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Man, Woman, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Man, Woman, Girl", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Woman, Girl, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Woman, Boy, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Woman, Girl, Girl", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆ": "Family: Man, Man, Boy", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง": "Family: Man, Man, Girl", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Man, Girl, Boy", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Man, Boy, Boy", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Man, Girl, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Woman, Woman, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Girl, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Boy, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Woman, Woman, Girl, Girl", + "๐Ÿ‘จโ€๐Ÿ‘ฆ": "Family: Man, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Boy, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ง": "Family: Man, Girl", + "๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Girl, Boy", + "๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Girl, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Woman, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Woman, Boy, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Woman, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Woman, Girl, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Woman, Girl, Girl", + "๐Ÿ—ฃ๏ธ": "Speaking Head", + "๐Ÿ‘ค": "Bust in Silhouette", + "๐Ÿ‘ฅ": "Busts in Silhouette", + "๐Ÿซ‚": "People Hugging", + "๐Ÿ‘ฃ": "Footprints", + "๐Ÿงณ": "Luggage", + "๐ŸŒ‚": "Closed Umbrella", + "โ˜‚๏ธ": "Umbrella", + "๐ŸŽƒ": "Jack-O-Lantern", + "๐Ÿงต": "Thread", + "๐Ÿงถ": "Yarn", + "๐Ÿ‘“": "Glasses", + "๐Ÿ•ถ๏ธ": "Sunglasses", + "๐Ÿฅฝ": "Goggles", + "๐Ÿฅผ": "Lab Coat", + "๐Ÿฆบ": "Safety Vest", + "๐Ÿ‘”": "Necktie", + "๐Ÿ‘•": "T-Shirt", + "๐Ÿ‘–": "Jeans", + "๐Ÿงฃ": "Scarf", + "๐Ÿงค": "Gloves", + "๐Ÿงฅ": "Coat", + "๐Ÿงฆ": "Socks", + "๐Ÿ‘—": "Dress", + "๐Ÿ‘˜": "Kimono", + "๐Ÿฅป": "Sari", + "๐Ÿฉฑ": "One-Piece Swimsuit", + "๐Ÿฉฒ": "Briefs", + "๐Ÿฉณ": "Shorts", + "๐Ÿ‘™": "Bikini", + "๐Ÿ‘š": "Womanโ€™s Clothes", + "๐Ÿ‘›": "Purse", + "๐Ÿ‘œ": "Handbag", + "๐Ÿ‘": "Clutch Bag", + "๐ŸŽ’": "Backpack", + "๐Ÿฉด": "Thong Sandal", + "๐Ÿ‘ž": "Manโ€™s Shoe", + "๐Ÿ‘Ÿ": "Running Shoe", + "๐Ÿฅพ": "Hiking Boot", + "๐Ÿฅฟ": "Flat Shoe", + "๐Ÿ‘ ": "High-Heeled Shoe", + "๐Ÿ‘ก": "Womanโ€™s Sandal", + "๐Ÿฉฐ": "Ballet Shoes", + "๐Ÿ‘ข": "Womanโ€™s Boot", + "๐Ÿ‘‘": "Crown", + "๐Ÿ‘’": "Womanโ€™s Hat", + "๐ŸŽฉ": "Top Hat", + "๐ŸŽ“": "Graduation Cap", + "๐Ÿงข": "Billed Cap", + "๐Ÿช–": "Military Helmet", + "โ›‘๏ธ": "Rescue Workerโ€™s Helmet", + "๐Ÿ’„": "Lipstick", + "๐Ÿ’": "Ring", + "๐Ÿ’ผ": "Briefcase", + "๐Ÿฉธ": "Drop of Blood", + "๐Ÿ˜ฎโ€๐Ÿ’จ": "Face Exhaling", + "๐Ÿ˜ตโ€๐Ÿ’ซ": "Face with Spiral Eyes", + "๐Ÿ˜ถโ€๐ŸŒซ๏ธ": "Face in Clouds", + }, + "Animals & Nature": { + "๐Ÿ™ˆ": "See-No-Evil Monkey", + "๐Ÿ™‰": "Hear-No-Evil Monkey", + "๐Ÿ™Š": "Speak-No-Evil Monkey", + "๐Ÿ’ฅ": "Collision", + "๐Ÿ’ซ": "Dizzy", + "๐Ÿ’ฆ": "Sweat Droplets", + "๐Ÿ’จ": "Dashing Away", + "๐Ÿต": "Monkey Face", + "๐Ÿ’": "Monkey", + "๐Ÿฆ": "Gorilla", + "๐Ÿฆง": "Orangutan", + "๐Ÿถ": "Dog Face", + "๐Ÿ•": "Dog", + "๐Ÿฆฎ": "Guide Dog", + "๐Ÿ•โ€๐Ÿฆบ": "Service Dog", + "๐Ÿฉ": "Poodle", + "๐Ÿบ": "Wolf", + "๐ŸฆŠ": "Fox", + "๐Ÿฆ": "Raccoon", + "๐Ÿฑ": "Cat Face", + "๐Ÿˆ": "Cat", + "๐Ÿˆโ€โฌ›": "Black Cat", + "๐Ÿฆ": "Lion", + "๐Ÿฏ": "Tiger Face", + "๐Ÿ…": "Tiger", + "๐Ÿ†": "Leopard", + "๐Ÿด": "Horse Face", + "๐ŸŽ": "Horse", + "๐Ÿฆ„": "Unicorn", + "๐Ÿฆ“": "Zebra", + "๐ŸฆŒ": "Deer", + "๐Ÿฆฌ": "Bison", + "๐Ÿฎ": "Cow Face", + "๐Ÿ‚": "Ox", + "๐Ÿƒ": "Water Buffalo", + "๐Ÿ„": "Cow", + "๐Ÿท": "Pig Face", + "๐Ÿ–": "Pig", + "๐Ÿ—": "Boar", + "๐Ÿฝ": "Pig Nose", + "๐Ÿ": "Ram", + "๐Ÿ‘": "Ewe", + "๐Ÿ": "Goat", + "๐Ÿช": "Camel", + "๐Ÿซ": "Two-Hump Camel", + "๐Ÿฆ™": "Llama", + "๐Ÿฆ’": "Giraffe", + "๐Ÿ˜": "Elephant", + "๐Ÿฆฃ": "Mammoth", + "๐Ÿฆ": "Rhinoceros", + "๐Ÿฆ›": "Hippopotamus", + "๐Ÿญ": "Mouse Face", + "๐Ÿ": "Mouse", + "๐Ÿ€": "Rat", + "๐Ÿน": "Hamster", + "๐Ÿฐ": "Rabbit Face", + "๐Ÿ‡": "Rabbit", + "๐Ÿฟ๏ธ": "Chipmunk", + "๐Ÿฆซ": "Beaver", + "๐Ÿฆ”": "Hedgehog", + "๐Ÿฆ‡": "Bat", + "๐Ÿป": "Bear", + "๐Ÿปโ€โ„๏ธ": "Polar Bear", + "๐Ÿจ": "Koala", + "๐Ÿผ": "Panda", + "๐Ÿฆฅ": "Sloth", + "๐Ÿฆฆ": "Otter", + "๐Ÿฆจ": "Skunk", + "๐Ÿฆ˜": "Kangaroo", + "๐Ÿฆก": "Badger", + "๐Ÿพ": "Paw Prints", + "๐Ÿฆƒ": "Turkey", + "๐Ÿ”": "Chicken", + "๐Ÿ“": "Rooster", + "๐Ÿฃ": "Hatching Chick", + "๐Ÿค": "Baby Chick", + "๐Ÿฅ": "Front-Facing Baby Chick", + "๐Ÿฆ": "Bird", + "๐Ÿง": "Penguin", + "๐Ÿ•Š๏ธ": "Dove", + "๐Ÿฆ…": "Eagle", + "๐Ÿฆ†": "Duck", + "๐Ÿฆข": "Swan", + "๐Ÿฆ‰": "Owl", + "๐Ÿฆค": "Dodo", + "๐Ÿชถ": "Feather", + "๐Ÿฆฉ": "Flamingo", + "๐Ÿฆš": "Peacock", + "๐Ÿฆœ": "Parrot", + "๐Ÿธ": "Frog", + "๐ŸŠ": "Crocodile", + "๐Ÿข": "Turtle", + "๐ŸฆŽ": "Lizard", + "๐Ÿ": "Snake", + "๐Ÿฒ": "Dragon Face", + "๐Ÿ‰": "Dragon", + "๐Ÿฆ•": "Sauropod", + "๐Ÿฆ–": "T-Rex", + "๐Ÿณ": "Spouting Whale", + "๐Ÿ‹": "Whale", + "๐Ÿฌ": "Dolphin", + "๐Ÿฆญ": "Seal", + "๐ŸŸ": "Fish", + "๐Ÿ ": "Tropical Fish", + "๐Ÿก": "Blowfish", + "๐Ÿฆˆ": "Shark", + "๐Ÿ™": "Octopus", + "๐Ÿš": "Spiral Shell", + "๐ŸŒ": "Snail", + "๐Ÿฆ‹": "Butterfly", + "๐Ÿ›": "Bug", + "๐Ÿœ": "Ant", + "๐Ÿ": "Honeybee", + "๐Ÿชฒ": "Beetle", + "๐Ÿž": "Lady Beetle", + "๐Ÿฆ—": "Cricket", + "๐Ÿชณ": "Cockroach", + "๐Ÿ•ท๏ธ": "Spider", + "๐Ÿ•ธ๏ธ": "Spider Web", + "๐Ÿฆ‚": "Scorpion", + "๐ŸฆŸ": "Mosquito", + "๐Ÿชฐ": "Fly", + "๐Ÿชฑ": "Worm", + "๐Ÿฆ ": "Microbe", + "๐Ÿ’": "Bouquet", + "๐ŸŒธ": "Cherry Blossom", + "๐Ÿ’ฎ": "White Flower", + "๐Ÿต๏ธ": "Rosette", + "๐ŸŒน": "Rose", + "๐Ÿฅ€": "Wilted Flower", + "๐ŸŒบ": "Hibiscus", + "๐ŸŒป": "Sunflower", + "๐ŸŒผ": "Blossom", + "๐ŸŒท": "Tulip", + "๐ŸŒฑ": "Seedling", + "๐Ÿชด": "Potted Plant", + "๐ŸŒฒ": "Evergreen Tree", + "๐ŸŒณ": "Deciduous Tree", + "๐ŸŒด": "Palm Tree", + "๐ŸŒต": "Cactus", + "๐ŸŒพ": "Sheaf of Rice", + "๐ŸŒฟ": "Herb", + "โ˜˜๏ธ": "Shamrock", + "๐Ÿ€": "Four Leaf Clover", + "๐Ÿ": "Maple Leaf", + "๐Ÿ‚": "Fallen Leaf", + "๐Ÿƒ": "Leaf Fluttering in Wind", + "๐Ÿ„": "Mushroom", + "๐ŸŒฐ": "Chestnut", + "๐Ÿฆ€": "Crab", + "๐Ÿฆž": "Lobster", + "๐Ÿฆ": "Shrimp", + "๐Ÿฆ‘": "Squid", + "๐ŸŒ": "Globe Showing Europe-Africa", + "๐ŸŒŽ": "Globe Showing Americas", + "๐ŸŒ": "Globe Showing Asia-Australia", + "๐ŸŒ": "Globe with Meridians", + "๐Ÿชจ": "Rock", + "๐ŸŒ‘": "New Moon", + "๐ŸŒ’": "Waxing Crescent Moon", + "๐ŸŒ“": "First Quarter Moon", + "๐ŸŒ”": "Waxing Gibbous Moon", + "๐ŸŒ•": "Full Moon", + "๐ŸŒ–": "Waning Gibbous Moon", + "๐ŸŒ—": "Last Quarter Moon", + "๐ŸŒ˜": "Waning Crescent Moon", + "๐ŸŒ™": "Crescent Moon", + "๐ŸŒš": "New Moon Face", + "๐ŸŒ›": "First Quarter Moon Face", + "๐ŸŒœ": "Last Quarter Moon Face", + "โ˜€๏ธ": "Sun", + "๐ŸŒ": "Full Moon Face", + "๐ŸŒž": "Sun with Face", + "โญ": "Star", + "๐ŸŒŸ": "Glowing Star", + "๐ŸŒ ": "Shooting Star", + "โ˜๏ธ": "Cloud", + "โ›…": "Sun Behind Cloud", + "โ›ˆ๏ธ": "Cloud with Lightning and Rain", + "๐ŸŒค๏ธ": "Sun Behind Small Cloud", + "๐ŸŒฅ๏ธ": "Sun Behind Large Cloud", + "๐ŸŒฆ๏ธ": "Sun Behind Rain Cloud", + "๐ŸŒง๏ธ": "Cloud with Rain", + "๐ŸŒจ๏ธ": "Cloud with Snow", + "๐ŸŒฉ๏ธ": "Cloud with Lightning", + "๐ŸŒช๏ธ": "Tornado", + "๐ŸŒซ๏ธ": "Fog", + "๐ŸŒฌ๏ธ": "Wind Face", + "๐ŸŒˆ": "Rainbow", + "โ˜‚๏ธ": "Umbrella", + "โ˜”": "Umbrella with Rain Drops", + "โšก": "High Voltage", + "โ„๏ธ": "Snowflake", + "โ˜ƒ๏ธ": "Snowman", + "โ›„": "Snowman Without Snow", + "โ˜„๏ธ": "Comet", + "๐Ÿ”ฅ": "Fire", + "๐Ÿ’ง": "Droplet", + "๐ŸŒŠ": "Water Wave", + "๐ŸŽ„": "Christmas Tree", + "โœจ": "Sparkles", + "๐ŸŽ‹": "Tanabata Tree", + "๐ŸŽ": "Pine Decoration", + }, + "Food & Drink": { + "๐Ÿ‡": "Grapes", + "๐Ÿˆ": "Melon", + "๐Ÿ‰": "Watermelon", + "๐ŸŠ": "Tangerine", + "๐Ÿ‹": "Lemon", + "๐ŸŒ": "Banana", + "๐Ÿ": "Pineapple", + "๐Ÿฅญ": "Mango", + "๐ŸŽ": "Red Apple", + "๐Ÿ": "Green Apple", + "๐Ÿ": "Pear", + "๐Ÿ‘": "Peach", + "๐Ÿ’": "Cherries", + "๐Ÿ“": "Strawberry", + "๐Ÿซ": "Blueberries", + "๐Ÿฅ": "Kiwi Fruit", + "๐Ÿ…": "Tomato", + "๐Ÿซ’": "Olive", + "๐Ÿฅฅ": "Coconut", + "๐Ÿฅ‘": "Avocado", + "๐Ÿ†": "Eggplant", + "๐Ÿฅ”": "Potato", + "๐Ÿฅ•": "Carrot", + "๐ŸŒฝ": "Ear of Corn", + "๐ŸŒถ๏ธ": "Hot Pepper", + "๐Ÿซ‘": "Bell Pepper", + "๐Ÿฅ’": "Cucumber", + "๐Ÿฅฌ": "Leafy Green", + "๐Ÿฅฆ": "Broccoli", + "๐Ÿง„": "Garlic", + "๐Ÿง…": "Onion", + "๐Ÿ„": "Mushroom", + "๐Ÿฅœ": "Peanuts", + "๐ŸŒฐ": "Chestnut", + "๐Ÿž": "Bread", + "๐Ÿฅ": "Croissant", + "๐Ÿฅ–": "Baguette Bread", + "๐Ÿซ“": "Flatbread", + "๐Ÿฅจ": "Pretzel", + "๐Ÿฅฏ": "Bagel", + "๐Ÿฅž": "Pancakes", + "๐Ÿง‡": "Waffle", + "๐Ÿง€": "Cheese Wedge", + "๐Ÿ–": "Meat on Bone", + "๐Ÿ—": "Poultry Leg", + "๐Ÿฅฉ": "Cut of Meat", + "๐Ÿฅ“": "Bacon", + "๐Ÿ”": "Hamburger", + "๐ŸŸ": "French Fries", + "๐Ÿ•": "Pizza", + "๐ŸŒญ": "Hot Dog", + "๐Ÿฅช": "Sandwich", + "๐ŸŒฎ": "Taco", + "๐ŸŒฏ": "Burrito", + "๐Ÿซ”": "Tamale", + "๐Ÿฅ™": "Stuffed Flatbread", + "๐Ÿง†": "Falafel", + "๐Ÿฅš": "Egg", + "๐Ÿณ": "Cooking", + "๐Ÿฅ˜": "Shallow Pan of Food", + "๐Ÿฒ": "Pot of Food", + "๐Ÿซ•": "Fondue", + "๐Ÿฅฃ": "Bowl with Spoon", + "๐Ÿฅ—": "Green Salad", + "๐Ÿฟ": "Popcorn", + "๐Ÿงˆ": "Butter", + "๐Ÿง‚": "Salt", + "๐Ÿฅซ": "Canned Food", + "๐Ÿฑ": "Bento Box", + "๐Ÿ˜": "Rice Cracker", + "๐Ÿ™": "Rice Ball", + "๐Ÿš": "Cooked Rice", + "๐Ÿ›": "Curry Rice", + "๐Ÿœ": "Steaming Bowl", + "๐Ÿ": "Spaghetti", + "๐Ÿ ": "Roasted Sweet Potato", + "๐Ÿข": "Oden", + "๐Ÿฃ": "Sushi", + "๐Ÿค": "Fried Shrimp", + "๐Ÿฅ": "Fish Cake with Swirl", + "๐Ÿฅฎ": "Moon Cake", + "๐Ÿก": "Dango", + "๐ŸฅŸ": "Dumpling", + "๐Ÿฅ ": "Fortune Cookie", + "๐Ÿฅก": "Takeout Box", + "๐Ÿฆช": "Oyster", + "๐Ÿฆ": "Soft Ice Cream", + "๐Ÿง": "Shaved Ice", + "๐Ÿจ": "Ice Cream", + "๐Ÿฉ": "Doughnut", + "๐Ÿช": "Cookie", + "๐ŸŽ‚": "Birthday Cake", + "๐Ÿฐ": "Shortcake", + "๐Ÿง": "Cupcake", + "๐Ÿฅง": "Pie", + "๐Ÿซ": "Chocolate Bar", + "๐Ÿฌ": "Candy", + "๐Ÿญ": "Lollipop", + "๐Ÿฎ": "Custard", + "๐Ÿฏ": "Honey Pot", + "๐Ÿผ": "Baby Bottle", + "๐Ÿฅ›": "Glass of Milk", + "โ˜•": "Hot Beverage", + "๐Ÿซ–": "Teapot", + "๐Ÿต": "Teacup Without Handle", + "๐Ÿถ": "Sake", + "๐Ÿพ": "Bottle with Popping Cork", + "๐Ÿท": "Wine Glass", + "๐Ÿธ": "Cocktail Glass", + "๐Ÿน": "Tropical Drink", + "๐Ÿบ": "Beer Mug", + "๐Ÿป": "Clinking Beer Mugs", + "๐Ÿฅ‚": "Clinking Glasses", + "๐Ÿฅƒ": "Tumbler Glass", + "๐Ÿฅค": "Cup with Straw", + "๐Ÿง‹": "Bubble Tea", + "๐Ÿงƒ": "Beverage Box", + "๐Ÿง‰": "Mate", + "๐ŸงŠ": "Ice", + "๐Ÿฅข": "Chopsticks", + "๐Ÿฝ๏ธ": "Fork and Knife with Plate", + "๐Ÿด": "Fork and Knife", + "๐Ÿฅ„": "Spoon", + }, + "Activity": { + "๐Ÿ•ด๏ธ": "Person in Suit Levitating", + "๐Ÿง—": "Person Climbing", + "๐Ÿง—โ€โ™‚๏ธ": "Man Climbing", + "๐Ÿง—โ€โ™€๏ธ": "Woman Climbing", + "๐Ÿคบ": "Person Fencing", + "๐Ÿ‡": "Horse Racing", + "โ›ท๏ธ": "Skier", + "๐Ÿ‚": "Snowboarder", + "๐ŸŒ๏ธ": "Person Golfing", + "๐ŸŒ๏ธโ€โ™‚๏ธ": "Man Golfing", + "๐ŸŒ๏ธโ€โ™€๏ธ": "Woman Golfing", + "๐Ÿ„": "Person Surfing", + "๐Ÿ„โ€โ™‚๏ธ": "Man Surfing", + "๐Ÿ„โ€โ™€๏ธ": "Woman Surfing", + "๐Ÿšฃ": "Person Rowing Boat", + "๐Ÿšฃโ€โ™‚๏ธ": "Man Rowing Boat", + "๐Ÿšฃโ€โ™€๏ธ": "Woman Rowing Boat", + "๐ŸŠ": "Person Swimming", + "๐ŸŠโ€โ™‚๏ธ": "Man Swimming", + "๐ŸŠโ€โ™€๏ธ": "Woman Swimming", + "โ›น๏ธ": "Person Bouncing Ball", + "โ›น๏ธโ€โ™‚๏ธ": "Man Bouncing Ball", + "โ›น๏ธโ€โ™€๏ธ": "Woman Bouncing Ball", + "๐Ÿ‹๏ธ": "Person Lifting Weights", + "๐Ÿ‹๏ธโ€โ™‚๏ธ": "Man Lifting Weights", + "๐Ÿ‹๏ธโ€โ™€๏ธ": "Woman Lifting Weights", + "๐Ÿšด": "Person Biking", + "๐Ÿšดโ€โ™‚๏ธ": "Man Biking", + "๐Ÿšดโ€โ™€๏ธ": "Woman Biking", + "๐Ÿšต": "Person Mountain Biking", + "๐Ÿšตโ€โ™‚๏ธ": "Man Mountain Biking", + "๐Ÿšตโ€โ™€๏ธ": "Woman Mountain Biking", + "๐Ÿคธ": "Person Cartwheeling", + "๐Ÿคธโ€โ™‚๏ธ": "Man Cartwheeling", + "๐Ÿคธโ€โ™€๏ธ": "Woman Cartwheeling", + "๐Ÿคผ": "People Wrestling", + "๐Ÿคผโ€โ™‚๏ธ": "Men Wrestling", + "๐Ÿคผโ€โ™€๏ธ": "Women Wrestling", + "๐Ÿคฝ": "Person Playing Water Polo", + "๐Ÿคฝโ€โ™‚๏ธ": "Man Playing Water Polo", + "๐Ÿคฝโ€โ™€๏ธ": "Woman Playing Water Polo", + "๐Ÿคพ": "Person Playing Handball", + "๐Ÿคพโ€โ™‚๏ธ": "Man Playing Handball", + "๐Ÿคพโ€โ™€๏ธ": "Woman Playing Handball", + "๐Ÿคน": "Person Juggling", + "๐Ÿคนโ€โ™‚๏ธ": "Man Juggling", + "๐Ÿคนโ€โ™€๏ธ": "Woman Juggling", + "๐Ÿง˜": "Person in Lotus Position", + "๐Ÿง˜โ€โ™‚๏ธ": "Man in Lotus Position", + "๐Ÿง˜โ€โ™€๏ธ": "Woman in Lotus Position", + "๐ŸŽช": "Circus Tent", + "๐Ÿ›น": "Skateboard", + "๐Ÿ›ผ": "Roller Skate", + "๐Ÿ›ถ": "Canoe", + "๐ŸŽ—๏ธ": "Reminder Ribbon", + "๐ŸŽŸ๏ธ": "Admission Tickets", + "๐ŸŽซ": "Ticket", + "๐ŸŽ–๏ธ": "Military Medal", + "๐Ÿ†": "Trophy", + "๐Ÿ…": "Sports Medal", + "๐Ÿฅ‡": "1st Place Medal", + "๐Ÿฅˆ": "2nd Place Medal", + "๐Ÿฅ‰": "3rd Place Medal", + "โšฝ": "Soccer Ball", + "โšพ": "Baseball", + "๐ŸฅŽ": "Softball", + "๐Ÿ€": "Basketball", + "๐Ÿ": "Volleyball", + "๐Ÿˆ": "American Football", + "๐Ÿ‰": "Rugby Football", + "๐ŸŽพ": "Tennis", + "๐Ÿฅ": "Flying Disc", + "๐ŸŽณ": "Bowling", + "๐Ÿ": "Cricket Game", + "๐Ÿ‘": "Field Hockey", + "๐Ÿ’": "Ice Hockey", + "๐Ÿฅ": "Lacrosse", + "๐Ÿ“": "Ping Pong", + "๐Ÿธ": "Badminton", + "๐ŸฅŠ": "Boxing Glove", + "๐Ÿฅ‹": "Martial Arts Uniform", + "๐Ÿฅ…": "Goal Net", + "โ›ณ": "Flag in Hole", + "โ›ธ๏ธ": "Ice Skate", + "๐ŸŽฃ": "Fishing Pole", + "๐ŸŽฝ": "Running Shirt", + "๐ŸŽฟ": "Skis", + "๐Ÿ›ท": "Sled", + "๐ŸฅŒ": "Curling Stone", + "๐ŸŽฏ": "Direct Hit", + "๐ŸŽฑ": "Pool 8 Ball", + "๐ŸŽฎ": "Video Game", + "๐ŸŽฐ": "Slot Machine", + "๐ŸŽฒ": "Game Die", + "๐Ÿงฉ": "Puzzle Piece", + "โ™Ÿ๏ธ": "Chess Pawn", + "๐ŸŽญ": "Performing Arts", + "๐ŸŽจ": "Artist Palette", + "๐Ÿงต": "Thread", + "๐Ÿงถ": "Yarn", + "๐ŸŽผ": "Musical Score", + "๐ŸŽค": "Microphone", + "๐ŸŽง": "Headphone", + "๐ŸŽท": "Saxophone", + "๐Ÿช—": "Accordion", + "๐ŸŽธ": "Guitar", + "๐ŸŽน": "Musical Keyboard", + "๐ŸŽบ": "Trumpet", + "๐ŸŽป": "Violin", + "๐Ÿฅ": "Drum", + "๐Ÿช˜": "Long Drum", + "๐ŸŽฌ": "Clapper Board", + "๐Ÿน": "Bow and Arrow", + }, + "Travel & Places": { + "๐Ÿšฃ": "Person Rowing Boat", + "๐Ÿ—พ": "Map of Japan", + "๐Ÿ”๏ธ": "Snow-Capped Mountain", + "โ›ฐ๏ธ": "Mountain", + "๐ŸŒ‹": "Volcano", + "๐Ÿ—ป": "Mount Fuji", + "๐Ÿ•๏ธ": "Camping", + "๐Ÿ–๏ธ": "Beach with Umbrella", + "๐Ÿœ๏ธ": "Desert", + "๐Ÿ๏ธ": "Desert Island", + "๐Ÿž๏ธ": "National Park", + "๐ŸŸ๏ธ": "Stadium", + "๐Ÿ›๏ธ": "Classical Building", + "๐Ÿ—๏ธ": "Building Construction", + "๐Ÿ›–": "Hut", + "๐Ÿ˜๏ธ": "Houses", + "๐Ÿš๏ธ": "Derelict House", + "๐Ÿ ": "House", + "๐Ÿก": "House with Garden", + "๐Ÿข": "Office Building", + "๐Ÿฃ": "Japanese Post Office", + "๐Ÿค": "Post Office", + "๐Ÿฅ": "Hospital", + "๐Ÿฆ": "Bank", + "๐Ÿจ": "Hotel", + "๐Ÿฉ": "Love Hotel", + "๐Ÿช": "Convenience Store", + "๐Ÿซ": "School", + "๐Ÿฌ": "Department Store", + "๐Ÿญ": "Factory", + "๐Ÿฏ": "Japanese Castle", + "๐Ÿฐ": "Castle", + "๐Ÿ’’": "Wedding", + "๐Ÿ—ผ": "Tokyo Tower", + "๐Ÿ—ฝ": "Statue of Liberty", + "โ›ช": "Church", + "๐Ÿ•Œ": "Mosque", + "๐Ÿ›•": "Hindu Temple", + "๐Ÿ•": "Synagogue", + "โ›ฉ๏ธ": "Shinto Shrine", + "๐Ÿ•‹": "Kaaba", + "โ›ฒ": "Fountain", + "โ›บ": "Tent", + "๐ŸŒ": "Foggy", + "๐ŸŒƒ": "Night with Stars", + "๐Ÿ™๏ธ": "Cityscape", + "๐ŸŒ„": "Sunrise Over Mountains", + "๐ŸŒ…": "Sunrise", + "๐ŸŒ†": "Cityscape at Dusk", + "๐ŸŒ‡": "Sunset", + "๐ŸŒ‰": "Bridge at Night", + "๐ŸŽ ": "Carousel Horse", + "๐ŸŽก": "Ferris Wheel", + "๐ŸŽข": "Roller Coaster", + "๐Ÿš‚": "Locomotive", + "๐Ÿšƒ": "Railway Car", + "๐Ÿš„": "High-Speed Train", + "๐Ÿš…": "Bullet Train", + "๐Ÿš†": "Train", + "๐Ÿš‡": "Metro", + "๐Ÿšˆ": "Light Rail", + "๐Ÿš‰": "Station", + "๐ŸšŠ": "Tram", + "๐Ÿš": "Monorail", + "๐Ÿšž": "Mountain Railway", + "๐Ÿš‹": "Tram Car", + "๐ŸšŒ": "Bus", + "๐Ÿš": "Oncoming Bus", + "๐ŸšŽ": "Trolleybus", + "๐Ÿš": "Minibus", + "๐Ÿš‘": "Ambulance", + "๐Ÿš’": "Fire Engine", + "๐Ÿš“": "Police Car", + "๐Ÿš”": "Oncoming Police Car", + "๐Ÿš•": "Taxi", + "๐Ÿš–": "Oncoming Taxi", + "๐Ÿš—": "Automobile", + "๐Ÿš˜": "Oncoming Automobile", + "๐Ÿš™": "Sport Utility Vehicle", + "๐Ÿ›ป": "Pickup Truck", + "๐Ÿšš": "Delivery Truck", + "๐Ÿš›": "Articulated Lorry", + "๐Ÿšœ": "Tractor", + "๐ŸŽ๏ธ": "Racing Car", + "๐Ÿ๏ธ": "Motorcycle", + "๐Ÿ›ต": "Motor Scooter", + "๐Ÿ›บ": "Auto Rickshaw", + "๐Ÿšฒ": "Bicycle", + "๐Ÿ›ด": "Kick Scooter", + "๐Ÿš": "Bus Stop", + "๐Ÿ›ฃ๏ธ": "Motorway", + "๐Ÿ›ค๏ธ": "Railway Track", + "โ›ฝ": "Fuel Pump", + "๐Ÿšจ": "Police Car Light", + "๐Ÿšฅ": "Horizontal Traffic Light", + "๐Ÿšฆ": "Vertical Traffic Light", + "๐Ÿšง": "Construction", + "โš“": "Anchor", + "โ›ต": "Sailboat", + "๐Ÿšค": "Speedboat", + "๐Ÿ›ณ๏ธ": "Passenger Ship", + "โ›ด๏ธ": "Ferry", + "๐Ÿ›ฅ๏ธ": "Motor Boat", + "๐Ÿšข": "Ship", + "โœˆ๏ธ": "Airplane", + "๐Ÿ›ฉ๏ธ": "Small Airplane", + "๐Ÿ›ซ": "Airplane Departure", + "๐Ÿ›ฌ": "Airplane Arrival", + "๐Ÿช‚": "Parachute", + "๐Ÿ’บ": "Seat", + "๐Ÿš": "Helicopter", + "๐ŸšŸ": "Suspension Railway", + "๐Ÿš ": "Mountain Cableway", + "๐Ÿšก": "Aerial Tramway", + "๐Ÿ›ฐ๏ธ": "Satellite", + "๐Ÿš€": "Rocket", + "๐Ÿ›ธ": "Flying Saucer", + "๐Ÿช": "Ringed Planet", + "๐ŸŒ ": "Shooting Star", + "๐ŸŒŒ": "Milky Way", + "โ›ฑ๏ธ": "Umbrella on Ground", + "๐ŸŽ†": "Fireworks", + "๐ŸŽ‡": "Sparkler", + "๐ŸŽ‘": "Moon Viewing Ceremony", + "๐Ÿ’ด": "Yen Banknote", + "๐Ÿ’ต": "Dollar Banknote", + "๐Ÿ’ถ": "Euro Banknote", + "๐Ÿ’ท": "Pound Banknote", + "๐Ÿ—ฟ": "Moai", + "๐Ÿ›‚": "Passport Control", + "๐Ÿ›ƒ": "Customs", + "๐Ÿ›„": "Baggage Claim", + "๐Ÿ›…": "Left Luggage", + }, + "Objects": { + "๐Ÿ’Œ": "Love Letter", + "๐Ÿ•ณ๏ธ": "Hole", + "๐Ÿ’ฃ": "Bomb", + "๐Ÿ›€": "Person Taking Bath", + "๐Ÿ›Œ": "Person in Bed", + "๐Ÿ”ช": "Kitchen Knife", + "๐Ÿบ": "Amphora", + "๐Ÿ—บ๏ธ": "World Map", + "๐Ÿงญ": "Compass", + "๐Ÿงฑ": "Brick", + "๐Ÿ’ˆ": "Barber Pole", + "๐Ÿฆฝ": "Manual Wheelchair", + "๐Ÿฆผ": "Motorized Wheelchair", + "๐Ÿ›ข๏ธ": "Oil Drum", + "๐Ÿ›Ž๏ธ": "Bellhop Bell", + "๐Ÿงณ": "Luggage", + "โŒ›": "Hourglass Done", + "โณ": "Hourglass Not Done", + "โŒš": "Watch", + "โฐ": "Alarm Clock", + "โฑ๏ธ": "Stopwatch", + "โฒ๏ธ": "Timer Clock", + "๐Ÿ•ฐ๏ธ": "Mantelpiece Clock", + "๐ŸŒก๏ธ": "Thermometer", + "โ›ฑ๏ธ": "Umbrella on Ground", + "๐Ÿงจ": "Firecracker", + "๐ŸŽˆ": "Balloon", + "๐ŸŽ‰": "Party Popper", + "๐ŸŽŠ": "Confetti Ball", + "๐ŸŽŽ": "Japanese Dolls", + "๐ŸŽ": "Carp Streamer", + "๐ŸŽ": "Wind Chime", + "๐Ÿงง": "Red Envelope", + "๐ŸŽ€": "Ribbon", + "๐ŸŽ": "Wrapped Gift", + "๐Ÿคฟ": "Diving Mask", + "๐Ÿช€": "Yo-Yo", + "๐Ÿช": "Kite", + "๐Ÿ”ฎ": "Crystal Ball", + "๐Ÿช„": "Magic Wand", + "๐Ÿงฟ": "Nazar Amulet", + "๐Ÿ•น๏ธ": "Joystick", + "๐Ÿงธ": "Teddy Bear", + "๐Ÿช…": "Piรฑata", + "๐Ÿช†": "Nesting Dolls", + "๐Ÿ–ผ๏ธ": "Framed Picture", + "๐Ÿงต": "Thread", + "๐Ÿชก": "Sewing Needle", + "๐Ÿงถ": "Yarn", + "๐Ÿชข": "Knot", + "๐Ÿ›๏ธ": "Shopping Bags", + "๐Ÿ“ฟ": "Prayer Beads", + "๐Ÿ’Ž": "Gem Stone", + "๐Ÿ“ฏ": "Postal Horn", + "๐ŸŽ™๏ธ": "Studio Microphone", + "๐ŸŽš๏ธ": "Level Slider", + "๐ŸŽ›๏ธ": "Control Knobs", + "๐Ÿ“ป": "Radio", + "๐Ÿช•": "Banjo", + "๐Ÿ“ฑ": "Mobile Phone", + "๐Ÿ“ฒ": "Mobile Phone with Arrow", + "โ˜Ž๏ธ": "Telephone", + "๐Ÿ“ž": "Telephone Receiver", + "๐Ÿ“Ÿ": "Pager", + "๐Ÿ“ ": "Fax Machine", + "๐Ÿ”‹": "Battery", + "๐Ÿ”Œ": "Electric Plug", + "๐Ÿ’ป": "Laptop", + "๐Ÿ–ฅ๏ธ": "Desktop Computer", + "๐Ÿ–จ๏ธ": "Printer", + "โŒจ๏ธ": "Keyboard", + "๐Ÿ–ฑ๏ธ": "Computer Mouse", + "๐Ÿ–ฒ๏ธ": "Trackball", + "๐Ÿ’ฝ": "Computer Disk", + "๐Ÿ’พ": "Floppy Disk", + "๐Ÿ’ฟ": "Optical Disk", + "๐Ÿ“€": "DVD", + "๐Ÿงฎ": "Abacus", + "๐ŸŽฅ": "Movie Camera", + "๐ŸŽž๏ธ": "Film Frames", + "๐Ÿ“ฝ๏ธ": "Film Projector", + "๐Ÿ“บ": "Television", + "๐Ÿ“ท": "Camera", + "๐Ÿ“ธ": "Camera with Flash", + "๐Ÿ“น": "Video Camera", + "๐Ÿ“ผ": "Videocassette", + "๐Ÿ”": "Magnifying Glass Tilted Left", + "๐Ÿ”Ž": "Magnifying Glass Tilted Right", + "๐Ÿ•ฏ๏ธ": "Candle", + "๐Ÿ’ก": "Light Bulb", + "๐Ÿ”ฆ": "Flashlight", + "๐Ÿฎ": "Red Paper Lantern", + "๐Ÿช”": "Diya Lamp", + "๐Ÿ“”": "Notebook with Decorative Cover", + "๐Ÿ“•": "Closed Book", + "๐Ÿ“–": "Open Book", + "๐Ÿ“—": "Green Book", + "๐Ÿ“˜": "Blue Book", + "๐Ÿ“™": "Orange Book", + "๐Ÿ“š": "Books", + "๐Ÿ““": "Notebook", + "๐Ÿ“’": "Ledger", + "๐Ÿ“ƒ": "Page with Curl", + "๐Ÿ“œ": "Scroll", + "๐Ÿ“„": "Page Facing Up", + "๐Ÿ“ฐ": "Newspaper", + "๐Ÿ—ž๏ธ": "Rolled-Up Newspaper", + "๐Ÿ“‘": "Bookmark Tabs", + "๐Ÿ”–": "Bookmark", + "๐Ÿท๏ธ": "Label", + "๐Ÿ’ฐ": "Money Bag", + "๐Ÿช™": "Coin", + "๐Ÿ’ด": "Yen Banknote", + "๐Ÿ’ต": "Dollar Banknote", + "๐Ÿ’ถ": "Euro Banknote", + "๐Ÿ’ท": "Pound Banknote", + "๐Ÿ’ธ": "Money with Wings", + "๐Ÿ’ณ": "Credit Card", + "๐Ÿงพ": "Receipt", + "โœ‰๏ธ": "Envelope", + "๐Ÿ“ง": "E-Mail", + "๐Ÿ“จ": "Incoming Envelope", + "๐Ÿ“ฉ": "Envelope with Arrow", + "๐Ÿ“ค": "Outbox Tray", + "๐Ÿ“ฅ": "Inbox Tray", + "๐Ÿ“ฆ": "Package", + "๐Ÿ“ซ": "Closed Mailbox with Raised Flag", + "๐Ÿ“ช": "Closed Mailbox with Lowered Flag", + "๐Ÿ“ฌ": "Open Mailbox with Raised Flag", + "๐Ÿ“ญ": "Open Mailbox with Lowered Flag", + "๐Ÿ“ฎ": "Postbox", + "๐Ÿ—ณ๏ธ": "Ballot Box with Ballot", + "โœ๏ธ": "Pencil", + "โœ’๏ธ": "Black Nib", + "๐Ÿ–‹๏ธ": "Fountain Pen", + "๐Ÿ–Š๏ธ": "Pen", + "๐Ÿ–Œ๏ธ": "Paintbrush", + "๐Ÿ–๏ธ": "Crayon", + "๐Ÿ“": "Memo", + "๐Ÿ“": "File Folder", + "๐Ÿ“‚": "Open File Folder", + "๐Ÿ—‚๏ธ": "Card Index Dividers", + "๐Ÿ“…": "Calendar", + "๐Ÿ“†": "Tear-Off Calendar", + "๐Ÿ—’๏ธ": "Spiral Notepad", + "๐Ÿ—“๏ธ": "Spiral Calendar", + "๐Ÿ“‡": "Card Index", + "๐Ÿ“ˆ": "Chart Increasing", + "๐Ÿ“‰": "Chart Decreasing", + "๐Ÿ“Š": "Bar Chart", + "๐Ÿ“‹": "Clipboard", + "๐Ÿ“Œ": "Pushpin", + "๐Ÿ“": "Round Pushpin", + "๐Ÿ“Ž": "Paperclip", + "๐Ÿ–‡๏ธ": "Linked Paperclips", + "๐Ÿ“": "Straight Ruler", + "๐Ÿ“": "Triangular Ruler", + "โœ‚๏ธ": "Scissors", + "๐Ÿ—ƒ๏ธ": "Card File Box", + "๐Ÿ—„๏ธ": "File Cabinet", + "๐Ÿ—‘๏ธ": "Wastebasket", + "๐Ÿ”’": "Locked", + "๐Ÿ”“": "Unlocked", + "๐Ÿ”": "Locked with Pen", + "๐Ÿ”": "Locked with Key", + "๐Ÿ”‘": "Key", + "๐Ÿ—๏ธ": "Old Key", + "๐Ÿ”จ": "Hammer", + "๐Ÿช“": "Axe", + "โ›๏ธ": "Pick", + "โš’๏ธ": "Hammer and Pick", + "๐Ÿ› ๏ธ": "Hammer and Wrench", + "๐Ÿ—ก๏ธ": "Dagger", + "โš”๏ธ": "Crossed Swords", + "๐Ÿ”ซ": "Pistol", + "๐Ÿชƒ": "Boomerang", + "๐Ÿ›ก๏ธ": "Shield", + "๐Ÿชš": "Carpentry Saw", + "๐Ÿ”ง": "Wrench", + "๐Ÿช›": "Screwdriver", + "๐Ÿ”ฉ": "Nut and Bolt", + "โš™๏ธ": "Gear", + "๐Ÿ—œ๏ธ": "Clamp", + "โš–๏ธ": "Balance Scale", + "๐Ÿฆฏ": "White Cane", + "๐Ÿ”—": "Link", + "โ›“๏ธ": "Chains", + "๐Ÿช": "Hook", + "๐Ÿงฐ": "Toolbox", + "๐Ÿงฒ": "Magnet", + "๐Ÿชœ": "Ladder", + "โš—๏ธ": "Alembic", + "๐Ÿงช": "Test Tube", + "๐Ÿงซ": "Petri Dish", + "๐Ÿงฌ": "DNA", + "๐Ÿ”ฌ": "Microscope", + "๐Ÿ”ญ": "Telescope", + "๐Ÿ“ก": "Satellite Antenna", + "๐Ÿ’‰": "Syringe", + "๐Ÿฉธ": "Drop of Blood", + "๐Ÿ’Š": "Pill", + "๐Ÿฉน": "Adhesive Bandage", + "๐Ÿฉบ": "Stethoscope", + "๐Ÿšช": "Door", + "๐Ÿชž": "Mirror", + "๐ŸชŸ": "Window", + "๐Ÿ›๏ธ": "Bed", + "๐Ÿ›‹๏ธ": "Couch and Lamp", + "๐Ÿช‘": "Chair", + "๐Ÿšฝ": "Toilet", + "๐Ÿช ": "Plunger", + "๐Ÿšฟ": "Shower", + "๐Ÿ›": "Bathtub", + "๐Ÿชค": "Mouse Trap", + "๐Ÿช’": "Razor", + "๐Ÿงด": "Lotion Bottle", + "๐Ÿงท": "Safety Pin", + "๐Ÿงน": "Broom", + "๐Ÿงบ": "Basket", + "๐Ÿงป": "Roll of Paper", + "๐Ÿชฃ": "Bucket", + "๐Ÿงผ": "Soap", + "๐Ÿชฅ": "Toothbrush", + "๐Ÿงฝ": "Sponge", + "๐Ÿงฏ": "Fire Extinguisher", + "๐Ÿ›’": "Shopping Cart", + "๐Ÿšฌ": "Cigarette", + "โšฐ๏ธ": "Coffin", + "๐Ÿชฆ": "Headstone", + "โšฑ๏ธ": "Funeral Urn", + "๐Ÿ—ฟ": "Moai", + "๐Ÿชง": "Placard", + "๐Ÿšฐ": "Potable Water", + }, + "Symbols": { + "๐Ÿ’˜": "Heart with Arrow", + "๐Ÿ’": "Heart with Ribbon", + "๐Ÿ’–": "Sparkling Heart", + "๐Ÿ’—": "Growing Heart", + "๐Ÿ’“": "Beating Heart", + "๐Ÿ’ž": "Revolving Hearts", + "๐Ÿ’•": "Two Hearts", + "๐Ÿ’Ÿ": "Heart Decoration", + "โฃ๏ธ": "Heart Exclamation", + "๐Ÿ’”": "Broken Heart", + "โค๏ธ": "Red Heart", + "๐Ÿงก": "Orange Heart", + "๐Ÿ’›": "Yellow Heart", + "๐Ÿ’š": "Green Heart", + "๐Ÿ’™": "Blue Heart", + "๐Ÿ’œ": "Purple Heart", + "๐ŸคŽ": "Brown Heart", + "๐Ÿ–ค": "Black Heart", + "๐Ÿค": "White Heart", + "๐Ÿ’ฏ": "Hundred Points", + "๐Ÿ’ข": "Anger Symbol", + "๐Ÿ’ฌ": "Speech Balloon", + "๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ": "Eye in Speech Bubble", + "๐Ÿ—จ๏ธ": "Left Speech Bubble", + "๐Ÿ—ฏ๏ธ": "Right Anger Bubble", + "๐Ÿ’ญ": "Thought Balloon", + "๐Ÿ’ค": "Zzz", + "๐Ÿ’ฎ": "White Flower", + "โ™จ๏ธ": "Hot Springs", + "๐Ÿ’ˆ": "Barber Pole", + "๐Ÿ›‘": "Stop Sign", + "๐Ÿ•›": "Twelve Oโ€™Clock", + "๐Ÿ•ง": "Twelve-Thirty", + "๐Ÿ•": "One Oโ€™Clock", + "๐Ÿ•œ": "One-Thirty", + "๐Ÿ•‘": "Two Oโ€™Clock", + "๐Ÿ•": "Two-Thirty", + "๐Ÿ•’": "Three Oโ€™Clock", + "๐Ÿ•ž": "Three-Thirty", + "๐Ÿ•“": "Four Oโ€™Clock", + "๐Ÿ•Ÿ": "Four-Thirty", + "๐Ÿ•”": "Five Oโ€™Clock", + "๐Ÿ• ": "Five-Thirty", + "๐Ÿ••": "Six Oโ€™Clock", + "๐Ÿ•ก": "Six-Thirty", + "๐Ÿ•–": "Seven Oโ€™Clock", + "๐Ÿ•ข": "Seven-Thirty", + "๐Ÿ•—": "Eight Oโ€™Clock", + "๐Ÿ•ฃ": "Eight-Thirty", + "๐Ÿ•˜": "Nine Oโ€™Clock", + "๐Ÿ•ค": "Nine-Thirty", + "๐Ÿ•™": "Ten Oโ€™Clock", + "๐Ÿ•ฅ": "Ten-Thirty", + "๐Ÿ•š": "Eleven Oโ€™Clock", + "๐Ÿ•ฆ": "Eleven-Thirty", + "๐ŸŒ€": "Cyclone", + "โ™ ๏ธ": "Spade Suit", + "โ™ฅ๏ธ": "Heart Suit", + "โ™ฆ๏ธ": "Diamond Suit", + "โ™ฃ๏ธ": "Club Suit", + "๐Ÿƒ": "Joker", + "๐Ÿ€„": "Mahjong Red Dragon", + "๐ŸŽด": "Flower Playing Cards", + "๐Ÿ”‡": "Muted Speaker", + "๐Ÿ”ˆ": "Speaker Low Volume", + "๐Ÿ”‰": "Speaker Medium Volume", + "๐Ÿ”Š": "Speaker High Volume", + "๐Ÿ“ข": "Loudspeaker", + "๐Ÿ“ฃ": "Megaphone", + "๐Ÿ“ฏ": "Postal Horn", + "๐Ÿ””": "Bell", + "๐Ÿ”•": "Bell with Slash", + "๐ŸŽต": "Musical Note", + "๐ŸŽถ": "Musical Notes", + "๐Ÿ’น": "Chart Increasing with Yen", + "๐Ÿ›—": "Elevator", + "๐Ÿง": "ATM Sign", + "๐Ÿšฎ": "Litter in Bin Sign", + "๐Ÿšฐ": "Potable Water", + "โ™ฟ": "Wheelchair Symbol", + "๐Ÿšน": "Menโ€™s Room", + "๐Ÿšบ": "Womenโ€™s Room", + "๐Ÿšป": "Restroom", + "๐Ÿšผ": "Baby Symbol", + "๐Ÿšพ": "Water Closet", + "โš ๏ธ": "Warning", + "๐Ÿšธ": "Children Crossing", + "โ›”": "No Entry", + "๐Ÿšซ": "Prohibited", + "๐Ÿšณ": "No Bicycles", + "๐Ÿšญ": "No Smoking", + "๐Ÿšฏ": "No Littering", + "๐Ÿšฑ": "Non-Potable Water", + "๐Ÿšท": "No Pedestrians", + "๐Ÿ“ต": "No Mobile Phones", + "๐Ÿ”ž": "No One Under Eighteen", + "โ˜ข๏ธ": "Radioactive", + "โ˜ฃ๏ธ": "Biohazard", + "โฌ†๏ธ": "Up Arrow", + "โ†—๏ธ": "Up-Right Arrow", + "โžก๏ธ": "Right Arrow", + "โ†˜๏ธ": "Down-Right Arrow", + "โฌ‡๏ธ": "Down Arrow", + "โ†™๏ธ": "Down-Left Arrow", + "โฌ…๏ธ": "Left Arrow", + "โ†–๏ธ": "Up-Left Arrow", + "โ†•๏ธ": "Up-Down Arrow", + "โ†”๏ธ": "Left-Right Arrow", + "โ†ฉ๏ธ": "Right Arrow Curving Left", + "โ†ช๏ธ": "Left Arrow Curving Right", + "โคด๏ธ": "Right Arrow Curving Up", + "โคต๏ธ": "Right Arrow Curving Down", + "๐Ÿ”ƒ": "Clockwise Vertical Arrows", + "๐Ÿ”„": "Counterclockwise Arrows Button", + "๐Ÿ”™": "Back Arrow", + "๐Ÿ”š": "End Arrow", + "๐Ÿ”›": "On! Arrow", + "๐Ÿ”œ": "Soon Arrow", + "๐Ÿ”": "Top Arrow", + "๐Ÿ›": "Place of Worship", + "โš›๏ธ": "Atom Symbol", + "๐Ÿ•‰๏ธ": "Om", + "โœก๏ธ": "Star of David", + "โ˜ธ๏ธ": "Wheel of Dharma", + "โ˜ฏ๏ธ": "Yin Yang", + "โœ๏ธ": "Latin Cross", + "โ˜ฆ๏ธ": "Orthodox Cross", + "โ˜ช๏ธ": "Star and Crescent", + "โ˜ฎ๏ธ": "Peace Symbol", + "๐Ÿ•Ž": "Menorah", + "๐Ÿ”ฏ": "Dotted Six-Pointed Star", + "โ™ˆ": "Aries", + "โ™‰": "Taurus", + "โ™Š": "Gemini", + "โ™‹": "Cancer", + "โ™Œ": "Leo", + "โ™": "Virgo", + "โ™Ž": "Libra", + "โ™": "Scorpio", + "โ™": "Sagittarius", + "โ™‘": "Capricorn", + "โ™’": "Aquarius", + "โ™“": "Pisces", + "โ›Ž": "Ophiuchus", + "๐Ÿ”€": "Shuffle Tracks Button", + "๐Ÿ”": "Repeat Button", + "๐Ÿ”‚": "Repeat Single Button", + "โ–ถ๏ธ": "Play Button", + "โฉ": "Fast-Forward Button", + "โญ๏ธ": "Next Track Button", + "โฏ๏ธ": "Play or Pause Button", + "โ—€๏ธ": "Reverse Button", + "โช": "Fast Reverse Button", + "โฎ๏ธ": "Last Track Button", + "๐Ÿ”ผ": "Upwards Button", + "โซ": "Fast Up Button", + "๐Ÿ”ฝ": "Downwards Button", + "โฌ": "Fast Down Button", + "โธ๏ธ": "Pause Button", + "โน๏ธ": "Stop Button", + "โบ๏ธ": "Record Button", + "โ๏ธ": "Eject Button", + "๐ŸŽฆ": "Cinema", + "๐Ÿ”…": "Dim Button", + "๐Ÿ”†": "Bright Button", + "๐Ÿ“ถ": "Antenna Bars", + "๐Ÿ“ณ": "Vibration Mode", + "๐Ÿ“ด": "Mobile Phone Off", + "โ™€๏ธ": "Female Sign", + "โ™‚๏ธ": "Male Sign", + "โœ–๏ธ": "Multiply", + "โž•": "Plus", + "โž–": "Minus", + "โž—": "Divide", + "โ™พ๏ธ": "Infinity", + "โ€ผ๏ธ": "Double Exclamation Mark", + "โ‰๏ธ": "Exclamation Question Mark", + "โ“": "Question Mark", + "โ”": "White Question Mark", + "โ•": "White Exclamation Mark", + "โ—": "Exclamation Mark", + "ใ€ฐ๏ธ": "Wavy Dash", + "๐Ÿ’ฑ": "Currency Exchange", + "๐Ÿ’ฒ": "Heavy Dollar Sign", + "โš•๏ธ": "Medical Symbol", + "โ™ป๏ธ": "Recycling Symbol", + "โšœ๏ธ": "Fleur-de-lis", + "๐Ÿ”ฑ": "Trident Emblem", + "๐Ÿ“›": "Name Badge", + "๐Ÿ”ฐ": "Japanese Symbol for Beginner", + "โญ•": "Hollow Red Circle", + "โœ…": "Check Mark Button", + "โ˜‘๏ธ": "Check Box with Check", + "โœ”๏ธ": "Check Mark", + "โŒ": "Cross Mark", + "โŽ": "Cross Mark Button", + "โžฐ": "Curly Loop", + "โžฟ": "Double Curly Loop", + "ใ€ฝ๏ธ": "Part Alternation Mark", + "โœณ๏ธ": "Eight-Spoked Asterisk", + "โœด๏ธ": "Eight-Pointed Star", + "โ‡๏ธ": "Sparkle", + "ยฉ๏ธ": "Copyright", + "ยฎ๏ธ": "Registered", + "โ„ข๏ธ": "Trade Mark", + "#๏ธโƒฃ": "Keycap Number Sign", + "*๏ธโƒฃ": "Keycap Asterisk", + "0๏ธโƒฃ": "Keycap Digit Zero", + "1๏ธโƒฃ": "Keycap Digit One", + "2๏ธโƒฃ": "Keycap Digit Two", + "3๏ธโƒฃ": "Keycap Digit Three", + "4๏ธโƒฃ": "Keycap Digit Four", + "5๏ธโƒฃ": "Keycap Digit Five", + "6๏ธโƒฃ": "Keycap Digit Six", + "7๏ธโƒฃ": "Keycap Digit Seven", + "8๏ธโƒฃ": "Keycap Digit Eight", + "9๏ธโƒฃ": "Keycap Digit Nine", + "๐Ÿ”Ÿ": "Keycap: 10", + "๐Ÿ” ": "Input Latin Uppercase", + "๐Ÿ”ก": "Input Latin Lowercase", + "๐Ÿ”ข": "Input Numbers", + "๐Ÿ”ฃ": "Input Symbols", + "๐Ÿ”ค": "Input Latin Letters", + "๐Ÿ…ฐ๏ธ": "A Button (Blood Type)", + "๐Ÿ†Ž": "AB Button (Blood Type)", + "๐Ÿ…ฑ๏ธ": "B Button (Blood Type)", + "๐Ÿ†‘": "CL Button", + "๐Ÿ†’": "Cool Button", + "๐Ÿ†“": "Free Button", + "โ„น๏ธ": "Information", + "๐Ÿ†”": "ID Button", + "โ“‚๏ธ": "Circled M", + "๐Ÿ†•": "New Button", + "๐Ÿ†–": "NG Button", + "๐Ÿ…พ๏ธ": "O Button (Blood Type)", + "๐Ÿ†—": "OK Button", + "๐Ÿ…ฟ๏ธ": "P Button", + "๐Ÿ†˜": "SOS Button", + "๐Ÿ†™": "Up! Button", + "๐Ÿ†š": "Vs Button", + "๐Ÿˆ": "Japanese โ€œHereโ€ Button", + "๐Ÿˆ‚๏ธ": "Japanese โ€œService Chargeโ€ Button", + "๐Ÿˆท๏ธ": "Japanese โ€œMonthly Amountโ€ Button", + "๐Ÿˆถ": "Japanese โ€œNot Free of Chargeโ€ Button", + "๐Ÿˆฏ": "Japanese โ€œReservedโ€ Button", + "๐Ÿ‰": "Japanese โ€œBargainโ€ Button", + "๐Ÿˆน": "Japanese โ€œDiscountโ€ Button", + "๐Ÿˆš": "Japanese โ€œFree of Chargeโ€ Button", + "๐Ÿˆฒ": "Japanese โ€œProhibitedโ€ Button", + "๐Ÿ‰‘": "Japanese โ€œAcceptableโ€ Button", + "๐Ÿˆธ": "Japanese โ€œApplicationโ€ Button", + "๐Ÿˆด": "Japanese โ€œPassing Gradeโ€ Button", + "๐Ÿˆณ": "Japanese โ€œVacancyโ€ Button", + "ใŠ—๏ธ": "Japanese โ€œCongratulationsโ€ Button", + "ใŠ™๏ธ": "Japanese โ€œSecretโ€ Button", + "๐Ÿˆบ": "Japanese โ€œOpen for Businessโ€ Button", + "๐Ÿˆต": "Japanese โ€œNo Vacancyโ€ Button", + "๐Ÿ”ด": "Red Circle", + "๐ŸŸ ": "Orange Circle", + "๐ŸŸก": "Yellow Circle", + "๐ŸŸข": "Green Circle", + "๐Ÿ”ต": "Blue Circle", + "๐ŸŸฃ": "Purple Circle", + "๐ŸŸค": "Brown Circle", + "โšซ": "Black Circle", + "โšช": "White Circle", + "๐ŸŸฅ": "Red Square", + "๐ŸŸง": "Orange Square", + "๐ŸŸจ": "Yellow Square", + "๐ŸŸฉ": "Green Square", + "๐ŸŸฆ": "Blue Square", + "๐ŸŸช": "Purple Square", + "๐ŸŸซ": "Brown Square", + "โฌ›": "Black Large Square", + "โฌœ": "White Large Square", + "โ—ผ๏ธ": "Black Medium Square", + "โ—ป๏ธ": "White Medium Square", + "โ—พ": "Black Medium-Small Square", + "โ—ฝ": "White Medium-Small Square", + "โ–ช๏ธ": "Black Small Square", + "โ–ซ๏ธ": "White Small Square", + "๐Ÿ”ถ": "Large Orange Diamond", + "๐Ÿ”ท": "Large Blue Diamond", + "๐Ÿ”ธ": "Small Orange Diamond", + "๐Ÿ”น": "Small Blue Diamond", + "๐Ÿ”บ": "Red Triangle Pointed Up", + "๐Ÿ”ป": "Red Triangle Pointed Down", + "๐Ÿ’ ": "Diamond with a Dot", + "๐Ÿ”˜": "Radio Button", + "๐Ÿ”ณ": "White Square Button", + "๐Ÿ”ฒ": "Black Square Button", + "โค๏ธโ€๐Ÿ”ฅ": "Heart on Fire", + "โค๏ธโ€๐Ÿฉน": "Mending Heart", + }, + "Flags": { + "๐Ÿ": "Chequered Flag", + "๐Ÿšฉ": "Triangular Flag", + "๐ŸŽŒ": "Crossed Flags", + "๐Ÿด": "Black Flag", + "๐Ÿณ๏ธ": "White Flag", + "๐Ÿณ๏ธโ€๐ŸŒˆ": "Rainbow Flag", + "๐Ÿณ๏ธโ€โšง๏ธ": "Transgender Flag", + "๐Ÿดโ€โ˜ ๏ธ": "Pirate Flag", + "๐Ÿ‡ฆ๐Ÿ‡จ": "Flag: Ascension Island", + "๐Ÿ‡ฆ๐Ÿ‡ฉ": "Flag: Andorra", + "๐Ÿ‡ฆ๐Ÿ‡ช": "Flag: United Arab Emirates", + "๐Ÿ‡ฆ๐Ÿ‡ซ": "Flag: Afghanistan", + "๐Ÿ‡ฆ๐Ÿ‡ฌ": "Flag: Antigua & Barbuda", + "๐Ÿ‡ฆ๐Ÿ‡ฎ": "Flag: Anguilla", + "๐Ÿ‡ฆ๐Ÿ‡ฑ": "Flag: Albania", + "๐Ÿ‡ฆ๐Ÿ‡ฒ": "Flag: Armenia", + "๐Ÿ‡ฆ๐Ÿ‡ด": "Flag: Angola", + "๐Ÿ‡ฆ๐Ÿ‡ถ": "Flag: Antarctica", + "๐Ÿ‡ฆ๐Ÿ‡ท": "Flag: Argentina", + "๐Ÿ‡ฆ๐Ÿ‡ธ": "Flag: American Samoa", + "๐Ÿ‡ฆ๐Ÿ‡น": "Flag: Austria", + "๐Ÿ‡ฆ๐Ÿ‡บ": "Flag: Australia", + "๐Ÿ‡ฆ๐Ÿ‡ผ": "Flag: Aruba", + "๐Ÿ‡ฆ๐Ÿ‡ฝ": "Flag: ร…land Islands", + "๐Ÿ‡ฆ๐Ÿ‡ฟ": "Flag: Azerbaijan", + "๐Ÿ‡ง๐Ÿ‡ฆ": "Flag: Bosnia & Herzegovina", + "๐Ÿ‡ง๐Ÿ‡ง": "Flag: Barbados", + "๐Ÿ‡ง๐Ÿ‡ฉ": "Flag: Bangladesh", + "๐Ÿ‡ง๐Ÿ‡ช": "Flag: Belgium", + "๐Ÿ‡ง๐Ÿ‡ซ": "Flag: Burkina Faso", + "๐Ÿ‡ง๐Ÿ‡ฌ": "Flag: Bulgaria", + "๐Ÿ‡ง๐Ÿ‡ญ": "Flag: Bahrain", + "๐Ÿ‡ง๐Ÿ‡ฎ": "Flag: Burundi", + "๐Ÿ‡ง๐Ÿ‡ฏ": "Flag: Benin", + "๐Ÿ‡ง๐Ÿ‡ฑ": "Flag: St. Barthรฉlemy", + "๐Ÿ‡ง๐Ÿ‡ฒ": "Flag: Bermuda", + "๐Ÿ‡ง๐Ÿ‡ณ": "Flag: Brunei", + "๐Ÿ‡ง๐Ÿ‡ด": "Flag: Bolivia", + "๐Ÿ‡ง๐Ÿ‡ถ": "Flag: Caribbean Netherlands", + "๐Ÿ‡ง๐Ÿ‡ท": "Flag: Brazil", + "๐Ÿ‡ง๐Ÿ‡ธ": "Flag: Bahamas", + "๐Ÿ‡ง๐Ÿ‡น": "Flag: Bhutan", + "๐Ÿ‡ง๐Ÿ‡ป": "Flag: Bouvet Island", + "๐Ÿ‡ง๐Ÿ‡ผ": "Flag: Botswana", + "๐Ÿ‡ง๐Ÿ‡พ": "Flag: Belarus", + "๐Ÿ‡ง๐Ÿ‡ฟ": "Flag: Belize", + "๐Ÿ‡จ๐Ÿ‡ฆ": "Flag: Canada", + "๐Ÿ‡จ๐Ÿ‡จ": "Flag: Cocos (Keeling) Islands", + "๐Ÿ‡จ๐Ÿ‡ฉ": "Flag: Congo - Kinshasa", + "๐Ÿ‡จ๐Ÿ‡ซ": "Flag: Central African Republic", + "๐Ÿ‡จ๐Ÿ‡ฌ": "Flag: Congo - Brazzaville", + "๐Ÿ‡จ๐Ÿ‡ญ": "Flag: Switzerland", + "๐Ÿ‡จ๐Ÿ‡ฎ": "Flag: Cรดte dโ€™Ivoire", + "๐Ÿ‡จ๐Ÿ‡ฐ": "Flag: Cook Islands", + "๐Ÿ‡จ๐Ÿ‡ฑ": "Flag: Chile", + "๐Ÿ‡จ๐Ÿ‡ฒ": "Flag: Cameroon", + "๐Ÿ‡จ๐Ÿ‡ณ": "Flag: China", + "๐Ÿ‡จ๐Ÿ‡ด": "Flag: Colombia", + "๐Ÿ‡จ๐Ÿ‡ต": "Flag: Clipperton Island", + "๐Ÿ‡จ๐Ÿ‡ท": "Flag: Costa Rica", + "๐Ÿ‡จ๐Ÿ‡บ": "Flag: Cuba", + "๐Ÿ‡จ๐Ÿ‡ป": "Flag: Cape Verde", + "๐Ÿ‡จ๐Ÿ‡ผ": "Flag: Curaรงao", + "๐Ÿ‡จ๐Ÿ‡ฝ": "Flag: Christmas Island", + "๐Ÿ‡จ๐Ÿ‡พ": "Flag: Cyprus", + "๐Ÿ‡จ๐Ÿ‡ฟ": "Flag: Czechia", + "๐Ÿ‡ฉ๐Ÿ‡ช": "Flag: Germany", + "๐Ÿ‡ฉ๐Ÿ‡ฌ": "Flag: Diego Garcia", + "๐Ÿ‡ฉ๐Ÿ‡ฏ": "Flag: Djibouti", + "๐Ÿ‡ฉ๐Ÿ‡ฐ": "Flag: Denmark", + "๐Ÿ‡ฉ๐Ÿ‡ฒ": "Flag: Dominica", + "๐Ÿ‡ฉ๐Ÿ‡ด": "Flag: Dominican Republic", + "๐Ÿ‡ฉ๐Ÿ‡ฟ": "Flag: Algeria", + "๐Ÿ‡ช๐Ÿ‡ฆ": "Flag: Ceuta & Melilla", + "๐Ÿ‡ช๐Ÿ‡จ": "Flag: Ecuador", + "๐Ÿ‡ช๐Ÿ‡ช": "Flag: Estonia", + "๐Ÿ‡ช๐Ÿ‡ฌ": "Flag: Egypt", + "๐Ÿ‡ช๐Ÿ‡ญ": "Flag: Western Sahara", + "๐Ÿ‡ช๐Ÿ‡ท": "Flag: Eritrea", + "๐Ÿ‡ช๐Ÿ‡ธ": "Flag: Spain", + "๐Ÿ‡ช๐Ÿ‡น": "Flag: Ethiopia", + "๐Ÿ‡ช๐Ÿ‡บ": "Flag: European Union", + "๐Ÿ‡ซ๐Ÿ‡ฎ": "Flag: Finland", + "๐Ÿ‡ซ๐Ÿ‡ฏ": "Flag: Fiji", + "๐Ÿ‡ซ๐Ÿ‡ฐ": "Flag: Falkland Islands", + "๐Ÿ‡ซ๐Ÿ‡ฒ": "Flag: Micronesia", + "๐Ÿ‡ซ๐Ÿ‡ด": "Flag: Faroe Islands", + "๐Ÿ‡ซ๐Ÿ‡ท": "Flag: France", + "๐Ÿ‡ฌ๐Ÿ‡ฆ": "Flag: Gabon", + "๐Ÿ‡ฌ๐Ÿ‡ง": "Flag: United Kingdom", + "๐Ÿ‡ฌ๐Ÿ‡ฉ": "Flag: Grenada", + "๐Ÿ‡ฌ๐Ÿ‡ช": "Flag: Georgia", + "๐Ÿ‡ฌ๐Ÿ‡ซ": "Flag: French Guiana", + "๐Ÿ‡ฌ๐Ÿ‡ฌ": "Flag: Guernsey", + "๐Ÿ‡ฌ๐Ÿ‡ญ": "Flag: Ghana", + "๐Ÿ‡ฌ๐Ÿ‡ฎ": "Flag: Gibraltar", + "๐Ÿ‡ฌ๐Ÿ‡ฑ": "Flag: Greenland", + "๐Ÿ‡ฌ๐Ÿ‡ฒ": "Flag: Gambia", + "๐Ÿ‡ฌ๐Ÿ‡ณ": "Flag: Guinea", + "๐Ÿ‡ฌ๐Ÿ‡ต": "Flag: Guadeloupe", + "๐Ÿ‡ฌ๐Ÿ‡ถ": "Flag: Equatorial Guinea", + "๐Ÿ‡ฌ๐Ÿ‡ท": "Flag: Greece", + "๐Ÿ‡ฌ๐Ÿ‡ธ": "Flag: South Georgia & South Sandwich Islands", + "๐Ÿ‡ฌ๐Ÿ‡น": "Flag: Guatemala", + "๐Ÿ‡ฌ๐Ÿ‡บ": "Flag: Guam", + "๐Ÿ‡ฌ๐Ÿ‡ผ": "Flag: Guinea-Bissau", + "๐Ÿ‡ฌ๐Ÿ‡พ": "Flag: Guyana", + "๐Ÿ‡ญ๐Ÿ‡ฐ": "Flag: Hong Kong SAR China", + "๐Ÿ‡ญ๐Ÿ‡ฒ": "Flag: Heard & McDonald Islands", + "๐Ÿ‡ญ๐Ÿ‡ณ": "Flag: Honduras", + "๐Ÿ‡ญ๐Ÿ‡ท": "Flag: Croatia", + "๐Ÿ‡ญ๐Ÿ‡น": "Flag: Haiti", + "๐Ÿ‡ญ๐Ÿ‡บ": "Flag: Hungary", + "๐Ÿ‡ฎ๐Ÿ‡จ": "Flag: Canary Islands", + "๐Ÿ‡ฎ๐Ÿ‡ฉ": "Flag: Indonesia", + "๐Ÿ‡ฎ๐Ÿ‡ช": "Flag: Ireland", + "๐Ÿ‡ฎ๐Ÿ‡ฑ": "Flag: Israel", + "๐Ÿ‡ฎ๐Ÿ‡ฒ": "Flag: Isle of Man", + "๐Ÿ‡ฎ๐Ÿ‡ณ": "Flag: India", + "๐Ÿ‡ฎ๐Ÿ‡ด": "Flag: British Indian Ocean Territory", + "๐Ÿ‡ฎ๐Ÿ‡ถ": "Flag: Iraq", + "๐Ÿ‡ฎ๐Ÿ‡ท": "Flag: Iran", + "๐Ÿ‡ฎ๐Ÿ‡ธ": "Flag: Iceland", + "๐Ÿ‡ฎ๐Ÿ‡น": "Flag: Italy", + "๐Ÿ‡ฏ๐Ÿ‡ช": "Flag: Jersey", + "๐Ÿ‡ฏ๐Ÿ‡ฒ": "Flag: Jamaica", + "๐Ÿ‡ฏ๐Ÿ‡ด": "Flag: Jordan", + "๐Ÿ‡ฏ๐Ÿ‡ต": "Flag: Japan", + "๐Ÿ‡ฐ๐Ÿ‡ช": "Flag: Kenya", + "๐Ÿ‡ฐ๐Ÿ‡ฌ": "Flag: Kyrgyzstan", + "๐Ÿ‡ฐ๐Ÿ‡ญ": "Flag: Cambodia", + "๐Ÿ‡ฐ๐Ÿ‡ฎ": "Flag: Kiribati", + "๐Ÿ‡ฐ๐Ÿ‡ฒ": "Flag: Comoros", + "๐Ÿ‡ฐ๐Ÿ‡ณ": "Flag: St. Kitts & Nevis", + "๐Ÿ‡ฐ๐Ÿ‡ต": "Flag: North Korea", + "๐Ÿ‡ฐ๐Ÿ‡ท": "Flag: South Korea", + "๐Ÿ‡ฐ๐Ÿ‡ผ": "Flag: Kuwait", + "๐Ÿ‡ฐ๐Ÿ‡พ": "Flag: Cayman Islands", + "๐Ÿ‡ฐ๐Ÿ‡ฟ": "Flag: Kazakhstan", + "๐Ÿ‡ฑ๐Ÿ‡ฆ": "Flag: Laos", + "๐Ÿ‡ฑ๐Ÿ‡ง": "Flag: Lebanon", + "๐Ÿ‡ฑ๐Ÿ‡จ": "Flag: St. Lucia", + "๐Ÿ‡ฑ๐Ÿ‡ฎ": "Flag: Liechtenstein", + "๐Ÿ‡ฑ๐Ÿ‡ฐ": "Flag: Sri Lanka", + "๐Ÿ‡ฑ๐Ÿ‡ท": "Flag: Liberia", + "๐Ÿ‡ฑ๐Ÿ‡ธ": "Flag: Lesotho", + "๐Ÿ‡ฑ๐Ÿ‡น": "Flag: Lithuania", + "๐Ÿ‡ฑ๐Ÿ‡บ": "Flag: Luxembourg", + "๐Ÿ‡ฑ๐Ÿ‡ป": "Flag: Latvia", + "๐Ÿ‡ฑ๐Ÿ‡พ": "Flag: Libya", + "๐Ÿ‡ฒ๐Ÿ‡ฆ": "Flag: Morocco", + "๐Ÿ‡ฒ๐Ÿ‡จ": "Flag: Monaco", + "๐Ÿ‡ฒ๐Ÿ‡ฉ": "Flag: Moldova", + "๐Ÿ‡ฒ๐Ÿ‡ช": "Flag: Montenegro", + "๐Ÿ‡ฒ๐Ÿ‡ซ": "Flag: St. Martin", + "๐Ÿ‡ฒ๐Ÿ‡ฌ": "Flag: Madagascar", + "๐Ÿ‡ฒ๐Ÿ‡ญ": "Flag: Marshall Islands", + "๐Ÿ‡ฒ๐Ÿ‡ฐ": "Flag: North Macedonia", + "๐Ÿ‡ฒ๐Ÿ‡ฑ": "Flag: Mali", + "๐Ÿ‡ฒ๐Ÿ‡ฒ": "Flag: Myanmar (Burma)", + "๐Ÿ‡ฒ๐Ÿ‡ณ": "Flag: Mongolia", + "๐Ÿ‡ฒ๐Ÿ‡ด": "Flag: Macao Sar China", + "๐Ÿ‡ฒ๐Ÿ‡ต": "Flag: Northern Mariana Islands", + "๐Ÿ‡ฒ๐Ÿ‡ถ": "Flag: Martinique", + "๐Ÿ‡ฒ๐Ÿ‡ท": "Flag: Mauritania", + "๐Ÿ‡ฒ๐Ÿ‡ธ": "Flag: Montserrat", + "๐Ÿ‡ฒ๐Ÿ‡น": "Flag: Malta", + "๐Ÿ‡ฒ๐Ÿ‡บ": "Flag: Mauritius", + "๐Ÿ‡ฒ๐Ÿ‡ป": "Flag: Maldives", + "๐Ÿ‡ฒ๐Ÿ‡ผ": "Flag: Malawi", + "๐Ÿ‡ฒ๐Ÿ‡ฝ": "Flag: Mexico", + "๐Ÿ‡ฒ๐Ÿ‡พ": "Flag: Malaysia", + "๐Ÿ‡ฒ๐Ÿ‡ฟ": "Flag: Mozambique", + "๐Ÿ‡ณ๐Ÿ‡ฆ": "Flag: Namibia", + "๐Ÿ‡ณ๐Ÿ‡จ": "Flag: New Caledonia", + "๐Ÿ‡ณ๐Ÿ‡ช": "Flag: Niger", + "๐Ÿ‡ณ๐Ÿ‡ซ": "Flag: Norfolk Island", + "๐Ÿ‡ณ๐Ÿ‡ฌ": "Flag: Nigeria", + "๐Ÿ‡ณ๐Ÿ‡ฎ": "Flag: Nicaragua", + "๐Ÿ‡ณ๐Ÿ‡ฑ": "Flag: Netherlands", + "๐Ÿ‡ณ๐Ÿ‡ด": "Flag: Norway", + "๐Ÿ‡ณ๐Ÿ‡ต": "Flag: Nepal", + "๐Ÿ‡ณ๐Ÿ‡ท": "Flag: Nauru", + "๐Ÿ‡ณ๐Ÿ‡บ": "Flag: Niue", + "๐Ÿ‡ณ๐Ÿ‡ฟ": "Flag: New Zealand", + "๐Ÿ‡ด๐Ÿ‡ฒ": "Flag: Oman", + "๐Ÿ‡ต๐Ÿ‡ฆ": "Flag: Panama", + "๐Ÿ‡ต๐Ÿ‡ช": "Flag: Peru", + "๐Ÿ‡ต๐Ÿ‡ซ": "Flag: French Polynesia", + "๐Ÿ‡ต๐Ÿ‡ฌ": "Flag: Papua New Guinea", + "๐Ÿ‡ต๐Ÿ‡ญ": "Flag: Philippines", + "๐Ÿ‡ต๐Ÿ‡ฐ": "Flag: Pakistan", + "๐Ÿ‡ต๐Ÿ‡ฑ": "Flag: Poland", + "๐Ÿ‡ต๐Ÿ‡ฒ": "Flag: St. Pierre & Miquelon", + "๐Ÿ‡ต๐Ÿ‡ณ": "Flag: Pitcairn Islands", + "๐Ÿ‡ต๐Ÿ‡ท": "Flag: Puerto Rico", + "๐Ÿ‡ต๐Ÿ‡ธ": "Flag: Palestinian Territories", + "๐Ÿ‡ต๐Ÿ‡น": "Flag: Portugal", + "๐Ÿ‡ต๐Ÿ‡ผ": "Flag: Palau", + "๐Ÿ‡ต๐Ÿ‡พ": "Flag: Paraguay", + "๐Ÿ‡ถ๐Ÿ‡ฆ": "Flag: Qatar", + "๐Ÿ‡ท๐Ÿ‡ช": "Flag: Rรฉunion", + "๐Ÿ‡ท๐Ÿ‡ด": "Flag: Romania", + "๐Ÿ‡ท๐Ÿ‡ธ": "Flag: Serbia", + "๐Ÿ‡ท๐Ÿ‡บ": "Flag: Russia", + "๐Ÿ‡ท๐Ÿ‡ผ": "Flag: Rwanda", + "๐Ÿ‡ธ๐Ÿ‡ฆ": "Flag: Saudi Arabia", + "๐Ÿ‡ธ๐Ÿ‡ง": "Flag: Solomon Islands", + "๐Ÿ‡ธ๐Ÿ‡จ": "Flag: Seychelles", + "๐Ÿ‡ธ๐Ÿ‡ฉ": "Flag: Sudan", + "๐Ÿ‡ธ๐Ÿ‡ช": "Flag: Sweden", + "๐Ÿ‡ธ๐Ÿ‡ฌ": "Flag: Singapore", + "๐Ÿ‡ธ๐Ÿ‡ญ": "Flag: St. Helena", + "๐Ÿ‡ธ๐Ÿ‡ฎ": "Flag: Slovenia", + "๐Ÿ‡ธ๐Ÿ‡ฏ": "Flag: Svalbard & Jan Mayen", + "๐Ÿ‡ธ๐Ÿ‡ฐ": "Flag: Slovakia", + "๐Ÿ‡ธ๐Ÿ‡ฑ": "Flag: Sierra Leone", + "๐Ÿ‡ธ๐Ÿ‡ฒ": "Flag: San Marino", + "๐Ÿ‡ธ๐Ÿ‡ณ": "Flag: Senegal", + "๐Ÿ‡ธ๐Ÿ‡ด": "Flag: Somalia", + "๐Ÿ‡ธ๐Ÿ‡ท": "Flag: Suriname", + "๐Ÿ‡ธ๐Ÿ‡ธ": "Flag: South Sudan", + "๐Ÿ‡ธ๐Ÿ‡น": "Flag: Sรฃo Tomรฉ & Prรญncipe", + "๐Ÿ‡ธ๐Ÿ‡ป": "Flag: El Salvador", + "๐Ÿ‡ธ๐Ÿ‡ฝ": "Flag: Sint Maarten", + "๐Ÿ‡ธ๐Ÿ‡พ": "Flag: Syria", + "๐Ÿ‡ธ๐Ÿ‡ฟ": "Flag: Eswatini", + "๐Ÿ‡น๐Ÿ‡ฆ": "Flag: Tristan Da Cunha", + "๐Ÿ‡น๐Ÿ‡จ": "Flag: Turks & Caicos Islands", + "๐Ÿ‡น๐Ÿ‡ฉ": "Flag: Chad", + "๐Ÿ‡น๐Ÿ‡ซ": "Flag: French Southern Territories", + "๐Ÿ‡น๐Ÿ‡ฌ": "Flag: Togo", + "๐Ÿ‡น๐Ÿ‡ญ": "Flag: Thailand", + "๐Ÿ‡น๐Ÿ‡ฏ": "Flag: Tajikistan", + "๐Ÿ‡น๐Ÿ‡ฐ": "Flag: Tokelau", + "๐Ÿ‡น๐Ÿ‡ฑ": "Flag: Timor-Leste", + "๐Ÿ‡น๐Ÿ‡ฒ": "Flag: Turkmenistan", + "๐Ÿ‡น๐Ÿ‡ณ": "Flag: Tunisia", + "๐Ÿ‡น๐Ÿ‡ด": "Flag: Tonga", + "๐Ÿ‡น๐Ÿ‡ท": "Flag: Turkey", + "๐Ÿ‡น๐Ÿ‡น": "Flag: Trinidad & Tobago", + "๐Ÿ‡น๐Ÿ‡ป": "Flag: Tuvalu", + "๐Ÿ‡น๐Ÿ‡ผ": "Flag: Taiwan", + "๐Ÿ‡น๐Ÿ‡ฟ": "Flag: Tanzania", + "๐Ÿ‡บ๐Ÿ‡ฆ": "Flag: Ukraine", + "๐Ÿ‡บ๐Ÿ‡ฌ": "Flag: Uganda", + "๐Ÿ‡บ๐Ÿ‡ฒ": "Flag: U.S. Outlying Islands", + "๐Ÿ‡บ๐Ÿ‡ณ": "Flag: United Nations", + "๐Ÿ‡บ๐Ÿ‡ธ": "Flag: United States", + "๐Ÿ‡บ๐Ÿ‡พ": "Flag: Uruguay", + "๐Ÿ‡บ๐Ÿ‡ฟ": "Flag: Uzbekistan", + "๐Ÿ‡ป๐Ÿ‡ฆ": "Flag: Vatican City", + "๐Ÿ‡ป๐Ÿ‡จ": "Flag: St. Vincent & Grenadines", + "๐Ÿ‡ป๐Ÿ‡ช": "Flag: Venezuela", + "๐Ÿ‡ป๐Ÿ‡ฌ": "Flag: British Virgin Islands", + "๐Ÿ‡ป๐Ÿ‡ฎ": "Flag: U.S. Virgin Islands", + "๐Ÿ‡ป๐Ÿ‡ณ": "Flag: Vietnam", + "๐Ÿ‡ป๐Ÿ‡บ": "Flag: Vanuatu", + "๐Ÿ‡ผ๐Ÿ‡ซ": "Flag: Wallis & Futuna", + "๐Ÿ‡ผ๐Ÿ‡ธ": "Flag: Samoa", + "๐Ÿ‡ฝ๐Ÿ‡ฐ": "Flag: Kosovo", + "๐Ÿ‡พ๐Ÿ‡ช": "Flag: Yemen", + "๐Ÿ‡พ๐Ÿ‡น": "Flag: Mayotte", + "๐Ÿ‡ฟ๐Ÿ‡ฆ": "Flag: South Africa", + "๐Ÿ‡ฟ๐Ÿ‡ฒ": "Flag: Zambia", + "๐Ÿ‡ฟ๐Ÿ‡ผ": "Flag: Zimbabwe", + "๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ": "Flag: England", + "๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ": "Flag: Scotland", + "๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ": "Flag: Wales", + "๐Ÿด๓ ต๓ ณ๓ ด๓ ธ๓ ฟ": "Flag for Texas (US-TX)", + }, + } + + self.total_emojis = {} + + for group, items in self.emojis.items(): + box = QGroupBox(group) + layout = QGridLayout() + for i, (emoji, name) in enumerate(items.items()): + # uses a little modified push button which recognizes when the mouse is over the button + button = self.__QHoverPushButton(text=emoji, parent_emoji_picker=self) + + button.setFlat(True) + button.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) + button.setFixedSize(30, 30) + # the button style + button.setStyleSheet( + "QPushButton {" + " font-size: 20px;" + " border-radius: 50%%;" + "}" + "QPushButton:hover {" + " background-color: %s" + "}" % button.palette().button().color().darker().name() + ) + layout.addWidget( + button, int(i / self.items_per_row), i % self.items_per_row + ) + + # adds the current emoji with its name to a dict where are all emojis without groups are listed + self.total_emojis[emoji] = name + + box.setLayout(layout) + self.emoji_scroll_area_vlayout.addWidget(box) + + def setupUi(self, Form): + Form.setObjectName("Form") + Form.resize(400, 300) + sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(Form.sizePolicy().hasHeightForWidth()) + Form.setSizePolicy(sizePolicy) + self.verticalLayout = QVBoxLayout(Form) + self.verticalLayout.setObjectName("verticalLayout") + self.search_line_edit = QLineEdit(Form) + self.search_line_edit.setObjectName("search_line_edit") + self.verticalLayout.addWidget(self.search_line_edit) + self.emoji_scroll_area = QScrollArea(Form) + self.emoji_scroll_area.setWidgetResizable(True) + self.emoji_scroll_area.setObjectName("emoji_scroll_area") + self.emoji_scroll_area_widgets = QWidget() + self.emoji_scroll_area_widgets.setGeometry(QtCore.QRect(0, 0, 384, 198)) + self.emoji_scroll_area_widgets.setObjectName("emoji_scroll_area_widgets") + self.emoji_scroll_area_vlayout = QVBoxLayout(self.emoji_scroll_area_widgets) + self.emoji_scroll_area_vlayout.setObjectName("emoji_scroll_area_vlayout") + self.emoji_scroll_area.setWidget(self.emoji_scroll_area_widgets) + self.verticalLayout.addWidget(self.emoji_scroll_area) + self.emoji_information_hlayout = QHBoxLayout() + self.emoji_information_hlayout.setObjectName("emoji_information_hlayout") + self.emoji_image_label = QLabel(Form) + sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth( + self.emoji_image_label.sizePolicy().hasHeightForWidth() + ) + self.emoji_image_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(22) + self.emoji_image_label.setFont(font) + self.emoji_image_label.setText("") + self.emoji_image_label.setObjectName("emoji_image_label") + self.emoji_information_hlayout.addWidget(self.emoji_image_label) + self.emoji_name_label = QLabel(Form) + sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth( + self.emoji_name_label.sizePolicy().hasHeightForWidth() + ) + self.emoji_name_label.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setPointSize(10) + self.emoji_name_label.setFont(font) + self.emoji_name_label.setText("") + self.emoji_name_label.setObjectName("emoji_name_label") + self.emoji_information_hlayout.addWidget(self.emoji_name_label) + self.verticalLayout.addLayout(self.emoji_information_hlayout) + + self.retranslateUi(Form) + QtCore.QMetaObject.connectSlotsByName(Form) + + def retranslateUi(self, Form): + _translate = QtCore.QCoreApplication.translate + Form.setWindowTitle(_translate("Form", "Form")) + self.search_line_edit.setPlaceholderText(_translate("Form", "Search...")) + + def select(self) -> typing.Union[str, None]: + """Shows this window and returns the selected emoji if a button was pressed or none, if the window was closed without choosing an emoji""" + self.exec() + return self.selected_emoji + + def on_input(self, text: str): + """This method gets called if the text in the search input changes and selects all emojis which correspond with the search input text""" + for i in range(self.emoji_scroll_area_vlayout.count()): + group = self.emoji_scroll_area_vlayout.itemAt(i).widget() + # hides and deletes the previous 'Search results' group box + if group.title() == "Search results": + group.hide() + group.deleteLater() + # if no text is given / the search input is empty, every group which is hidden will be shown + elif not text and group.isHidden(): + group.show() + # if a text is given / the search input has text, every group which is not hidden will be shown + elif text and not group.isHidden(): + group.hide() + + if text: + search_results = QGroupBox("Search results") + layout = QGridLayout() + + items = -1 + + def add_item(): + # `items` is readonly in inner functions, so it can't increased here and has to be increases in the two loop below + + # uses a little modified push button which recognizes when the mouse is over the button + button = self.__QHoverPushButton(text=emoji, parent_emoji_picker=self) + + button.setFlat(True) + button.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) + button.setFixedSize(30, 30) + # the button style + button.setStyleSheet( + "QPushButton {" + " font-size: 20px;" + " border-radius: 50%%;" + "}" + "QPushButton:hover {" + " background-color: %s" + "}" % button.palette().button().color().darker().name() + ) + layout.addWidget( + button, int(items / self.items_per_row), items % self.items_per_row + ) + + lower_text = text.lower() + # if `self.performance_search` is True, only emoji names starting with the specified text are displayed + if self.performance_search: + for emoji, name in self.total_emojis.items(): + if name.lower().startswith(lower_text): + items += 1 + add_item() + # but if `self.performance_search` is False, emoji texts which containing the specified text are displayed + else: + for emoji, name in self.total_emojis.items(): + if lower_text in name.lower(): + items += 1 + add_item() + + # adds a spacer below the found emojis to "order" them properly + layout.addItem( + QSpacerItem( + 40, + 20, + QSizePolicy.Expanding, + QSizePolicy.Expanding, + ), + int(items / self.items_per_row) + 1, + 0, + columnSpan=self.items_per_row, + ) + + search_results.setLayout(layout) + self.emoji_scroll_area_vlayout.insertWidget(0, search_results) + + class __QHoverPushButton(QPushButton): + """A custom QPushButton which detects when a mouse hovers it""" + + def __init__(self, text: str, parent_emoji_picker): + """ + Args: + text: The button text + parent_emoji_picker (QEmojiPicker): The parent emoji picker + """ + super().__init__(text) + self.clicked.connect(self.on_click) + + self.parent_emoji_picker = parent_emoji_picker + + def enterEvent(self, a0: QtCore.QEvent) -> None: + """On mouse hover / when the mouse is over the button""" + self.parent_emoji_picker.emoji_image_label.setText(self.text()) + group_title = self.parentWidget().title() + # when the group title is 'Search results' the user has used the search input + if group_title == "Search results": + self.parent_emoji_picker.emoji_name_label.setText( + self.parent_emoji_picker.total_emojis[self.text()] + ) + else: + self.parent_emoji_picker.emoji_name_label.setText( + self.parent_emoji_picker.emojis[group_title][self.text()] + ) + + def leaveEvent(self, a0: QtCore.QEvent) -> None: + """When the mouse leaves the button""" + self.parent_emoji_picker.emoji_image_label.setText("") + self.parent_emoji_picker.emoji_name_label.setText("") + + def on_click(self): + """Gets called if the button is pressed. Closes the emoji picker and if it was called via `QEmojiPicker.select()` the current button emoji will be returned""" + self.parent_emoji_picker.selected_emoji = self.text() + self.parent_emoji_picker.close() From 30f12f46354a920db704fbc2a988e35c12f24317 Mon Sep 17 00:00:00 2001 From: "Julien M." Date: Wed, 24 Jul 2024 22:47:50 +0200 Subject: [PATCH 07/10] feature(gischat): move emojis to external file --- qtribu/gui/dlg_emoji_picker.py | 1872 +------------------------------- qtribu/resources/emojis.json | 894 +++++++++++++++ qtribu/resources/emojis2.json | 1850 +++++++++++++++++++++++++++++++ 3 files changed, 2762 insertions(+), 1854 deletions(-) create mode 100644 qtribu/resources/emojis.json create mode 100644 qtribu/resources/emojis2.json diff --git a/qtribu/gui/dlg_emoji_picker.py b/qtribu/gui/dlg_emoji_picker.py index da5fc02e..a0d0d815 100644 --- a/qtribu/gui/dlg_emoji_picker.py +++ b/qtribu/gui/dlg_emoji_picker.py @@ -1,5 +1,8 @@ +# standard +import json import typing +# PyQGIS from qgis.PyQt import QtCore, QtGui from qgis.PyQt.QtWidgets import ( QDialog, @@ -16,6 +19,9 @@ QWidget, ) +# plugin +from qtribu.__about__ import DIR_PLUGIN_ROOT + class QEmojiPicker(QDialog): """A simple emoji picker""" @@ -23,9 +29,9 @@ class QEmojiPicker(QDialog): def __init__( self, parent: typing.Optional[QWidget] = None, - flags: typing.Union[QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = None, - items_per_row=8, - performance_search=True, + flags: typing.Union[None, QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = None, + items_per_row: int = 8, + performance_search: bool = True, ): """ Args: @@ -34,7 +40,7 @@ def __init__( items_per_row: How many items per row should be displayed performance_search: If True, the search input will display the emojis faster. See `self.on_input(...)` for more details """ - if flags: + if flags is not None: super().__init__(parent, flags) else: super().__init__(parent) @@ -51,1857 +57,8 @@ def __init__( self.search_line_edit.textChanged.connect(self.on_input) # the emojis. a pretty long dict... - self.emojis = { - "Smileys & People": { - "๐Ÿ˜€": "Grinning Face", - "๐Ÿ˜ƒ": "Grinning Face with Big Eyes", - "๐Ÿ˜„": "Grinning Face with Smiling Eyes", - "๐Ÿ˜": "Beaming Face with Smiling Eyes", - "๐Ÿ˜†": "Grinning Squinting Face", - "๐Ÿ˜…": "Grinning Face with Sweat", - "๐Ÿคฃ": "Rolling on the Floor Laughing", - "๐Ÿ˜‚": "Face with Tears of Joy", - "๐Ÿ™‚": "Slightly Smiling Face", - "๐Ÿ™ƒ": "Upside-Down Face", - "๐Ÿ˜‰": "Winking Face", - "๐Ÿ˜Š": "Smiling Face with Smiling Eyes", - "๐Ÿ˜‡": "Smiling Face with Halo", - "๐Ÿฅฐ": "Smiling Face with Hearts", - "๐Ÿ˜": "Smiling Face with Heart-Eyes", - "๐Ÿคฉ": "Star-Struck", - "๐Ÿ˜˜": "Face Blowing a Kiss", - "๐Ÿ˜—": "Kissing Face", - "โ˜บ๏ธ": "Smiling Face", - "๐Ÿ˜š": "Kissing Face with Closed Eyes", - "๐Ÿ˜™": "Kissing Face with Smiling Eyes", - "๐Ÿฅฒ": "Smiling Face with Tear", - "๐Ÿ˜‹": "Face Savoring Food", - "๐Ÿ˜›": "Face with Tongue", - "๐Ÿ˜œ": "Winking Face with Tongue", - "๐Ÿคช": "Zany Face", - "๐Ÿ˜": "Squinting Face with Tongue", - "๐Ÿค‘": "Money-Mouth Face", - "๐Ÿค—": "Hugging Face", - "๐Ÿคญ": "Face with Hand Over Mouth", - "๐Ÿคซ": "Shushing Face", - "๐Ÿค”": "Thinking Face", - "๐Ÿค": "Zipper-Mouth Face", - "๐Ÿคจ": "Face with Raised Eyebrow", - "๐Ÿ˜": "Neutral Face", - "๐Ÿ˜‘": "Expressionless Face", - "๐Ÿ˜ถ": "Face Without Mouth", - "๐Ÿ˜": "Smirking Face", - "๐Ÿ˜’": "Unamused Face", - "๐Ÿ™„": "Face with Rolling Eyes", - "๐Ÿ˜ฌ": "Grimacing Face", - "๐Ÿคฅ": "Lying Face", - "๐Ÿ˜Œ": "Relieved Face", - "๐Ÿ˜”": "Pensive Face", - "๐Ÿ˜ช": "Sleepy Face", - "๐Ÿคค": "Drooling Face", - "๐Ÿ˜ด": "Sleeping Face", - "๐Ÿ˜ท": "Face with Medical Mask", - "๐Ÿค’": "Face with Thermometer", - "๐Ÿค•": "Face with Head-Bandage", - "๐Ÿคข": "Nauseated Face", - "๐Ÿคฎ": "Face Vomiting", - "๐Ÿคง": "Sneezing Face", - "๐Ÿฅต": "Hot Face", - "๐Ÿฅถ": "Cold Face", - "๐Ÿฅด": "Woozy Face", - "๐Ÿ˜ต": "Dizzy Face", - "๐Ÿคฏ": "Exploding Head", - "๐Ÿค ": "Cowboy Hat Face", - "๐Ÿฅณ": "Partying Face", - "๐Ÿฅธ": "Disguised Face", - "๐Ÿ˜Ž": "Smiling Face with Sunglasses", - "๐Ÿค“": "Nerd Face", - "๐Ÿง": "Face with Monocle", - "๐Ÿ˜•": "Confused Face", - "๐Ÿ˜Ÿ": "Worried Face", - "๐Ÿ™": "Slightly Frowning Face", - "โ˜น๏ธ": "Frowning Face", - "๐Ÿ˜ฎ": "Face with Open Mouth", - "๐Ÿ˜ฏ": "Hushed Face", - "๐Ÿ˜ฒ": "Astonished Face", - "๐Ÿ˜ณ": "Flushed Face", - "๐Ÿฅบ": "Pleading Face", - "๐Ÿ˜ฆ": "Frowning Face with Open Mouth", - "๐Ÿ˜ง": "Anguished Face", - "๐Ÿ˜จ": "Fearful Face", - "๐Ÿ˜ฐ": "Anxious Face with Sweat", - "๐Ÿ˜ฅ": "Sad but Relieved Face", - "๐Ÿ˜ข": "Crying Face", - "๐Ÿ˜ญ": "Loudly Crying Face", - "๐Ÿ˜ฑ": "Face Screaming in Fear", - "๐Ÿ˜–": "Confounded Face", - "๐Ÿ˜ฃ": "Persevering Face", - "๐Ÿ˜ž": "Disappointed Face", - "๐Ÿ˜“": "Downcast Face with Sweat", - "๐Ÿ˜ฉ": "Weary Face", - "๐Ÿ˜ซ": "Tired Face", - "๐Ÿฅฑ": "Yawning Face", - "๐Ÿ˜ค": "Face with Steam From Nose", - "๐Ÿ˜ก": "Pouting Face", - "๐Ÿ˜ ": "Angry Face", - "๐Ÿคฌ": "Face with Symbols on Mouth", - "๐Ÿ˜ˆ": "Smiling Face with Horns", - "๐Ÿ‘ฟ": "Angry Face with Horns", - "๐Ÿ’€": "Skull", - "โ˜ ๏ธ": "Skull and Crossbones", - "๐Ÿ’ฉ": "Pile of Poo", - "๐Ÿคก": "Clown Face", - "๐Ÿ‘น": "Ogre", - "๐Ÿ‘บ": "Goblin", - "๐Ÿ‘ป": "Ghost", - "๐Ÿ‘ฝ": "Alien", - "๐Ÿ‘พ": "Alien Monster", - "๐Ÿค–": "Robot", - "๐Ÿ˜บ": "Grinning Cat", - "๐Ÿ˜ธ": "Grinning Cat with Smiling Eyes", - "๐Ÿ˜น": "Cat with Tears of Joy", - "๐Ÿ˜ป": "Smiling Cat with Heart-Eyes", - "๐Ÿ˜ผ": "Cat with Wry Smile", - "๐Ÿ˜ฝ": "Kissing Cat", - "๐Ÿ™€": "Weary Cat", - "๐Ÿ˜ฟ": "Crying Cat", - "๐Ÿ˜พ": "Pouting Cat", - "๐Ÿ’‹": "Kiss Mark", - "๐Ÿ‘‹": "Waving Hand", - "๐Ÿคš": "Raised Back of Hand", - "๐Ÿ–๏ธ": "Hand with Fingers Splayed", - "โœ‹": "Raised Hand", - "๐Ÿ––": "Vulcan Salute", - "๐Ÿ‘Œ": "OK Hand", - "๐ŸคŒ": "Pinched Fingers", - "๐Ÿค": "Pinching Hand", - "โœŒ๏ธ": "Victory Hand", - "๐Ÿคž": "Crossed Fingers", - "๐ŸคŸ": "Love-You Gesture", - "๐Ÿค˜": "Sign of the Horns", - "๐Ÿค™": "Call Me Hand", - "๐Ÿ‘ˆ": "Backhand Index Pointing Left", - "๐Ÿ‘‰": "Backhand Index Pointing Right", - "๐Ÿ‘†": "Backhand Index Pointing Up", - "๐Ÿ–•": "Middle Finger", - "๐Ÿ‘‡": "Backhand Index Pointing Down", - "โ˜๏ธ": "Index Pointing Up", - "๐Ÿ‘": "Thumbs Up", - "๐Ÿ‘Ž": "Thumbs Down", - "โœŠ": "Raised Fist", - "๐Ÿ‘Š": "Oncoming Fist", - "๐Ÿค›": "Left-Facing Fist", - "๐Ÿคœ": "Right-Facing Fist", - "๐Ÿ‘": "Clapping Hands", - "๐Ÿ™Œ": "Raising Hands", - "๐Ÿ‘": "Open Hands", - "๐Ÿคฒ": "Palms Up Together", - "๐Ÿค": "Handshake", - "๐Ÿ™": "Folded Hands", - "โœ๏ธ": "Writing Hand", - "๐Ÿ’…": "Nail Polish", - "๐Ÿคณ": "Selfie", - "๐Ÿ’ช": "Flexed Biceps", - "๐Ÿฆพ": "Mechanical Arm", - "๐Ÿฆฟ": "Mechanical Leg", - "๐Ÿฆต": "Leg", - "๐Ÿฆถ": "Foot", - "๐Ÿ‘‚": "Ear", - "๐Ÿฆป": "Ear with Hearing Aid", - "๐Ÿ‘ƒ": "Nose", - "๐Ÿง ": "Brain", - "๐Ÿซ€": "Anatomical Heart", - "๐Ÿซ": "Lungs", - "๐Ÿฆท": "Tooth", - "๐Ÿฆด": "Bone", - "๐Ÿ‘€": "Eyes", - "๐Ÿ‘๏ธ": "Eye", - "๐Ÿ‘…": "Tongue", - "๐Ÿ‘„": "Mouth", - "๐Ÿ‘ถ": "Baby", - "๐Ÿง’": "Child", - "๐Ÿ‘ฆ": "Boy", - "๐Ÿ‘ง": "Girl", - "๐Ÿง‘": "Person", - "๐Ÿ‘ฑ": "Person: Blond Hair", - "๐Ÿ‘จ": "Man", - "๐Ÿง”": "Person: Beard", - "๐Ÿ‘จโ€๐Ÿฆฐ": "Man: Red Hair", - "๐Ÿ‘จโ€๐Ÿฆฑ": "Man: Curly Hair", - "๐Ÿ‘จโ€๐Ÿฆณ": "Man: White Hair", - "๐Ÿ‘จโ€๐Ÿฆฒ": "Man: Bald", - "๐Ÿ‘ฉ": "Woman", - "๐Ÿ‘ฉโ€๐Ÿฆฐ": "Woman: Red Hair", - "๐Ÿง‘โ€๐Ÿฆฐ": "Person: Red Hair", - "๐Ÿ‘ฉโ€๐Ÿฆฑ": "Woman: Curly Hair", - "๐Ÿง‘โ€๐Ÿฆฑ": "Person: Curly Hair", - "๐Ÿ‘ฉโ€๐Ÿฆณ": "Woman: White Hair", - "๐Ÿง‘โ€๐Ÿฆณ": "Person: White Hair", - "๐Ÿ‘ฉโ€๐Ÿฆฒ": "Woman: Bald", - "๐Ÿง‘โ€๐Ÿฆฒ": "Person: Bald", - "๐Ÿ‘ฑโ€โ™€๏ธ": "Woman: Blond Hair", - "๐Ÿ‘ฑโ€โ™‚๏ธ": "Man: Blond Hair", - "๐Ÿง“": "Older Person", - "๐Ÿ‘ด": "Old Man", - "๐Ÿ‘ต": "Old Woman", - "๐Ÿ™": "Person Frowning", - "๐Ÿ™โ€โ™‚๏ธ": "Man Frowning", - "๐Ÿ™โ€โ™€๏ธ": "Woman Frowning", - "๐Ÿ™Ž": "Person Pouting", - "๐Ÿ™Žโ€โ™‚๏ธ": "Man Pouting", - "๐Ÿ™Žโ€โ™€๏ธ": "Woman Pouting", - "๐Ÿ™…": "Person Gesturing No", - "๐Ÿ™…โ€โ™‚๏ธ": "Man Gesturing No", - "๐Ÿ™…โ€โ™€๏ธ": "Woman Gesturing No", - "๐Ÿ™†": "Person Gesturing OK", - "๐Ÿ™†โ€โ™‚๏ธ": "Man Gesturing OK", - "๐Ÿ™†โ€โ™€๏ธ": "Woman Gesturing OK", - "๐Ÿ’": "Person Tipping Hand", - "๐Ÿ’โ€โ™‚๏ธ": "Man Tipping Hand", - "๐Ÿ’โ€โ™€๏ธ": "Woman Tipping Hand", - "๐Ÿ™‹": "Person Raising Hand", - "๐Ÿ™‹โ€โ™‚๏ธ": "Man Raising Hand", - "๐Ÿ™‹โ€โ™€๏ธ": "Woman Raising Hand", - "๐Ÿง": "Deaf Person", - "๐Ÿงโ€โ™‚๏ธ": "Deaf Man", - "๐Ÿงโ€โ™€๏ธ": "Deaf Woman", - "๐Ÿ™‡": "Person Bowing", - "๐Ÿ™‡โ€โ™‚๏ธ": "Man Bowing", - "๐Ÿ™‡โ€โ™€๏ธ": "Woman Bowing", - "๐Ÿคฆ": "Person Facepalming", - "๐Ÿคฆโ€โ™‚๏ธ": "Man Facepalming", - "๐Ÿคฆโ€โ™€๏ธ": "Woman Facepalming", - "๐Ÿคท": "Person Shrugging", - "๐Ÿคทโ€โ™‚๏ธ": "Man Shrugging", - "๐Ÿคทโ€โ™€๏ธ": "Woman Shrugging", - "๐Ÿง‘โ€โš•๏ธ": "Health Worker", - "๐Ÿ‘จโ€โš•๏ธ": "Man Health Worker", - "๐Ÿ‘ฉโ€โš•๏ธ": "Woman Health Worker", - "๐Ÿง‘โ€๐ŸŽ“": "Student", - "๐Ÿ‘จโ€๐ŸŽ“": "Man Student", - "๐Ÿ‘ฉโ€๐ŸŽ“": "Woman Student", - "๐Ÿง‘โ€๐Ÿซ": "Teacher", - "๐Ÿ‘จโ€๐Ÿซ": "Man Teacher", - "๐Ÿ‘ฉโ€๐Ÿซ": "Woman Teacher", - "๐Ÿง‘โ€โš–๏ธ": "Judge", - "๐Ÿ‘จโ€โš–๏ธ": "Man Judge", - "๐Ÿ‘ฉโ€โš–๏ธ": "Woman Judge", - "๐Ÿง‘โ€๐ŸŒพ": "Farmer", - "๐Ÿ‘จโ€๐ŸŒพ": "Man Farmer", - "๐Ÿ‘ฉโ€๐ŸŒพ": "Woman Farmer", - "๐Ÿง‘โ€๐Ÿณ": "Cook", - "๐Ÿ‘จโ€๐Ÿณ": "Man Cook", - "๐Ÿ‘ฉโ€๐Ÿณ": "Woman Cook", - "๐Ÿง‘โ€๐Ÿ”ง": "Mechanic", - "๐Ÿ‘จโ€๐Ÿ”ง": "Man Mechanic", - "๐Ÿ‘ฉโ€๐Ÿ”ง": "Woman Mechanic", - "๐Ÿง‘โ€๐Ÿญ": "Factory Worker", - "๐Ÿ‘จโ€๐Ÿญ": "Man Factory Worker", - "๐Ÿ‘ฉโ€๐Ÿญ": "Woman Factory Worker", - "๐Ÿง‘โ€๐Ÿ’ผ": "Office Worker", - "๐Ÿ‘จโ€๐Ÿ’ผ": "Man Office Worker", - "๐Ÿ‘ฉโ€๐Ÿ’ผ": "Woman Office Worker", - "๐Ÿง‘โ€๐Ÿ”ฌ": "Scientist", - "๐Ÿ‘จโ€๐Ÿ”ฌ": "Man Scientist", - "๐Ÿ‘ฉโ€๐Ÿ”ฌ": "Woman Scientist", - "๐Ÿง‘โ€๐Ÿ’ป": "Technologist", - "๐Ÿ‘จโ€๐Ÿ’ป": "Man Technologist", - "๐Ÿ‘ฉโ€๐Ÿ’ป": "Woman Technologist", - "๐Ÿง‘โ€๐ŸŽค": "Singer", - "๐Ÿ‘จโ€๐ŸŽค": "Man Singer", - "๐Ÿ‘ฉโ€๐ŸŽค": "Woman Singer", - "๐Ÿง‘โ€๐ŸŽจ": "Artist", - "๐Ÿ‘จโ€๐ŸŽจ": "Man Artist", - "๐Ÿ‘ฉโ€๐ŸŽจ": "Woman Artist", - "๐Ÿง‘โ€โœˆ๏ธ": "Pilot", - "๐Ÿ‘จโ€โœˆ๏ธ": "Man Pilot", - "๐Ÿ‘ฉโ€โœˆ๏ธ": "Woman Pilot", - "๐Ÿง‘โ€๐Ÿš€": "Astronaut", - "๐Ÿ‘จโ€๐Ÿš€": "Man Astronaut", - "๐Ÿ‘ฉโ€๐Ÿš€": "Woman Astronaut", - "๐Ÿง‘โ€๐Ÿš’": "Firefighter", - "๐Ÿ‘จโ€๐Ÿš’": "Man Firefighter", - "๐Ÿ‘ฉโ€๐Ÿš’": "Woman Firefighter", - "๐Ÿ‘ฎ": "Police Officer", - "๐Ÿ‘ฎโ€โ™‚๏ธ": "Man Police Officer", - "๐Ÿ‘ฎโ€โ™€๏ธ": "Woman Police Officer", - "๐Ÿ•ต๏ธ": "Detective", - "๐Ÿ•ต๏ธโ€โ™‚๏ธ": "Man Detective", - "๐Ÿ•ต๏ธโ€โ™€๏ธ": "Woman Detective", - "๐Ÿ’‚": "Guard", - "๐Ÿ’‚โ€โ™‚๏ธ": "Man Guard", - "๐Ÿ’‚โ€โ™€๏ธ": "Woman Guard", - "๐Ÿฅท": "Ninja", - "๐Ÿ‘ท": "Construction Worker", - "๐Ÿ‘ทโ€โ™‚๏ธ": "Man Construction Worker", - "๐Ÿ‘ทโ€โ™€๏ธ": "Woman Construction Worker", - "๐Ÿคด": "Prince", - "๐Ÿ‘ธ": "Princess", - "๐Ÿ‘ณ": "Person Wearing Turban", - "๐Ÿ‘ณโ€โ™‚๏ธ": "Man Wearing Turban", - "๐Ÿ‘ณโ€โ™€๏ธ": "Woman Wearing Turban", - "๐Ÿ‘ฒ": "Person With Skullcap", - "๐Ÿง•": "Woman with Headscarf", - "๐Ÿคต": "Person in Tuxedo", - "๐Ÿคตโ€โ™‚๏ธ": "Man in Tuxedo", - "๐Ÿคตโ€โ™€๏ธ": "Woman in Tuxedo", - "๐Ÿ‘ฐ": "Person With Veil", - "๐Ÿ‘ฐโ€โ™‚๏ธ": "Man with Veil", - "๐Ÿ‘ฐโ€โ™€๏ธ": "Woman with Veil", - "๐Ÿคฐ": "Pregnant Woman", - "๐Ÿคฑ": "Breast-Feeding", - "๐Ÿ‘ฉโ€๐Ÿผ": "Woman Feeding Baby", - "๐Ÿ‘จโ€๐Ÿผ": "Man Feeding Baby", - "๐Ÿง‘โ€๐Ÿผ": "Person Feeding Baby", - "๐Ÿ‘ผ": "Baby Angel", - "๐ŸŽ…": "Santa Claus", - "๐Ÿคถ": "Mrs. Claus", - "๐Ÿง‘โ€๐ŸŽ„": "Mx Claus", - "๐Ÿฆธ": "Superhero", - "๐Ÿฆธโ€โ™‚๏ธ": "Man Superhero", - "๐Ÿฆธโ€โ™€๏ธ": "Woman Superhero", - "๐Ÿฆน": "Supervillain", - "๐Ÿฆนโ€โ™‚๏ธ": "Man Supervillain", - "๐Ÿฆนโ€โ™€๏ธ": "Woman Supervillain", - "๐Ÿง™": "Mage", - "๐Ÿง™โ€โ™‚๏ธ": "Man Mage", - "๐Ÿง™โ€โ™€๏ธ": "Woman Mage", - "๐Ÿงš": "Fairy", - "๐Ÿงšโ€โ™‚๏ธ": "Man Fairy", - "๐Ÿงšโ€โ™€๏ธ": "Woman Fairy", - "๐Ÿง›": "Vampire", - "๐Ÿง›โ€โ™‚๏ธ": "Man Vampire", - "๐Ÿง›โ€โ™€๏ธ": "Woman Vampire", - "๐Ÿงœ": "Merperson", - "๐Ÿงœโ€โ™‚๏ธ": "Merman", - "๐Ÿงœโ€โ™€๏ธ": "Mermaid", - "๐Ÿง": "Elf", - "๐Ÿงโ€โ™‚๏ธ": "Man Elf", - "๐Ÿงโ€โ™€๏ธ": "Woman Elf", - "๐Ÿงž": "Genie", - "๐Ÿงžโ€โ™‚๏ธ": "Man Genie", - "๐Ÿงžโ€โ™€๏ธ": "Woman Genie", - "๐ŸงŸ": "Zombie", - "๐ŸงŸโ€โ™‚๏ธ": "Man Zombie", - "๐ŸงŸโ€โ™€๏ธ": "Woman Zombie", - "๐Ÿ’†": "Person Getting Massage", - "๐Ÿ’†โ€โ™‚๏ธ": "Man Getting Massage", - "๐Ÿ’†โ€โ™€๏ธ": "Woman Getting Massage", - "๐Ÿ’‡": "Person Getting Haircut", - "๐Ÿ’‡โ€โ™‚๏ธ": "Man Getting Haircut", - "๐Ÿ’‡โ€โ™€๏ธ": "Woman Getting Haircut", - "๐Ÿšถ": "Person Walking", - "๐Ÿšถโ€โ™‚๏ธ": "Man Walking", - "๐Ÿšถโ€โ™€๏ธ": "Woman Walking", - "๐Ÿง": "Person Standing", - "๐Ÿงโ€โ™‚๏ธ": "Man Standing", - "๐Ÿงโ€โ™€๏ธ": "Woman Standing", - "๐ŸงŽ": "Person Kneeling", - "๐ŸงŽโ€โ™‚๏ธ": "Man Kneeling", - "๐ŸงŽโ€โ™€๏ธ": "Woman Kneeling", - "๐Ÿง‘โ€๐Ÿฆฏ": "Person with White Cane", - "๐Ÿ‘จโ€๐Ÿฆฏ": "Man with White Cane", - "๐Ÿ‘ฉโ€๐Ÿฆฏ": "Woman with White Cane", - "๐Ÿง‘โ€๐Ÿฆผ": "Person in Motorized Wheelchair", - "๐Ÿ‘จโ€๐Ÿฆผ": "Man in Motorized Wheelchair", - "๐Ÿ‘ฉโ€๐Ÿฆผ": "Woman in Motorized Wheelchair", - "๐Ÿง‘โ€๐Ÿฆฝ": "Person in Manual Wheelchair", - "๐Ÿ‘จโ€๐Ÿฆฝ": "Man in Manual Wheelchair", - "๐Ÿ‘ฉโ€๐Ÿฆฝ": "Woman in Manual Wheelchair", - "๐Ÿƒ": "Person Running", - "๐Ÿƒโ€โ™‚๏ธ": "Man Running", - "๐Ÿƒโ€โ™€๏ธ": "Woman Running", - "๐Ÿ’ƒ": "Woman Dancing", - "๐Ÿ•บ": "Man Dancing", - "๐Ÿ•ด๏ธ": "Person in Suit Levitating", - "๐Ÿ‘ฏ": "People with Bunny Ears", - "๐Ÿ‘ฏโ€โ™‚๏ธ": "Men with Bunny Ears", - "๐Ÿ‘ฏโ€โ™€๏ธ": "Women with Bunny Ears", - "๐Ÿง–": "Person in Steamy Room", - "๐Ÿง–โ€โ™‚๏ธ": "Man in Steamy Room", - "๐Ÿง–โ€โ™€๏ธ": "Woman in Steamy Room", - "๐Ÿง˜": "Person in Lotus Position", - "๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘": "People Holding Hands", - "๐Ÿ‘ญ": "Women Holding Hands", - "๐Ÿ‘ซ": "Woman and Man Holding Hands", - "๐Ÿ‘ฌ": "Men Holding Hands", - "๐Ÿ’": "Kiss", - "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ": "Kiss: Woman, Man", - "๐Ÿ‘จโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ": "Kiss: Man, Man", - "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ": "Kiss: Woman, Woman", - "๐Ÿ’‘": "Couple with Heart", - "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ": "Couple with Heart: Woman, Man", - "๐Ÿ‘จโ€โค๏ธโ€๐Ÿ‘จ": "Couple with Heart: Man, Man", - "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ": "Couple with Heart: Woman, Woman", - "๐Ÿ‘ช": "Family", - "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Man, Woman, Boy", - "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Man, Woman, Girl", - "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Woman, Girl, Boy", - "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Woman, Boy, Boy", - "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Woman, Girl, Girl", - "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆ": "Family: Man, Man, Boy", - "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง": "Family: Man, Man, Girl", - "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Man, Girl, Boy", - "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Man, Boy, Boy", - "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Man, Girl, Girl", - "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Boy", - "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Woman, Woman, Girl", - "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Girl, Boy", - "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Boy, Boy", - "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Woman, Woman, Girl, Girl", - "๐Ÿ‘จโ€๐Ÿ‘ฆ": "Family: Man, Boy", - "๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Boy, Boy", - "๐Ÿ‘จโ€๐Ÿ‘ง": "Family: Man, Girl", - "๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Girl, Boy", - "๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Girl, Girl", - "๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Woman, Boy", - "๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Woman, Boy, Boy", - "๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Woman, Girl", - "๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Woman, Girl, Boy", - "๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Woman, Girl, Girl", - "๐Ÿ—ฃ๏ธ": "Speaking Head", - "๐Ÿ‘ค": "Bust in Silhouette", - "๐Ÿ‘ฅ": "Busts in Silhouette", - "๐Ÿซ‚": "People Hugging", - "๐Ÿ‘ฃ": "Footprints", - "๐Ÿงณ": "Luggage", - "๐ŸŒ‚": "Closed Umbrella", - "โ˜‚๏ธ": "Umbrella", - "๐ŸŽƒ": "Jack-O-Lantern", - "๐Ÿงต": "Thread", - "๐Ÿงถ": "Yarn", - "๐Ÿ‘“": "Glasses", - "๐Ÿ•ถ๏ธ": "Sunglasses", - "๐Ÿฅฝ": "Goggles", - "๐Ÿฅผ": "Lab Coat", - "๐Ÿฆบ": "Safety Vest", - "๐Ÿ‘”": "Necktie", - "๐Ÿ‘•": "T-Shirt", - "๐Ÿ‘–": "Jeans", - "๐Ÿงฃ": "Scarf", - "๐Ÿงค": "Gloves", - "๐Ÿงฅ": "Coat", - "๐Ÿงฆ": "Socks", - "๐Ÿ‘—": "Dress", - "๐Ÿ‘˜": "Kimono", - "๐Ÿฅป": "Sari", - "๐Ÿฉฑ": "One-Piece Swimsuit", - "๐Ÿฉฒ": "Briefs", - "๐Ÿฉณ": "Shorts", - "๐Ÿ‘™": "Bikini", - "๐Ÿ‘š": "Womanโ€™s Clothes", - "๐Ÿ‘›": "Purse", - "๐Ÿ‘œ": "Handbag", - "๐Ÿ‘": "Clutch Bag", - "๐ŸŽ’": "Backpack", - "๐Ÿฉด": "Thong Sandal", - "๐Ÿ‘ž": "Manโ€™s Shoe", - "๐Ÿ‘Ÿ": "Running Shoe", - "๐Ÿฅพ": "Hiking Boot", - "๐Ÿฅฟ": "Flat Shoe", - "๐Ÿ‘ ": "High-Heeled Shoe", - "๐Ÿ‘ก": "Womanโ€™s Sandal", - "๐Ÿฉฐ": "Ballet Shoes", - "๐Ÿ‘ข": "Womanโ€™s Boot", - "๐Ÿ‘‘": "Crown", - "๐Ÿ‘’": "Womanโ€™s Hat", - "๐ŸŽฉ": "Top Hat", - "๐ŸŽ“": "Graduation Cap", - "๐Ÿงข": "Billed Cap", - "๐Ÿช–": "Military Helmet", - "โ›‘๏ธ": "Rescue Workerโ€™s Helmet", - "๐Ÿ’„": "Lipstick", - "๐Ÿ’": "Ring", - "๐Ÿ’ผ": "Briefcase", - "๐Ÿฉธ": "Drop of Blood", - "๐Ÿ˜ฎโ€๐Ÿ’จ": "Face Exhaling", - "๐Ÿ˜ตโ€๐Ÿ’ซ": "Face with Spiral Eyes", - "๐Ÿ˜ถโ€๐ŸŒซ๏ธ": "Face in Clouds", - }, - "Animals & Nature": { - "๐Ÿ™ˆ": "See-No-Evil Monkey", - "๐Ÿ™‰": "Hear-No-Evil Monkey", - "๐Ÿ™Š": "Speak-No-Evil Monkey", - "๐Ÿ’ฅ": "Collision", - "๐Ÿ’ซ": "Dizzy", - "๐Ÿ’ฆ": "Sweat Droplets", - "๐Ÿ’จ": "Dashing Away", - "๐Ÿต": "Monkey Face", - "๐Ÿ’": "Monkey", - "๐Ÿฆ": "Gorilla", - "๐Ÿฆง": "Orangutan", - "๐Ÿถ": "Dog Face", - "๐Ÿ•": "Dog", - "๐Ÿฆฎ": "Guide Dog", - "๐Ÿ•โ€๐Ÿฆบ": "Service Dog", - "๐Ÿฉ": "Poodle", - "๐Ÿบ": "Wolf", - "๐ŸฆŠ": "Fox", - "๐Ÿฆ": "Raccoon", - "๐Ÿฑ": "Cat Face", - "๐Ÿˆ": "Cat", - "๐Ÿˆโ€โฌ›": "Black Cat", - "๐Ÿฆ": "Lion", - "๐Ÿฏ": "Tiger Face", - "๐Ÿ…": "Tiger", - "๐Ÿ†": "Leopard", - "๐Ÿด": "Horse Face", - "๐ŸŽ": "Horse", - "๐Ÿฆ„": "Unicorn", - "๐Ÿฆ“": "Zebra", - "๐ŸฆŒ": "Deer", - "๐Ÿฆฌ": "Bison", - "๐Ÿฎ": "Cow Face", - "๐Ÿ‚": "Ox", - "๐Ÿƒ": "Water Buffalo", - "๐Ÿ„": "Cow", - "๐Ÿท": "Pig Face", - "๐Ÿ–": "Pig", - "๐Ÿ—": "Boar", - "๐Ÿฝ": "Pig Nose", - "๐Ÿ": "Ram", - "๐Ÿ‘": "Ewe", - "๐Ÿ": "Goat", - "๐Ÿช": "Camel", - "๐Ÿซ": "Two-Hump Camel", - "๐Ÿฆ™": "Llama", - "๐Ÿฆ’": "Giraffe", - "๐Ÿ˜": "Elephant", - "๐Ÿฆฃ": "Mammoth", - "๐Ÿฆ": "Rhinoceros", - "๐Ÿฆ›": "Hippopotamus", - "๐Ÿญ": "Mouse Face", - "๐Ÿ": "Mouse", - "๐Ÿ€": "Rat", - "๐Ÿน": "Hamster", - "๐Ÿฐ": "Rabbit Face", - "๐Ÿ‡": "Rabbit", - "๐Ÿฟ๏ธ": "Chipmunk", - "๐Ÿฆซ": "Beaver", - "๐Ÿฆ”": "Hedgehog", - "๐Ÿฆ‡": "Bat", - "๐Ÿป": "Bear", - "๐Ÿปโ€โ„๏ธ": "Polar Bear", - "๐Ÿจ": "Koala", - "๐Ÿผ": "Panda", - "๐Ÿฆฅ": "Sloth", - "๐Ÿฆฆ": "Otter", - "๐Ÿฆจ": "Skunk", - "๐Ÿฆ˜": "Kangaroo", - "๐Ÿฆก": "Badger", - "๐Ÿพ": "Paw Prints", - "๐Ÿฆƒ": "Turkey", - "๐Ÿ”": "Chicken", - "๐Ÿ“": "Rooster", - "๐Ÿฃ": "Hatching Chick", - "๐Ÿค": "Baby Chick", - "๐Ÿฅ": "Front-Facing Baby Chick", - "๐Ÿฆ": "Bird", - "๐Ÿง": "Penguin", - "๐Ÿ•Š๏ธ": "Dove", - "๐Ÿฆ…": "Eagle", - "๐Ÿฆ†": "Duck", - "๐Ÿฆข": "Swan", - "๐Ÿฆ‰": "Owl", - "๐Ÿฆค": "Dodo", - "๐Ÿชถ": "Feather", - "๐Ÿฆฉ": "Flamingo", - "๐Ÿฆš": "Peacock", - "๐Ÿฆœ": "Parrot", - "๐Ÿธ": "Frog", - "๐ŸŠ": "Crocodile", - "๐Ÿข": "Turtle", - "๐ŸฆŽ": "Lizard", - "๐Ÿ": "Snake", - "๐Ÿฒ": "Dragon Face", - "๐Ÿ‰": "Dragon", - "๐Ÿฆ•": "Sauropod", - "๐Ÿฆ–": "T-Rex", - "๐Ÿณ": "Spouting Whale", - "๐Ÿ‹": "Whale", - "๐Ÿฌ": "Dolphin", - "๐Ÿฆญ": "Seal", - "๐ŸŸ": "Fish", - "๐Ÿ ": "Tropical Fish", - "๐Ÿก": "Blowfish", - "๐Ÿฆˆ": "Shark", - "๐Ÿ™": "Octopus", - "๐Ÿš": "Spiral Shell", - "๐ŸŒ": "Snail", - "๐Ÿฆ‹": "Butterfly", - "๐Ÿ›": "Bug", - "๐Ÿœ": "Ant", - "๐Ÿ": "Honeybee", - "๐Ÿชฒ": "Beetle", - "๐Ÿž": "Lady Beetle", - "๐Ÿฆ—": "Cricket", - "๐Ÿชณ": "Cockroach", - "๐Ÿ•ท๏ธ": "Spider", - "๐Ÿ•ธ๏ธ": "Spider Web", - "๐Ÿฆ‚": "Scorpion", - "๐ŸฆŸ": "Mosquito", - "๐Ÿชฐ": "Fly", - "๐Ÿชฑ": "Worm", - "๐Ÿฆ ": "Microbe", - "๐Ÿ’": "Bouquet", - "๐ŸŒธ": "Cherry Blossom", - "๐Ÿ’ฎ": "White Flower", - "๐Ÿต๏ธ": "Rosette", - "๐ŸŒน": "Rose", - "๐Ÿฅ€": "Wilted Flower", - "๐ŸŒบ": "Hibiscus", - "๐ŸŒป": "Sunflower", - "๐ŸŒผ": "Blossom", - "๐ŸŒท": "Tulip", - "๐ŸŒฑ": "Seedling", - "๐Ÿชด": "Potted Plant", - "๐ŸŒฒ": "Evergreen Tree", - "๐ŸŒณ": "Deciduous Tree", - "๐ŸŒด": "Palm Tree", - "๐ŸŒต": "Cactus", - "๐ŸŒพ": "Sheaf of Rice", - "๐ŸŒฟ": "Herb", - "โ˜˜๏ธ": "Shamrock", - "๐Ÿ€": "Four Leaf Clover", - "๐Ÿ": "Maple Leaf", - "๐Ÿ‚": "Fallen Leaf", - "๐Ÿƒ": "Leaf Fluttering in Wind", - "๐Ÿ„": "Mushroom", - "๐ŸŒฐ": "Chestnut", - "๐Ÿฆ€": "Crab", - "๐Ÿฆž": "Lobster", - "๐Ÿฆ": "Shrimp", - "๐Ÿฆ‘": "Squid", - "๐ŸŒ": "Globe Showing Europe-Africa", - "๐ŸŒŽ": "Globe Showing Americas", - "๐ŸŒ": "Globe Showing Asia-Australia", - "๐ŸŒ": "Globe with Meridians", - "๐Ÿชจ": "Rock", - "๐ŸŒ‘": "New Moon", - "๐ŸŒ’": "Waxing Crescent Moon", - "๐ŸŒ“": "First Quarter Moon", - "๐ŸŒ”": "Waxing Gibbous Moon", - "๐ŸŒ•": "Full Moon", - "๐ŸŒ–": "Waning Gibbous Moon", - "๐ŸŒ—": "Last Quarter Moon", - "๐ŸŒ˜": "Waning Crescent Moon", - "๐ŸŒ™": "Crescent Moon", - "๐ŸŒš": "New Moon Face", - "๐ŸŒ›": "First Quarter Moon Face", - "๐ŸŒœ": "Last Quarter Moon Face", - "โ˜€๏ธ": "Sun", - "๐ŸŒ": "Full Moon Face", - "๐ŸŒž": "Sun with Face", - "โญ": "Star", - "๐ŸŒŸ": "Glowing Star", - "๐ŸŒ ": "Shooting Star", - "โ˜๏ธ": "Cloud", - "โ›…": "Sun Behind Cloud", - "โ›ˆ๏ธ": "Cloud with Lightning and Rain", - "๐ŸŒค๏ธ": "Sun Behind Small Cloud", - "๐ŸŒฅ๏ธ": "Sun Behind Large Cloud", - "๐ŸŒฆ๏ธ": "Sun Behind Rain Cloud", - "๐ŸŒง๏ธ": "Cloud with Rain", - "๐ŸŒจ๏ธ": "Cloud with Snow", - "๐ŸŒฉ๏ธ": "Cloud with Lightning", - "๐ŸŒช๏ธ": "Tornado", - "๐ŸŒซ๏ธ": "Fog", - "๐ŸŒฌ๏ธ": "Wind Face", - "๐ŸŒˆ": "Rainbow", - "โ˜‚๏ธ": "Umbrella", - "โ˜”": "Umbrella with Rain Drops", - "โšก": "High Voltage", - "โ„๏ธ": "Snowflake", - "โ˜ƒ๏ธ": "Snowman", - "โ›„": "Snowman Without Snow", - "โ˜„๏ธ": "Comet", - "๐Ÿ”ฅ": "Fire", - "๐Ÿ’ง": "Droplet", - "๐ŸŒŠ": "Water Wave", - "๐ŸŽ„": "Christmas Tree", - "โœจ": "Sparkles", - "๐ŸŽ‹": "Tanabata Tree", - "๐ŸŽ": "Pine Decoration", - }, - "Food & Drink": { - "๐Ÿ‡": "Grapes", - "๐Ÿˆ": "Melon", - "๐Ÿ‰": "Watermelon", - "๐ŸŠ": "Tangerine", - "๐Ÿ‹": "Lemon", - "๐ŸŒ": "Banana", - "๐Ÿ": "Pineapple", - "๐Ÿฅญ": "Mango", - "๐ŸŽ": "Red Apple", - "๐Ÿ": "Green Apple", - "๐Ÿ": "Pear", - "๐Ÿ‘": "Peach", - "๐Ÿ’": "Cherries", - "๐Ÿ“": "Strawberry", - "๐Ÿซ": "Blueberries", - "๐Ÿฅ": "Kiwi Fruit", - "๐Ÿ…": "Tomato", - "๐Ÿซ’": "Olive", - "๐Ÿฅฅ": "Coconut", - "๐Ÿฅ‘": "Avocado", - "๐Ÿ†": "Eggplant", - "๐Ÿฅ”": "Potato", - "๐Ÿฅ•": "Carrot", - "๐ŸŒฝ": "Ear of Corn", - "๐ŸŒถ๏ธ": "Hot Pepper", - "๐Ÿซ‘": "Bell Pepper", - "๐Ÿฅ’": "Cucumber", - "๐Ÿฅฌ": "Leafy Green", - "๐Ÿฅฆ": "Broccoli", - "๐Ÿง„": "Garlic", - "๐Ÿง…": "Onion", - "๐Ÿ„": "Mushroom", - "๐Ÿฅœ": "Peanuts", - "๐ŸŒฐ": "Chestnut", - "๐Ÿž": "Bread", - "๐Ÿฅ": "Croissant", - "๐Ÿฅ–": "Baguette Bread", - "๐Ÿซ“": "Flatbread", - "๐Ÿฅจ": "Pretzel", - "๐Ÿฅฏ": "Bagel", - "๐Ÿฅž": "Pancakes", - "๐Ÿง‡": "Waffle", - "๐Ÿง€": "Cheese Wedge", - "๐Ÿ–": "Meat on Bone", - "๐Ÿ—": "Poultry Leg", - "๐Ÿฅฉ": "Cut of Meat", - "๐Ÿฅ“": "Bacon", - "๐Ÿ”": "Hamburger", - "๐ŸŸ": "French Fries", - "๐Ÿ•": "Pizza", - "๐ŸŒญ": "Hot Dog", - "๐Ÿฅช": "Sandwich", - "๐ŸŒฎ": "Taco", - "๐ŸŒฏ": "Burrito", - "๐Ÿซ”": "Tamale", - "๐Ÿฅ™": "Stuffed Flatbread", - "๐Ÿง†": "Falafel", - "๐Ÿฅš": "Egg", - "๐Ÿณ": "Cooking", - "๐Ÿฅ˜": "Shallow Pan of Food", - "๐Ÿฒ": "Pot of Food", - "๐Ÿซ•": "Fondue", - "๐Ÿฅฃ": "Bowl with Spoon", - "๐Ÿฅ—": "Green Salad", - "๐Ÿฟ": "Popcorn", - "๐Ÿงˆ": "Butter", - "๐Ÿง‚": "Salt", - "๐Ÿฅซ": "Canned Food", - "๐Ÿฑ": "Bento Box", - "๐Ÿ˜": "Rice Cracker", - "๐Ÿ™": "Rice Ball", - "๐Ÿš": "Cooked Rice", - "๐Ÿ›": "Curry Rice", - "๐Ÿœ": "Steaming Bowl", - "๐Ÿ": "Spaghetti", - "๐Ÿ ": "Roasted Sweet Potato", - "๐Ÿข": "Oden", - "๐Ÿฃ": "Sushi", - "๐Ÿค": "Fried Shrimp", - "๐Ÿฅ": "Fish Cake with Swirl", - "๐Ÿฅฎ": "Moon Cake", - "๐Ÿก": "Dango", - "๐ŸฅŸ": "Dumpling", - "๐Ÿฅ ": "Fortune Cookie", - "๐Ÿฅก": "Takeout Box", - "๐Ÿฆช": "Oyster", - "๐Ÿฆ": "Soft Ice Cream", - "๐Ÿง": "Shaved Ice", - "๐Ÿจ": "Ice Cream", - "๐Ÿฉ": "Doughnut", - "๐Ÿช": "Cookie", - "๐ŸŽ‚": "Birthday Cake", - "๐Ÿฐ": "Shortcake", - "๐Ÿง": "Cupcake", - "๐Ÿฅง": "Pie", - "๐Ÿซ": "Chocolate Bar", - "๐Ÿฌ": "Candy", - "๐Ÿญ": "Lollipop", - "๐Ÿฎ": "Custard", - "๐Ÿฏ": "Honey Pot", - "๐Ÿผ": "Baby Bottle", - "๐Ÿฅ›": "Glass of Milk", - "โ˜•": "Hot Beverage", - "๐Ÿซ–": "Teapot", - "๐Ÿต": "Teacup Without Handle", - "๐Ÿถ": "Sake", - "๐Ÿพ": "Bottle with Popping Cork", - "๐Ÿท": "Wine Glass", - "๐Ÿธ": "Cocktail Glass", - "๐Ÿน": "Tropical Drink", - "๐Ÿบ": "Beer Mug", - "๐Ÿป": "Clinking Beer Mugs", - "๐Ÿฅ‚": "Clinking Glasses", - "๐Ÿฅƒ": "Tumbler Glass", - "๐Ÿฅค": "Cup with Straw", - "๐Ÿง‹": "Bubble Tea", - "๐Ÿงƒ": "Beverage Box", - "๐Ÿง‰": "Mate", - "๐ŸงŠ": "Ice", - "๐Ÿฅข": "Chopsticks", - "๐Ÿฝ๏ธ": "Fork and Knife with Plate", - "๐Ÿด": "Fork and Knife", - "๐Ÿฅ„": "Spoon", - }, - "Activity": { - "๐Ÿ•ด๏ธ": "Person in Suit Levitating", - "๐Ÿง—": "Person Climbing", - "๐Ÿง—โ€โ™‚๏ธ": "Man Climbing", - "๐Ÿง—โ€โ™€๏ธ": "Woman Climbing", - "๐Ÿคบ": "Person Fencing", - "๐Ÿ‡": "Horse Racing", - "โ›ท๏ธ": "Skier", - "๐Ÿ‚": "Snowboarder", - "๐ŸŒ๏ธ": "Person Golfing", - "๐ŸŒ๏ธโ€โ™‚๏ธ": "Man Golfing", - "๐ŸŒ๏ธโ€โ™€๏ธ": "Woman Golfing", - "๐Ÿ„": "Person Surfing", - "๐Ÿ„โ€โ™‚๏ธ": "Man Surfing", - "๐Ÿ„โ€โ™€๏ธ": "Woman Surfing", - "๐Ÿšฃ": "Person Rowing Boat", - "๐Ÿšฃโ€โ™‚๏ธ": "Man Rowing Boat", - "๐Ÿšฃโ€โ™€๏ธ": "Woman Rowing Boat", - "๐ŸŠ": "Person Swimming", - "๐ŸŠโ€โ™‚๏ธ": "Man Swimming", - "๐ŸŠโ€โ™€๏ธ": "Woman Swimming", - "โ›น๏ธ": "Person Bouncing Ball", - "โ›น๏ธโ€โ™‚๏ธ": "Man Bouncing Ball", - "โ›น๏ธโ€โ™€๏ธ": "Woman Bouncing Ball", - "๐Ÿ‹๏ธ": "Person Lifting Weights", - "๐Ÿ‹๏ธโ€โ™‚๏ธ": "Man Lifting Weights", - "๐Ÿ‹๏ธโ€โ™€๏ธ": "Woman Lifting Weights", - "๐Ÿšด": "Person Biking", - "๐Ÿšดโ€โ™‚๏ธ": "Man Biking", - "๐Ÿšดโ€โ™€๏ธ": "Woman Biking", - "๐Ÿšต": "Person Mountain Biking", - "๐Ÿšตโ€โ™‚๏ธ": "Man Mountain Biking", - "๐Ÿšตโ€โ™€๏ธ": "Woman Mountain Biking", - "๐Ÿคธ": "Person Cartwheeling", - "๐Ÿคธโ€โ™‚๏ธ": "Man Cartwheeling", - "๐Ÿคธโ€โ™€๏ธ": "Woman Cartwheeling", - "๐Ÿคผ": "People Wrestling", - "๐Ÿคผโ€โ™‚๏ธ": "Men Wrestling", - "๐Ÿคผโ€โ™€๏ธ": "Women Wrestling", - "๐Ÿคฝ": "Person Playing Water Polo", - "๐Ÿคฝโ€โ™‚๏ธ": "Man Playing Water Polo", - "๐Ÿคฝโ€โ™€๏ธ": "Woman Playing Water Polo", - "๐Ÿคพ": "Person Playing Handball", - "๐Ÿคพโ€โ™‚๏ธ": "Man Playing Handball", - "๐Ÿคพโ€โ™€๏ธ": "Woman Playing Handball", - "๐Ÿคน": "Person Juggling", - "๐Ÿคนโ€โ™‚๏ธ": "Man Juggling", - "๐Ÿคนโ€โ™€๏ธ": "Woman Juggling", - "๐Ÿง˜": "Person in Lotus Position", - "๐Ÿง˜โ€โ™‚๏ธ": "Man in Lotus Position", - "๐Ÿง˜โ€โ™€๏ธ": "Woman in Lotus Position", - "๐ŸŽช": "Circus Tent", - "๐Ÿ›น": "Skateboard", - "๐Ÿ›ผ": "Roller Skate", - "๐Ÿ›ถ": "Canoe", - "๐ŸŽ—๏ธ": "Reminder Ribbon", - "๐ŸŽŸ๏ธ": "Admission Tickets", - "๐ŸŽซ": "Ticket", - "๐ŸŽ–๏ธ": "Military Medal", - "๐Ÿ†": "Trophy", - "๐Ÿ…": "Sports Medal", - "๐Ÿฅ‡": "1st Place Medal", - "๐Ÿฅˆ": "2nd Place Medal", - "๐Ÿฅ‰": "3rd Place Medal", - "โšฝ": "Soccer Ball", - "โšพ": "Baseball", - "๐ŸฅŽ": "Softball", - "๐Ÿ€": "Basketball", - "๐Ÿ": "Volleyball", - "๐Ÿˆ": "American Football", - "๐Ÿ‰": "Rugby Football", - "๐ŸŽพ": "Tennis", - "๐Ÿฅ": "Flying Disc", - "๐ŸŽณ": "Bowling", - "๐Ÿ": "Cricket Game", - "๐Ÿ‘": "Field Hockey", - "๐Ÿ’": "Ice Hockey", - "๐Ÿฅ": "Lacrosse", - "๐Ÿ“": "Ping Pong", - "๐Ÿธ": "Badminton", - "๐ŸฅŠ": "Boxing Glove", - "๐Ÿฅ‹": "Martial Arts Uniform", - "๐Ÿฅ…": "Goal Net", - "โ›ณ": "Flag in Hole", - "โ›ธ๏ธ": "Ice Skate", - "๐ŸŽฃ": "Fishing Pole", - "๐ŸŽฝ": "Running Shirt", - "๐ŸŽฟ": "Skis", - "๐Ÿ›ท": "Sled", - "๐ŸฅŒ": "Curling Stone", - "๐ŸŽฏ": "Direct Hit", - "๐ŸŽฑ": "Pool 8 Ball", - "๐ŸŽฎ": "Video Game", - "๐ŸŽฐ": "Slot Machine", - "๐ŸŽฒ": "Game Die", - "๐Ÿงฉ": "Puzzle Piece", - "โ™Ÿ๏ธ": "Chess Pawn", - "๐ŸŽญ": "Performing Arts", - "๐ŸŽจ": "Artist Palette", - "๐Ÿงต": "Thread", - "๐Ÿงถ": "Yarn", - "๐ŸŽผ": "Musical Score", - "๐ŸŽค": "Microphone", - "๐ŸŽง": "Headphone", - "๐ŸŽท": "Saxophone", - "๐Ÿช—": "Accordion", - "๐ŸŽธ": "Guitar", - "๐ŸŽน": "Musical Keyboard", - "๐ŸŽบ": "Trumpet", - "๐ŸŽป": "Violin", - "๐Ÿฅ": "Drum", - "๐Ÿช˜": "Long Drum", - "๐ŸŽฌ": "Clapper Board", - "๐Ÿน": "Bow and Arrow", - }, - "Travel & Places": { - "๐Ÿšฃ": "Person Rowing Boat", - "๐Ÿ—พ": "Map of Japan", - "๐Ÿ”๏ธ": "Snow-Capped Mountain", - "โ›ฐ๏ธ": "Mountain", - "๐ŸŒ‹": "Volcano", - "๐Ÿ—ป": "Mount Fuji", - "๐Ÿ•๏ธ": "Camping", - "๐Ÿ–๏ธ": "Beach with Umbrella", - "๐Ÿœ๏ธ": "Desert", - "๐Ÿ๏ธ": "Desert Island", - "๐Ÿž๏ธ": "National Park", - "๐ŸŸ๏ธ": "Stadium", - "๐Ÿ›๏ธ": "Classical Building", - "๐Ÿ—๏ธ": "Building Construction", - "๐Ÿ›–": "Hut", - "๐Ÿ˜๏ธ": "Houses", - "๐Ÿš๏ธ": "Derelict House", - "๐Ÿ ": "House", - "๐Ÿก": "House with Garden", - "๐Ÿข": "Office Building", - "๐Ÿฃ": "Japanese Post Office", - "๐Ÿค": "Post Office", - "๐Ÿฅ": "Hospital", - "๐Ÿฆ": "Bank", - "๐Ÿจ": "Hotel", - "๐Ÿฉ": "Love Hotel", - "๐Ÿช": "Convenience Store", - "๐Ÿซ": "School", - "๐Ÿฌ": "Department Store", - "๐Ÿญ": "Factory", - "๐Ÿฏ": "Japanese Castle", - "๐Ÿฐ": "Castle", - "๐Ÿ’’": "Wedding", - "๐Ÿ—ผ": "Tokyo Tower", - "๐Ÿ—ฝ": "Statue of Liberty", - "โ›ช": "Church", - "๐Ÿ•Œ": "Mosque", - "๐Ÿ›•": "Hindu Temple", - "๐Ÿ•": "Synagogue", - "โ›ฉ๏ธ": "Shinto Shrine", - "๐Ÿ•‹": "Kaaba", - "โ›ฒ": "Fountain", - "โ›บ": "Tent", - "๐ŸŒ": "Foggy", - "๐ŸŒƒ": "Night with Stars", - "๐Ÿ™๏ธ": "Cityscape", - "๐ŸŒ„": "Sunrise Over Mountains", - "๐ŸŒ…": "Sunrise", - "๐ŸŒ†": "Cityscape at Dusk", - "๐ŸŒ‡": "Sunset", - "๐ŸŒ‰": "Bridge at Night", - "๐ŸŽ ": "Carousel Horse", - "๐ŸŽก": "Ferris Wheel", - "๐ŸŽข": "Roller Coaster", - "๐Ÿš‚": "Locomotive", - "๐Ÿšƒ": "Railway Car", - "๐Ÿš„": "High-Speed Train", - "๐Ÿš…": "Bullet Train", - "๐Ÿš†": "Train", - "๐Ÿš‡": "Metro", - "๐Ÿšˆ": "Light Rail", - "๐Ÿš‰": "Station", - "๐ŸšŠ": "Tram", - "๐Ÿš": "Monorail", - "๐Ÿšž": "Mountain Railway", - "๐Ÿš‹": "Tram Car", - "๐ŸšŒ": "Bus", - "๐Ÿš": "Oncoming Bus", - "๐ŸšŽ": "Trolleybus", - "๐Ÿš": "Minibus", - "๐Ÿš‘": "Ambulance", - "๐Ÿš’": "Fire Engine", - "๐Ÿš“": "Police Car", - "๐Ÿš”": "Oncoming Police Car", - "๐Ÿš•": "Taxi", - "๐Ÿš–": "Oncoming Taxi", - "๐Ÿš—": "Automobile", - "๐Ÿš˜": "Oncoming Automobile", - "๐Ÿš™": "Sport Utility Vehicle", - "๐Ÿ›ป": "Pickup Truck", - "๐Ÿšš": "Delivery Truck", - "๐Ÿš›": "Articulated Lorry", - "๐Ÿšœ": "Tractor", - "๐ŸŽ๏ธ": "Racing Car", - "๐Ÿ๏ธ": "Motorcycle", - "๐Ÿ›ต": "Motor Scooter", - "๐Ÿ›บ": "Auto Rickshaw", - "๐Ÿšฒ": "Bicycle", - "๐Ÿ›ด": "Kick Scooter", - "๐Ÿš": "Bus Stop", - "๐Ÿ›ฃ๏ธ": "Motorway", - "๐Ÿ›ค๏ธ": "Railway Track", - "โ›ฝ": "Fuel Pump", - "๐Ÿšจ": "Police Car Light", - "๐Ÿšฅ": "Horizontal Traffic Light", - "๐Ÿšฆ": "Vertical Traffic Light", - "๐Ÿšง": "Construction", - "โš“": "Anchor", - "โ›ต": "Sailboat", - "๐Ÿšค": "Speedboat", - "๐Ÿ›ณ๏ธ": "Passenger Ship", - "โ›ด๏ธ": "Ferry", - "๐Ÿ›ฅ๏ธ": "Motor Boat", - "๐Ÿšข": "Ship", - "โœˆ๏ธ": "Airplane", - "๐Ÿ›ฉ๏ธ": "Small Airplane", - "๐Ÿ›ซ": "Airplane Departure", - "๐Ÿ›ฌ": "Airplane Arrival", - "๐Ÿช‚": "Parachute", - "๐Ÿ’บ": "Seat", - "๐Ÿš": "Helicopter", - "๐ŸšŸ": "Suspension Railway", - "๐Ÿš ": "Mountain Cableway", - "๐Ÿšก": "Aerial Tramway", - "๐Ÿ›ฐ๏ธ": "Satellite", - "๐Ÿš€": "Rocket", - "๐Ÿ›ธ": "Flying Saucer", - "๐Ÿช": "Ringed Planet", - "๐ŸŒ ": "Shooting Star", - "๐ŸŒŒ": "Milky Way", - "โ›ฑ๏ธ": "Umbrella on Ground", - "๐ŸŽ†": "Fireworks", - "๐ŸŽ‡": "Sparkler", - "๐ŸŽ‘": "Moon Viewing Ceremony", - "๐Ÿ’ด": "Yen Banknote", - "๐Ÿ’ต": "Dollar Banknote", - "๐Ÿ’ถ": "Euro Banknote", - "๐Ÿ’ท": "Pound Banknote", - "๐Ÿ—ฟ": "Moai", - "๐Ÿ›‚": "Passport Control", - "๐Ÿ›ƒ": "Customs", - "๐Ÿ›„": "Baggage Claim", - "๐Ÿ›…": "Left Luggage", - }, - "Objects": { - "๐Ÿ’Œ": "Love Letter", - "๐Ÿ•ณ๏ธ": "Hole", - "๐Ÿ’ฃ": "Bomb", - "๐Ÿ›€": "Person Taking Bath", - "๐Ÿ›Œ": "Person in Bed", - "๐Ÿ”ช": "Kitchen Knife", - "๐Ÿบ": "Amphora", - "๐Ÿ—บ๏ธ": "World Map", - "๐Ÿงญ": "Compass", - "๐Ÿงฑ": "Brick", - "๐Ÿ’ˆ": "Barber Pole", - "๐Ÿฆฝ": "Manual Wheelchair", - "๐Ÿฆผ": "Motorized Wheelchair", - "๐Ÿ›ข๏ธ": "Oil Drum", - "๐Ÿ›Ž๏ธ": "Bellhop Bell", - "๐Ÿงณ": "Luggage", - "โŒ›": "Hourglass Done", - "โณ": "Hourglass Not Done", - "โŒš": "Watch", - "โฐ": "Alarm Clock", - "โฑ๏ธ": "Stopwatch", - "โฒ๏ธ": "Timer Clock", - "๐Ÿ•ฐ๏ธ": "Mantelpiece Clock", - "๐ŸŒก๏ธ": "Thermometer", - "โ›ฑ๏ธ": "Umbrella on Ground", - "๐Ÿงจ": "Firecracker", - "๐ŸŽˆ": "Balloon", - "๐ŸŽ‰": "Party Popper", - "๐ŸŽŠ": "Confetti Ball", - "๐ŸŽŽ": "Japanese Dolls", - "๐ŸŽ": "Carp Streamer", - "๐ŸŽ": "Wind Chime", - "๐Ÿงง": "Red Envelope", - "๐ŸŽ€": "Ribbon", - "๐ŸŽ": "Wrapped Gift", - "๐Ÿคฟ": "Diving Mask", - "๐Ÿช€": "Yo-Yo", - "๐Ÿช": "Kite", - "๐Ÿ”ฎ": "Crystal Ball", - "๐Ÿช„": "Magic Wand", - "๐Ÿงฟ": "Nazar Amulet", - "๐Ÿ•น๏ธ": "Joystick", - "๐Ÿงธ": "Teddy Bear", - "๐Ÿช…": "Piรฑata", - "๐Ÿช†": "Nesting Dolls", - "๐Ÿ–ผ๏ธ": "Framed Picture", - "๐Ÿงต": "Thread", - "๐Ÿชก": "Sewing Needle", - "๐Ÿงถ": "Yarn", - "๐Ÿชข": "Knot", - "๐Ÿ›๏ธ": "Shopping Bags", - "๐Ÿ“ฟ": "Prayer Beads", - "๐Ÿ’Ž": "Gem Stone", - "๐Ÿ“ฏ": "Postal Horn", - "๐ŸŽ™๏ธ": "Studio Microphone", - "๐ŸŽš๏ธ": "Level Slider", - "๐ŸŽ›๏ธ": "Control Knobs", - "๐Ÿ“ป": "Radio", - "๐Ÿช•": "Banjo", - "๐Ÿ“ฑ": "Mobile Phone", - "๐Ÿ“ฒ": "Mobile Phone with Arrow", - "โ˜Ž๏ธ": "Telephone", - "๐Ÿ“ž": "Telephone Receiver", - "๐Ÿ“Ÿ": "Pager", - "๐Ÿ“ ": "Fax Machine", - "๐Ÿ”‹": "Battery", - "๐Ÿ”Œ": "Electric Plug", - "๐Ÿ’ป": "Laptop", - "๐Ÿ–ฅ๏ธ": "Desktop Computer", - "๐Ÿ–จ๏ธ": "Printer", - "โŒจ๏ธ": "Keyboard", - "๐Ÿ–ฑ๏ธ": "Computer Mouse", - "๐Ÿ–ฒ๏ธ": "Trackball", - "๐Ÿ’ฝ": "Computer Disk", - "๐Ÿ’พ": "Floppy Disk", - "๐Ÿ’ฟ": "Optical Disk", - "๐Ÿ“€": "DVD", - "๐Ÿงฎ": "Abacus", - "๐ŸŽฅ": "Movie Camera", - "๐ŸŽž๏ธ": "Film Frames", - "๐Ÿ“ฝ๏ธ": "Film Projector", - "๐Ÿ“บ": "Television", - "๐Ÿ“ท": "Camera", - "๐Ÿ“ธ": "Camera with Flash", - "๐Ÿ“น": "Video Camera", - "๐Ÿ“ผ": "Videocassette", - "๐Ÿ”": "Magnifying Glass Tilted Left", - "๐Ÿ”Ž": "Magnifying Glass Tilted Right", - "๐Ÿ•ฏ๏ธ": "Candle", - "๐Ÿ’ก": "Light Bulb", - "๐Ÿ”ฆ": "Flashlight", - "๐Ÿฎ": "Red Paper Lantern", - "๐Ÿช”": "Diya Lamp", - "๐Ÿ“”": "Notebook with Decorative Cover", - "๐Ÿ“•": "Closed Book", - "๐Ÿ“–": "Open Book", - "๐Ÿ“—": "Green Book", - "๐Ÿ“˜": "Blue Book", - "๐Ÿ“™": "Orange Book", - "๐Ÿ“š": "Books", - "๐Ÿ““": "Notebook", - "๐Ÿ“’": "Ledger", - "๐Ÿ“ƒ": "Page with Curl", - "๐Ÿ“œ": "Scroll", - "๐Ÿ“„": "Page Facing Up", - "๐Ÿ“ฐ": "Newspaper", - "๐Ÿ—ž๏ธ": "Rolled-Up Newspaper", - "๐Ÿ“‘": "Bookmark Tabs", - "๐Ÿ”–": "Bookmark", - "๐Ÿท๏ธ": "Label", - "๐Ÿ’ฐ": "Money Bag", - "๐Ÿช™": "Coin", - "๐Ÿ’ด": "Yen Banknote", - "๐Ÿ’ต": "Dollar Banknote", - "๐Ÿ’ถ": "Euro Banknote", - "๐Ÿ’ท": "Pound Banknote", - "๐Ÿ’ธ": "Money with Wings", - "๐Ÿ’ณ": "Credit Card", - "๐Ÿงพ": "Receipt", - "โœ‰๏ธ": "Envelope", - "๐Ÿ“ง": "E-Mail", - "๐Ÿ“จ": "Incoming Envelope", - "๐Ÿ“ฉ": "Envelope with Arrow", - "๐Ÿ“ค": "Outbox Tray", - "๐Ÿ“ฅ": "Inbox Tray", - "๐Ÿ“ฆ": "Package", - "๐Ÿ“ซ": "Closed Mailbox with Raised Flag", - "๐Ÿ“ช": "Closed Mailbox with Lowered Flag", - "๐Ÿ“ฌ": "Open Mailbox with Raised Flag", - "๐Ÿ“ญ": "Open Mailbox with Lowered Flag", - "๐Ÿ“ฎ": "Postbox", - "๐Ÿ—ณ๏ธ": "Ballot Box with Ballot", - "โœ๏ธ": "Pencil", - "โœ’๏ธ": "Black Nib", - "๐Ÿ–‹๏ธ": "Fountain Pen", - "๐Ÿ–Š๏ธ": "Pen", - "๐Ÿ–Œ๏ธ": "Paintbrush", - "๐Ÿ–๏ธ": "Crayon", - "๐Ÿ“": "Memo", - "๐Ÿ“": "File Folder", - "๐Ÿ“‚": "Open File Folder", - "๐Ÿ—‚๏ธ": "Card Index Dividers", - "๐Ÿ“…": "Calendar", - "๐Ÿ“†": "Tear-Off Calendar", - "๐Ÿ—’๏ธ": "Spiral Notepad", - "๐Ÿ—“๏ธ": "Spiral Calendar", - "๐Ÿ“‡": "Card Index", - "๐Ÿ“ˆ": "Chart Increasing", - "๐Ÿ“‰": "Chart Decreasing", - "๐Ÿ“Š": "Bar Chart", - "๐Ÿ“‹": "Clipboard", - "๐Ÿ“Œ": "Pushpin", - "๐Ÿ“": "Round Pushpin", - "๐Ÿ“Ž": "Paperclip", - "๐Ÿ–‡๏ธ": "Linked Paperclips", - "๐Ÿ“": "Straight Ruler", - "๐Ÿ“": "Triangular Ruler", - "โœ‚๏ธ": "Scissors", - "๐Ÿ—ƒ๏ธ": "Card File Box", - "๐Ÿ—„๏ธ": "File Cabinet", - "๐Ÿ—‘๏ธ": "Wastebasket", - "๐Ÿ”’": "Locked", - "๐Ÿ”“": "Unlocked", - "๐Ÿ”": "Locked with Pen", - "๐Ÿ”": "Locked with Key", - "๐Ÿ”‘": "Key", - "๐Ÿ—๏ธ": "Old Key", - "๐Ÿ”จ": "Hammer", - "๐Ÿช“": "Axe", - "โ›๏ธ": "Pick", - "โš’๏ธ": "Hammer and Pick", - "๐Ÿ› ๏ธ": "Hammer and Wrench", - "๐Ÿ—ก๏ธ": "Dagger", - "โš”๏ธ": "Crossed Swords", - "๐Ÿ”ซ": "Pistol", - "๐Ÿชƒ": "Boomerang", - "๐Ÿ›ก๏ธ": "Shield", - "๐Ÿชš": "Carpentry Saw", - "๐Ÿ”ง": "Wrench", - "๐Ÿช›": "Screwdriver", - "๐Ÿ”ฉ": "Nut and Bolt", - "โš™๏ธ": "Gear", - "๐Ÿ—œ๏ธ": "Clamp", - "โš–๏ธ": "Balance Scale", - "๐Ÿฆฏ": "White Cane", - "๐Ÿ”—": "Link", - "โ›“๏ธ": "Chains", - "๐Ÿช": "Hook", - "๐Ÿงฐ": "Toolbox", - "๐Ÿงฒ": "Magnet", - "๐Ÿชœ": "Ladder", - "โš—๏ธ": "Alembic", - "๐Ÿงช": "Test Tube", - "๐Ÿงซ": "Petri Dish", - "๐Ÿงฌ": "DNA", - "๐Ÿ”ฌ": "Microscope", - "๐Ÿ”ญ": "Telescope", - "๐Ÿ“ก": "Satellite Antenna", - "๐Ÿ’‰": "Syringe", - "๐Ÿฉธ": "Drop of Blood", - "๐Ÿ’Š": "Pill", - "๐Ÿฉน": "Adhesive Bandage", - "๐Ÿฉบ": "Stethoscope", - "๐Ÿšช": "Door", - "๐Ÿชž": "Mirror", - "๐ŸชŸ": "Window", - "๐Ÿ›๏ธ": "Bed", - "๐Ÿ›‹๏ธ": "Couch and Lamp", - "๐Ÿช‘": "Chair", - "๐Ÿšฝ": "Toilet", - "๐Ÿช ": "Plunger", - "๐Ÿšฟ": "Shower", - "๐Ÿ›": "Bathtub", - "๐Ÿชค": "Mouse Trap", - "๐Ÿช’": "Razor", - "๐Ÿงด": "Lotion Bottle", - "๐Ÿงท": "Safety Pin", - "๐Ÿงน": "Broom", - "๐Ÿงบ": "Basket", - "๐Ÿงป": "Roll of Paper", - "๐Ÿชฃ": "Bucket", - "๐Ÿงผ": "Soap", - "๐Ÿชฅ": "Toothbrush", - "๐Ÿงฝ": "Sponge", - "๐Ÿงฏ": "Fire Extinguisher", - "๐Ÿ›’": "Shopping Cart", - "๐Ÿšฌ": "Cigarette", - "โšฐ๏ธ": "Coffin", - "๐Ÿชฆ": "Headstone", - "โšฑ๏ธ": "Funeral Urn", - "๐Ÿ—ฟ": "Moai", - "๐Ÿชง": "Placard", - "๐Ÿšฐ": "Potable Water", - }, - "Symbols": { - "๐Ÿ’˜": "Heart with Arrow", - "๐Ÿ’": "Heart with Ribbon", - "๐Ÿ’–": "Sparkling Heart", - "๐Ÿ’—": "Growing Heart", - "๐Ÿ’“": "Beating Heart", - "๐Ÿ’ž": "Revolving Hearts", - "๐Ÿ’•": "Two Hearts", - "๐Ÿ’Ÿ": "Heart Decoration", - "โฃ๏ธ": "Heart Exclamation", - "๐Ÿ’”": "Broken Heart", - "โค๏ธ": "Red Heart", - "๐Ÿงก": "Orange Heart", - "๐Ÿ’›": "Yellow Heart", - "๐Ÿ’š": "Green Heart", - "๐Ÿ’™": "Blue Heart", - "๐Ÿ’œ": "Purple Heart", - "๐ŸคŽ": "Brown Heart", - "๐Ÿ–ค": "Black Heart", - "๐Ÿค": "White Heart", - "๐Ÿ’ฏ": "Hundred Points", - "๐Ÿ’ข": "Anger Symbol", - "๐Ÿ’ฌ": "Speech Balloon", - "๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ": "Eye in Speech Bubble", - "๐Ÿ—จ๏ธ": "Left Speech Bubble", - "๐Ÿ—ฏ๏ธ": "Right Anger Bubble", - "๐Ÿ’ญ": "Thought Balloon", - "๐Ÿ’ค": "Zzz", - "๐Ÿ’ฎ": "White Flower", - "โ™จ๏ธ": "Hot Springs", - "๐Ÿ’ˆ": "Barber Pole", - "๐Ÿ›‘": "Stop Sign", - "๐Ÿ•›": "Twelve Oโ€™Clock", - "๐Ÿ•ง": "Twelve-Thirty", - "๐Ÿ•": "One Oโ€™Clock", - "๐Ÿ•œ": "One-Thirty", - "๐Ÿ•‘": "Two Oโ€™Clock", - "๐Ÿ•": "Two-Thirty", - "๐Ÿ•’": "Three Oโ€™Clock", - "๐Ÿ•ž": "Three-Thirty", - "๐Ÿ•“": "Four Oโ€™Clock", - "๐Ÿ•Ÿ": "Four-Thirty", - "๐Ÿ•”": "Five Oโ€™Clock", - "๐Ÿ• ": "Five-Thirty", - "๐Ÿ••": "Six Oโ€™Clock", - "๐Ÿ•ก": "Six-Thirty", - "๐Ÿ•–": "Seven Oโ€™Clock", - "๐Ÿ•ข": "Seven-Thirty", - "๐Ÿ•—": "Eight Oโ€™Clock", - "๐Ÿ•ฃ": "Eight-Thirty", - "๐Ÿ•˜": "Nine Oโ€™Clock", - "๐Ÿ•ค": "Nine-Thirty", - "๐Ÿ•™": "Ten Oโ€™Clock", - "๐Ÿ•ฅ": "Ten-Thirty", - "๐Ÿ•š": "Eleven Oโ€™Clock", - "๐Ÿ•ฆ": "Eleven-Thirty", - "๐ŸŒ€": "Cyclone", - "โ™ ๏ธ": "Spade Suit", - "โ™ฅ๏ธ": "Heart Suit", - "โ™ฆ๏ธ": "Diamond Suit", - "โ™ฃ๏ธ": "Club Suit", - "๐Ÿƒ": "Joker", - "๐Ÿ€„": "Mahjong Red Dragon", - "๐ŸŽด": "Flower Playing Cards", - "๐Ÿ”‡": "Muted Speaker", - "๐Ÿ”ˆ": "Speaker Low Volume", - "๐Ÿ”‰": "Speaker Medium Volume", - "๐Ÿ”Š": "Speaker High Volume", - "๐Ÿ“ข": "Loudspeaker", - "๐Ÿ“ฃ": "Megaphone", - "๐Ÿ“ฏ": "Postal Horn", - "๐Ÿ””": "Bell", - "๐Ÿ”•": "Bell with Slash", - "๐ŸŽต": "Musical Note", - "๐ŸŽถ": "Musical Notes", - "๐Ÿ’น": "Chart Increasing with Yen", - "๐Ÿ›—": "Elevator", - "๐Ÿง": "ATM Sign", - "๐Ÿšฎ": "Litter in Bin Sign", - "๐Ÿšฐ": "Potable Water", - "โ™ฟ": "Wheelchair Symbol", - "๐Ÿšน": "Menโ€™s Room", - "๐Ÿšบ": "Womenโ€™s Room", - "๐Ÿšป": "Restroom", - "๐Ÿšผ": "Baby Symbol", - "๐Ÿšพ": "Water Closet", - "โš ๏ธ": "Warning", - "๐Ÿšธ": "Children Crossing", - "โ›”": "No Entry", - "๐Ÿšซ": "Prohibited", - "๐Ÿšณ": "No Bicycles", - "๐Ÿšญ": "No Smoking", - "๐Ÿšฏ": "No Littering", - "๐Ÿšฑ": "Non-Potable Water", - "๐Ÿšท": "No Pedestrians", - "๐Ÿ“ต": "No Mobile Phones", - "๐Ÿ”ž": "No One Under Eighteen", - "โ˜ข๏ธ": "Radioactive", - "โ˜ฃ๏ธ": "Biohazard", - "โฌ†๏ธ": "Up Arrow", - "โ†—๏ธ": "Up-Right Arrow", - "โžก๏ธ": "Right Arrow", - "โ†˜๏ธ": "Down-Right Arrow", - "โฌ‡๏ธ": "Down Arrow", - "โ†™๏ธ": "Down-Left Arrow", - "โฌ…๏ธ": "Left Arrow", - "โ†–๏ธ": "Up-Left Arrow", - "โ†•๏ธ": "Up-Down Arrow", - "โ†”๏ธ": "Left-Right Arrow", - "โ†ฉ๏ธ": "Right Arrow Curving Left", - "โ†ช๏ธ": "Left Arrow Curving Right", - "โคด๏ธ": "Right Arrow Curving Up", - "โคต๏ธ": "Right Arrow Curving Down", - "๐Ÿ”ƒ": "Clockwise Vertical Arrows", - "๐Ÿ”„": "Counterclockwise Arrows Button", - "๐Ÿ”™": "Back Arrow", - "๐Ÿ”š": "End Arrow", - "๐Ÿ”›": "On! Arrow", - "๐Ÿ”œ": "Soon Arrow", - "๐Ÿ”": "Top Arrow", - "๐Ÿ›": "Place of Worship", - "โš›๏ธ": "Atom Symbol", - "๐Ÿ•‰๏ธ": "Om", - "โœก๏ธ": "Star of David", - "โ˜ธ๏ธ": "Wheel of Dharma", - "โ˜ฏ๏ธ": "Yin Yang", - "โœ๏ธ": "Latin Cross", - "โ˜ฆ๏ธ": "Orthodox Cross", - "โ˜ช๏ธ": "Star and Crescent", - "โ˜ฎ๏ธ": "Peace Symbol", - "๐Ÿ•Ž": "Menorah", - "๐Ÿ”ฏ": "Dotted Six-Pointed Star", - "โ™ˆ": "Aries", - "โ™‰": "Taurus", - "โ™Š": "Gemini", - "โ™‹": "Cancer", - "โ™Œ": "Leo", - "โ™": "Virgo", - "โ™Ž": "Libra", - "โ™": "Scorpio", - "โ™": "Sagittarius", - "โ™‘": "Capricorn", - "โ™’": "Aquarius", - "โ™“": "Pisces", - "โ›Ž": "Ophiuchus", - "๐Ÿ”€": "Shuffle Tracks Button", - "๐Ÿ”": "Repeat Button", - "๐Ÿ”‚": "Repeat Single Button", - "โ–ถ๏ธ": "Play Button", - "โฉ": "Fast-Forward Button", - "โญ๏ธ": "Next Track Button", - "โฏ๏ธ": "Play or Pause Button", - "โ—€๏ธ": "Reverse Button", - "โช": "Fast Reverse Button", - "โฎ๏ธ": "Last Track Button", - "๐Ÿ”ผ": "Upwards Button", - "โซ": "Fast Up Button", - "๐Ÿ”ฝ": "Downwards Button", - "โฌ": "Fast Down Button", - "โธ๏ธ": "Pause Button", - "โน๏ธ": "Stop Button", - "โบ๏ธ": "Record Button", - "โ๏ธ": "Eject Button", - "๐ŸŽฆ": "Cinema", - "๐Ÿ”…": "Dim Button", - "๐Ÿ”†": "Bright Button", - "๐Ÿ“ถ": "Antenna Bars", - "๐Ÿ“ณ": "Vibration Mode", - "๐Ÿ“ด": "Mobile Phone Off", - "โ™€๏ธ": "Female Sign", - "โ™‚๏ธ": "Male Sign", - "โœ–๏ธ": "Multiply", - "โž•": "Plus", - "โž–": "Minus", - "โž—": "Divide", - "โ™พ๏ธ": "Infinity", - "โ€ผ๏ธ": "Double Exclamation Mark", - "โ‰๏ธ": "Exclamation Question Mark", - "โ“": "Question Mark", - "โ”": "White Question Mark", - "โ•": "White Exclamation Mark", - "โ—": "Exclamation Mark", - "ใ€ฐ๏ธ": "Wavy Dash", - "๐Ÿ’ฑ": "Currency Exchange", - "๐Ÿ’ฒ": "Heavy Dollar Sign", - "โš•๏ธ": "Medical Symbol", - "โ™ป๏ธ": "Recycling Symbol", - "โšœ๏ธ": "Fleur-de-lis", - "๐Ÿ”ฑ": "Trident Emblem", - "๐Ÿ“›": "Name Badge", - "๐Ÿ”ฐ": "Japanese Symbol for Beginner", - "โญ•": "Hollow Red Circle", - "โœ…": "Check Mark Button", - "โ˜‘๏ธ": "Check Box with Check", - "โœ”๏ธ": "Check Mark", - "โŒ": "Cross Mark", - "โŽ": "Cross Mark Button", - "โžฐ": "Curly Loop", - "โžฟ": "Double Curly Loop", - "ใ€ฝ๏ธ": "Part Alternation Mark", - "โœณ๏ธ": "Eight-Spoked Asterisk", - "โœด๏ธ": "Eight-Pointed Star", - "โ‡๏ธ": "Sparkle", - "ยฉ๏ธ": "Copyright", - "ยฎ๏ธ": "Registered", - "โ„ข๏ธ": "Trade Mark", - "#๏ธโƒฃ": "Keycap Number Sign", - "*๏ธโƒฃ": "Keycap Asterisk", - "0๏ธโƒฃ": "Keycap Digit Zero", - "1๏ธโƒฃ": "Keycap Digit One", - "2๏ธโƒฃ": "Keycap Digit Two", - "3๏ธโƒฃ": "Keycap Digit Three", - "4๏ธโƒฃ": "Keycap Digit Four", - "5๏ธโƒฃ": "Keycap Digit Five", - "6๏ธโƒฃ": "Keycap Digit Six", - "7๏ธโƒฃ": "Keycap Digit Seven", - "8๏ธโƒฃ": "Keycap Digit Eight", - "9๏ธโƒฃ": "Keycap Digit Nine", - "๐Ÿ”Ÿ": "Keycap: 10", - "๐Ÿ” ": "Input Latin Uppercase", - "๐Ÿ”ก": "Input Latin Lowercase", - "๐Ÿ”ข": "Input Numbers", - "๐Ÿ”ฃ": "Input Symbols", - "๐Ÿ”ค": "Input Latin Letters", - "๐Ÿ…ฐ๏ธ": "A Button (Blood Type)", - "๐Ÿ†Ž": "AB Button (Blood Type)", - "๐Ÿ…ฑ๏ธ": "B Button (Blood Type)", - "๐Ÿ†‘": "CL Button", - "๐Ÿ†’": "Cool Button", - "๐Ÿ†“": "Free Button", - "โ„น๏ธ": "Information", - "๐Ÿ†”": "ID Button", - "โ“‚๏ธ": "Circled M", - "๐Ÿ†•": "New Button", - "๐Ÿ†–": "NG Button", - "๐Ÿ…พ๏ธ": "O Button (Blood Type)", - "๐Ÿ†—": "OK Button", - "๐Ÿ…ฟ๏ธ": "P Button", - "๐Ÿ†˜": "SOS Button", - "๐Ÿ†™": "Up! Button", - "๐Ÿ†š": "Vs Button", - "๐Ÿˆ": "Japanese โ€œHereโ€ Button", - "๐Ÿˆ‚๏ธ": "Japanese โ€œService Chargeโ€ Button", - "๐Ÿˆท๏ธ": "Japanese โ€œMonthly Amountโ€ Button", - "๐Ÿˆถ": "Japanese โ€œNot Free of Chargeโ€ Button", - "๐Ÿˆฏ": "Japanese โ€œReservedโ€ Button", - "๐Ÿ‰": "Japanese โ€œBargainโ€ Button", - "๐Ÿˆน": "Japanese โ€œDiscountโ€ Button", - "๐Ÿˆš": "Japanese โ€œFree of Chargeโ€ Button", - "๐Ÿˆฒ": "Japanese โ€œProhibitedโ€ Button", - "๐Ÿ‰‘": "Japanese โ€œAcceptableโ€ Button", - "๐Ÿˆธ": "Japanese โ€œApplicationโ€ Button", - "๐Ÿˆด": "Japanese โ€œPassing Gradeโ€ Button", - "๐Ÿˆณ": "Japanese โ€œVacancyโ€ Button", - "ใŠ—๏ธ": "Japanese โ€œCongratulationsโ€ Button", - "ใŠ™๏ธ": "Japanese โ€œSecretโ€ Button", - "๐Ÿˆบ": "Japanese โ€œOpen for Businessโ€ Button", - "๐Ÿˆต": "Japanese โ€œNo Vacancyโ€ Button", - "๐Ÿ”ด": "Red Circle", - "๐ŸŸ ": "Orange Circle", - "๐ŸŸก": "Yellow Circle", - "๐ŸŸข": "Green Circle", - "๐Ÿ”ต": "Blue Circle", - "๐ŸŸฃ": "Purple Circle", - "๐ŸŸค": "Brown Circle", - "โšซ": "Black Circle", - "โšช": "White Circle", - "๐ŸŸฅ": "Red Square", - "๐ŸŸง": "Orange Square", - "๐ŸŸจ": "Yellow Square", - "๐ŸŸฉ": "Green Square", - "๐ŸŸฆ": "Blue Square", - "๐ŸŸช": "Purple Square", - "๐ŸŸซ": "Brown Square", - "โฌ›": "Black Large Square", - "โฌœ": "White Large Square", - "โ—ผ๏ธ": "Black Medium Square", - "โ—ป๏ธ": "White Medium Square", - "โ—พ": "Black Medium-Small Square", - "โ—ฝ": "White Medium-Small Square", - "โ–ช๏ธ": "Black Small Square", - "โ–ซ๏ธ": "White Small Square", - "๐Ÿ”ถ": "Large Orange Diamond", - "๐Ÿ”ท": "Large Blue Diamond", - "๐Ÿ”ธ": "Small Orange Diamond", - "๐Ÿ”น": "Small Blue Diamond", - "๐Ÿ”บ": "Red Triangle Pointed Up", - "๐Ÿ”ป": "Red Triangle Pointed Down", - "๐Ÿ’ ": "Diamond with a Dot", - "๐Ÿ”˜": "Radio Button", - "๐Ÿ”ณ": "White Square Button", - "๐Ÿ”ฒ": "Black Square Button", - "โค๏ธโ€๐Ÿ”ฅ": "Heart on Fire", - "โค๏ธโ€๐Ÿฉน": "Mending Heart", - }, - "Flags": { - "๐Ÿ": "Chequered Flag", - "๐Ÿšฉ": "Triangular Flag", - "๐ŸŽŒ": "Crossed Flags", - "๐Ÿด": "Black Flag", - "๐Ÿณ๏ธ": "White Flag", - "๐Ÿณ๏ธโ€๐ŸŒˆ": "Rainbow Flag", - "๐Ÿณ๏ธโ€โšง๏ธ": "Transgender Flag", - "๐Ÿดโ€โ˜ ๏ธ": "Pirate Flag", - "๐Ÿ‡ฆ๐Ÿ‡จ": "Flag: Ascension Island", - "๐Ÿ‡ฆ๐Ÿ‡ฉ": "Flag: Andorra", - "๐Ÿ‡ฆ๐Ÿ‡ช": "Flag: United Arab Emirates", - "๐Ÿ‡ฆ๐Ÿ‡ซ": "Flag: Afghanistan", - "๐Ÿ‡ฆ๐Ÿ‡ฌ": "Flag: Antigua & Barbuda", - "๐Ÿ‡ฆ๐Ÿ‡ฎ": "Flag: Anguilla", - "๐Ÿ‡ฆ๐Ÿ‡ฑ": "Flag: Albania", - "๐Ÿ‡ฆ๐Ÿ‡ฒ": "Flag: Armenia", - "๐Ÿ‡ฆ๐Ÿ‡ด": "Flag: Angola", - "๐Ÿ‡ฆ๐Ÿ‡ถ": "Flag: Antarctica", - "๐Ÿ‡ฆ๐Ÿ‡ท": "Flag: Argentina", - "๐Ÿ‡ฆ๐Ÿ‡ธ": "Flag: American Samoa", - "๐Ÿ‡ฆ๐Ÿ‡น": "Flag: Austria", - "๐Ÿ‡ฆ๐Ÿ‡บ": "Flag: Australia", - "๐Ÿ‡ฆ๐Ÿ‡ผ": "Flag: Aruba", - "๐Ÿ‡ฆ๐Ÿ‡ฝ": "Flag: ร…land Islands", - "๐Ÿ‡ฆ๐Ÿ‡ฟ": "Flag: Azerbaijan", - "๐Ÿ‡ง๐Ÿ‡ฆ": "Flag: Bosnia & Herzegovina", - "๐Ÿ‡ง๐Ÿ‡ง": "Flag: Barbados", - "๐Ÿ‡ง๐Ÿ‡ฉ": "Flag: Bangladesh", - "๐Ÿ‡ง๐Ÿ‡ช": "Flag: Belgium", - "๐Ÿ‡ง๐Ÿ‡ซ": "Flag: Burkina Faso", - "๐Ÿ‡ง๐Ÿ‡ฌ": "Flag: Bulgaria", - "๐Ÿ‡ง๐Ÿ‡ญ": "Flag: Bahrain", - "๐Ÿ‡ง๐Ÿ‡ฎ": "Flag: Burundi", - "๐Ÿ‡ง๐Ÿ‡ฏ": "Flag: Benin", - "๐Ÿ‡ง๐Ÿ‡ฑ": "Flag: St. Barthรฉlemy", - "๐Ÿ‡ง๐Ÿ‡ฒ": "Flag: Bermuda", - "๐Ÿ‡ง๐Ÿ‡ณ": "Flag: Brunei", - "๐Ÿ‡ง๐Ÿ‡ด": "Flag: Bolivia", - "๐Ÿ‡ง๐Ÿ‡ถ": "Flag: Caribbean Netherlands", - "๐Ÿ‡ง๐Ÿ‡ท": "Flag: Brazil", - "๐Ÿ‡ง๐Ÿ‡ธ": "Flag: Bahamas", - "๐Ÿ‡ง๐Ÿ‡น": "Flag: Bhutan", - "๐Ÿ‡ง๐Ÿ‡ป": "Flag: Bouvet Island", - "๐Ÿ‡ง๐Ÿ‡ผ": "Flag: Botswana", - "๐Ÿ‡ง๐Ÿ‡พ": "Flag: Belarus", - "๐Ÿ‡ง๐Ÿ‡ฟ": "Flag: Belize", - "๐Ÿ‡จ๐Ÿ‡ฆ": "Flag: Canada", - "๐Ÿ‡จ๐Ÿ‡จ": "Flag: Cocos (Keeling) Islands", - "๐Ÿ‡จ๐Ÿ‡ฉ": "Flag: Congo - Kinshasa", - "๐Ÿ‡จ๐Ÿ‡ซ": "Flag: Central African Republic", - "๐Ÿ‡จ๐Ÿ‡ฌ": "Flag: Congo - Brazzaville", - "๐Ÿ‡จ๐Ÿ‡ญ": "Flag: Switzerland", - "๐Ÿ‡จ๐Ÿ‡ฎ": "Flag: Cรดte dโ€™Ivoire", - "๐Ÿ‡จ๐Ÿ‡ฐ": "Flag: Cook Islands", - "๐Ÿ‡จ๐Ÿ‡ฑ": "Flag: Chile", - "๐Ÿ‡จ๐Ÿ‡ฒ": "Flag: Cameroon", - "๐Ÿ‡จ๐Ÿ‡ณ": "Flag: China", - "๐Ÿ‡จ๐Ÿ‡ด": "Flag: Colombia", - "๐Ÿ‡จ๐Ÿ‡ต": "Flag: Clipperton Island", - "๐Ÿ‡จ๐Ÿ‡ท": "Flag: Costa Rica", - "๐Ÿ‡จ๐Ÿ‡บ": "Flag: Cuba", - "๐Ÿ‡จ๐Ÿ‡ป": "Flag: Cape Verde", - "๐Ÿ‡จ๐Ÿ‡ผ": "Flag: Curaรงao", - "๐Ÿ‡จ๐Ÿ‡ฝ": "Flag: Christmas Island", - "๐Ÿ‡จ๐Ÿ‡พ": "Flag: Cyprus", - "๐Ÿ‡จ๐Ÿ‡ฟ": "Flag: Czechia", - "๐Ÿ‡ฉ๐Ÿ‡ช": "Flag: Germany", - "๐Ÿ‡ฉ๐Ÿ‡ฌ": "Flag: Diego Garcia", - "๐Ÿ‡ฉ๐Ÿ‡ฏ": "Flag: Djibouti", - "๐Ÿ‡ฉ๐Ÿ‡ฐ": "Flag: Denmark", - "๐Ÿ‡ฉ๐Ÿ‡ฒ": "Flag: Dominica", - "๐Ÿ‡ฉ๐Ÿ‡ด": "Flag: Dominican Republic", - "๐Ÿ‡ฉ๐Ÿ‡ฟ": "Flag: Algeria", - "๐Ÿ‡ช๐Ÿ‡ฆ": "Flag: Ceuta & Melilla", - "๐Ÿ‡ช๐Ÿ‡จ": "Flag: Ecuador", - "๐Ÿ‡ช๐Ÿ‡ช": "Flag: Estonia", - "๐Ÿ‡ช๐Ÿ‡ฌ": "Flag: Egypt", - "๐Ÿ‡ช๐Ÿ‡ญ": "Flag: Western Sahara", - "๐Ÿ‡ช๐Ÿ‡ท": "Flag: Eritrea", - "๐Ÿ‡ช๐Ÿ‡ธ": "Flag: Spain", - "๐Ÿ‡ช๐Ÿ‡น": "Flag: Ethiopia", - "๐Ÿ‡ช๐Ÿ‡บ": "Flag: European Union", - "๐Ÿ‡ซ๐Ÿ‡ฎ": "Flag: Finland", - "๐Ÿ‡ซ๐Ÿ‡ฏ": "Flag: Fiji", - "๐Ÿ‡ซ๐Ÿ‡ฐ": "Flag: Falkland Islands", - "๐Ÿ‡ซ๐Ÿ‡ฒ": "Flag: Micronesia", - "๐Ÿ‡ซ๐Ÿ‡ด": "Flag: Faroe Islands", - "๐Ÿ‡ซ๐Ÿ‡ท": "Flag: France", - "๐Ÿ‡ฌ๐Ÿ‡ฆ": "Flag: Gabon", - "๐Ÿ‡ฌ๐Ÿ‡ง": "Flag: United Kingdom", - "๐Ÿ‡ฌ๐Ÿ‡ฉ": "Flag: Grenada", - "๐Ÿ‡ฌ๐Ÿ‡ช": "Flag: Georgia", - "๐Ÿ‡ฌ๐Ÿ‡ซ": "Flag: French Guiana", - "๐Ÿ‡ฌ๐Ÿ‡ฌ": "Flag: Guernsey", - "๐Ÿ‡ฌ๐Ÿ‡ญ": "Flag: Ghana", - "๐Ÿ‡ฌ๐Ÿ‡ฎ": "Flag: Gibraltar", - "๐Ÿ‡ฌ๐Ÿ‡ฑ": "Flag: Greenland", - "๐Ÿ‡ฌ๐Ÿ‡ฒ": "Flag: Gambia", - "๐Ÿ‡ฌ๐Ÿ‡ณ": "Flag: Guinea", - "๐Ÿ‡ฌ๐Ÿ‡ต": "Flag: Guadeloupe", - "๐Ÿ‡ฌ๐Ÿ‡ถ": "Flag: Equatorial Guinea", - "๐Ÿ‡ฌ๐Ÿ‡ท": "Flag: Greece", - "๐Ÿ‡ฌ๐Ÿ‡ธ": "Flag: South Georgia & South Sandwich Islands", - "๐Ÿ‡ฌ๐Ÿ‡น": "Flag: Guatemala", - "๐Ÿ‡ฌ๐Ÿ‡บ": "Flag: Guam", - "๐Ÿ‡ฌ๐Ÿ‡ผ": "Flag: Guinea-Bissau", - "๐Ÿ‡ฌ๐Ÿ‡พ": "Flag: Guyana", - "๐Ÿ‡ญ๐Ÿ‡ฐ": "Flag: Hong Kong SAR China", - "๐Ÿ‡ญ๐Ÿ‡ฒ": "Flag: Heard & McDonald Islands", - "๐Ÿ‡ญ๐Ÿ‡ณ": "Flag: Honduras", - "๐Ÿ‡ญ๐Ÿ‡ท": "Flag: Croatia", - "๐Ÿ‡ญ๐Ÿ‡น": "Flag: Haiti", - "๐Ÿ‡ญ๐Ÿ‡บ": "Flag: Hungary", - "๐Ÿ‡ฎ๐Ÿ‡จ": "Flag: Canary Islands", - "๐Ÿ‡ฎ๐Ÿ‡ฉ": "Flag: Indonesia", - "๐Ÿ‡ฎ๐Ÿ‡ช": "Flag: Ireland", - "๐Ÿ‡ฎ๐Ÿ‡ฑ": "Flag: Israel", - "๐Ÿ‡ฎ๐Ÿ‡ฒ": "Flag: Isle of Man", - "๐Ÿ‡ฎ๐Ÿ‡ณ": "Flag: India", - "๐Ÿ‡ฎ๐Ÿ‡ด": "Flag: British Indian Ocean Territory", - "๐Ÿ‡ฎ๐Ÿ‡ถ": "Flag: Iraq", - "๐Ÿ‡ฎ๐Ÿ‡ท": "Flag: Iran", - "๐Ÿ‡ฎ๐Ÿ‡ธ": "Flag: Iceland", - "๐Ÿ‡ฎ๐Ÿ‡น": "Flag: Italy", - "๐Ÿ‡ฏ๐Ÿ‡ช": "Flag: Jersey", - "๐Ÿ‡ฏ๐Ÿ‡ฒ": "Flag: Jamaica", - "๐Ÿ‡ฏ๐Ÿ‡ด": "Flag: Jordan", - "๐Ÿ‡ฏ๐Ÿ‡ต": "Flag: Japan", - "๐Ÿ‡ฐ๐Ÿ‡ช": "Flag: Kenya", - "๐Ÿ‡ฐ๐Ÿ‡ฌ": "Flag: Kyrgyzstan", - "๐Ÿ‡ฐ๐Ÿ‡ญ": "Flag: Cambodia", - "๐Ÿ‡ฐ๐Ÿ‡ฎ": "Flag: Kiribati", - "๐Ÿ‡ฐ๐Ÿ‡ฒ": "Flag: Comoros", - "๐Ÿ‡ฐ๐Ÿ‡ณ": "Flag: St. Kitts & Nevis", - "๐Ÿ‡ฐ๐Ÿ‡ต": "Flag: North Korea", - "๐Ÿ‡ฐ๐Ÿ‡ท": "Flag: South Korea", - "๐Ÿ‡ฐ๐Ÿ‡ผ": "Flag: Kuwait", - "๐Ÿ‡ฐ๐Ÿ‡พ": "Flag: Cayman Islands", - "๐Ÿ‡ฐ๐Ÿ‡ฟ": "Flag: Kazakhstan", - "๐Ÿ‡ฑ๐Ÿ‡ฆ": "Flag: Laos", - "๐Ÿ‡ฑ๐Ÿ‡ง": "Flag: Lebanon", - "๐Ÿ‡ฑ๐Ÿ‡จ": "Flag: St. Lucia", - "๐Ÿ‡ฑ๐Ÿ‡ฎ": "Flag: Liechtenstein", - "๐Ÿ‡ฑ๐Ÿ‡ฐ": "Flag: Sri Lanka", - "๐Ÿ‡ฑ๐Ÿ‡ท": "Flag: Liberia", - "๐Ÿ‡ฑ๐Ÿ‡ธ": "Flag: Lesotho", - "๐Ÿ‡ฑ๐Ÿ‡น": "Flag: Lithuania", - "๐Ÿ‡ฑ๐Ÿ‡บ": "Flag: Luxembourg", - "๐Ÿ‡ฑ๐Ÿ‡ป": "Flag: Latvia", - "๐Ÿ‡ฑ๐Ÿ‡พ": "Flag: Libya", - "๐Ÿ‡ฒ๐Ÿ‡ฆ": "Flag: Morocco", - "๐Ÿ‡ฒ๐Ÿ‡จ": "Flag: Monaco", - "๐Ÿ‡ฒ๐Ÿ‡ฉ": "Flag: Moldova", - "๐Ÿ‡ฒ๐Ÿ‡ช": "Flag: Montenegro", - "๐Ÿ‡ฒ๐Ÿ‡ซ": "Flag: St. Martin", - "๐Ÿ‡ฒ๐Ÿ‡ฌ": "Flag: Madagascar", - "๐Ÿ‡ฒ๐Ÿ‡ญ": "Flag: Marshall Islands", - "๐Ÿ‡ฒ๐Ÿ‡ฐ": "Flag: North Macedonia", - "๐Ÿ‡ฒ๐Ÿ‡ฑ": "Flag: Mali", - "๐Ÿ‡ฒ๐Ÿ‡ฒ": "Flag: Myanmar (Burma)", - "๐Ÿ‡ฒ๐Ÿ‡ณ": "Flag: Mongolia", - "๐Ÿ‡ฒ๐Ÿ‡ด": "Flag: Macao Sar China", - "๐Ÿ‡ฒ๐Ÿ‡ต": "Flag: Northern Mariana Islands", - "๐Ÿ‡ฒ๐Ÿ‡ถ": "Flag: Martinique", - "๐Ÿ‡ฒ๐Ÿ‡ท": "Flag: Mauritania", - "๐Ÿ‡ฒ๐Ÿ‡ธ": "Flag: Montserrat", - "๐Ÿ‡ฒ๐Ÿ‡น": "Flag: Malta", - "๐Ÿ‡ฒ๐Ÿ‡บ": "Flag: Mauritius", - "๐Ÿ‡ฒ๐Ÿ‡ป": "Flag: Maldives", - "๐Ÿ‡ฒ๐Ÿ‡ผ": "Flag: Malawi", - "๐Ÿ‡ฒ๐Ÿ‡ฝ": "Flag: Mexico", - "๐Ÿ‡ฒ๐Ÿ‡พ": "Flag: Malaysia", - "๐Ÿ‡ฒ๐Ÿ‡ฟ": "Flag: Mozambique", - "๐Ÿ‡ณ๐Ÿ‡ฆ": "Flag: Namibia", - "๐Ÿ‡ณ๐Ÿ‡จ": "Flag: New Caledonia", - "๐Ÿ‡ณ๐Ÿ‡ช": "Flag: Niger", - "๐Ÿ‡ณ๐Ÿ‡ซ": "Flag: Norfolk Island", - "๐Ÿ‡ณ๐Ÿ‡ฌ": "Flag: Nigeria", - "๐Ÿ‡ณ๐Ÿ‡ฎ": "Flag: Nicaragua", - "๐Ÿ‡ณ๐Ÿ‡ฑ": "Flag: Netherlands", - "๐Ÿ‡ณ๐Ÿ‡ด": "Flag: Norway", - "๐Ÿ‡ณ๐Ÿ‡ต": "Flag: Nepal", - "๐Ÿ‡ณ๐Ÿ‡ท": "Flag: Nauru", - "๐Ÿ‡ณ๐Ÿ‡บ": "Flag: Niue", - "๐Ÿ‡ณ๐Ÿ‡ฟ": "Flag: New Zealand", - "๐Ÿ‡ด๐Ÿ‡ฒ": "Flag: Oman", - "๐Ÿ‡ต๐Ÿ‡ฆ": "Flag: Panama", - "๐Ÿ‡ต๐Ÿ‡ช": "Flag: Peru", - "๐Ÿ‡ต๐Ÿ‡ซ": "Flag: French Polynesia", - "๐Ÿ‡ต๐Ÿ‡ฌ": "Flag: Papua New Guinea", - "๐Ÿ‡ต๐Ÿ‡ญ": "Flag: Philippines", - "๐Ÿ‡ต๐Ÿ‡ฐ": "Flag: Pakistan", - "๐Ÿ‡ต๐Ÿ‡ฑ": "Flag: Poland", - "๐Ÿ‡ต๐Ÿ‡ฒ": "Flag: St. Pierre & Miquelon", - "๐Ÿ‡ต๐Ÿ‡ณ": "Flag: Pitcairn Islands", - "๐Ÿ‡ต๐Ÿ‡ท": "Flag: Puerto Rico", - "๐Ÿ‡ต๐Ÿ‡ธ": "Flag: Palestinian Territories", - "๐Ÿ‡ต๐Ÿ‡น": "Flag: Portugal", - "๐Ÿ‡ต๐Ÿ‡ผ": "Flag: Palau", - "๐Ÿ‡ต๐Ÿ‡พ": "Flag: Paraguay", - "๐Ÿ‡ถ๐Ÿ‡ฆ": "Flag: Qatar", - "๐Ÿ‡ท๐Ÿ‡ช": "Flag: Rรฉunion", - "๐Ÿ‡ท๐Ÿ‡ด": "Flag: Romania", - "๐Ÿ‡ท๐Ÿ‡ธ": "Flag: Serbia", - "๐Ÿ‡ท๐Ÿ‡บ": "Flag: Russia", - "๐Ÿ‡ท๐Ÿ‡ผ": "Flag: Rwanda", - "๐Ÿ‡ธ๐Ÿ‡ฆ": "Flag: Saudi Arabia", - "๐Ÿ‡ธ๐Ÿ‡ง": "Flag: Solomon Islands", - "๐Ÿ‡ธ๐Ÿ‡จ": "Flag: Seychelles", - "๐Ÿ‡ธ๐Ÿ‡ฉ": "Flag: Sudan", - "๐Ÿ‡ธ๐Ÿ‡ช": "Flag: Sweden", - "๐Ÿ‡ธ๐Ÿ‡ฌ": "Flag: Singapore", - "๐Ÿ‡ธ๐Ÿ‡ญ": "Flag: St. Helena", - "๐Ÿ‡ธ๐Ÿ‡ฎ": "Flag: Slovenia", - "๐Ÿ‡ธ๐Ÿ‡ฏ": "Flag: Svalbard & Jan Mayen", - "๐Ÿ‡ธ๐Ÿ‡ฐ": "Flag: Slovakia", - "๐Ÿ‡ธ๐Ÿ‡ฑ": "Flag: Sierra Leone", - "๐Ÿ‡ธ๐Ÿ‡ฒ": "Flag: San Marino", - "๐Ÿ‡ธ๐Ÿ‡ณ": "Flag: Senegal", - "๐Ÿ‡ธ๐Ÿ‡ด": "Flag: Somalia", - "๐Ÿ‡ธ๐Ÿ‡ท": "Flag: Suriname", - "๐Ÿ‡ธ๐Ÿ‡ธ": "Flag: South Sudan", - "๐Ÿ‡ธ๐Ÿ‡น": "Flag: Sรฃo Tomรฉ & Prรญncipe", - "๐Ÿ‡ธ๐Ÿ‡ป": "Flag: El Salvador", - "๐Ÿ‡ธ๐Ÿ‡ฝ": "Flag: Sint Maarten", - "๐Ÿ‡ธ๐Ÿ‡พ": "Flag: Syria", - "๐Ÿ‡ธ๐Ÿ‡ฟ": "Flag: Eswatini", - "๐Ÿ‡น๐Ÿ‡ฆ": "Flag: Tristan Da Cunha", - "๐Ÿ‡น๐Ÿ‡จ": "Flag: Turks & Caicos Islands", - "๐Ÿ‡น๐Ÿ‡ฉ": "Flag: Chad", - "๐Ÿ‡น๐Ÿ‡ซ": "Flag: French Southern Territories", - "๐Ÿ‡น๐Ÿ‡ฌ": "Flag: Togo", - "๐Ÿ‡น๐Ÿ‡ญ": "Flag: Thailand", - "๐Ÿ‡น๐Ÿ‡ฏ": "Flag: Tajikistan", - "๐Ÿ‡น๐Ÿ‡ฐ": "Flag: Tokelau", - "๐Ÿ‡น๐Ÿ‡ฑ": "Flag: Timor-Leste", - "๐Ÿ‡น๐Ÿ‡ฒ": "Flag: Turkmenistan", - "๐Ÿ‡น๐Ÿ‡ณ": "Flag: Tunisia", - "๐Ÿ‡น๐Ÿ‡ด": "Flag: Tonga", - "๐Ÿ‡น๐Ÿ‡ท": "Flag: Turkey", - "๐Ÿ‡น๐Ÿ‡น": "Flag: Trinidad & Tobago", - "๐Ÿ‡น๐Ÿ‡ป": "Flag: Tuvalu", - "๐Ÿ‡น๐Ÿ‡ผ": "Flag: Taiwan", - "๐Ÿ‡น๐Ÿ‡ฟ": "Flag: Tanzania", - "๐Ÿ‡บ๐Ÿ‡ฆ": "Flag: Ukraine", - "๐Ÿ‡บ๐Ÿ‡ฌ": "Flag: Uganda", - "๐Ÿ‡บ๐Ÿ‡ฒ": "Flag: U.S. Outlying Islands", - "๐Ÿ‡บ๐Ÿ‡ณ": "Flag: United Nations", - "๐Ÿ‡บ๐Ÿ‡ธ": "Flag: United States", - "๐Ÿ‡บ๐Ÿ‡พ": "Flag: Uruguay", - "๐Ÿ‡บ๐Ÿ‡ฟ": "Flag: Uzbekistan", - "๐Ÿ‡ป๐Ÿ‡ฆ": "Flag: Vatican City", - "๐Ÿ‡ป๐Ÿ‡จ": "Flag: St. Vincent & Grenadines", - "๐Ÿ‡ป๐Ÿ‡ช": "Flag: Venezuela", - "๐Ÿ‡ป๐Ÿ‡ฌ": "Flag: British Virgin Islands", - "๐Ÿ‡ป๐Ÿ‡ฎ": "Flag: U.S. Virgin Islands", - "๐Ÿ‡ป๐Ÿ‡ณ": "Flag: Vietnam", - "๐Ÿ‡ป๐Ÿ‡บ": "Flag: Vanuatu", - "๐Ÿ‡ผ๐Ÿ‡ซ": "Flag: Wallis & Futuna", - "๐Ÿ‡ผ๐Ÿ‡ธ": "Flag: Samoa", - "๐Ÿ‡ฝ๐Ÿ‡ฐ": "Flag: Kosovo", - "๐Ÿ‡พ๐Ÿ‡ช": "Flag: Yemen", - "๐Ÿ‡พ๐Ÿ‡น": "Flag: Mayotte", - "๐Ÿ‡ฟ๐Ÿ‡ฆ": "Flag: South Africa", - "๐Ÿ‡ฟ๐Ÿ‡ฒ": "Flag: Zambia", - "๐Ÿ‡ฟ๐Ÿ‡ผ": "Flag: Zimbabwe", - "๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ": "Flag: England", - "๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ": "Flag: Scotland", - "๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ": "Flag: Wales", - "๐Ÿด๓ ต๓ ณ๓ ด๓ ธ๓ ฟ": "Flag for Texas (US-TX)", - }, - } + self.emojis = self.load_emojis() self.total_emojis = {} for group, items in self.emojis.items(): @@ -1992,6 +149,13 @@ def setupUi(self, Form): self.retranslateUi(Form) QtCore.QMetaObject.connectSlotsByName(Form) + def load_emojis(self) -> dict: + with DIR_PLUGIN_ROOT.joinpath("resources/emojis2.json").open( + mode="r", encoding="UTF-8" + ) as in_json: + emojis = json.load(in_json) + return emojis + def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Form")) diff --git a/qtribu/resources/emojis.json b/qtribu/resources/emojis.json new file mode 100644 index 00000000..90b26911 --- /dev/null +++ b/qtribu/resources/emojis.json @@ -0,0 +1,894 @@ +{ + "Gestures": [ + "๐Ÿคฒ", + "๐Ÿ‘", + "๐Ÿ™Œ", + "๐Ÿ‘", + "๐Ÿค", + "๐Ÿ‘", + "๐Ÿ‘Ž", + "๐Ÿ‘Š", + "โœŠ", + "๐Ÿค›", + "๐Ÿคœ", + "๐Ÿคž", + "โœŒ๏ธ", + "๐ŸคŸ", + "๐Ÿค˜", + "๐Ÿ‘Œ", + "๐Ÿค", + "๐ŸคŒ", + "๐Ÿ‘ˆ", + "๐Ÿ‘‰", + "๐Ÿ‘†", + "๐Ÿ‘‡", + "โ˜๏ธ", + "โœ‹", + "๐Ÿคš", + "๐Ÿ–", + "๐Ÿ––", + "๐Ÿ‘‹", + "๐Ÿค™", + "๐Ÿ’ช", + "๐Ÿฆพ", + "๐Ÿ–•", + "โœ๏ธ", + "๐Ÿ™", + "๐Ÿฆถ", + "๐Ÿฆต", + "๐Ÿฆฟ" + ], + "Emojis": [ + "๐Ÿ˜€", + "๐Ÿ˜ƒ", + "๐Ÿ˜„", + "๐Ÿ˜", + "๐Ÿ˜†", + "๐Ÿ˜…", + "๐Ÿ˜‚", + "๐Ÿคฃ", + "๐Ÿฅฒ", + "๐Ÿฅน", + "โ˜บ๏ธ", + "๐Ÿ˜Š", + "๐Ÿ˜‡", + "๐Ÿ™‚", + "๐Ÿ™ƒ", + "๐Ÿ˜‰", + "๐Ÿ˜Œ", + "๐Ÿ˜", + "๐Ÿฅฐ", + "๐Ÿ˜˜", + "๐Ÿ˜—", + "๐Ÿ˜™", + "๐Ÿ˜š", + "๐Ÿ˜‹", + "๐Ÿ˜›", + "๐Ÿ˜", + "๐Ÿ˜œ", + "๐Ÿคช", + "๐Ÿคจ", + "๐Ÿง", + "๐Ÿค“", + "๐Ÿ˜Ž", + "๐Ÿฅธ", + "๐Ÿคฉ", + "๐Ÿฅณ", + "๐Ÿ˜", + "๐Ÿ˜’", + "๐Ÿ˜ž", + "๐Ÿ˜”", + "๐Ÿ˜Ÿ", + "๐Ÿ˜•", + "๐Ÿ™", + "โ˜น๏ธ", + "๐Ÿ˜ฃ", + "๐Ÿ˜–", + "๐Ÿ˜ซ", + "๐Ÿ˜ฉ", + "๐Ÿฅบ", + "๐Ÿ˜ข", + "๐Ÿ˜ญ", + "๐Ÿ˜ฎโ€๐Ÿ’จ", + "๐Ÿ˜ค", + "๐Ÿ˜ ", + "๐Ÿ˜ก", + "๐Ÿคฌ", + "๐Ÿคฏ", + "๐Ÿ˜ณ", + "๐Ÿฅต", + "๐Ÿฅถ", + "๐Ÿ˜ฑ", + "๐Ÿ˜จ", + "๐Ÿ˜ฐ", + "๐Ÿ˜ฅ", + "๐Ÿ˜“", + "๐Ÿซฃ", + "๐Ÿค—", + "๐Ÿซก", + "๐Ÿค”", + "๐Ÿซข", + "๐Ÿคญ", + "๐Ÿคซ", + "๐Ÿคฅ", + "๐Ÿ˜ถ", + "๐Ÿ˜ถโ€๐ŸŒซ๏ธ", + "๐Ÿ˜", + "๐Ÿ˜‘", + "๐Ÿ˜ฌ", + "๐Ÿซจ", + "๐Ÿซ ", + "๐Ÿ™„", + "๐Ÿ˜ฏ", + "๐Ÿ˜ฆ", + "๐Ÿ˜ง", + "๐Ÿ˜ฎ", + "๐Ÿ˜ฒ", + "๐Ÿฅฑ", + "๐Ÿ˜ด", + "๐Ÿคค", + "๐Ÿ˜ช", + "๐Ÿ˜ต", + "๐Ÿ˜ตโ€๐Ÿ’ซ", + "๐Ÿซฅ", + "๐Ÿค", + "๐Ÿฅด", + "๐Ÿคข", + "๐Ÿคฎ", + "๐Ÿคง", + "๐Ÿ˜ท", + "๐Ÿค’", + "๐Ÿค•", + "๐Ÿค‘", + "๐Ÿค ", + "๐Ÿ˜ˆ", + "๐Ÿ‘ฟ", + "๐Ÿ‘น", + "๐Ÿ‘บ", + "๐Ÿคก", + "๐Ÿ’ฉ", + "๐Ÿ‘ป", + "๐Ÿ’€", + "โ˜ ๏ธ", + "๐Ÿ‘ฝ", + "๐Ÿ‘พ", + "๐Ÿค–", + "๐ŸŽƒ", + "๐Ÿ˜บ", + "๐Ÿ˜ธ", + "๐Ÿ˜น", + "๐Ÿ˜ป", + "๐Ÿ˜ผ", + "๐Ÿ˜ฝ", + "๐Ÿ™€", + "๐Ÿ˜ฟ", + "๐Ÿ˜พ", + "๐Ÿ‘ถ", + "๐Ÿ‘ง", + "๐Ÿง’", + "๐Ÿ‘ฆ", + "๐Ÿ‘ฉ", + "๐Ÿง‘", + "๐Ÿ‘จ" + ], + "Objects": [ + "โŒš๏ธ", + "๐Ÿ“ฑ", + "๐Ÿ“ฒ", + "๐Ÿ’ป", + "โŒจ๏ธ", + "๐Ÿ–ฅ", + "๐Ÿ–จ", + "๐Ÿ–ฑ", + "๐Ÿ–ฒ", + "๐Ÿ•น", + "๐Ÿ—œ", + "๐Ÿ’ฝ", + "๐Ÿ’พ", + "๐Ÿ’ฟ", + "๐Ÿ“€", + "๐Ÿ“ผ", + "๐Ÿ“ท", + "๐Ÿ“ธ", + "๐Ÿ“น", + "๐ŸŽฅ", + "๐Ÿ“ฝ", + "๐ŸŽž", + "๐Ÿ“ž", + "โ˜Ž๏ธ", + "๐Ÿ“Ÿ", + "๐Ÿ“ ", + "๐Ÿ“บ", + "๐Ÿ“ป", + "๐ŸŽ™", + "๐ŸŽš", + "๐ŸŽ›", + "๐Ÿงญ", + "โฑ", + "โฒ", + "โฐ", + "๐Ÿ•ฐ", + "โŒ›๏ธ", + "โณ", + "๐Ÿ“ก", + "๐Ÿ”‹", + "๐Ÿชซ", + "๐Ÿ”Œ", + "๐Ÿ’ก", + "๐Ÿ”ฆ", + "๐Ÿ•ฏ", + "๐Ÿช”", + "๐Ÿงฏ", + "๐Ÿ›ข", + "๐Ÿ›๏ธ", + "๐Ÿ’ธ", + "๐Ÿ’ต", + "๐Ÿ’ด", + "๐Ÿ’ถ", + "๐Ÿ’ท", + "๐Ÿช™", + "๐Ÿ’ฐ", + "๐Ÿ’ณ", + "๐Ÿ’Ž", + "โš–๏ธ", + "๐Ÿชฎ", + "๐Ÿชœ", + "๐Ÿงฐ", + "๐Ÿช›", + "๐Ÿ”ง", + "๐Ÿ”จ", + "โš’", + "๐Ÿ› ", + "โ›", + "๐Ÿชš", + "๐Ÿ”ฉ", + "โš™๏ธ", + "๐Ÿชค", + "๐Ÿงฑ", + "โ›“", + "๐Ÿงฒ", + "๐Ÿ”ซ", + "๐Ÿ’ฃ", + "๐Ÿงจ", + "๐Ÿช“", + "๐Ÿ”ช", + "๐Ÿ—ก", + "โš”๏ธ", + "๐Ÿ›ก", + "๐Ÿšฌ", + "โšฐ๏ธ", + "๐Ÿชฆ", + "โšฑ๏ธ", + "๐Ÿบ", + "๐Ÿ”ฎ", + "๐Ÿ“ฟ", + "๐Ÿงฟ", + "๐Ÿชฌ", + "๐Ÿ’ˆ", + "โš—๏ธ", + "๐Ÿ”ญ", + "๐Ÿ”ฌ", + "๐Ÿ•ณ", + "๐Ÿฉน", + "๐Ÿฉบ", + "๐Ÿฉป", + "๐Ÿฉผ", + "๐Ÿ’Š", + "๐Ÿ’‰", + "๐Ÿฉธ", + "๐Ÿงฌ", + "๐Ÿฆ ", + "๐Ÿงซ", + "๐Ÿงช", + "๐ŸŒก", + "๐Ÿงน", + "๐Ÿช ", + "๐Ÿงบ", + "๐Ÿงป", + "๐Ÿšฝ", + "๐Ÿšฐ", + "๐Ÿšฟ", + "๐Ÿ›", + "๐Ÿ›€", + "๐Ÿงผ", + "๐Ÿชฅ", + "๐Ÿช’", + "๐Ÿงฝ", + "๐Ÿชฃ", + "๐Ÿงด", + "๐Ÿ›Ž", + "๐Ÿ”‘", + "๐Ÿ—", + "๐Ÿšช", + "๐Ÿช‘", + "๐Ÿ›‹", + "๐Ÿ›", + "๐Ÿ›Œ", + "๐Ÿงธ", + "๐Ÿช†", + "๐Ÿ–ผ", + "๐Ÿชž", + "๐ŸชŸ", + "๐Ÿ›", + "๐Ÿ›’", + "๐ŸŽ", + "๐ŸŽˆ", + "๐ŸŽ", + "๐ŸŽ€", + "๐Ÿช„", + "๐Ÿช…", + "๐ŸŽŠ", + "๐ŸŽ‰", + "๐Ÿชฉ", + "๐ŸŽŽ", + "๐Ÿฎ", + "๐ŸŽ" + ], + "Food": [ + "๐Ÿ", + "๐ŸŽ", + "๐Ÿ", + "๐ŸŠ", + "๐Ÿ‹", + "๐ŸŒ", + "๐Ÿ‰", + "๐Ÿ‡", + "๐Ÿ“", + "๐Ÿซ", + "๐Ÿˆ", + "๐Ÿ’", + "๐Ÿ‘", + "๐Ÿฅญ", + "๐Ÿ", + "๐Ÿฅฅ", + "๐Ÿฅ", + "๐Ÿ…", + "๐Ÿ†", + "๐Ÿฅ‘", + "๐Ÿฅฆ", + "๐Ÿซ›", + "๐Ÿฅฌ", + "๐Ÿฅ’", + "๐ŸŒถ", + "๐Ÿซ‘", + "๐ŸŒฝ", + "๐Ÿฅ•", + "๐Ÿซ’", + "๐Ÿง„", + "๐Ÿง…", + "๐Ÿซš", + "๐Ÿฅ”", + "๐Ÿ ", + "๐Ÿซ˜", + "๐Ÿฅ", + "๐Ÿฅฏ", + "๐Ÿž", + "๐Ÿฅ–", + "๐Ÿฅจ", + "๐Ÿง€", + "๐Ÿฅš", + "๐Ÿณ", + "๐Ÿงˆ", + "๐Ÿฅž", + "๐Ÿง‡", + "๐Ÿฅ“", + "๐Ÿฅฉ", + "๐Ÿ—", + "๐Ÿ–", + "๐Ÿฆด", + "๐ŸŒญ", + "๐Ÿ”", + "๐ŸŸ", + "๐Ÿ•", + "๐Ÿซ“", + "๐Ÿฅช", + "๐Ÿฅ™", + "๐Ÿง†", + "๐ŸŒฎ", + "๐ŸŒฏ", + "๐Ÿซ”", + "๐Ÿฅ—", + "๐Ÿฅ˜", + "๐Ÿซ•", + "๐Ÿฅซ", + "๐Ÿ", + "๐Ÿœ", + "๐Ÿฒ", + "๐Ÿ›", + "๐Ÿฃ", + "๐Ÿฑ", + "๐ŸฅŸ", + "๐Ÿฆช", + "๐Ÿค", + "๐Ÿ™", + "๐Ÿš", + "๐Ÿ˜", + "๐Ÿฅ", + "๐Ÿฅ ", + "๐Ÿฅฎ", + "๐Ÿข", + "๐Ÿก", + "๐Ÿง", + "๐Ÿจ", + "๐Ÿฆ", + "๐Ÿฅง", + "๐Ÿง", + "๐Ÿฐ", + "๐ŸŽ‚", + "๐Ÿฎ", + "๐Ÿญ", + "๐Ÿฌ", + "๐Ÿซ", + "๐Ÿฟ", + "๐Ÿฉ", + "๐Ÿช", + "๐ŸŒฐ", + "๐Ÿฅœ", + "๐Ÿฏ", + "๐Ÿฅ›", + "๐Ÿผ", + "๐Ÿซ–", + "โ˜•๏ธ", + "๐Ÿต", + "๐Ÿงƒ", + "๐Ÿฅค", + "๐Ÿง‹", + "๐Ÿซ™", + "๐Ÿถ", + "๐Ÿบ", + "๐Ÿป", + "๐Ÿฅ‚", + "๐Ÿท", + "๐Ÿซ—", + "๐Ÿฅƒ", + "๐Ÿธ", + "๐Ÿน", + "๐Ÿง‰", + "๐Ÿพ", + "๐ŸงŠ", + "๐Ÿฅ„", + "๐Ÿด", + "๐Ÿฝ", + "๐Ÿฅฃ", + "๐Ÿฅก", + "๐Ÿฅข", + "๐Ÿง‚" + ], + "Places": [ + "โš“๏ธ", + "๐Ÿ›Ÿ", + "๐Ÿช", + "โ›ฝ๏ธ", + "๐Ÿšง", + "๐Ÿšฆ", + "๐Ÿšฅ", + "๐Ÿš", + "๐Ÿ—บ", + "๐Ÿ—ฟ", + "๐Ÿ—ฝ", + "๐Ÿ—ผ", + "๐Ÿฐ", + "๐Ÿฏ", + "๐ŸŸ", + "๐ŸŽก", + "๐ŸŽข", + "๐Ÿ›", + "๐ŸŽ ", + "โ›ฒ๏ธ", + "โ›ฑ", + "๐Ÿ–", + "๐Ÿ", + "๐Ÿœ", + "๐ŸŒ‹", + "โ›ฐ", + "๐Ÿ”", + "๐Ÿ—ป", + "๐Ÿ•", + "โ›บ๏ธ", + "๐Ÿ›–", + "๐Ÿ ", + "๐Ÿก", + "๐Ÿ˜", + "๐Ÿš", + "๐Ÿ—", + "๐Ÿญ", + "๐Ÿข", + "๐Ÿฌ", + "๐Ÿฃ", + "๐Ÿค", + "๐Ÿฅ", + "๐Ÿฆ", + "๐Ÿจ", + "๐Ÿช", + "๐Ÿซ", + "๐Ÿฉ", + "๐Ÿ’’", + "๐Ÿ›", + "โ›ช๏ธ", + "๐Ÿ•Œ", + "๐Ÿ•", + "๐Ÿ›•", + "๐Ÿ•‹", + "โ›ฉ", + "๐Ÿ›ค", + "๐Ÿ›ฃ", + "๐Ÿ—พ", + "๐ŸŽ‘", + "๐Ÿž", + "๐ŸŒ…", + "๐ŸŒ„", + "๐ŸŒ ", + "๐ŸŽ‡", + "๐ŸŽ†", + "๐ŸŒ‡", + "๐ŸŒ†", + "๐Ÿ™", + "๐ŸŒƒ", + "๐ŸŒŒ", + "๐ŸŒ‰", + "๐ŸŒ" + ], + "Love": [ + "โค๏ธโ€๐Ÿ”ฅ", + "โค๏ธโ€๐Ÿฉน", + "โค๏ธ", + "๐Ÿฉท", + "๐Ÿ’›", + "๐Ÿ’š", + "๐Ÿ’™", + "๐Ÿฉต", + "๐Ÿ’œ", + "๐Ÿ–ค", + "๐Ÿฉถ", + "๐Ÿค", + "๐ŸคŽ", + "โค๏ธโ€๐Ÿ”ฅ", + "โค๏ธโ€๐Ÿฉน", + "๐Ÿ’”", + "โฃ๏ธ", + "๐Ÿ’•", + "๐Ÿ’ž", + "๐Ÿ’“", + "๐Ÿ’—", + "๐Ÿ’–", + "๐Ÿ’˜", + "๐Ÿ’", + "๐Ÿ’Ÿ", + "๐Ÿ‘ญ", + "๐Ÿ‘ซ", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง" + ], + "Flags": [ + "๐Ÿณ๏ธ", + "๐Ÿด", + "๐Ÿ", + "๐Ÿšฉ", + "๐Ÿดโ€โ˜ ๏ธ", + "๐Ÿ‡ฆ๐Ÿ‡ซ", + "๐Ÿ‡ฆ๐Ÿ‡ฝ", + "๐Ÿ‡ฆ๐Ÿ‡ฑ", + "๐Ÿ‡ฉ๐Ÿ‡ฟ", + "๐Ÿ‡ฆ๐Ÿ‡ธ", + "๐Ÿ‡ฆ๐Ÿ‡ฉ", + "๐Ÿ‡ฆ๐Ÿ‡ด", + "๐Ÿ‡ฆ๐Ÿ‡ฎ", + "๐Ÿ‡ฆ๐Ÿ‡ถ", + "๐Ÿ‡ฆ๐Ÿ‡ฌ", + "๐Ÿ‡ฆ๐Ÿ‡ท", + "๐Ÿ‡ฆ๐Ÿ‡ฒ", + "๐Ÿ‡ฆ๐Ÿ‡ผ", + "๐Ÿ‡ฆ๐Ÿ‡บ", + "๐Ÿ‡ฆ๐Ÿ‡น", + "๐Ÿ‡ฆ๐Ÿ‡ฟ", + "๐Ÿ‡ง๐Ÿ‡ธ", + "๐Ÿ‡ง๐Ÿ‡ญ", + "๐Ÿ‡ง๐Ÿ‡ฉ", + "๐Ÿ‡ง๐Ÿ‡ง", + "๐Ÿ‡ง๐Ÿ‡พ", + "๐Ÿ‡ง๐Ÿ‡ช", + "๐Ÿ‡ง๐Ÿ‡ฟ", + "๐Ÿ‡ง๐Ÿ‡ฏ", + "๐Ÿ‡ง๐Ÿ‡ฒ", + "๐Ÿ‡ง๐Ÿ‡น", + "๐Ÿ‡ง๐Ÿ‡ด", + "๐Ÿ‡ง๐Ÿ‡ฆ", + "๐Ÿ‡ง๐Ÿ‡ผ", + "๐Ÿ‡ง๐Ÿ‡ท", + "๐Ÿ‡ฎ๐Ÿ‡ด", + "๐Ÿ‡ป๐Ÿ‡ฌ", + "๐Ÿ‡ง๐Ÿ‡ณ", + "๐Ÿ‡ง๐Ÿ‡ฌ", + "๐Ÿ‡ง๐Ÿ‡ซ", + "๐Ÿ‡ฏ๐Ÿ‡ฒ", + "๐Ÿ‡ฎ๐Ÿ‡ธ", + "๐Ÿ‡ซ๐Ÿ‡ฏ", + "๐Ÿ‡ซ๐Ÿ‡ด", + "๐Ÿ‡ณ๐Ÿ‡ฌ", + "๐Ÿ‡ท๐Ÿ‡บ", + "๐Ÿ‡บ๐Ÿ‡ธ", + "๐Ÿ‡บ๐Ÿ‡ฒ", + "๐Ÿ‡บ๐Ÿ‡ณ", + "๐Ÿ‡ฐ๐Ÿ‡ท", + "๐Ÿ‡ฌ๐Ÿ‡ง", + "๐Ÿ‡ง๐Ÿ‡ป", + "๐Ÿ‡ธ๐Ÿ‡ณ", + "๐Ÿ‡ณ๐Ÿ‡ท", + "๐Ÿ‡ณ๐Ÿ‡ต", + "๐Ÿ‡ณ๐Ÿ‡ต", + "๐Ÿ‡ฏ๐Ÿ‡ต" + ], + "Other": [ + "โ˜ฎ๏ธ", + "โœ๏ธ", + "โ˜ช๏ธ", + "๐Ÿชฏ", + "๐Ÿ•‰", + "โ˜ธ๏ธ", + "โœก๏ธ", + "๐Ÿ”ฏ", + "๐Ÿ•Ž", + "โ˜ฏ๏ธ", + "โ˜ฆ๏ธ", + "๐Ÿ›", + "โš›๏ธ", + "๐Ÿ‰‘", + "โ˜ข๏ธ", + "โ˜ฃ๏ธ", + "๐Ÿ“ด", + "๐Ÿ“ณ", + "๐Ÿˆถ", + "๐Ÿˆš๏ธ", + "๐Ÿˆธ", + "๐Ÿˆบ", + "๐Ÿˆท๏ธ", + "โœด๏ธ", + "๐Ÿ†š", + "๐Ÿ’ฎ", + "๐Ÿ‰", + "ใŠ™๏ธ", + "ใŠ—๏ธ", + "๐Ÿˆด", + "๐Ÿˆต", + "๐Ÿˆน", + "๐Ÿˆฒ", + "๐Ÿ…ฐ๏ธ", + "๐Ÿ…ฑ๏ธ", + "๐Ÿ†Ž", + "๐Ÿ†‘", + "๐Ÿ…พ๏ธ", + "๐Ÿ†˜", + "โŒ", + "โญ•๏ธ", + "๐Ÿ›‘", + "โ›”๏ธ", + "๐Ÿ“›", + "๐Ÿšซ", + "๐Ÿ’ฏ", + "๐Ÿ’ข", + "โ™จ๏ธ", + "๐Ÿšท", + "๐Ÿšฏ", + "๐Ÿšณ", + "๐Ÿšฑ", + "๐Ÿ”ž", + "๐Ÿ“ต", + "๐Ÿšญ", + "โ—๏ธ", + "โ•", + "โ“", + "โ”", + "โ€ผ๏ธ", + "โ‰๏ธ", + "๐Ÿ”…", + "๐Ÿ”†", + "ใ€ฝ๏ธ", + "โš ๏ธ", + "๐Ÿšธ", + "๐Ÿ”ฑ", + "โšœ๏ธ", + "๐Ÿ”ฐ", + "โ™ป๏ธ", + "โœ…", + "๐Ÿˆฏ๏ธ", + "๐Ÿ’น", + "โ‡๏ธ", + "โœณ๏ธ", + "โŽ", + "๐ŸŒ", + "๐Ÿ’ ", + "โ“‚๏ธ", + "๐ŸŒ€", + "๐Ÿ’ค", + "๐Ÿง", + "๐Ÿšพ", + "โ™ฟ๏ธ", + "๐Ÿ…ฟ๏ธ", + "๐Ÿ›—", + "๐Ÿˆณ", + "๐Ÿˆ‚๏ธ", + "๐Ÿ›‚", + "๐Ÿ›ƒ", + "๐Ÿ›„", + "๐Ÿ›…", + "๐Ÿšน", + "๐Ÿšบ", + "๐Ÿšผ", + "โšง", + "๐Ÿšป", + "๐Ÿšฎ", + "๐ŸŽฆ", + "๐Ÿ›œ", + "๐Ÿ“ถ", + "๐Ÿˆ", + "๐Ÿ”ฃ", + "โ„น๏ธ", + "๐Ÿ”ค", + "๐Ÿ”ก", + "๐Ÿ” ", + "๐Ÿ†–", + "๐Ÿ†—", + "๐Ÿ†™", + "๐Ÿ†’", + "๐Ÿ†•", + "๐Ÿ†“", + "0๏ธโƒฃ", + "1๏ธโƒฃ", + "2๏ธโƒฃ", + "3๏ธโƒฃ", + "4๏ธโƒฃ", + "5๏ธโƒฃ", + "6๏ธโƒฃ", + "7๏ธโƒฃ", + "8๏ธโƒฃ", + "9๏ธโƒฃ", + "๐Ÿ”Ÿ", + "๐Ÿ”ข", + "#๏ธโƒฃ", + "*๏ธโƒฃ", + "โ๏ธ", + "โ–ถ๏ธ", + "โธ", + "โฏ", + "โน", + "โบ", + "โญ", + "โฎ", + "โฉ", + "โช", + "โซ", + "โฌ", + "โ—€๏ธ", + "๐Ÿ”ผ", + "๐Ÿ”ฝ", + "โžก๏ธ", + "โฌ…๏ธ", + "โฌ†๏ธ", + "โฌ‡๏ธ", + "โ†—๏ธ", + "โ†˜๏ธ", + "โ†™๏ธ", + "โ†–๏ธ", + "โ†•๏ธ", + "โ†”๏ธ", + "โ†ช๏ธ", + "โ†ฉ๏ธ", + "โคด๏ธ", + "โคต๏ธ", + "๐Ÿ”€", + "๐Ÿ”", + "๐Ÿ”‚", + "๐Ÿ”„", + "๐Ÿ”ƒ", + "๐ŸŽต", + "๐ŸŽถ" + ], + "New": [ + "๐Ÿซจ", + "๐Ÿฉท", + "๐Ÿฉต", + "๐Ÿฉถ", + "๐Ÿซธ๐Ÿฝ", + "๐Ÿซธ๐Ÿพ", + "๐Ÿซธ๐Ÿฟ", + "๐Ÿซท๐Ÿฝ", + "๐Ÿซท๐Ÿพ", + "๐Ÿซท๐Ÿฟ", + "๐Ÿซ", + "๐ŸซŽ", + "๐Ÿชฟ", + "๐Ÿฆโ€โฌ›", + "๐Ÿชฝ", + "๐Ÿชผ", + "๐Ÿชป", + "๐Ÿซ›", + "๐Ÿซš", + "๐Ÿชญ", + "๐Ÿชฎ", + "๐Ÿชˆ", + "๐Ÿช‡", + "๐Ÿชฏ", + "๐Ÿ›œ", + "๐Ÿซ ", + "๐Ÿซข", + "๐Ÿซฃ", + "๐Ÿซก", + "๐Ÿซฅ", + "๐Ÿซค", + "๐Ÿฅน", + "๐Ÿซฑ๐Ÿฝ", + "๐Ÿซฑ๐Ÿพ", + "๐Ÿซฑ๐Ÿฟ", + "๐Ÿซฒ๐Ÿฝ", + "๐Ÿซฒ๐Ÿพ", + "๐Ÿซฒ๐Ÿฟ", + "๐Ÿซณ๐Ÿฝ", + "๐Ÿซณ๐Ÿพ", + "๐Ÿซณ๐Ÿฟ", + "๐Ÿซด๐Ÿฝ", + "๐Ÿซด๐Ÿพ", + "๐Ÿซด๐Ÿฟ", + "๐Ÿซฐ๐Ÿฝ", + "๐Ÿซฐ๐Ÿพ", + "๐Ÿซฐ๐Ÿฟ", + "๐Ÿซต๐Ÿฝ", + "๐Ÿซต๐Ÿพ", + "๐Ÿซต๐Ÿฟ", + "๐Ÿซถ๐Ÿฝ", + "๐Ÿซถ๐Ÿพ", + "๐Ÿซถ๐Ÿฟ", + "๐Ÿซฑ๐Ÿฟโ€๐Ÿซฒ๐Ÿผ", + "๐Ÿซฑ๐Ÿฟโ€๐Ÿซฒ๐Ÿฝ", + "๐Ÿซฑ๐Ÿฟโ€๐Ÿซฒ๐Ÿพ", + "๐Ÿซฆ", + "๐Ÿซ…๐Ÿฝ", + "๐Ÿซ…๐Ÿพ", + "๐Ÿซ…๐Ÿฟ", + "๐Ÿซƒ๐Ÿฝ", + "๐Ÿซƒ๐Ÿพ", + "๐Ÿซƒ๐Ÿฟ", + "๐Ÿซ„๐Ÿฝ", + "๐Ÿซ„๐Ÿพ", + "๐Ÿซ„๐Ÿฟ", + "๐ŸงŒ", + "๐Ÿชธ", + "๐Ÿชท", + "๐Ÿชน", + "๐Ÿชบ", + "๐Ÿซ˜", + "๐Ÿซ—", + "๐Ÿซ™", + "๐Ÿ›", + "๐Ÿ›ž", + "๐Ÿ›Ÿ", + "๐Ÿชฌ", + "๐Ÿชฉ", + "๐Ÿชซ", + "๐Ÿฉผ", + "๐Ÿฉป", + "๐Ÿซง", + "๐Ÿชช", + "๐ŸŸฐ", + "๐Ÿ˜ฎโ€๐Ÿ’จ", + "๐Ÿ˜ตโ€๐Ÿ’ซ", + "๐Ÿ˜ถโ€๐ŸŒซ๏ธ", + "โค๏ธโ€๐Ÿ”ฅ", + "โค๏ธโ€๐Ÿฉน", + "๐Ÿง”๐Ÿปโ€โ™€๏ธ", + "๐Ÿง”๐Ÿฝโ€โ™‚๏ธ", + "๐Ÿง”๐Ÿพโ€โ™‚๏ธ", + "๐Ÿง”๐Ÿฟโ€โ™‚๏ธ" + ] +} diff --git a/qtribu/resources/emojis2.json b/qtribu/resources/emojis2.json new file mode 100644 index 00000000..32a320da --- /dev/null +++ b/qtribu/resources/emojis2.json @@ -0,0 +1,1850 @@ +{ + "Smileys & People": { + "๐Ÿ˜€": "Grinning Face", + "๐Ÿ˜ƒ": "Grinning Face with Big Eyes", + "๐Ÿ˜„": "Grinning Face with Smiling Eyes", + "๐Ÿ˜": "Beaming Face with Smiling Eyes", + "๐Ÿ˜†": "Grinning Squinting Face", + "๐Ÿ˜…": "Grinning Face with Sweat", + "๐Ÿคฃ": "Rolling on the Floor Laughing", + "๐Ÿ˜‚": "Face with Tears of Joy", + "๐Ÿ™‚": "Slightly Smiling Face", + "๐Ÿ™ƒ": "Upside-Down Face", + "๐Ÿ˜‰": "Winking Face", + "๐Ÿ˜Š": "Smiling Face with Smiling Eyes", + "๐Ÿ˜‡": "Smiling Face with Halo", + "๐Ÿฅฐ": "Smiling Face with Hearts", + "๐Ÿ˜": "Smiling Face with Heart-Eyes", + "๐Ÿคฉ": "Star-Struck", + "๐Ÿ˜˜": "Face Blowing a Kiss", + "๐Ÿ˜—": "Kissing Face", + "โ˜บ๏ธ": "Smiling Face", + "๐Ÿ˜š": "Kissing Face with Closed Eyes", + "๐Ÿ˜™": "Kissing Face with Smiling Eyes", + "๐Ÿฅฒ": "Smiling Face with Tear", + "๐Ÿ˜‹": "Face Savoring Food", + "๐Ÿ˜›": "Face with Tongue", + "๐Ÿ˜œ": "Winking Face with Tongue", + "๐Ÿคช": "Zany Face", + "๐Ÿ˜": "Squinting Face with Tongue", + "๐Ÿค‘": "Money-Mouth Face", + "๐Ÿค—": "Hugging Face", + "๐Ÿคญ": "Face with Hand Over Mouth", + "๐Ÿคซ": "Shushing Face", + "๐Ÿค”": "Thinking Face", + "๐Ÿค": "Zipper-Mouth Face", + "๐Ÿคจ": "Face with Raised Eyebrow", + "๐Ÿ˜": "Neutral Face", + "๐Ÿ˜‘": "Expressionless Face", + "๐Ÿ˜ถ": "Face Without Mouth", + "๐Ÿ˜": "Smirking Face", + "๐Ÿ˜’": "Unamused Face", + "๐Ÿ™„": "Face with Rolling Eyes", + "๐Ÿ˜ฌ": "Grimacing Face", + "๐Ÿคฅ": "Lying Face", + "๐Ÿ˜Œ": "Relieved Face", + "๐Ÿ˜”": "Pensive Face", + "๐Ÿ˜ช": "Sleepy Face", + "๐Ÿคค": "Drooling Face", + "๐Ÿ˜ด": "Sleeping Face", + "๐Ÿ˜ท": "Face with Medical Mask", + "๐Ÿค’": "Face with Thermometer", + "๐Ÿค•": "Face with Head-Bandage", + "๐Ÿคข": "Nauseated Face", + "๐Ÿคฎ": "Face Vomiting", + "๐Ÿคง": "Sneezing Face", + "๐Ÿฅต": "Hot Face", + "๐Ÿฅถ": "Cold Face", + "๐Ÿฅด": "Woozy Face", + "๐Ÿ˜ต": "Dizzy Face", + "๐Ÿคฏ": "Exploding Head", + "๐Ÿค ": "Cowboy Hat Face", + "๐Ÿฅณ": "Partying Face", + "๐Ÿฅธ": "Disguised Face", + "๐Ÿ˜Ž": "Smiling Face with Sunglasses", + "๐Ÿค“": "Nerd Face", + "๐Ÿง": "Face with Monocle", + "๐Ÿ˜•": "Confused Face", + "๐Ÿ˜Ÿ": "Worried Face", + "๐Ÿ™": "Slightly Frowning Face", + "โ˜น๏ธ": "Frowning Face", + "๐Ÿ˜ฎ": "Face with Open Mouth", + "๐Ÿ˜ฏ": "Hushed Face", + "๐Ÿ˜ฒ": "Astonished Face", + "๐Ÿ˜ณ": "Flushed Face", + "๐Ÿฅบ": "Pleading Face", + "๐Ÿ˜ฆ": "Frowning Face with Open Mouth", + "๐Ÿ˜ง": "Anguished Face", + "๐Ÿ˜จ": "Fearful Face", + "๐Ÿ˜ฐ": "Anxious Face with Sweat", + "๐Ÿ˜ฅ": "Sad but Relieved Face", + "๐Ÿ˜ข": "Crying Face", + "๐Ÿ˜ญ": "Loudly Crying Face", + "๐Ÿ˜ฑ": "Face Screaming in Fear", + "๐Ÿ˜–": "Confounded Face", + "๐Ÿ˜ฃ": "Persevering Face", + "๐Ÿ˜ž": "Disappointed Face", + "๐Ÿ˜“": "Downcast Face with Sweat", + "๐Ÿ˜ฉ": "Weary Face", + "๐Ÿ˜ซ": "Tired Face", + "๐Ÿฅฑ": "Yawning Face", + "๐Ÿ˜ค": "Face with Steam From Nose", + "๐Ÿ˜ก": "Pouting Face", + "๐Ÿ˜ ": "Angry Face", + "๐Ÿคฌ": "Face with Symbols on Mouth", + "๐Ÿ˜ˆ": "Smiling Face with Horns", + "๐Ÿ‘ฟ": "Angry Face with Horns", + "๐Ÿ’€": "Skull", + "โ˜ ๏ธ": "Skull and Crossbones", + "๐Ÿ’ฉ": "Pile of Poo", + "๐Ÿคก": "Clown Face", + "๐Ÿ‘น": "Ogre", + "๐Ÿ‘บ": "Goblin", + "๐Ÿ‘ป": "Ghost", + "๐Ÿ‘ฝ": "Alien", + "๐Ÿ‘พ": "Alien Monster", + "๐Ÿค–": "Robot", + "๐Ÿ˜บ": "Grinning Cat", + "๐Ÿ˜ธ": "Grinning Cat with Smiling Eyes", + "๐Ÿ˜น": "Cat with Tears of Joy", + "๐Ÿ˜ป": "Smiling Cat with Heart-Eyes", + "๐Ÿ˜ผ": "Cat with Wry Smile", + "๐Ÿ˜ฝ": "Kissing Cat", + "๐Ÿ™€": "Weary Cat", + "๐Ÿ˜ฟ": "Crying Cat", + "๐Ÿ˜พ": "Pouting Cat", + "๐Ÿ’‹": "Kiss Mark", + "๐Ÿ‘‹": "Waving Hand", + "๐Ÿคš": "Raised Back of Hand", + "๐Ÿ–๏ธ": "Hand with Fingers Splayed", + "โœ‹": "Raised Hand", + "๐Ÿ––": "Vulcan Salute", + "๐Ÿ‘Œ": "OK Hand", + "๐ŸคŒ": "Pinched Fingers", + "๐Ÿค": "Pinching Hand", + "โœŒ๏ธ": "Victory Hand", + "๐Ÿคž": "Crossed Fingers", + "๐ŸคŸ": "Love-You Gesture", + "๐Ÿค˜": "Sign of the Horns", + "๐Ÿค™": "Call Me Hand", + "๐Ÿ‘ˆ": "Backhand Index Pointing Left", + "๐Ÿ‘‰": "Backhand Index Pointing Right", + "๐Ÿ‘†": "Backhand Index Pointing Up", + "๐Ÿ–•": "Middle Finger", + "๐Ÿ‘‡": "Backhand Index Pointing Down", + "โ˜๏ธ": "Index Pointing Up", + "๐Ÿ‘": "Thumbs Up", + "๐Ÿ‘Ž": "Thumbs Down", + "โœŠ": "Raised Fist", + "๐Ÿ‘Š": "Oncoming Fist", + "๐Ÿค›": "Left-Facing Fist", + "๐Ÿคœ": "Right-Facing Fist", + "๐Ÿ‘": "Clapping Hands", + "๐Ÿ™Œ": "Raising Hands", + "๐Ÿ‘": "Open Hands", + "๐Ÿคฒ": "Palms Up Together", + "๐Ÿค": "Handshake", + "๐Ÿ™": "Folded Hands", + "โœ๏ธ": "Writing Hand", + "๐Ÿ’…": "Nail Polish", + "๐Ÿคณ": "Selfie", + "๐Ÿ’ช": "Flexed Biceps", + "๐Ÿฆพ": "Mechanical Arm", + "๐Ÿฆฟ": "Mechanical Leg", + "๐Ÿฆต": "Leg", + "๐Ÿฆถ": "Foot", + "๐Ÿ‘‚": "Ear", + "๐Ÿฆป": "Ear with Hearing Aid", + "๐Ÿ‘ƒ": "Nose", + "๐Ÿง ": "Brain", + "๐Ÿซ€": "Anatomical Heart", + "๐Ÿซ": "Lungs", + "๐Ÿฆท": "Tooth", + "๐Ÿฆด": "Bone", + "๐Ÿ‘€": "Eyes", + "๐Ÿ‘๏ธ": "Eye", + "๐Ÿ‘…": "Tongue", + "๐Ÿ‘„": "Mouth", + "๐Ÿ‘ถ": "Baby", + "๐Ÿง’": "Child", + "๐Ÿ‘ฆ": "Boy", + "๐Ÿ‘ง": "Girl", + "๐Ÿง‘": "Person", + "๐Ÿ‘ฑ": "Person: Blond Hair", + "๐Ÿ‘จ": "Man", + "๐Ÿง”": "Person: Beard", + "๐Ÿ‘จโ€๐Ÿฆฐ": "Man: Red Hair", + "๐Ÿ‘จโ€๐Ÿฆฑ": "Man: Curly Hair", + "๐Ÿ‘จโ€๐Ÿฆณ": "Man: White Hair", + "๐Ÿ‘จโ€๐Ÿฆฒ": "Man: Bald", + "๐Ÿ‘ฉ": "Woman", + "๐Ÿ‘ฉโ€๐Ÿฆฐ": "Woman: Red Hair", + "๐Ÿง‘โ€๐Ÿฆฐ": "Person: Red Hair", + "๐Ÿ‘ฉโ€๐Ÿฆฑ": "Woman: Curly Hair", + "๐Ÿง‘โ€๐Ÿฆฑ": "Person: Curly Hair", + "๐Ÿ‘ฉโ€๐Ÿฆณ": "Woman: White Hair", + "๐Ÿง‘โ€๐Ÿฆณ": "Person: White Hair", + "๐Ÿ‘ฉโ€๐Ÿฆฒ": "Woman: Bald", + "๐Ÿง‘โ€๐Ÿฆฒ": "Person: Bald", + "๐Ÿ‘ฑโ€โ™€๏ธ": "Woman: Blond Hair", + "๐Ÿ‘ฑโ€โ™‚๏ธ": "Man: Blond Hair", + "๐Ÿง“": "Older Person", + "๐Ÿ‘ด": "Old Man", + "๐Ÿ‘ต": "Old Woman", + "๐Ÿ™": "Person Frowning", + "๐Ÿ™โ€โ™‚๏ธ": "Man Frowning", + "๐Ÿ™โ€โ™€๏ธ": "Woman Frowning", + "๐Ÿ™Ž": "Person Pouting", + "๐Ÿ™Žโ€โ™‚๏ธ": "Man Pouting", + "๐Ÿ™Žโ€โ™€๏ธ": "Woman Pouting", + "๐Ÿ™…": "Person Gesturing No", + "๐Ÿ™…โ€โ™‚๏ธ": "Man Gesturing No", + "๐Ÿ™…โ€โ™€๏ธ": "Woman Gesturing No", + "๐Ÿ™†": "Person Gesturing OK", + "๐Ÿ™†โ€โ™‚๏ธ": "Man Gesturing OK", + "๐Ÿ™†โ€โ™€๏ธ": "Woman Gesturing OK", + "๐Ÿ’": "Person Tipping Hand", + "๐Ÿ’โ€โ™‚๏ธ": "Man Tipping Hand", + "๐Ÿ’โ€โ™€๏ธ": "Woman Tipping Hand", + "๐Ÿ™‹": "Person Raising Hand", + "๐Ÿ™‹โ€โ™‚๏ธ": "Man Raising Hand", + "๐Ÿ™‹โ€โ™€๏ธ": "Woman Raising Hand", + "๐Ÿง": "Deaf Person", + "๐Ÿงโ€โ™‚๏ธ": "Deaf Man", + "๐Ÿงโ€โ™€๏ธ": "Deaf Woman", + "๐Ÿ™‡": "Person Bowing", + "๐Ÿ™‡โ€โ™‚๏ธ": "Man Bowing", + "๐Ÿ™‡โ€โ™€๏ธ": "Woman Bowing", + "๐Ÿคฆ": "Person Facepalming", + "๐Ÿคฆโ€โ™‚๏ธ": "Man Facepalming", + "๐Ÿคฆโ€โ™€๏ธ": "Woman Facepalming", + "๐Ÿคท": "Person Shrugging", + "๐Ÿคทโ€โ™‚๏ธ": "Man Shrugging", + "๐Ÿคทโ€โ™€๏ธ": "Woman Shrugging", + "๐Ÿง‘โ€โš•๏ธ": "Health Worker", + "๐Ÿ‘จโ€โš•๏ธ": "Man Health Worker", + "๐Ÿ‘ฉโ€โš•๏ธ": "Woman Health Worker", + "๐Ÿง‘โ€๐ŸŽ“": "Student", + "๐Ÿ‘จโ€๐ŸŽ“": "Man Student", + "๐Ÿ‘ฉโ€๐ŸŽ“": "Woman Student", + "๐Ÿง‘โ€๐Ÿซ": "Teacher", + "๐Ÿ‘จโ€๐Ÿซ": "Man Teacher", + "๐Ÿ‘ฉโ€๐Ÿซ": "Woman Teacher", + "๐Ÿง‘โ€โš–๏ธ": "Judge", + "๐Ÿ‘จโ€โš–๏ธ": "Man Judge", + "๐Ÿ‘ฉโ€โš–๏ธ": "Woman Judge", + "๐Ÿง‘โ€๐ŸŒพ": "Farmer", + "๐Ÿ‘จโ€๐ŸŒพ": "Man Farmer", + "๐Ÿ‘ฉโ€๐ŸŒพ": "Woman Farmer", + "๐Ÿง‘โ€๐Ÿณ": "Cook", + "๐Ÿ‘จโ€๐Ÿณ": "Man Cook", + "๐Ÿ‘ฉโ€๐Ÿณ": "Woman Cook", + "๐Ÿง‘โ€๐Ÿ”ง": "Mechanic", + "๐Ÿ‘จโ€๐Ÿ”ง": "Man Mechanic", + "๐Ÿ‘ฉโ€๐Ÿ”ง": "Woman Mechanic", + "๐Ÿง‘โ€๐Ÿญ": "Factory Worker", + "๐Ÿ‘จโ€๐Ÿญ": "Man Factory Worker", + "๐Ÿ‘ฉโ€๐Ÿญ": "Woman Factory Worker", + "๐Ÿง‘โ€๐Ÿ’ผ": "Office Worker", + "๐Ÿ‘จโ€๐Ÿ’ผ": "Man Office Worker", + "๐Ÿ‘ฉโ€๐Ÿ’ผ": "Woman Office Worker", + "๐Ÿง‘โ€๐Ÿ”ฌ": "Scientist", + "๐Ÿ‘จโ€๐Ÿ”ฌ": "Man Scientist", + "๐Ÿ‘ฉโ€๐Ÿ”ฌ": "Woman Scientist", + "๐Ÿง‘โ€๐Ÿ’ป": "Technologist", + "๐Ÿ‘จโ€๐Ÿ’ป": "Man Technologist", + "๐Ÿ‘ฉโ€๐Ÿ’ป": "Woman Technologist", + "๐Ÿง‘โ€๐ŸŽค": "Singer", + "๐Ÿ‘จโ€๐ŸŽค": "Man Singer", + "๐Ÿ‘ฉโ€๐ŸŽค": "Woman Singer", + "๐Ÿง‘โ€๐ŸŽจ": "Artist", + "๐Ÿ‘จโ€๐ŸŽจ": "Man Artist", + "๐Ÿ‘ฉโ€๐ŸŽจ": "Woman Artist", + "๐Ÿง‘โ€โœˆ๏ธ": "Pilot", + "๐Ÿ‘จโ€โœˆ๏ธ": "Man Pilot", + "๐Ÿ‘ฉโ€โœˆ๏ธ": "Woman Pilot", + "๐Ÿง‘โ€๐Ÿš€": "Astronaut", + "๐Ÿ‘จโ€๐Ÿš€": "Man Astronaut", + "๐Ÿ‘ฉโ€๐Ÿš€": "Woman Astronaut", + "๐Ÿง‘โ€๐Ÿš’": "Firefighter", + "๐Ÿ‘จโ€๐Ÿš’": "Man Firefighter", + "๐Ÿ‘ฉโ€๐Ÿš’": "Woman Firefighter", + "๐Ÿ‘ฎ": "Police Officer", + "๐Ÿ‘ฎโ€โ™‚๏ธ": "Man Police Officer", + "๐Ÿ‘ฎโ€โ™€๏ธ": "Woman Police Officer", + "๐Ÿ•ต๏ธ": "Detective", + "๐Ÿ•ต๏ธโ€โ™‚๏ธ": "Man Detective", + "๐Ÿ•ต๏ธโ€โ™€๏ธ": "Woman Detective", + "๐Ÿ’‚": "Guard", + "๐Ÿ’‚โ€โ™‚๏ธ": "Man Guard", + "๐Ÿ’‚โ€โ™€๏ธ": "Woman Guard", + "๐Ÿฅท": "Ninja", + "๐Ÿ‘ท": "Construction Worker", + "๐Ÿ‘ทโ€โ™‚๏ธ": "Man Construction Worker", + "๐Ÿ‘ทโ€โ™€๏ธ": "Woman Construction Worker", + "๐Ÿคด": "Prince", + "๐Ÿ‘ธ": "Princess", + "๐Ÿ‘ณ": "Person Wearing Turban", + "๐Ÿ‘ณโ€โ™‚๏ธ": "Man Wearing Turban", + "๐Ÿ‘ณโ€โ™€๏ธ": "Woman Wearing Turban", + "๐Ÿ‘ฒ": "Person With Skullcap", + "๐Ÿง•": "Woman with Headscarf", + "๐Ÿคต": "Person in Tuxedo", + "๐Ÿคตโ€โ™‚๏ธ": "Man in Tuxedo", + "๐Ÿคตโ€โ™€๏ธ": "Woman in Tuxedo", + "๐Ÿ‘ฐ": "Person With Veil", + "๐Ÿ‘ฐโ€โ™‚๏ธ": "Man with Veil", + "๐Ÿ‘ฐโ€โ™€๏ธ": "Woman with Veil", + "๐Ÿคฐ": "Pregnant Woman", + "๐Ÿคฑ": "Breast-Feeding", + "๐Ÿ‘ฉโ€๐Ÿผ": "Woman Feeding Baby", + "๐Ÿ‘จโ€๐Ÿผ": "Man Feeding Baby", + "๐Ÿง‘โ€๐Ÿผ": "Person Feeding Baby", + "๐Ÿ‘ผ": "Baby Angel", + "๐ŸŽ…": "Santa Claus", + "๐Ÿคถ": "Mrs. Claus", + "๐Ÿง‘โ€๐ŸŽ„": "Mx Claus", + "๐Ÿฆธ": "Superhero", + "๐Ÿฆธโ€โ™‚๏ธ": "Man Superhero", + "๐Ÿฆธโ€โ™€๏ธ": "Woman Superhero", + "๐Ÿฆน": "Supervillain", + "๐Ÿฆนโ€โ™‚๏ธ": "Man Supervillain", + "๐Ÿฆนโ€โ™€๏ธ": "Woman Supervillain", + "๐Ÿง™": "Mage", + "๐Ÿง™โ€โ™‚๏ธ": "Man Mage", + "๐Ÿง™โ€โ™€๏ธ": "Woman Mage", + "๐Ÿงš": "Fairy", + "๐Ÿงšโ€โ™‚๏ธ": "Man Fairy", + "๐Ÿงšโ€โ™€๏ธ": "Woman Fairy", + "๐Ÿง›": "Vampire", + "๐Ÿง›โ€โ™‚๏ธ": "Man Vampire", + "๐Ÿง›โ€โ™€๏ธ": "Woman Vampire", + "๐Ÿงœ": "Merperson", + "๐Ÿงœโ€โ™‚๏ธ": "Merman", + "๐Ÿงœโ€โ™€๏ธ": "Mermaid", + "๐Ÿง": "Elf", + "๐Ÿงโ€โ™‚๏ธ": "Man Elf", + "๐Ÿงโ€โ™€๏ธ": "Woman Elf", + "๐Ÿงž": "Genie", + "๐Ÿงžโ€โ™‚๏ธ": "Man Genie", + "๐Ÿงžโ€โ™€๏ธ": "Woman Genie", + "๐ŸงŸ": "Zombie", + "๐ŸงŸโ€โ™‚๏ธ": "Man Zombie", + "๐ŸงŸโ€โ™€๏ธ": "Woman Zombie", + "๐Ÿ’†": "Person Getting Massage", + "๐Ÿ’†โ€โ™‚๏ธ": "Man Getting Massage", + "๐Ÿ’†โ€โ™€๏ธ": "Woman Getting Massage", + "๐Ÿ’‡": "Person Getting Haircut", + "๐Ÿ’‡โ€โ™‚๏ธ": "Man Getting Haircut", + "๐Ÿ’‡โ€โ™€๏ธ": "Woman Getting Haircut", + "๐Ÿšถ": "Person Walking", + "๐Ÿšถโ€โ™‚๏ธ": "Man Walking", + "๐Ÿšถโ€โ™€๏ธ": "Woman Walking", + "๐Ÿง": "Person Standing", + "๐Ÿงโ€โ™‚๏ธ": "Man Standing", + "๐Ÿงโ€โ™€๏ธ": "Woman Standing", + "๐ŸงŽ": "Person Kneeling", + "๐ŸงŽโ€โ™‚๏ธ": "Man Kneeling", + "๐ŸงŽโ€โ™€๏ธ": "Woman Kneeling", + "๐Ÿง‘โ€๐Ÿฆฏ": "Person with White Cane", + "๐Ÿ‘จโ€๐Ÿฆฏ": "Man with White Cane", + "๐Ÿ‘ฉโ€๐Ÿฆฏ": "Woman with White Cane", + "๐Ÿง‘โ€๐Ÿฆผ": "Person in Motorized Wheelchair", + "๐Ÿ‘จโ€๐Ÿฆผ": "Man in Motorized Wheelchair", + "๐Ÿ‘ฉโ€๐Ÿฆผ": "Woman in Motorized Wheelchair", + "๐Ÿง‘โ€๐Ÿฆฝ": "Person in Manual Wheelchair", + "๐Ÿ‘จโ€๐Ÿฆฝ": "Man in Manual Wheelchair", + "๐Ÿ‘ฉโ€๐Ÿฆฝ": "Woman in Manual Wheelchair", + "๐Ÿƒ": "Person Running", + "๐Ÿƒโ€โ™‚๏ธ": "Man Running", + "๐Ÿƒโ€โ™€๏ธ": "Woman Running", + "๐Ÿ’ƒ": "Woman Dancing", + "๐Ÿ•บ": "Man Dancing", + "๐Ÿ•ด๏ธ": "Person in Suit Levitating", + "๐Ÿ‘ฏ": "People with Bunny Ears", + "๐Ÿ‘ฏโ€โ™‚๏ธ": "Men with Bunny Ears", + "๐Ÿ‘ฏโ€โ™€๏ธ": "Women with Bunny Ears", + "๐Ÿง–": "Person in Steamy Room", + "๐Ÿง–โ€โ™‚๏ธ": "Man in Steamy Room", + "๐Ÿง–โ€โ™€๏ธ": "Woman in Steamy Room", + "๐Ÿง˜": "Person in Lotus Position", + "๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘": "People Holding Hands", + "๐Ÿ‘ญ": "Women Holding Hands", + "๐Ÿ‘ซ": "Woman and Man Holding Hands", + "๐Ÿ‘ฌ": "Men Holding Hands", + "๐Ÿ’": "Kiss", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ": "Kiss: Woman, Man", + "๐Ÿ‘จโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ": "Kiss: Man, Man", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ": "Kiss: Woman, Woman", + "๐Ÿ’‘": "Couple with Heart", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ": "Couple with Heart: Woman, Man", + "๐Ÿ‘จโ€โค๏ธโ€๐Ÿ‘จ": "Couple with Heart: Man, Man", + "๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ": "Couple with Heart: Woman, Woman", + "๐Ÿ‘ช": "Family", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Man, Woman, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Man, Woman, Girl", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Woman, Girl, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Woman, Boy, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Woman, Girl, Girl", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆ": "Family: Man, Man, Boy", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง": "Family: Man, Man, Girl", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Man, Girl, Boy", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Man, Boy, Boy", + "๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Man, Girl, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Woman, Woman, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Girl, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Woman, Woman, Boy, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Woman, Woman, Girl, Girl", + "๐Ÿ‘จโ€๐Ÿ‘ฆ": "Family: Man, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Man, Boy, Boy", + "๐Ÿ‘จโ€๐Ÿ‘ง": "Family: Man, Girl", + "๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Man, Girl, Boy", + "๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Man, Girl, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘ฆ": "Family: Woman, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ": "Family: Woman, Boy, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘ง": "Family: Woman, Girl", + "๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ": "Family: Woman, Girl, Boy", + "๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง": "Family: Woman, Girl, Girl", + "๐Ÿ—ฃ๏ธ": "Speaking Head", + "๐Ÿ‘ค": "Bust in Silhouette", + "๐Ÿ‘ฅ": "Busts in Silhouette", + "๐Ÿซ‚": "People Hugging", + "๐Ÿ‘ฃ": "Footprints", + "๐Ÿงณ": "Luggage", + "๐ŸŒ‚": "Closed Umbrella", + "โ˜‚๏ธ": "Umbrella", + "๐ŸŽƒ": "Jack-O-Lantern", + "๐Ÿงต": "Thread", + "๐Ÿงถ": "Yarn", + "๐Ÿ‘“": "Glasses", + "๐Ÿ•ถ๏ธ": "Sunglasses", + "๐Ÿฅฝ": "Goggles", + "๐Ÿฅผ": "Lab Coat", + "๐Ÿฆบ": "Safety Vest", + "๐Ÿ‘”": "Necktie", + "๐Ÿ‘•": "T-Shirt", + "๐Ÿ‘–": "Jeans", + "๐Ÿงฃ": "Scarf", + "๐Ÿงค": "Gloves", + "๐Ÿงฅ": "Coat", + "๐Ÿงฆ": "Socks", + "๐Ÿ‘—": "Dress", + "๐Ÿ‘˜": "Kimono", + "๐Ÿฅป": "Sari", + "๐Ÿฉฑ": "One-Piece Swimsuit", + "๐Ÿฉฒ": "Briefs", + "๐Ÿฉณ": "Shorts", + "๐Ÿ‘™": "Bikini", + "๐Ÿ‘š": "Womanโ€™s Clothes", + "๐Ÿ‘›": "Purse", + "๐Ÿ‘œ": "Handbag", + "๐Ÿ‘": "Clutch Bag", + "๐ŸŽ’": "Backpack", + "๐Ÿฉด": "Thong Sandal", + "๐Ÿ‘ž": "Manโ€™s Shoe", + "๐Ÿ‘Ÿ": "Running Shoe", + "๐Ÿฅพ": "Hiking Boot", + "๐Ÿฅฟ": "Flat Shoe", + "๐Ÿ‘ ": "High-Heeled Shoe", + "๐Ÿ‘ก": "Womanโ€™s Sandal", + "๐Ÿฉฐ": "Ballet Shoes", + "๐Ÿ‘ข": "Womanโ€™s Boot", + "๐Ÿ‘‘": "Crown", + "๐Ÿ‘’": "Womanโ€™s Hat", + "๐ŸŽฉ": "Top Hat", + "๐ŸŽ“": "Graduation Cap", + "๐Ÿงข": "Billed Cap", + "๐Ÿช–": "Military Helmet", + "โ›‘๏ธ": "Rescue Workerโ€™s Helmet", + "๐Ÿ’„": "Lipstick", + "๐Ÿ’": "Ring", + "๐Ÿ’ผ": "Briefcase", + "๐Ÿฉธ": "Drop of Blood", + "๐Ÿ˜ฎโ€๐Ÿ’จ": "Face Exhaling", + "๐Ÿ˜ตโ€๐Ÿ’ซ": "Face with Spiral Eyes", + "๐Ÿ˜ถโ€๐ŸŒซ๏ธ": "Face in Clouds" + }, + "Animals & Nature": { + "๐Ÿ™ˆ": "See-No-Evil Monkey", + "๐Ÿ™‰": "Hear-No-Evil Monkey", + "๐Ÿ™Š": "Speak-No-Evil Monkey", + "๐Ÿ’ฅ": "Collision", + "๐Ÿ’ซ": "Dizzy", + "๐Ÿ’ฆ": "Sweat Droplets", + "๐Ÿ’จ": "Dashing Away", + "๐Ÿต": "Monkey Face", + "๐Ÿ’": "Monkey", + "๐Ÿฆ": "Gorilla", + "๐Ÿฆง": "Orangutan", + "๐Ÿถ": "Dog Face", + "๐Ÿ•": "Dog", + "๐Ÿฆฎ": "Guide Dog", + "๐Ÿ•โ€๐Ÿฆบ": "Service Dog", + "๐Ÿฉ": "Poodle", + "๐Ÿบ": "Wolf", + "๐ŸฆŠ": "Fox", + "๐Ÿฆ": "Raccoon", + "๐Ÿฑ": "Cat Face", + "๐Ÿˆ": "Cat", + "๐Ÿˆโ€โฌ›": "Black Cat", + "๐Ÿฆ": "Lion", + "๐Ÿฏ": "Tiger Face", + "๐Ÿ…": "Tiger", + "๐Ÿ†": "Leopard", + "๐Ÿด": "Horse Face", + "๐ŸŽ": "Horse", + "๐Ÿฆ„": "Unicorn", + "๐Ÿฆ“": "Zebra", + "๐ŸฆŒ": "Deer", + "๐Ÿฆฌ": "Bison", + "๐Ÿฎ": "Cow Face", + "๐Ÿ‚": "Ox", + "๐Ÿƒ": "Water Buffalo", + "๐Ÿ„": "Cow", + "๐Ÿท": "Pig Face", + "๐Ÿ–": "Pig", + "๐Ÿ—": "Boar", + "๐Ÿฝ": "Pig Nose", + "๐Ÿ": "Ram", + "๐Ÿ‘": "Ewe", + "๐Ÿ": "Goat", + "๐Ÿช": "Camel", + "๐Ÿซ": "Two-Hump Camel", + "๐Ÿฆ™": "Llama", + "๐Ÿฆ’": "Giraffe", + "๐Ÿ˜": "Elephant", + "๐Ÿฆฃ": "Mammoth", + "๐Ÿฆ": "Rhinoceros", + "๐Ÿฆ›": "Hippopotamus", + "๐Ÿญ": "Mouse Face", + "๐Ÿ": "Mouse", + "๐Ÿ€": "Rat", + "๐Ÿน": "Hamster", + "๐Ÿฐ": "Rabbit Face", + "๐Ÿ‡": "Rabbit", + "๐Ÿฟ๏ธ": "Chipmunk", + "๐Ÿฆซ": "Beaver", + "๐Ÿฆ”": "Hedgehog", + "๐Ÿฆ‡": "Bat", + "๐Ÿป": "Bear", + "๐Ÿปโ€โ„๏ธ": "Polar Bear", + "๐Ÿจ": "Koala", + "๐Ÿผ": "Panda", + "๐Ÿฆฅ": "Sloth", + "๐Ÿฆฆ": "Otter", + "๐Ÿฆจ": "Skunk", + "๐Ÿฆ˜": "Kangaroo", + "๐Ÿฆก": "Badger", + "๐Ÿพ": "Paw Prints", + "๐Ÿฆƒ": "Turkey", + "๐Ÿ”": "Chicken", + "๐Ÿ“": "Rooster", + "๐Ÿฃ": "Hatching Chick", + "๐Ÿค": "Baby Chick", + "๐Ÿฅ": "Front-Facing Baby Chick", + "๐Ÿฆ": "Bird", + "๐Ÿง": "Penguin", + "๐Ÿ•Š๏ธ": "Dove", + "๐Ÿฆ…": "Eagle", + "๐Ÿฆ†": "Duck", + "๐Ÿฆข": "Swan", + "๐Ÿฆ‰": "Owl", + "๐Ÿฆค": "Dodo", + "๐Ÿชถ": "Feather", + "๐Ÿฆฉ": "Flamingo", + "๐Ÿฆš": "Peacock", + "๐Ÿฆœ": "Parrot", + "๐Ÿธ": "Frog", + "๐ŸŠ": "Crocodile", + "๐Ÿข": "Turtle", + "๐ŸฆŽ": "Lizard", + "๐Ÿ": "Snake", + "๐Ÿฒ": "Dragon Face", + "๐Ÿ‰": "Dragon", + "๐Ÿฆ•": "Sauropod", + "๐Ÿฆ–": "T-Rex", + "๐Ÿณ": "Spouting Whale", + "๐Ÿ‹": "Whale", + "๐Ÿฌ": "Dolphin", + "๐Ÿฆญ": "Seal", + "๐ŸŸ": "Fish", + "๐Ÿ ": "Tropical Fish", + "๐Ÿก": "Blowfish", + "๐Ÿฆˆ": "Shark", + "๐Ÿ™": "Octopus", + "๐Ÿš": "Spiral Shell", + "๐ŸŒ": "Snail", + "๐Ÿฆ‹": "Butterfly", + "๐Ÿ›": "Bug", + "๐Ÿœ": "Ant", + "๐Ÿ": "Honeybee", + "๐Ÿชฒ": "Beetle", + "๐Ÿž": "Lady Beetle", + "๐Ÿฆ—": "Cricket", + "๐Ÿชณ": "Cockroach", + "๐Ÿ•ท๏ธ": "Spider", + "๐Ÿ•ธ๏ธ": "Spider Web", + "๐Ÿฆ‚": "Scorpion", + "๐ŸฆŸ": "Mosquito", + "๐Ÿชฐ": "Fly", + "๐Ÿชฑ": "Worm", + "๐Ÿฆ ": "Microbe", + "๐Ÿ’": "Bouquet", + "๐ŸŒธ": "Cherry Blossom", + "๐Ÿ’ฎ": "White Flower", + "๐Ÿต๏ธ": "Rosette", + "๐ŸŒน": "Rose", + "๐Ÿฅ€": "Wilted Flower", + "๐ŸŒบ": "Hibiscus", + "๐ŸŒป": "Sunflower", + "๐ŸŒผ": "Blossom", + "๐ŸŒท": "Tulip", + "๐ŸŒฑ": "Seedling", + "๐Ÿชด": "Potted Plant", + "๐ŸŒฒ": "Evergreen Tree", + "๐ŸŒณ": "Deciduous Tree", + "๐ŸŒด": "Palm Tree", + "๐ŸŒต": "Cactus", + "๐ŸŒพ": "Sheaf of Rice", + "๐ŸŒฟ": "Herb", + "โ˜˜๏ธ": "Shamrock", + "๐Ÿ€": "Four Leaf Clover", + "๐Ÿ": "Maple Leaf", + "๐Ÿ‚": "Fallen Leaf", + "๐Ÿƒ": "Leaf Fluttering in Wind", + "๐Ÿ„": "Mushroom", + "๐ŸŒฐ": "Chestnut", + "๐Ÿฆ€": "Crab", + "๐Ÿฆž": "Lobster", + "๐Ÿฆ": "Shrimp", + "๐Ÿฆ‘": "Squid", + "๐ŸŒ": "Globe Showing Europe-Africa", + "๐ŸŒŽ": "Globe Showing Americas", + "๐ŸŒ": "Globe Showing Asia-Australia", + "๐ŸŒ": "Globe with Meridians", + "๐Ÿชจ": "Rock", + "๐ŸŒ‘": "New Moon", + "๐ŸŒ’": "Waxing Crescent Moon", + "๐ŸŒ“": "First Quarter Moon", + "๐ŸŒ”": "Waxing Gibbous Moon", + "๐ŸŒ•": "Full Moon", + "๐ŸŒ–": "Waning Gibbous Moon", + "๐ŸŒ—": "Last Quarter Moon", + "๐ŸŒ˜": "Waning Crescent Moon", + "๐ŸŒ™": "Crescent Moon", + "๐ŸŒš": "New Moon Face", + "๐ŸŒ›": "First Quarter Moon Face", + "๐ŸŒœ": "Last Quarter Moon Face", + "โ˜€๏ธ": "Sun", + "๐ŸŒ": "Full Moon Face", + "๐ŸŒž": "Sun with Face", + "โญ": "Star", + "๐ŸŒŸ": "Glowing Star", + "๐ŸŒ ": "Shooting Star", + "โ˜๏ธ": "Cloud", + "โ›…": "Sun Behind Cloud", + "โ›ˆ๏ธ": "Cloud with Lightning and Rain", + "๐ŸŒค๏ธ": "Sun Behind Small Cloud", + "๐ŸŒฅ๏ธ": "Sun Behind Large Cloud", + "๐ŸŒฆ๏ธ": "Sun Behind Rain Cloud", + "๐ŸŒง๏ธ": "Cloud with Rain", + "๐ŸŒจ๏ธ": "Cloud with Snow", + "๐ŸŒฉ๏ธ": "Cloud with Lightning", + "๐ŸŒช๏ธ": "Tornado", + "๐ŸŒซ๏ธ": "Fog", + "๐ŸŒฌ๏ธ": "Wind Face", + "๐ŸŒˆ": "Rainbow", + "โ˜‚๏ธ": "Umbrella", + "โ˜”": "Umbrella with Rain Drops", + "โšก": "High Voltage", + "โ„๏ธ": "Snowflake", + "โ˜ƒ๏ธ": "Snowman", + "โ›„": "Snowman Without Snow", + "โ˜„๏ธ": "Comet", + "๐Ÿ”ฅ": "Fire", + "๐Ÿ’ง": "Droplet", + "๐ŸŒŠ": "Water Wave", + "๐ŸŽ„": "Christmas Tree", + "โœจ": "Sparkles", + "๐ŸŽ‹": "Tanabata Tree", + "๐ŸŽ": "Pine Decoration" + }, + "Food & Drink": { + "๐Ÿ‡": "Grapes", + "๐Ÿˆ": "Melon", + "๐Ÿ‰": "Watermelon", + "๐ŸŠ": "Tangerine", + "๐Ÿ‹": "Lemon", + "๐ŸŒ": "Banana", + "๐Ÿ": "Pineapple", + "๐Ÿฅญ": "Mango", + "๐ŸŽ": "Red Apple", + "๐Ÿ": "Green Apple", + "๐Ÿ": "Pear", + "๐Ÿ‘": "Peach", + "๐Ÿ’": "Cherries", + "๐Ÿ“": "Strawberry", + "๐Ÿซ": "Blueberries", + "๐Ÿฅ": "Kiwi Fruit", + "๐Ÿ…": "Tomato", + "๐Ÿซ’": "Olive", + "๐Ÿฅฅ": "Coconut", + "๐Ÿฅ‘": "Avocado", + "๐Ÿ†": "Eggplant", + "๐Ÿฅ”": "Potato", + "๐Ÿฅ•": "Carrot", + "๐ŸŒฝ": "Ear of Corn", + "๐ŸŒถ๏ธ": "Hot Pepper", + "๐Ÿซ‘": "Bell Pepper", + "๐Ÿฅ’": "Cucumber", + "๐Ÿฅฌ": "Leafy Green", + "๐Ÿฅฆ": "Broccoli", + "๐Ÿง„": "Garlic", + "๐Ÿง…": "Onion", + "๐Ÿ„": "Mushroom", + "๐Ÿฅœ": "Peanuts", + "๐ŸŒฐ": "Chestnut", + "๐Ÿž": "Bread", + "๐Ÿฅ": "Croissant", + "๐Ÿฅ–": "Baguette Bread", + "๐Ÿซ“": "Flatbread", + "๐Ÿฅจ": "Pretzel", + "๐Ÿฅฏ": "Bagel", + "๐Ÿฅž": "Pancakes", + "๐Ÿง‡": "Waffle", + "๐Ÿง€": "Cheese Wedge", + "๐Ÿ–": "Meat on Bone", + "๐Ÿ—": "Poultry Leg", + "๐Ÿฅฉ": "Cut of Meat", + "๐Ÿฅ“": "Bacon", + "๐Ÿ”": "Hamburger", + "๐ŸŸ": "French Fries", + "๐Ÿ•": "Pizza", + "๐ŸŒญ": "Hot Dog", + "๐Ÿฅช": "Sandwich", + "๐ŸŒฎ": "Taco", + "๐ŸŒฏ": "Burrito", + "๐Ÿซ”": "Tamale", + "๐Ÿฅ™": "Stuffed Flatbread", + "๐Ÿง†": "Falafel", + "๐Ÿฅš": "Egg", + "๐Ÿณ": "Cooking", + "๐Ÿฅ˜": "Shallow Pan of Food", + "๐Ÿฒ": "Pot of Food", + "๐Ÿซ•": "Fondue", + "๐Ÿฅฃ": "Bowl with Spoon", + "๐Ÿฅ—": "Green Salad", + "๐Ÿฟ": "Popcorn", + "๐Ÿงˆ": "Butter", + "๐Ÿง‚": "Salt", + "๐Ÿฅซ": "Canned Food", + "๐Ÿฑ": "Bento Box", + "๐Ÿ˜": "Rice Cracker", + "๐Ÿ™": "Rice Ball", + "๐Ÿš": "Cooked Rice", + "๐Ÿ›": "Curry Rice", + "๐Ÿœ": "Steaming Bowl", + "๐Ÿ": "Spaghetti", + "๐Ÿ ": "Roasted Sweet Potato", + "๐Ÿข": "Oden", + "๐Ÿฃ": "Sushi", + "๐Ÿค": "Fried Shrimp", + "๐Ÿฅ": "Fish Cake with Swirl", + "๐Ÿฅฎ": "Moon Cake", + "๐Ÿก": "Dango", + "๐ŸฅŸ": "Dumpling", + "๐Ÿฅ ": "Fortune Cookie", + "๐Ÿฅก": "Takeout Box", + "๐Ÿฆช": "Oyster", + "๐Ÿฆ": "Soft Ice Cream", + "๐Ÿง": "Shaved Ice", + "๐Ÿจ": "Ice Cream", + "๐Ÿฉ": "Doughnut", + "๐Ÿช": "Cookie", + "๐ŸŽ‚": "Birthday Cake", + "๐Ÿฐ": "Shortcake", + "๐Ÿง": "Cupcake", + "๐Ÿฅง": "Pie", + "๐Ÿซ": "Chocolate Bar", + "๐Ÿฌ": "Candy", + "๐Ÿญ": "Lollipop", + "๐Ÿฎ": "Custard", + "๐Ÿฏ": "Honey Pot", + "๐Ÿผ": "Baby Bottle", + "๐Ÿฅ›": "Glass of Milk", + "โ˜•": "Hot Beverage", + "๐Ÿซ–": "Teapot", + "๐Ÿต": "Teacup Without Handle", + "๐Ÿถ": "Sake", + "๐Ÿพ": "Bottle with Popping Cork", + "๐Ÿท": "Wine Glass", + "๐Ÿธ": "Cocktail Glass", + "๐Ÿน": "Tropical Drink", + "๐Ÿบ": "Beer Mug", + "๐Ÿป": "Clinking Beer Mugs", + "๐Ÿฅ‚": "Clinking Glasses", + "๐Ÿฅƒ": "Tumbler Glass", + "๐Ÿฅค": "Cup with Straw", + "๐Ÿง‹": "Bubble Tea", + "๐Ÿงƒ": "Beverage Box", + "๐Ÿง‰": "Mate", + "๐ŸงŠ": "Ice", + "๐Ÿฅข": "Chopsticks", + "๐Ÿฝ๏ธ": "Fork and Knife with Plate", + "๐Ÿด": "Fork and Knife", + "๐Ÿฅ„": "Spoon" + }, + "Activity": { + "๐Ÿ•ด๏ธ": "Person in Suit Levitating", + "๐Ÿง—": "Person Climbing", + "๐Ÿง—โ€โ™‚๏ธ": "Man Climbing", + "๐Ÿง—โ€โ™€๏ธ": "Woman Climbing", + "๐Ÿคบ": "Person Fencing", + "๐Ÿ‡": "Horse Racing", + "โ›ท๏ธ": "Skier", + "๐Ÿ‚": "Snowboarder", + "๐ŸŒ๏ธ": "Person Golfing", + "๐ŸŒ๏ธโ€โ™‚๏ธ": "Man Golfing", + "๐ŸŒ๏ธโ€โ™€๏ธ": "Woman Golfing", + "๐Ÿ„": "Person Surfing", + "๐Ÿ„โ€โ™‚๏ธ": "Man Surfing", + "๐Ÿ„โ€โ™€๏ธ": "Woman Surfing", + "๐Ÿšฃ": "Person Rowing Boat", + "๐Ÿšฃโ€โ™‚๏ธ": "Man Rowing Boat", + "๐Ÿšฃโ€โ™€๏ธ": "Woman Rowing Boat", + "๐ŸŠ": "Person Swimming", + "๐ŸŠโ€โ™‚๏ธ": "Man Swimming", + "๐ŸŠโ€โ™€๏ธ": "Woman Swimming", + "โ›น๏ธ": "Person Bouncing Ball", + "โ›น๏ธโ€โ™‚๏ธ": "Man Bouncing Ball", + "โ›น๏ธโ€โ™€๏ธ": "Woman Bouncing Ball", + "๐Ÿ‹๏ธ": "Person Lifting Weights", + "๐Ÿ‹๏ธโ€โ™‚๏ธ": "Man Lifting Weights", + "๐Ÿ‹๏ธโ€โ™€๏ธ": "Woman Lifting Weights", + "๐Ÿšด": "Person Biking", + "๐Ÿšดโ€โ™‚๏ธ": "Man Biking", + "๐Ÿšดโ€โ™€๏ธ": "Woman Biking", + "๐Ÿšต": "Person Mountain Biking", + "๐Ÿšตโ€โ™‚๏ธ": "Man Mountain Biking", + "๐Ÿšตโ€โ™€๏ธ": "Woman Mountain Biking", + "๐Ÿคธ": "Person Cartwheeling", + "๐Ÿคธโ€โ™‚๏ธ": "Man Cartwheeling", + "๐Ÿคธโ€โ™€๏ธ": "Woman Cartwheeling", + "๐Ÿคผ": "People Wrestling", + "๐Ÿคผโ€โ™‚๏ธ": "Men Wrestling", + "๐Ÿคผโ€โ™€๏ธ": "Women Wrestling", + "๐Ÿคฝ": "Person Playing Water Polo", + "๐Ÿคฝโ€โ™‚๏ธ": "Man Playing Water Polo", + "๐Ÿคฝโ€โ™€๏ธ": "Woman Playing Water Polo", + "๐Ÿคพ": "Person Playing Handball", + "๐Ÿคพโ€โ™‚๏ธ": "Man Playing Handball", + "๐Ÿคพโ€โ™€๏ธ": "Woman Playing Handball", + "๐Ÿคน": "Person Juggling", + "๐Ÿคนโ€โ™‚๏ธ": "Man Juggling", + "๐Ÿคนโ€โ™€๏ธ": "Woman Juggling", + "๐Ÿง˜": "Person in Lotus Position", + "๐Ÿง˜โ€โ™‚๏ธ": "Man in Lotus Position", + "๐Ÿง˜โ€โ™€๏ธ": "Woman in Lotus Position", + "๐ŸŽช": "Circus Tent", + "๐Ÿ›น": "Skateboard", + "๐Ÿ›ผ": "Roller Skate", + "๐Ÿ›ถ": "Canoe", + "๐ŸŽ—๏ธ": "Reminder Ribbon", + "๐ŸŽŸ๏ธ": "Admission Tickets", + "๐ŸŽซ": "Ticket", + "๐ŸŽ–๏ธ": "Military Medal", + "๐Ÿ†": "Trophy", + "๐Ÿ…": "Sports Medal", + "๐Ÿฅ‡": "1st Place Medal", + "๐Ÿฅˆ": "2nd Place Medal", + "๐Ÿฅ‰": "3rd Place Medal", + "โšฝ": "Soccer Ball", + "โšพ": "Baseball", + "๐ŸฅŽ": "Softball", + "๐Ÿ€": "Basketball", + "๐Ÿ": "Volleyball", + "๐Ÿˆ": "American Football", + "๐Ÿ‰": "Rugby Football", + "๐ŸŽพ": "Tennis", + "๐Ÿฅ": "Flying Disc", + "๐ŸŽณ": "Bowling", + "๐Ÿ": "Cricket Game", + "๐Ÿ‘": "Field Hockey", + "๐Ÿ’": "Ice Hockey", + "๐Ÿฅ": "Lacrosse", + "๐Ÿ“": "Ping Pong", + "๐Ÿธ": "Badminton", + "๐ŸฅŠ": "Boxing Glove", + "๐Ÿฅ‹": "Martial Arts Uniform", + "๐Ÿฅ…": "Goal Net", + "โ›ณ": "Flag in Hole", + "โ›ธ๏ธ": "Ice Skate", + "๐ŸŽฃ": "Fishing Pole", + "๐ŸŽฝ": "Running Shirt", + "๐ŸŽฟ": "Skis", + "๐Ÿ›ท": "Sled", + "๐ŸฅŒ": "Curling Stone", + "๐ŸŽฏ": "Direct Hit", + "๐ŸŽฑ": "Pool 8 Ball", + "๐ŸŽฎ": "Video Game", + "๐ŸŽฐ": "Slot Machine", + "๐ŸŽฒ": "Game Die", + "๐Ÿงฉ": "Puzzle Piece", + "โ™Ÿ๏ธ": "Chess Pawn", + "๐ŸŽญ": "Performing Arts", + "๐ŸŽจ": "Artist Palette", + "๐Ÿงต": "Thread", + "๐Ÿงถ": "Yarn", + "๐ŸŽผ": "Musical Score", + "๐ŸŽค": "Microphone", + "๐ŸŽง": "Headphone", + "๐ŸŽท": "Saxophone", + "๐Ÿช—": "Accordion", + "๐ŸŽธ": "Guitar", + "๐ŸŽน": "Musical Keyboard", + "๐ŸŽบ": "Trumpet", + "๐ŸŽป": "Violin", + "๐Ÿฅ": "Drum", + "๐Ÿช˜": "Long Drum", + "๐ŸŽฌ": "Clapper Board", + "๐Ÿน": "Bow and Arrow" + }, + "Travel & Places": { + "๐Ÿšฃ": "Person Rowing Boat", + "๐Ÿ—พ": "Map of Japan", + "๐Ÿ”๏ธ": "Snow-Capped Mountain", + "โ›ฐ๏ธ": "Mountain", + "๐ŸŒ‹": "Volcano", + "๐Ÿ—ป": "Mount Fuji", + "๐Ÿ•๏ธ": "Camping", + "๐Ÿ–๏ธ": "Beach with Umbrella", + "๐Ÿœ๏ธ": "Desert", + "๐Ÿ๏ธ": "Desert Island", + "๐Ÿž๏ธ": "National Park", + "๐ŸŸ๏ธ": "Stadium", + "๐Ÿ›๏ธ": "Classical Building", + "๐Ÿ—๏ธ": "Building Construction", + "๐Ÿ›–": "Hut", + "๐Ÿ˜๏ธ": "Houses", + "๐Ÿš๏ธ": "Derelict House", + "๐Ÿ ": "House", + "๐Ÿก": "House with Garden", + "๐Ÿข": "Office Building", + "๐Ÿฃ": "Japanese Post Office", + "๐Ÿค": "Post Office", + "๐Ÿฅ": "Hospital", + "๐Ÿฆ": "Bank", + "๐Ÿจ": "Hotel", + "๐Ÿฉ": "Love Hotel", + "๐Ÿช": "Convenience Store", + "๐Ÿซ": "School", + "๐Ÿฌ": "Department Store", + "๐Ÿญ": "Factory", + "๐Ÿฏ": "Japanese Castle", + "๐Ÿฐ": "Castle", + "๐Ÿ’’": "Wedding", + "๐Ÿ—ผ": "Tokyo Tower", + "๐Ÿ—ฝ": "Statue of Liberty", + "โ›ช": "Church", + "๐Ÿ•Œ": "Mosque", + "๐Ÿ›•": "Hindu Temple", + "๐Ÿ•": "Synagogue", + "โ›ฉ๏ธ": "Shinto Shrine", + "๐Ÿ•‹": "Kaaba", + "โ›ฒ": "Fountain", + "โ›บ": "Tent", + "๐ŸŒ": "Foggy", + "๐ŸŒƒ": "Night with Stars", + "๐Ÿ™๏ธ": "Cityscape", + "๐ŸŒ„": "Sunrise Over Mountains", + "๐ŸŒ…": "Sunrise", + "๐ŸŒ†": "Cityscape at Dusk", + "๐ŸŒ‡": "Sunset", + "๐ŸŒ‰": "Bridge at Night", + "๐ŸŽ ": "Carousel Horse", + "๐ŸŽก": "Ferris Wheel", + "๐ŸŽข": "Roller Coaster", + "๐Ÿš‚": "Locomotive", + "๐Ÿšƒ": "Railway Car", + "๐Ÿš„": "High-Speed Train", + "๐Ÿš…": "Bullet Train", + "๐Ÿš†": "Train", + "๐Ÿš‡": "Metro", + "๐Ÿšˆ": "Light Rail", + "๐Ÿš‰": "Station", + "๐ŸšŠ": "Tram", + "๐Ÿš": "Monorail", + "๐Ÿšž": "Mountain Railway", + "๐Ÿš‹": "Tram Car", + "๐ŸšŒ": "Bus", + "๐Ÿš": "Oncoming Bus", + "๐ŸšŽ": "Trolleybus", + "๐Ÿš": "Minibus", + "๐Ÿš‘": "Ambulance", + "๐Ÿš’": "Fire Engine", + "๐Ÿš“": "Police Car", + "๐Ÿš”": "Oncoming Police Car", + "๐Ÿš•": "Taxi", + "๐Ÿš–": "Oncoming Taxi", + "๐Ÿš—": "Automobile", + "๐Ÿš˜": "Oncoming Automobile", + "๐Ÿš™": "Sport Utility Vehicle", + "๐Ÿ›ป": "Pickup Truck", + "๐Ÿšš": "Delivery Truck", + "๐Ÿš›": "Articulated Lorry", + "๐Ÿšœ": "Tractor", + "๐ŸŽ๏ธ": "Racing Car", + "๐Ÿ๏ธ": "Motorcycle", + "๐Ÿ›ต": "Motor Scooter", + "๐Ÿ›บ": "Auto Rickshaw", + "๐Ÿšฒ": "Bicycle", + "๐Ÿ›ด": "Kick Scooter", + "๐Ÿš": "Bus Stop", + "๐Ÿ›ฃ๏ธ": "Motorway", + "๐Ÿ›ค๏ธ": "Railway Track", + "โ›ฝ": "Fuel Pump", + "๐Ÿšจ": "Police Car Light", + "๐Ÿšฅ": "Horizontal Traffic Light", + "๐Ÿšฆ": "Vertical Traffic Light", + "๐Ÿšง": "Construction", + "โš“": "Anchor", + "โ›ต": "Sailboat", + "๐Ÿšค": "Speedboat", + "๐Ÿ›ณ๏ธ": "Passenger Ship", + "โ›ด๏ธ": "Ferry", + "๐Ÿ›ฅ๏ธ": "Motor Boat", + "๐Ÿšข": "Ship", + "โœˆ๏ธ": "Airplane", + "๐Ÿ›ฉ๏ธ": "Small Airplane", + "๐Ÿ›ซ": "Airplane Departure", + "๐Ÿ›ฌ": "Airplane Arrival", + "๐Ÿช‚": "Parachute", + "๐Ÿ’บ": "Seat", + "๐Ÿš": "Helicopter", + "๐ŸšŸ": "Suspension Railway", + "๐Ÿš ": "Mountain Cableway", + "๐Ÿšก": "Aerial Tramway", + "๐Ÿ›ฐ๏ธ": "Satellite", + "๐Ÿš€": "Rocket", + "๐Ÿ›ธ": "Flying Saucer", + "๐Ÿช": "Ringed Planet", + "๐ŸŒ ": "Shooting Star", + "๐ŸŒŒ": "Milky Way", + "โ›ฑ๏ธ": "Umbrella on Ground", + "๐ŸŽ†": "Fireworks", + "๐ŸŽ‡": "Sparkler", + "๐ŸŽ‘": "Moon Viewing Ceremony", + "๐Ÿ’ด": "Yen Banknote", + "๐Ÿ’ต": "Dollar Banknote", + "๐Ÿ’ถ": "Euro Banknote", + "๐Ÿ’ท": "Pound Banknote", + "๐Ÿ—ฟ": "Moai", + "๐Ÿ›‚": "Passport Control", + "๐Ÿ›ƒ": "Customs", + "๐Ÿ›„": "Baggage Claim", + "๐Ÿ›…": "Left Luggage" + }, + "Objects": { + "๐Ÿ’Œ": "Love Letter", + "๐Ÿ•ณ๏ธ": "Hole", + "๐Ÿ’ฃ": "Bomb", + "๐Ÿ›€": "Person Taking Bath", + "๐Ÿ›Œ": "Person in Bed", + "๐Ÿ”ช": "Kitchen Knife", + "๐Ÿบ": "Amphora", + "๐Ÿ—บ๏ธ": "World Map", + "๐Ÿงญ": "Compass", + "๐Ÿงฑ": "Brick", + "๐Ÿ’ˆ": "Barber Pole", + "๐Ÿฆฝ": "Manual Wheelchair", + "๐Ÿฆผ": "Motorized Wheelchair", + "๐Ÿ›ข๏ธ": "Oil Drum", + "๐Ÿ›Ž๏ธ": "Bellhop Bell", + "๐Ÿงณ": "Luggage", + "โŒ›": "Hourglass Done", + "โณ": "Hourglass Not Done", + "โŒš": "Watch", + "โฐ": "Alarm Clock", + "โฑ๏ธ": "Stopwatch", + "โฒ๏ธ": "Timer Clock", + "๐Ÿ•ฐ๏ธ": "Mantelpiece Clock", + "๐ŸŒก๏ธ": "Thermometer", + "โ›ฑ๏ธ": "Umbrella on Ground", + "๐Ÿงจ": "Firecracker", + "๐ŸŽˆ": "Balloon", + "๐ŸŽ‰": "Party Popper", + "๐ŸŽŠ": "Confetti Ball", + "๐ŸŽŽ": "Japanese Dolls", + "๐ŸŽ": "Carp Streamer", + "๐ŸŽ": "Wind Chime", + "๐Ÿงง": "Red Envelope", + "๐ŸŽ€": "Ribbon", + "๐ŸŽ": "Wrapped Gift", + "๐Ÿคฟ": "Diving Mask", + "๐Ÿช€": "Yo-Yo", + "๐Ÿช": "Kite", + "๐Ÿ”ฎ": "Crystal Ball", + "๐Ÿช„": "Magic Wand", + "๐Ÿงฟ": "Nazar Amulet", + "๐Ÿ•น๏ธ": "Joystick", + "๐Ÿงธ": "Teddy Bear", + "๐Ÿช…": "Piรฑata", + "๐Ÿช†": "Nesting Dolls", + "๐Ÿ–ผ๏ธ": "Framed Picture", + "๐Ÿงต": "Thread", + "๐Ÿชก": "Sewing Needle", + "๐Ÿงถ": "Yarn", + "๐Ÿชข": "Knot", + "๐Ÿ›๏ธ": "Shopping Bags", + "๐Ÿ“ฟ": "Prayer Beads", + "๐Ÿ’Ž": "Gem Stone", + "๐Ÿ“ฏ": "Postal Horn", + "๐ŸŽ™๏ธ": "Studio Microphone", + "๐ŸŽš๏ธ": "Level Slider", + "๐ŸŽ›๏ธ": "Control Knobs", + "๐Ÿ“ป": "Radio", + "๐Ÿช•": "Banjo", + "๐Ÿ“ฑ": "Mobile Phone", + "๐Ÿ“ฒ": "Mobile Phone with Arrow", + "โ˜Ž๏ธ": "Telephone", + "๐Ÿ“ž": "Telephone Receiver", + "๐Ÿ“Ÿ": "Pager", + "๐Ÿ“ ": "Fax Machine", + "๐Ÿ”‹": "Battery", + "๐Ÿ”Œ": "Electric Plug", + "๐Ÿ’ป": "Laptop", + "๐Ÿ–ฅ๏ธ": "Desktop Computer", + "๐Ÿ–จ๏ธ": "Printer", + "โŒจ๏ธ": "Keyboard", + "๐Ÿ–ฑ๏ธ": "Computer Mouse", + "๐Ÿ–ฒ๏ธ": "Trackball", + "๐Ÿ’ฝ": "Computer Disk", + "๐Ÿ’พ": "Floppy Disk", + "๐Ÿ’ฟ": "Optical Disk", + "๐Ÿ“€": "DVD", + "๐Ÿงฎ": "Abacus", + "๐ŸŽฅ": "Movie Camera", + "๐ŸŽž๏ธ": "Film Frames", + "๐Ÿ“ฝ๏ธ": "Film Projector", + "๐Ÿ“บ": "Television", + "๐Ÿ“ท": "Camera", + "๐Ÿ“ธ": "Camera with Flash", + "๐Ÿ“น": "Video Camera", + "๐Ÿ“ผ": "Videocassette", + "๐Ÿ”": "Magnifying Glass Tilted Left", + "๐Ÿ”Ž": "Magnifying Glass Tilted Right", + "๐Ÿ•ฏ๏ธ": "Candle", + "๐Ÿ’ก": "Light Bulb", + "๐Ÿ”ฆ": "Flashlight", + "๐Ÿฎ": "Red Paper Lantern", + "๐Ÿช”": "Diya Lamp", + "๐Ÿ“”": "Notebook with Decorative Cover", + "๐Ÿ“•": "Closed Book", + "๐Ÿ“–": "Open Book", + "๐Ÿ“—": "Green Book", + "๐Ÿ“˜": "Blue Book", + "๐Ÿ“™": "Orange Book", + "๐Ÿ“š": "Books", + "๐Ÿ““": "Notebook", + "๐Ÿ“’": "Ledger", + "๐Ÿ“ƒ": "Page with Curl", + "๐Ÿ“œ": "Scroll", + "๐Ÿ“„": "Page Facing Up", + "๐Ÿ“ฐ": "Newspaper", + "๐Ÿ—ž๏ธ": "Rolled-Up Newspaper", + "๐Ÿ“‘": "Bookmark Tabs", + "๐Ÿ”–": "Bookmark", + "๐Ÿท๏ธ": "Label", + "๐Ÿ’ฐ": "Money Bag", + "๐Ÿช™": "Coin", + "๐Ÿ’ด": "Yen Banknote", + "๐Ÿ’ต": "Dollar Banknote", + "๐Ÿ’ถ": "Euro Banknote", + "๐Ÿ’ท": "Pound Banknote", + "๐Ÿ’ธ": "Money with Wings", + "๐Ÿ’ณ": "Credit Card", + "๐Ÿงพ": "Receipt", + "โœ‰๏ธ": "Envelope", + "๐Ÿ“ง": "E-Mail", + "๐Ÿ“จ": "Incoming Envelope", + "๐Ÿ“ฉ": "Envelope with Arrow", + "๐Ÿ“ค": "Outbox Tray", + "๐Ÿ“ฅ": "Inbox Tray", + "๐Ÿ“ฆ": "Package", + "๐Ÿ“ซ": "Closed Mailbox with Raised Flag", + "๐Ÿ“ช": "Closed Mailbox with Lowered Flag", + "๐Ÿ“ฌ": "Open Mailbox with Raised Flag", + "๐Ÿ“ญ": "Open Mailbox with Lowered Flag", + "๐Ÿ“ฎ": "Postbox", + "๐Ÿ—ณ๏ธ": "Ballot Box with Ballot", + "โœ๏ธ": "Pencil", + "โœ’๏ธ": "Black Nib", + "๐Ÿ–‹๏ธ": "Fountain Pen", + "๐Ÿ–Š๏ธ": "Pen", + "๐Ÿ–Œ๏ธ": "Paintbrush", + "๐Ÿ–๏ธ": "Crayon", + "๐Ÿ“": "Memo", + "๐Ÿ“": "File Folder", + "๐Ÿ“‚": "Open File Folder", + "๐Ÿ—‚๏ธ": "Card Index Dividers", + "๐Ÿ“…": "Calendar", + "๐Ÿ“†": "Tear-Off Calendar", + "๐Ÿ—’๏ธ": "Spiral Notepad", + "๐Ÿ—“๏ธ": "Spiral Calendar", + "๐Ÿ“‡": "Card Index", + "๐Ÿ“ˆ": "Chart Increasing", + "๐Ÿ“‰": "Chart Decreasing", + "๐Ÿ“Š": "Bar Chart", + "๐Ÿ“‹": "Clipboard", + "๐Ÿ“Œ": "Pushpin", + "๐Ÿ“": "Round Pushpin", + "๐Ÿ“Ž": "Paperclip", + "๐Ÿ–‡๏ธ": "Linked Paperclips", + "๐Ÿ“": "Straight Ruler", + "๐Ÿ“": "Triangular Ruler", + "โœ‚๏ธ": "Scissors", + "๐Ÿ—ƒ๏ธ": "Card File Box", + "๐Ÿ—„๏ธ": "File Cabinet", + "๐Ÿ—‘๏ธ": "Wastebasket", + "๐Ÿ”’": "Locked", + "๐Ÿ”“": "Unlocked", + "๐Ÿ”": "Locked with Pen", + "๐Ÿ”": "Locked with Key", + "๐Ÿ”‘": "Key", + "๐Ÿ—๏ธ": "Old Key", + "๐Ÿ”จ": "Hammer", + "๐Ÿช“": "Axe", + "โ›๏ธ": "Pick", + "โš’๏ธ": "Hammer and Pick", + "๐Ÿ› ๏ธ": "Hammer and Wrench", + "๐Ÿ—ก๏ธ": "Dagger", + "โš”๏ธ": "Crossed Swords", + "๐Ÿ”ซ": "Pistol", + "๐Ÿชƒ": "Boomerang", + "๐Ÿ›ก๏ธ": "Shield", + "๐Ÿชš": "Carpentry Saw", + "๐Ÿ”ง": "Wrench", + "๐Ÿช›": "Screwdriver", + "๐Ÿ”ฉ": "Nut and Bolt", + "โš™๏ธ": "Gear", + "๐Ÿ—œ๏ธ": "Clamp", + "โš–๏ธ": "Balance Scale", + "๐Ÿฆฏ": "White Cane", + "๐Ÿ”—": "Link", + "โ›“๏ธ": "Chains", + "๐Ÿช": "Hook", + "๐Ÿงฐ": "Toolbox", + "๐Ÿงฒ": "Magnet", + "๐Ÿชœ": "Ladder", + "โš—๏ธ": "Alembic", + "๐Ÿงช": "Test Tube", + "๐Ÿงซ": "Petri Dish", + "๐Ÿงฌ": "DNA", + "๐Ÿ”ฌ": "Microscope", + "๐Ÿ”ญ": "Telescope", + "๐Ÿ“ก": "Satellite Antenna", + "๐Ÿ’‰": "Syringe", + "๐Ÿฉธ": "Drop of Blood", + "๐Ÿ’Š": "Pill", + "๐Ÿฉน": "Adhesive Bandage", + "๐Ÿฉบ": "Stethoscope", + "๐Ÿšช": "Door", + "๐Ÿชž": "Mirror", + "๐ŸชŸ": "Window", + "๐Ÿ›๏ธ": "Bed", + "๐Ÿ›‹๏ธ": "Couch and Lamp", + "๐Ÿช‘": "Chair", + "๐Ÿšฝ": "Toilet", + "๐Ÿช ": "Plunger", + "๐Ÿšฟ": "Shower", + "๐Ÿ›": "Bathtub", + "๐Ÿชค": "Mouse Trap", + "๐Ÿช’": "Razor", + "๐Ÿงด": "Lotion Bottle", + "๐Ÿงท": "Safety Pin", + "๐Ÿงน": "Broom", + "๐Ÿงบ": "Basket", + "๐Ÿงป": "Roll of Paper", + "๐Ÿชฃ": "Bucket", + "๐Ÿงผ": "Soap", + "๐Ÿชฅ": "Toothbrush", + "๐Ÿงฝ": "Sponge", + "๐Ÿงฏ": "Fire Extinguisher", + "๐Ÿ›’": "Shopping Cart", + "๐Ÿšฌ": "Cigarette", + "โšฐ๏ธ": "Coffin", + "๐Ÿชฆ": "Headstone", + "โšฑ๏ธ": "Funeral Urn", + "๐Ÿ—ฟ": "Moai", + "๐Ÿชง": "Placard", + "๐Ÿšฐ": "Potable Water" + }, + "Symbols": { + "๐Ÿ’˜": "Heart with Arrow", + "๐Ÿ’": "Heart with Ribbon", + "๐Ÿ’–": "Sparkling Heart", + "๐Ÿ’—": "Growing Heart", + "๐Ÿ’“": "Beating Heart", + "๐Ÿ’ž": "Revolving Hearts", + "๐Ÿ’•": "Two Hearts", + "๐Ÿ’Ÿ": "Heart Decoration", + "โฃ๏ธ": "Heart Exclamation", + "๐Ÿ’”": "Broken Heart", + "โค๏ธ": "Red Heart", + "๐Ÿงก": "Orange Heart", + "๐Ÿ’›": "Yellow Heart", + "๐Ÿ’š": "Green Heart", + "๐Ÿ’™": "Blue Heart", + "๐Ÿ’œ": "Purple Heart", + "๐ŸคŽ": "Brown Heart", + "๐Ÿ–ค": "Black Heart", + "๐Ÿค": "White Heart", + "๐Ÿ’ฏ": "Hundred Points", + "๐Ÿ’ข": "Anger Symbol", + "๐Ÿ’ฌ": "Speech Balloon", + "๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ": "Eye in Speech Bubble", + "๐Ÿ—จ๏ธ": "Left Speech Bubble", + "๐Ÿ—ฏ๏ธ": "Right Anger Bubble", + "๐Ÿ’ญ": "Thought Balloon", + "๐Ÿ’ค": "Zzz", + "๐Ÿ’ฎ": "White Flower", + "โ™จ๏ธ": "Hot Springs", + "๐Ÿ’ˆ": "Barber Pole", + "๐Ÿ›‘": "Stop Sign", + "๐Ÿ•›": "Twelve Oโ€™Clock", + "๐Ÿ•ง": "Twelve-Thirty", + "๐Ÿ•": "One Oโ€™Clock", + "๐Ÿ•œ": "One-Thirty", + "๐Ÿ•‘": "Two Oโ€™Clock", + "๐Ÿ•": "Two-Thirty", + "๐Ÿ•’": "Three Oโ€™Clock", + "๐Ÿ•ž": "Three-Thirty", + "๐Ÿ•“": "Four Oโ€™Clock", + "๐Ÿ•Ÿ": "Four-Thirty", + "๐Ÿ•”": "Five Oโ€™Clock", + "๐Ÿ• ": "Five-Thirty", + "๐Ÿ••": "Six Oโ€™Clock", + "๐Ÿ•ก": "Six-Thirty", + "๐Ÿ•–": "Seven Oโ€™Clock", + "๐Ÿ•ข": "Seven-Thirty", + "๐Ÿ•—": "Eight Oโ€™Clock", + "๐Ÿ•ฃ": "Eight-Thirty", + "๐Ÿ•˜": "Nine Oโ€™Clock", + "๐Ÿ•ค": "Nine-Thirty", + "๐Ÿ•™": "Ten Oโ€™Clock", + "๐Ÿ•ฅ": "Ten-Thirty", + "๐Ÿ•š": "Eleven Oโ€™Clock", + "๐Ÿ•ฆ": "Eleven-Thirty", + "๐ŸŒ€": "Cyclone", + "โ™ ๏ธ": "Spade Suit", + "โ™ฅ๏ธ": "Heart Suit", + "โ™ฆ๏ธ": "Diamond Suit", + "โ™ฃ๏ธ": "Club Suit", + "๐Ÿƒ": "Joker", + "๐Ÿ€„": "Mahjong Red Dragon", + "๐ŸŽด": "Flower Playing Cards", + "๐Ÿ”‡": "Muted Speaker", + "๐Ÿ”ˆ": "Speaker Low Volume", + "๐Ÿ”‰": "Speaker Medium Volume", + "๐Ÿ”Š": "Speaker High Volume", + "๐Ÿ“ข": "Loudspeaker", + "๐Ÿ“ฃ": "Megaphone", + "๐Ÿ“ฏ": "Postal Horn", + "๐Ÿ””": "Bell", + "๐Ÿ”•": "Bell with Slash", + "๐ŸŽต": "Musical Note", + "๐ŸŽถ": "Musical Notes", + "๐Ÿ’น": "Chart Increasing with Yen", + "๐Ÿ›—": "Elevator", + "๐Ÿง": "ATM Sign", + "๐Ÿšฎ": "Litter in Bin Sign", + "๐Ÿšฐ": "Potable Water", + "โ™ฟ": "Wheelchair Symbol", + "๐Ÿšน": "Menโ€™s Room", + "๐Ÿšบ": "Womenโ€™s Room", + "๐Ÿšป": "Restroom", + "๐Ÿšผ": "Baby Symbol", + "๐Ÿšพ": "Water Closet", + "โš ๏ธ": "Warning", + "๐Ÿšธ": "Children Crossing", + "โ›”": "No Entry", + "๐Ÿšซ": "Prohibited", + "๐Ÿšณ": "No Bicycles", + "๐Ÿšญ": "No Smoking", + "๐Ÿšฏ": "No Littering", + "๐Ÿšฑ": "Non-Potable Water", + "๐Ÿšท": "No Pedestrians", + "๐Ÿ“ต": "No Mobile Phones", + "๐Ÿ”ž": "No One Under Eighteen", + "โ˜ข๏ธ": "Radioactive", + "โ˜ฃ๏ธ": "Biohazard", + "โฌ†๏ธ": "Up Arrow", + "โ†—๏ธ": "Up-Right Arrow", + "โžก๏ธ": "Right Arrow", + "โ†˜๏ธ": "Down-Right Arrow", + "โฌ‡๏ธ": "Down Arrow", + "โ†™๏ธ": "Down-Left Arrow", + "โฌ…๏ธ": "Left Arrow", + "โ†–๏ธ": "Up-Left Arrow", + "โ†•๏ธ": "Up-Down Arrow", + "โ†”๏ธ": "Left-Right Arrow", + "โ†ฉ๏ธ": "Right Arrow Curving Left", + "โ†ช๏ธ": "Left Arrow Curving Right", + "โคด๏ธ": "Right Arrow Curving Up", + "โคต๏ธ": "Right Arrow Curving Down", + "๐Ÿ”ƒ": "Clockwise Vertical Arrows", + "๐Ÿ”„": "Counterclockwise Arrows Button", + "๐Ÿ”™": "Back Arrow", + "๐Ÿ”š": "End Arrow", + "๐Ÿ”›": "On! Arrow", + "๐Ÿ”œ": "Soon Arrow", + "๐Ÿ”": "Top Arrow", + "๐Ÿ›": "Place of Worship", + "โš›๏ธ": "Atom Symbol", + "๐Ÿ•‰๏ธ": "Om", + "โœก๏ธ": "Star of David", + "โ˜ธ๏ธ": "Wheel of Dharma", + "โ˜ฏ๏ธ": "Yin Yang", + "โœ๏ธ": "Latin Cross", + "โ˜ฆ๏ธ": "Orthodox Cross", + "โ˜ช๏ธ": "Star and Crescent", + "โ˜ฎ๏ธ": "Peace Symbol", + "๐Ÿ•Ž": "Menorah", + "๐Ÿ”ฏ": "Dotted Six-Pointed Star", + "โ™ˆ": "Aries", + "โ™‰": "Taurus", + "โ™Š": "Gemini", + "โ™‹": "Cancer", + "โ™Œ": "Leo", + "โ™": "Virgo", + "โ™Ž": "Libra", + "โ™": "Scorpio", + "โ™": "Sagittarius", + "โ™‘": "Capricorn", + "โ™’": "Aquarius", + "โ™“": "Pisces", + "โ›Ž": "Ophiuchus", + "๐Ÿ”€": "Shuffle Tracks Button", + "๐Ÿ”": "Repeat Button", + "๐Ÿ”‚": "Repeat Single Button", + "โ–ถ๏ธ": "Play Button", + "โฉ": "Fast-Forward Button", + "โญ๏ธ": "Next Track Button", + "โฏ๏ธ": "Play or Pause Button", + "โ—€๏ธ": "Reverse Button", + "โช": "Fast Reverse Button", + "โฎ๏ธ": "Last Track Button", + "๐Ÿ”ผ": "Upwards Button", + "โซ": "Fast Up Button", + "๐Ÿ”ฝ": "Downwards Button", + "โฌ": "Fast Down Button", + "โธ๏ธ": "Pause Button", + "โน๏ธ": "Stop Button", + "โบ๏ธ": "Record Button", + "โ๏ธ": "Eject Button", + "๐ŸŽฆ": "Cinema", + "๐Ÿ”…": "Dim Button", + "๐Ÿ”†": "Bright Button", + "๐Ÿ“ถ": "Antenna Bars", + "๐Ÿ“ณ": "Vibration Mode", + "๐Ÿ“ด": "Mobile Phone Off", + "โ™€๏ธ": "Female Sign", + "โ™‚๏ธ": "Male Sign", + "โœ–๏ธ": "Multiply", + "โž•": "Plus", + "โž–": "Minus", + "โž—": "Divide", + "โ™พ๏ธ": "Infinity", + "โ€ผ๏ธ": "Double Exclamation Mark", + "โ‰๏ธ": "Exclamation Question Mark", + "โ“": "Question Mark", + "โ”": "White Question Mark", + "โ•": "White Exclamation Mark", + "โ—": "Exclamation Mark", + "ใ€ฐ๏ธ": "Wavy Dash", + "๐Ÿ’ฑ": "Currency Exchange", + "๐Ÿ’ฒ": "Heavy Dollar Sign", + "โš•๏ธ": "Medical Symbol", + "โ™ป๏ธ": "Recycling Symbol", + "โšœ๏ธ": "Fleur-de-lis", + "๐Ÿ”ฑ": "Trident Emblem", + "๐Ÿ“›": "Name Badge", + "๐Ÿ”ฐ": "Japanese Symbol for Beginner", + "โญ•": "Hollow Red Circle", + "โœ…": "Check Mark Button", + "โ˜‘๏ธ": "Check Box with Check", + "โœ”๏ธ": "Check Mark", + "โŒ": "Cross Mark", + "โŽ": "Cross Mark Button", + "โžฐ": "Curly Loop", + "โžฟ": "Double Curly Loop", + "ใ€ฝ๏ธ": "Part Alternation Mark", + "โœณ๏ธ": "Eight-Spoked Asterisk", + "โœด๏ธ": "Eight-Pointed Star", + "โ‡๏ธ": "Sparkle", + "ยฉ๏ธ": "Copyright", + "ยฎ๏ธ": "Registered", + "โ„ข๏ธ": "Trade Mark", + "#๏ธโƒฃ": "Keycap Number Sign", + "*๏ธโƒฃ": "Keycap Asterisk", + "0๏ธโƒฃ": "Keycap Digit Zero", + "1๏ธโƒฃ": "Keycap Digit One", + "2๏ธโƒฃ": "Keycap Digit Two", + "3๏ธโƒฃ": "Keycap Digit Three", + "4๏ธโƒฃ": "Keycap Digit Four", + "5๏ธโƒฃ": "Keycap Digit Five", + "6๏ธโƒฃ": "Keycap Digit Six", + "7๏ธโƒฃ": "Keycap Digit Seven", + "8๏ธโƒฃ": "Keycap Digit Eight", + "9๏ธโƒฃ": "Keycap Digit Nine", + "๐Ÿ”Ÿ": "Keycap: 10", + "๐Ÿ” ": "Input Latin Uppercase", + "๐Ÿ”ก": "Input Latin Lowercase", + "๐Ÿ”ข": "Input Numbers", + "๐Ÿ”ฃ": "Input Symbols", + "๐Ÿ”ค": "Input Latin Letters", + "๐Ÿ…ฐ๏ธ": "A Button (Blood Type)", + "๐Ÿ†Ž": "AB Button (Blood Type)", + "๐Ÿ…ฑ๏ธ": "B Button (Blood Type)", + "๐Ÿ†‘": "CL Button", + "๐Ÿ†’": "Cool Button", + "๐Ÿ†“": "Free Button", + "โ„น๏ธ": "Information", + "๐Ÿ†”": "ID Button", + "โ“‚๏ธ": "Circled M", + "๐Ÿ†•": "New Button", + "๐Ÿ†–": "NG Button", + "๐Ÿ…พ๏ธ": "O Button (Blood Type)", + "๐Ÿ†—": "OK Button", + "๐Ÿ…ฟ๏ธ": "P Button", + "๐Ÿ†˜": "SOS Button", + "๐Ÿ†™": "Up! Button", + "๐Ÿ†š": "Vs Button", + "๐Ÿˆ": "Japanese โ€œHereโ€ Button", + "๐Ÿˆ‚๏ธ": "Japanese โ€œService Chargeโ€ Button", + "๐Ÿˆท๏ธ": "Japanese โ€œMonthly Amountโ€ Button", + "๐Ÿˆถ": "Japanese โ€œNot Free of Chargeโ€ Button", + "๐Ÿˆฏ": "Japanese โ€œReservedโ€ Button", + "๐Ÿ‰": "Japanese โ€œBargainโ€ Button", + "๐Ÿˆน": "Japanese โ€œDiscountโ€ Button", + "๐Ÿˆš": "Japanese โ€œFree of Chargeโ€ Button", + "๐Ÿˆฒ": "Japanese โ€œProhibitedโ€ Button", + "๐Ÿ‰‘": "Japanese โ€œAcceptableโ€ Button", + "๐Ÿˆธ": "Japanese โ€œApplicationโ€ Button", + "๐Ÿˆด": "Japanese โ€œPassing Gradeโ€ Button", + "๐Ÿˆณ": "Japanese โ€œVacancyโ€ Button", + "ใŠ—๏ธ": "Japanese โ€œCongratulationsโ€ Button", + "ใŠ™๏ธ": "Japanese โ€œSecretโ€ Button", + "๐Ÿˆบ": "Japanese โ€œOpen for Businessโ€ Button", + "๐Ÿˆต": "Japanese โ€œNo Vacancyโ€ Button", + "๐Ÿ”ด": "Red Circle", + "๐ŸŸ ": "Orange Circle", + "๐ŸŸก": "Yellow Circle", + "๐ŸŸข": "Green Circle", + "๐Ÿ”ต": "Blue Circle", + "๐ŸŸฃ": "Purple Circle", + "๐ŸŸค": "Brown Circle", + "โšซ": "Black Circle", + "โšช": "White Circle", + "๐ŸŸฅ": "Red Square", + "๐ŸŸง": "Orange Square", + "๐ŸŸจ": "Yellow Square", + "๐ŸŸฉ": "Green Square", + "๐ŸŸฆ": "Blue Square", + "๐ŸŸช": "Purple Square", + "๐ŸŸซ": "Brown Square", + "โฌ›": "Black Large Square", + "โฌœ": "White Large Square", + "โ—ผ๏ธ": "Black Medium Square", + "โ—ป๏ธ": "White Medium Square", + "โ—พ": "Black Medium-Small Square", + "โ—ฝ": "White Medium-Small Square", + "โ–ช๏ธ": "Black Small Square", + "โ–ซ๏ธ": "White Small Square", + "๐Ÿ”ถ": "Large Orange Diamond", + "๐Ÿ”ท": "Large Blue Diamond", + "๐Ÿ”ธ": "Small Orange Diamond", + "๐Ÿ”น": "Small Blue Diamond", + "๐Ÿ”บ": "Red Triangle Pointed Up", + "๐Ÿ”ป": "Red Triangle Pointed Down", + "๐Ÿ’ ": "Diamond with a Dot", + "๐Ÿ”˜": "Radio Button", + "๐Ÿ”ณ": "White Square Button", + "๐Ÿ”ฒ": "Black Square Button", + "โค๏ธโ€๐Ÿ”ฅ": "Heart on Fire", + "โค๏ธโ€๐Ÿฉน": "Mending Heart" + }, + "Flags": { + "๐Ÿ": "Chequered Flag", + "๐Ÿšฉ": "Triangular Flag", + "๐ŸŽŒ": "Crossed Flags", + "๐Ÿด": "Black Flag", + "๐Ÿณ๏ธ": "White Flag", + "๐Ÿณ๏ธโ€๐ŸŒˆ": "Rainbow Flag", + "๐Ÿณ๏ธโ€โšง๏ธ": "Transgender Flag", + "๐Ÿดโ€โ˜ ๏ธ": "Pirate Flag", + "๐Ÿ‡ฆ๐Ÿ‡จ": "Flag: Ascension Island", + "๐Ÿ‡ฆ๐Ÿ‡ฉ": "Flag: Andorra", + "๐Ÿ‡ฆ๐Ÿ‡ช": "Flag: United Arab Emirates", + "๐Ÿ‡ฆ๐Ÿ‡ซ": "Flag: Afghanistan", + "๐Ÿ‡ฆ๐Ÿ‡ฌ": "Flag: Antigua & Barbuda", + "๐Ÿ‡ฆ๐Ÿ‡ฎ": "Flag: Anguilla", + "๐Ÿ‡ฆ๐Ÿ‡ฑ": "Flag: Albania", + "๐Ÿ‡ฆ๐Ÿ‡ฒ": "Flag: Armenia", + "๐Ÿ‡ฆ๐Ÿ‡ด": "Flag: Angola", + "๐Ÿ‡ฆ๐Ÿ‡ถ": "Flag: Antarctica", + "๐Ÿ‡ฆ๐Ÿ‡ท": "Flag: Argentina", + "๐Ÿ‡ฆ๐Ÿ‡ธ": "Flag: American Samoa", + "๐Ÿ‡ฆ๐Ÿ‡น": "Flag: Austria", + "๐Ÿ‡ฆ๐Ÿ‡บ": "Flag: Australia", + "๐Ÿ‡ฆ๐Ÿ‡ผ": "Flag: Aruba", + "๐Ÿ‡ฆ๐Ÿ‡ฝ": "Flag: ร…land Islands", + "๐Ÿ‡ฆ๐Ÿ‡ฟ": "Flag: Azerbaijan", + "๐Ÿ‡ง๐Ÿ‡ฆ": "Flag: Bosnia & Herzegovina", + "๐Ÿ‡ง๐Ÿ‡ง": "Flag: Barbados", + "๐Ÿ‡ง๐Ÿ‡ฉ": "Flag: Bangladesh", + "๐Ÿ‡ง๐Ÿ‡ช": "Flag: Belgium", + "๐Ÿ‡ง๐Ÿ‡ซ": "Flag: Burkina Faso", + "๐Ÿ‡ง๐Ÿ‡ฌ": "Flag: Bulgaria", + "๐Ÿ‡ง๐Ÿ‡ญ": "Flag: Bahrain", + "๐Ÿ‡ง๐Ÿ‡ฎ": "Flag: Burundi", + "๐Ÿ‡ง๐Ÿ‡ฏ": "Flag: Benin", + "๐Ÿ‡ง๐Ÿ‡ฑ": "Flag: St. Barthรฉlemy", + "๐Ÿ‡ง๐Ÿ‡ฒ": "Flag: Bermuda", + "๐Ÿ‡ง๐Ÿ‡ณ": "Flag: Brunei", + "๐Ÿ‡ง๐Ÿ‡ด": "Flag: Bolivia", + "๐Ÿ‡ง๐Ÿ‡ถ": "Flag: Caribbean Netherlands", + "๐Ÿ‡ง๐Ÿ‡ท": "Flag: Brazil", + "๐Ÿ‡ง๐Ÿ‡ธ": "Flag: Bahamas", + "๐Ÿ‡ง๐Ÿ‡น": "Flag: Bhutan", + "๐Ÿ‡ง๐Ÿ‡ป": "Flag: Bouvet Island", + "๐Ÿ‡ง๐Ÿ‡ผ": "Flag: Botswana", + "๐Ÿ‡ง๐Ÿ‡พ": "Flag: Belarus", + "๐Ÿ‡ง๐Ÿ‡ฟ": "Flag: Belize", + "๐Ÿ‡จ๐Ÿ‡ฆ": "Flag: Canada", + "๐Ÿ‡จ๐Ÿ‡จ": "Flag: Cocos (Keeling) Islands", + "๐Ÿ‡จ๐Ÿ‡ฉ": "Flag: Congo - Kinshasa", + "๐Ÿ‡จ๐Ÿ‡ซ": "Flag: Central African Republic", + "๐Ÿ‡จ๐Ÿ‡ฌ": "Flag: Congo - Brazzaville", + "๐Ÿ‡จ๐Ÿ‡ญ": "Flag: Switzerland", + "๐Ÿ‡จ๐Ÿ‡ฎ": "Flag: Cรดte dโ€™Ivoire", + "๐Ÿ‡จ๐Ÿ‡ฐ": "Flag: Cook Islands", + "๐Ÿ‡จ๐Ÿ‡ฑ": "Flag: Chile", + "๐Ÿ‡จ๐Ÿ‡ฒ": "Flag: Cameroon", + "๐Ÿ‡จ๐Ÿ‡ณ": "Flag: China", + "๐Ÿ‡จ๐Ÿ‡ด": "Flag: Colombia", + "๐Ÿ‡จ๐Ÿ‡ต": "Flag: Clipperton Island", + "๐Ÿ‡จ๐Ÿ‡ท": "Flag: Costa Rica", + "๐Ÿ‡จ๐Ÿ‡บ": "Flag: Cuba", + "๐Ÿ‡จ๐Ÿ‡ป": "Flag: Cape Verde", + "๐Ÿ‡จ๐Ÿ‡ผ": "Flag: Curaรงao", + "๐Ÿ‡จ๐Ÿ‡ฝ": "Flag: Christmas Island", + "๐Ÿ‡จ๐Ÿ‡พ": "Flag: Cyprus", + "๐Ÿ‡จ๐Ÿ‡ฟ": "Flag: Czechia", + "๐Ÿ‡ฉ๐Ÿ‡ช": "Flag: Germany", + "๐Ÿ‡ฉ๐Ÿ‡ฌ": "Flag: Diego Garcia", + "๐Ÿ‡ฉ๐Ÿ‡ฏ": "Flag: Djibouti", + "๐Ÿ‡ฉ๐Ÿ‡ฐ": "Flag: Denmark", + "๐Ÿ‡ฉ๐Ÿ‡ฒ": "Flag: Dominica", + "๐Ÿ‡ฉ๐Ÿ‡ด": "Flag: Dominican Republic", + "๐Ÿ‡ฉ๐Ÿ‡ฟ": "Flag: Algeria", + "๐Ÿ‡ช๐Ÿ‡ฆ": "Flag: Ceuta & Melilla", + "๐Ÿ‡ช๐Ÿ‡จ": "Flag: Ecuador", + "๐Ÿ‡ช๐Ÿ‡ช": "Flag: Estonia", + "๐Ÿ‡ช๐Ÿ‡ฌ": "Flag: Egypt", + "๐Ÿ‡ช๐Ÿ‡ญ": "Flag: Western Sahara", + "๐Ÿ‡ช๐Ÿ‡ท": "Flag: Eritrea", + "๐Ÿ‡ช๐Ÿ‡ธ": "Flag: Spain", + "๐Ÿ‡ช๐Ÿ‡น": "Flag: Ethiopia", + "๐Ÿ‡ช๐Ÿ‡บ": "Flag: European Union", + "๐Ÿ‡ซ๐Ÿ‡ฎ": "Flag: Finland", + "๐Ÿ‡ซ๐Ÿ‡ฏ": "Flag: Fiji", + "๐Ÿ‡ซ๐Ÿ‡ฐ": "Flag: Falkland Islands", + "๐Ÿ‡ซ๐Ÿ‡ฒ": "Flag: Micronesia", + "๐Ÿ‡ซ๐Ÿ‡ด": "Flag: Faroe Islands", + "๐Ÿ‡ซ๐Ÿ‡ท": "Flag: France", + "๐Ÿ‡ฌ๐Ÿ‡ฆ": "Flag: Gabon", + "๐Ÿ‡ฌ๐Ÿ‡ง": "Flag: United Kingdom", + "๐Ÿ‡ฌ๐Ÿ‡ฉ": "Flag: Grenada", + "๐Ÿ‡ฌ๐Ÿ‡ช": "Flag: Georgia", + "๐Ÿ‡ฌ๐Ÿ‡ซ": "Flag: French Guiana", + "๐Ÿ‡ฌ๐Ÿ‡ฌ": "Flag: Guernsey", + "๐Ÿ‡ฌ๐Ÿ‡ญ": "Flag: Ghana", + "๐Ÿ‡ฌ๐Ÿ‡ฎ": "Flag: Gibraltar", + "๐Ÿ‡ฌ๐Ÿ‡ฑ": "Flag: Greenland", + "๐Ÿ‡ฌ๐Ÿ‡ฒ": "Flag: Gambia", + "๐Ÿ‡ฌ๐Ÿ‡ณ": "Flag: Guinea", + "๐Ÿ‡ฌ๐Ÿ‡ต": "Flag: Guadeloupe", + "๐Ÿ‡ฌ๐Ÿ‡ถ": "Flag: Equatorial Guinea", + "๐Ÿ‡ฌ๐Ÿ‡ท": "Flag: Greece", + "๐Ÿ‡ฌ๐Ÿ‡ธ": "Flag: South Georgia & South Sandwich Islands", + "๐Ÿ‡ฌ๐Ÿ‡น": "Flag: Guatemala", + "๐Ÿ‡ฌ๐Ÿ‡บ": "Flag: Guam", + "๐Ÿ‡ฌ๐Ÿ‡ผ": "Flag: Guinea-Bissau", + "๐Ÿ‡ฌ๐Ÿ‡พ": "Flag: Guyana", + "๐Ÿ‡ญ๐Ÿ‡ฐ": "Flag: Hong Kong SAR China", + "๐Ÿ‡ญ๐Ÿ‡ฒ": "Flag: Heard & McDonald Islands", + "๐Ÿ‡ญ๐Ÿ‡ณ": "Flag: Honduras", + "๐Ÿ‡ญ๐Ÿ‡ท": "Flag: Croatia", + "๐Ÿ‡ญ๐Ÿ‡น": "Flag: Haiti", + "๐Ÿ‡ญ๐Ÿ‡บ": "Flag: Hungary", + "๐Ÿ‡ฎ๐Ÿ‡จ": "Flag: Canary Islands", + "๐Ÿ‡ฎ๐Ÿ‡ฉ": "Flag: Indonesia", + "๐Ÿ‡ฎ๐Ÿ‡ช": "Flag: Ireland", + "๐Ÿ‡ฎ๐Ÿ‡ฑ": "Flag: Israel", + "๐Ÿ‡ฎ๐Ÿ‡ฒ": "Flag: Isle of Man", + "๐Ÿ‡ฎ๐Ÿ‡ณ": "Flag: India", + "๐Ÿ‡ฎ๐Ÿ‡ด": "Flag: British Indian Ocean Territory", + "๐Ÿ‡ฎ๐Ÿ‡ถ": "Flag: Iraq", + "๐Ÿ‡ฎ๐Ÿ‡ท": "Flag: Iran", + "๐Ÿ‡ฎ๐Ÿ‡ธ": "Flag: Iceland", + "๐Ÿ‡ฎ๐Ÿ‡น": "Flag: Italy", + "๐Ÿ‡ฏ๐Ÿ‡ช": "Flag: Jersey", + "๐Ÿ‡ฏ๐Ÿ‡ฒ": "Flag: Jamaica", + "๐Ÿ‡ฏ๐Ÿ‡ด": "Flag: Jordan", + "๐Ÿ‡ฏ๐Ÿ‡ต": "Flag: Japan", + "๐Ÿ‡ฐ๐Ÿ‡ช": "Flag: Kenya", + "๐Ÿ‡ฐ๐Ÿ‡ฌ": "Flag: Kyrgyzstan", + "๐Ÿ‡ฐ๐Ÿ‡ญ": "Flag: Cambodia", + "๐Ÿ‡ฐ๐Ÿ‡ฎ": "Flag: Kiribati", + "๐Ÿ‡ฐ๐Ÿ‡ฒ": "Flag: Comoros", + "๐Ÿ‡ฐ๐Ÿ‡ณ": "Flag: St. Kitts & Nevis", + "๐Ÿ‡ฐ๐Ÿ‡ต": "Flag: North Korea", + "๐Ÿ‡ฐ๐Ÿ‡ท": "Flag: South Korea", + "๐Ÿ‡ฐ๐Ÿ‡ผ": "Flag: Kuwait", + "๐Ÿ‡ฐ๐Ÿ‡พ": "Flag: Cayman Islands", + "๐Ÿ‡ฐ๐Ÿ‡ฟ": "Flag: Kazakhstan", + "๐Ÿ‡ฑ๐Ÿ‡ฆ": "Flag: Laos", + "๐Ÿ‡ฑ๐Ÿ‡ง": "Flag: Lebanon", + "๐Ÿ‡ฑ๐Ÿ‡จ": "Flag: St. Lucia", + "๐Ÿ‡ฑ๐Ÿ‡ฎ": "Flag: Liechtenstein", + "๐Ÿ‡ฑ๐Ÿ‡ฐ": "Flag: Sri Lanka", + "๐Ÿ‡ฑ๐Ÿ‡ท": "Flag: Liberia", + "๐Ÿ‡ฑ๐Ÿ‡ธ": "Flag: Lesotho", + "๐Ÿ‡ฑ๐Ÿ‡น": "Flag: Lithuania", + "๐Ÿ‡ฑ๐Ÿ‡บ": "Flag: Luxembourg", + "๐Ÿ‡ฑ๐Ÿ‡ป": "Flag: Latvia", + "๐Ÿ‡ฑ๐Ÿ‡พ": "Flag: Libya", + "๐Ÿ‡ฒ๐Ÿ‡ฆ": "Flag: Morocco", + "๐Ÿ‡ฒ๐Ÿ‡จ": "Flag: Monaco", + "๐Ÿ‡ฒ๐Ÿ‡ฉ": "Flag: Moldova", + "๐Ÿ‡ฒ๐Ÿ‡ช": "Flag: Montenegro", + "๐Ÿ‡ฒ๐Ÿ‡ซ": "Flag: St. Martin", + "๐Ÿ‡ฒ๐Ÿ‡ฌ": "Flag: Madagascar", + "๐Ÿ‡ฒ๐Ÿ‡ญ": "Flag: Marshall Islands", + "๐Ÿ‡ฒ๐Ÿ‡ฐ": "Flag: North Macedonia", + "๐Ÿ‡ฒ๐Ÿ‡ฑ": "Flag: Mali", + "๐Ÿ‡ฒ๐Ÿ‡ฒ": "Flag: Myanmar (Burma)", + "๐Ÿ‡ฒ๐Ÿ‡ณ": "Flag: Mongolia", + "๐Ÿ‡ฒ๐Ÿ‡ด": "Flag: Macao Sar China", + "๐Ÿ‡ฒ๐Ÿ‡ต": "Flag: Northern Mariana Islands", + "๐Ÿ‡ฒ๐Ÿ‡ถ": "Flag: Martinique", + "๐Ÿ‡ฒ๐Ÿ‡ท": "Flag: Mauritania", + "๐Ÿ‡ฒ๐Ÿ‡ธ": "Flag: Montserrat", + "๐Ÿ‡ฒ๐Ÿ‡น": "Flag: Malta", + "๐Ÿ‡ฒ๐Ÿ‡บ": "Flag: Mauritius", + "๐Ÿ‡ฒ๐Ÿ‡ป": "Flag: Maldives", + "๐Ÿ‡ฒ๐Ÿ‡ผ": "Flag: Malawi", + "๐Ÿ‡ฒ๐Ÿ‡ฝ": "Flag: Mexico", + "๐Ÿ‡ฒ๐Ÿ‡พ": "Flag: Malaysia", + "๐Ÿ‡ฒ๐Ÿ‡ฟ": "Flag: Mozambique", + "๐Ÿ‡ณ๐Ÿ‡ฆ": "Flag: Namibia", + "๐Ÿ‡ณ๐Ÿ‡จ": "Flag: New Caledonia", + "๐Ÿ‡ณ๐Ÿ‡ช": "Flag: Niger", + "๐Ÿ‡ณ๐Ÿ‡ซ": "Flag: Norfolk Island", + "๐Ÿ‡ณ๐Ÿ‡ฌ": "Flag: Nigeria", + "๐Ÿ‡ณ๐Ÿ‡ฎ": "Flag: Nicaragua", + "๐Ÿ‡ณ๐Ÿ‡ฑ": "Flag: Netherlands", + "๐Ÿ‡ณ๐Ÿ‡ด": "Flag: Norway", + "๐Ÿ‡ณ๐Ÿ‡ต": "Flag: Nepal", + "๐Ÿ‡ณ๐Ÿ‡ท": "Flag: Nauru", + "๐Ÿ‡ณ๐Ÿ‡บ": "Flag: Niue", + "๐Ÿ‡ณ๐Ÿ‡ฟ": "Flag: New Zealand", + "๐Ÿ‡ด๐Ÿ‡ฒ": "Flag: Oman", + "๐Ÿ‡ต๐Ÿ‡ฆ": "Flag: Panama", + "๐Ÿ‡ต๐Ÿ‡ช": "Flag: Peru", + "๐Ÿ‡ต๐Ÿ‡ซ": "Flag: French Polynesia", + "๐Ÿ‡ต๐Ÿ‡ฌ": "Flag: Papua New Guinea", + "๐Ÿ‡ต๐Ÿ‡ญ": "Flag: Philippines", + "๐Ÿ‡ต๐Ÿ‡ฐ": "Flag: Pakistan", + "๐Ÿ‡ต๐Ÿ‡ฑ": "Flag: Poland", + "๐Ÿ‡ต๐Ÿ‡ฒ": "Flag: St. Pierre & Miquelon", + "๐Ÿ‡ต๐Ÿ‡ณ": "Flag: Pitcairn Islands", + "๐Ÿ‡ต๐Ÿ‡ท": "Flag: Puerto Rico", + "๐Ÿ‡ต๐Ÿ‡ธ": "Flag: Palestinian Territories", + "๐Ÿ‡ต๐Ÿ‡น": "Flag: Portugal", + "๐Ÿ‡ต๐Ÿ‡ผ": "Flag: Palau", + "๐Ÿ‡ต๐Ÿ‡พ": "Flag: Paraguay", + "๐Ÿ‡ถ๐Ÿ‡ฆ": "Flag: Qatar", + "๐Ÿ‡ท๐Ÿ‡ช": "Flag: Rรฉunion", + "๐Ÿ‡ท๐Ÿ‡ด": "Flag: Romania", + "๐Ÿ‡ท๐Ÿ‡ธ": "Flag: Serbia", + "๐Ÿ‡ท๐Ÿ‡บ": "Flag: Russia", + "๐Ÿ‡ท๐Ÿ‡ผ": "Flag: Rwanda", + "๐Ÿ‡ธ๐Ÿ‡ฆ": "Flag: Saudi Arabia", + "๐Ÿ‡ธ๐Ÿ‡ง": "Flag: Solomon Islands", + "๐Ÿ‡ธ๐Ÿ‡จ": "Flag: Seychelles", + "๐Ÿ‡ธ๐Ÿ‡ฉ": "Flag: Sudan", + "๐Ÿ‡ธ๐Ÿ‡ช": "Flag: Sweden", + "๐Ÿ‡ธ๐Ÿ‡ฌ": "Flag: Singapore", + "๐Ÿ‡ธ๐Ÿ‡ญ": "Flag: St. Helena", + "๐Ÿ‡ธ๐Ÿ‡ฎ": "Flag: Slovenia", + "๐Ÿ‡ธ๐Ÿ‡ฏ": "Flag: Svalbard & Jan Mayen", + "๐Ÿ‡ธ๐Ÿ‡ฐ": "Flag: Slovakia", + "๐Ÿ‡ธ๐Ÿ‡ฑ": "Flag: Sierra Leone", + "๐Ÿ‡ธ๐Ÿ‡ฒ": "Flag: San Marino", + "๐Ÿ‡ธ๐Ÿ‡ณ": "Flag: Senegal", + "๐Ÿ‡ธ๐Ÿ‡ด": "Flag: Somalia", + "๐Ÿ‡ธ๐Ÿ‡ท": "Flag: Suriname", + "๐Ÿ‡ธ๐Ÿ‡ธ": "Flag: South Sudan", + "๐Ÿ‡ธ๐Ÿ‡น": "Flag: Sรฃo Tomรฉ & Prรญncipe", + "๐Ÿ‡ธ๐Ÿ‡ป": "Flag: El Salvador", + "๐Ÿ‡ธ๐Ÿ‡ฝ": "Flag: Sint Maarten", + "๐Ÿ‡ธ๐Ÿ‡พ": "Flag: Syria", + "๐Ÿ‡ธ๐Ÿ‡ฟ": "Flag: Eswatini", + "๐Ÿ‡น๐Ÿ‡ฆ": "Flag: Tristan Da Cunha", + "๐Ÿ‡น๐Ÿ‡จ": "Flag: Turks & Caicos Islands", + "๐Ÿ‡น๐Ÿ‡ฉ": "Flag: Chad", + "๐Ÿ‡น๐Ÿ‡ซ": "Flag: French Southern Territories", + "๐Ÿ‡น๐Ÿ‡ฌ": "Flag: Togo", + "๐Ÿ‡น๐Ÿ‡ญ": "Flag: Thailand", + "๐Ÿ‡น๐Ÿ‡ฏ": "Flag: Tajikistan", + "๐Ÿ‡น๐Ÿ‡ฐ": "Flag: Tokelau", + "๐Ÿ‡น๐Ÿ‡ฑ": "Flag: Timor-Leste", + "๐Ÿ‡น๐Ÿ‡ฒ": "Flag: Turkmenistan", + "๐Ÿ‡น๐Ÿ‡ณ": "Flag: Tunisia", + "๐Ÿ‡น๐Ÿ‡ด": "Flag: Tonga", + "๐Ÿ‡น๐Ÿ‡ท": "Flag: Turkey", + "๐Ÿ‡น๐Ÿ‡น": "Flag: Trinidad & Tobago", + "๐Ÿ‡น๐Ÿ‡ป": "Flag: Tuvalu", + "๐Ÿ‡น๐Ÿ‡ผ": "Flag: Taiwan", + "๐Ÿ‡น๐Ÿ‡ฟ": "Flag: Tanzania", + "๐Ÿ‡บ๐Ÿ‡ฆ": "Flag: Ukraine", + "๐Ÿ‡บ๐Ÿ‡ฌ": "Flag: Uganda", + "๐Ÿ‡บ๐Ÿ‡ฒ": "Flag: U.S. Outlying Islands", + "๐Ÿ‡บ๐Ÿ‡ณ": "Flag: United Nations", + "๐Ÿ‡บ๐Ÿ‡ธ": "Flag: United States", + "๐Ÿ‡บ๐Ÿ‡พ": "Flag: Uruguay", + "๐Ÿ‡บ๐Ÿ‡ฟ": "Flag: Uzbekistan", + "๐Ÿ‡ป๐Ÿ‡ฆ": "Flag: Vatican City", + "๐Ÿ‡ป๐Ÿ‡จ": "Flag: St. Vincent & Grenadines", + "๐Ÿ‡ป๐Ÿ‡ช": "Flag: Venezuela", + "๐Ÿ‡ป๐Ÿ‡ฌ": "Flag: British Virgin Islands", + "๐Ÿ‡ป๐Ÿ‡ฎ": "Flag: U.S. Virgin Islands", + "๐Ÿ‡ป๐Ÿ‡ณ": "Flag: Vietnam", + "๐Ÿ‡ป๐Ÿ‡บ": "Flag: Vanuatu", + "๐Ÿ‡ผ๐Ÿ‡ซ": "Flag: Wallis & Futuna", + "๐Ÿ‡ผ๐Ÿ‡ธ": "Flag: Samoa", + "๐Ÿ‡ฝ๐Ÿ‡ฐ": "Flag: Kosovo", + "๐Ÿ‡พ๐Ÿ‡ช": "Flag: Yemen", + "๐Ÿ‡พ๐Ÿ‡น": "Flag: Mayotte", + "๐Ÿ‡ฟ๐Ÿ‡ฆ": "Flag: South Africa", + "๐Ÿ‡ฟ๐Ÿ‡ฒ": "Flag: Zambia", + "๐Ÿ‡ฟ๐Ÿ‡ผ": "Flag: Zimbabwe", + "๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ": "Flag: England", + "๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ": "Flag: Scotland", + "๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ": "Flag: Wales", + "๐Ÿด๓ ต๓ ณ๓ ด๓ ธ๓ ฟ": "Flag for Texas (US-TX)" + } +} From bf4442368aafdfbf30021b8fca7140b1f1f662ea Mon Sep 17 00:00:00 2001 From: "Julien M." Date: Thu, 25 Jul 2024 09:42:18 +0200 Subject: [PATCH 08/10] typo: docstring --- qtribu/gui/dlg_emoji_picker.py | 45 ++++++++++++++++++++++------------ 1 file changed, 29 insertions(+), 16 deletions(-) diff --git a/qtribu/gui/dlg_emoji_picker.py b/qtribu/gui/dlg_emoji_picker.py index a0d0d815..48095301 100644 --- a/qtribu/gui/dlg_emoji_picker.py +++ b/qtribu/gui/dlg_emoji_picker.py @@ -1,3 +1,13 @@ +#! python3 # noqa: E265 + +"""A minimalist emoji picker using PyQt. + + +Inspirations: + +- https://github.com/Svxy/mint-emojis/ (Apache 2.0) +""" + # standard import json import typing @@ -94,11 +104,11 @@ def __init__( def setupUi(self, Form): Form.setObjectName("Form") Form.resize(400, 300) - sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(Form.sizePolicy().hasHeightForWidth()) - Form.setSizePolicy(sizePolicy) + size_policy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) + size_policy.setHorizontalStretch(0) + size_policy.setVerticalStretch(0) + size_policy.setHeightForWidth(Form.sizePolicy().hasHeightForWidth()) + Form.setSizePolicy(size_policy) self.verticalLayout = QVBoxLayout(Form) self.verticalLayout.setObjectName("verticalLayout") self.search_line_edit = QLineEdit(Form) @@ -117,13 +127,13 @@ def setupUi(self, Form): self.emoji_information_hlayout = QHBoxLayout() self.emoji_information_hlayout.setObjectName("emoji_information_hlayout") self.emoji_image_label = QLabel(Form) - sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth( + size_policy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed) + size_policy.setHorizontalStretch(0) + size_policy.setVerticalStretch(0) + size_policy.setHeightForWidth( self.emoji_image_label.sizePolicy().hasHeightForWidth() ) - self.emoji_image_label.setSizePolicy(sizePolicy) + self.emoji_image_label.setSizePolicy(size_policy) font = QtGui.QFont() font.setPointSize(22) self.emoji_image_label.setFont(font) @@ -131,13 +141,13 @@ def setupUi(self, Form): self.emoji_image_label.setObjectName("emoji_image_label") self.emoji_information_hlayout.addWidget(self.emoji_image_label) self.emoji_name_label = QLabel(Form) - sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth( + size_policy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) + size_policy.setHorizontalStretch(0) + size_policy.setVerticalStretch(0) + size_policy.setHeightForWidth( self.emoji_name_label.sizePolicy().hasHeightForWidth() ) - self.emoji_name_label.setSizePolicy(sizePolicy) + self.emoji_name_label.setSizePolicy(size_policy) font = QtGui.QFont() font.setPointSize(10) self.emoji_name_label.setFont(font) @@ -274,6 +284,9 @@ def leaveEvent(self, a0: QtCore.QEvent) -> None: self.parent_emoji_picker.emoji_name_label.setText("") def on_click(self): - """Gets called if the button is pressed. Closes the emoji picker and if it was called via `QEmojiPicker.select()` the current button emoji will be returned""" + """Gets called if the button is pressed. Closes the emoji picker and if it + was called via `QEmojiPicker.select()` the current button emoji will be + returned. + """ self.parent_emoji_picker.selected_emoji = self.text() self.parent_emoji_picker.close() From 592266c7c686ac389ad08bad809862fbc07a38ae Mon Sep 17 00:00:00 2001 From: "Julien M." Date: Thu, 25 Jul 2024 10:47:00 +0200 Subject: [PATCH 09/10] fix(ui): restore emoji button --- qtribu/gui/dck_qchat.ui | 715 ++++++++++++++++++++-------------------- 1 file changed, 351 insertions(+), 364 deletions(-) diff --git a/qtribu/gui/dck_qchat.ui b/qtribu/gui/dck_qchat.ui index daaefa52..55e5bbb5 100644 --- a/qtribu/gui/dck_qchat.ui +++ b/qtribu/gui/dck_qchat.ui @@ -1,369 +1,356 @@ - QChatWidget - - - - 0 - 0 - 341 - 672 - - - - - 0 - 0 + QChatWidget + + + + 0 + 0 + 482 + 672 + + + + + 0 + 0 + + + + QChat + + + + + 0 + 0 + + + + + 5 + + + 5 + + + 10 + + + 5 + + + 10 + + + + + + 0 + 0 + + + + Instance + + + + + + + + PointingHandCursor + + + Rules + + + + + + + PointingHandCursor + + + Check instance status + + + Status + + + + + + + + + + + + + 0 + 0 + + + + Room + + + + + + Room: + + + + + + + + + + + + + 0 + 0 - - - QChat - - - - - 0 - 0 - - - - - 5 - - - 5 - - - 10 - - - 5 - - - 10 - - - - - - 0 - 0 - - - - Instance - - - - - - - - PointingHandCursor - - - Rules - - - - - - - PointingHandCursor - - - Check instance status - - - Status - - - - - - - - - - - - - 0 - 0 - - - - Room - - - - - - Room: - - - - - - - - - - - - - 0 - 0 - - - - PointingHandCursor - - - Connect - - - - - - - - - Status: - - - - - - - Not connected - - - - - - - - - - - 0 - 0 - - - - - 0 - 1 - - - - - 0 - 1 - - - - QChat - - - false - - - - - - true - - - false - - - true - - - 4 - - - true - - - 64 - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - - - - PointingHandCursor - - - Clear - - - - - - - - - - false - - - - 0 - 0 - - - - - 0 - 3 - - - - - 0 - 5 - - - - User - - - - - - Nickname: - - - - - - - Message: - - - - - - - 255 - - - - - - - PointingHandCursor - - - Send message - - - - - - - ForbiddenCursor - - - Nickname set in QTribu's plugin settings - - - Nickname - - - - - - - - - - - - PointingHandCursor - - - Qt::NoFocus - - - Qt::NoContextMenu - - - Pick an emoji. Not sure it'll be properly rendered for every users, still it's a bit of un. - - - - - - ๐Ÿ˜€ - - - - - - - - - PointingHandCursor - - - Send message - - - - - - - - - - PointingHandCursor - - - Settings - - - - + + + PointingHandCursor + + + Connect + + + + + + + + + Status: + + + + + + + Not connected + + + + + + + + + + + 0 + 0 + + + + + 0 + 1 + + + + + 0 + 1 + + + + QChat + + + false + + + + + + true + + + false + + + true + + + 4 + + + true + + + 64 + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + + + + PointingHandCursor + + + Clear + + + + + + + + + + false + + + + 0 + 0 + + + + + 0 + 3 + + + + + 0 + 5 + + + + User + + + + + + Nickname: + + + + + + + ForbiddenCursor + + + Nickname set in QTribu's plugin settings + + + Nickname + + + + + + + Message: + + + + + + + PointingHandCursor + + + Send message + - - - - QgsCollapsibleGroupBox - QGroupBox -
qgscollapsiblegroupbox.h
- 1 -
-
- - grb_instance - grb_qchat - grb_user - - - +
+ + + + + + 255 + + + + + + + PointingHandCursor + + + Qt::NoFocus + + + Qt::NoContextMenu + + + Pick an emoji. Not sure it'll be properly rendered for every users, still it's a bit of un. + + + + + + ๐Ÿ˜€ + + + + + + + + + + + + PointingHandCursor + + + Settings + + + + + + + + + QgsCollapsibleGroupBox + QGroupBox +
qgscollapsiblegroupbox.h
+ 1 +
+
+ + grb_instance + grb_qchat + grb_user + + +
From e3d6f4ee35a17d4e83bd69ded1a68ab31903ee19 Mon Sep 17 00:00:00 2001 From: "Julien M." Date: Wed, 31 Jul 2024 09:55:14 +0200 Subject: [PATCH 10/10] wip --- qtribu/gui/dck_qchat.py | 18 +- qtribu/gui/dlg_emoji_picker.py | 240 +++++++++++++++++++-- qtribu/gui/dlg_emoji_picker.ui | 138 ++++++++++++ qtribu/resources/{ => emojis}/emojis.json | 0 qtribu/resources/{ => emojis}/emojis2.json | 0 qtribu/resources/emojis/selection.json | 39 ++++ qtribu/toolbelt/preferences.py | 4 + 7 files changed, 405 insertions(+), 34 deletions(-) create mode 100644 qtribu/gui/dlg_emoji_picker.ui rename qtribu/resources/{ => emojis}/emojis.json (100%) rename qtribu/resources/{ => emojis}/emojis2.json (100%) create mode 100644 qtribu/resources/emojis/selection.json diff --git a/qtribu/gui/dck_qchat.py b/qtribu/gui/dck_qchat.py index 772ee0ee..b2c15022 100644 --- a/qtribu/gui/dck_qchat.py +++ b/qtribu/gui/dck_qchat.py @@ -5,7 +5,6 @@ from typing import Any, Optional # PyQGIS -# from PyQt5 import QtWebSockets # noqa QGS103 from qgis.core import Qgis, QgsApplication from qgis.gui import QgisInterface, QgsDockWidget @@ -28,7 +27,7 @@ INTERNAL_MESSAGE_AUTHOR, QCHAT_NICKNAME_MINLENGTH, ) -from qtribu.gui.dlg_emoji_picker import QEmojiPicker +from qtribu.gui.dlg_emoji_picker import EmojiPicker from qtribu.logic.qchat_client import QChatApiClient from qtribu.tasks.dizzy import DizzyTask from qtribu.toolbelt import PlgLogger, PlgOptionsManager @@ -58,13 +57,7 @@ def __init__(self, iface: QgisInterface, parent: QWidget = None): self.task_manager = QgsApplication.taskManager() self.log = PlgLogger().log self.plg_settings = PlgOptionsManager() - self.emoji_picker = QEmojiPicker( - parent=self, - # this option can say how many emojis are in a row - items_per_row=8, - # with this enabled, the emoji search will be faster but less accurate - performance_search=True, - ) + self.emoji_picker_new = EmojiPicker(self) uic.loadUi(Path(__file__).parent / f"{Path(__file__).stem}.ui", self) @@ -641,10 +634,11 @@ def on_emoji_picker_pressed(self) -> Optional[str]: :return: selected emoji :rtype: str """ - selected_emoji = self.emoji_picker.select() - self.lne_message.insert(selected_emoji) + self.emoji_picker_new.show() + # selected_emoji = self.emoji_picker.select() + # self.lne_message.insert(selected_emoji) - return selected_emoji + # return selected_emoji def on_renew_clicked(self) -> None: msg_box = QMessageBox() diff --git a/qtribu/gui/dlg_emoji_picker.py b/qtribu/gui/dlg_emoji_picker.py index 48095301..5869f302 100644 --- a/qtribu/gui/dlg_emoji_picker.py +++ b/qtribu/gui/dlg_emoji_picker.py @@ -10,10 +10,14 @@ # standard import json -import typing +from pathlib import Path +from typing import Optional, Union # PyQGIS -from qgis.PyQt import QtCore, QtGui +from qgis.core import QgsApplication +from qgis.PyQt import QtCore, QtGui, uic +from qgis.PyQt.QtCore import QUrl +from qgis.PyQt.QtGui import QFontDatabase from qgis.PyQt.QtWidgets import ( QDialog, QGridLayout, @@ -31,6 +35,190 @@ # plugin from qtribu.__about__ import DIR_PLUGIN_ROOT +from qtribu.toolbelt import PlgLogger, PlgOptionsManager + +# ############################################################################ +# ########## Classes ############### +# ################################## + + +class QHoverPushButton(QPushButton): + """A custom QPushButton which detects when a mouse hovers it""" + + def __init__(self, text: str, parent_emoji_picker): + """ + Args: + text: The button text + parent_emoji_picker (QEmojiPicker): The parent emoji picker + """ + super().__init__(text) + self.clicked.connect(self.on_click) + + self.parent_emoji_picker = parent_emoji_picker + + def enterEvent(self, a0: QtCore.QEvent) -> None: + """On mouse hover / when the mouse is over the button""" + self.parent_emoji_picker.emoji_image_label.setText(self.text()) + group_title = self.parentWidget().title() + # when the group title is 'Search results' the user has used the search input + if group_title == "Search results": + self.parent_emoji_picker.emoji_name_label.setText( + self.parent_emoji_picker.total_emojis[self.text()] + ) + else: + self.parent_emoji_picker.emoji_name_label.setText( + self.parent_emoji_picker.emojis[group_title][self.text()].get("name") + ) + + def leaveEvent(self, a0: QtCore.QEvent) -> None: + """When the mouse leaves the button""" + self.parent_emoji_picker.emoji_image_label.setText("") + self.parent_emoji_picker.emoji_name_label.setText("") + + def on_click(self): + """Gets called if the button is pressed. Closes the emoji picker and if it + was called via `QEmojiPicker.select()` the current button emoji will be + returned. + """ + self.parent_emoji_picker.selected_emoji = self.text() + self.parent_emoji_picker.close() + + +class EmojiPicker(QDialog): + """Emoji Picker. + + :param QDialog: parent widget + :type QDialog: + """ + + def __init__(self, parent: Optional[QWidget] = None): + """Mini dialog to pick up an emoji.""" + # init module and ui + super().__init__(parent, QtCore.Qt.WindowCloseButtonHint) + + uic.loadUi(Path(__file__).parent / f"{Path(__file__).stem}.ui", self) + + self.log = PlgLogger().log + self.plg_settings = PlgOptionsManager().get_plg_settings() + + self.items_per_row: int = 8 + + self.check_emoji_font() + self.emoji_font = QtGui.QFont("Noto Color Emoji") + + self.emojis = self.load_emojis() + self.total_emojis = {} + + self.setupUi() + + def setupUi(self): + for group, items in self.emojis.items(): + box = QGroupBox(group) + layout = QGridLayout() + for i, (emoji, name) in enumerate(items.items()): + # for every emoji, build a button + button = QHoverPushButton(text=emoji, parent_emoji_picker=self) + button.setFont(self.emoji_font) + button.setFlat(True) + button.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) + button.setFixedSize(30, 30) + # the button style + button.setStyleSheet( + "QPushButton {" + " font-size: 20px;" + " border-radius: 50%%;" + "}" + "QPushButton:hover {" + " background-color: %s" + "}" % button.palette().button().color().darker().name() + ) + layout.addWidget( + button, int(i / self.items_per_row), i % self.items_per_row + ) + + # adds the current emoji with its name to a dict where are all emojis without groups are listed + self.total_emojis[emoji] = name + + box.setLayout(layout) + self.scr_emojis.addWidget(box) + + def check_emoji_font(self): + """Check if the font used for displaying emojis is installed. If not, try to + download it. + + :return: _description_ + :rtype: _type_ + """ + if self.is_font_available(font_family=self.plg_settings.font_emoji_family): + self.log( + message=self.tr( + "Required font to display emojis is already installed: {}".format( + self.plg_settings.font_emoji_family + ) + ), + push=False, + log_level=4, + ) + return True + else: + self.log( + message="Required font for emojis needs to be installed: {}".format( + self.plg_settings.font_emoji_family + ), + push=False, + ) + font_manager = QgsApplication.fontManager() + font_manager.fontDownloadErrorOccurred.connect(self.on_font_download_failed) + auto_downloaded = font_manager.tryToDownloadFontFamily( + self.plg_settings.font_emoji_family + ) + if not auto_downloaded: + self.log(message="not downloaded", log_level=1) + + font_manager.downloadAndInstallFont( + url=QUrl(self.plg_settings.font_emoji_download_url), + identifier="qtribu-emoji-font", + ) + + def on_font_download_failed(self, error_message: Optional[str] = None): + """Handle pyqtsignal emitted by QgsFontManager when font downloading failed. + + :param error_message: error message, defaults to None + :type error_message: Optional[str], optional + """ + self.log( + message=self.tr( + "Downloading the font {} from {} failed. Since it's required to " + "correctly display emojis, consider to add it manually to your system. " + "Trace: {}".format( + self.EMOJI_FONT_FAMILY, self.EMOJI_FONT_DOWNLOAD_URL, error_message + ) + ) + ) + + def is_font_available(self, font_family: str) -> bool: + """Check if the given font family if among the Qt font database. + + :param font_family: font family name + :type font_family: str + + :return: True if the font family is available. + :rtype: bool + """ + available_fonts = QFontDatabase().families() + return font_family in available_fonts + + def load_emojis(self) -> dict: + """Load emojis from JSON file. + + :return: _description_ + :rtype: dict + """ + with DIR_PLUGIN_ROOT.joinpath("resources/emojis/selection.json").open( + mode="r", encoding="UTF-8" + ) as in_json: + emojis = json.load(in_json) + return emojis class QEmojiPicker(QDialog): @@ -38,8 +226,8 @@ class QEmojiPicker(QDialog): def __init__( self, - parent: typing.Optional[QWidget] = None, - flags: typing.Union[None, QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = None, + parent: Optional[QWidget] = None, + flags: Union[None, QtCore.Qt.WindowFlags, QtCore.Qt.WindowType] = None, items_per_row: int = 8, performance_search: bool = True, ): @@ -54,9 +242,13 @@ def __init__( super().__init__(parent, flags) else: super().__init__(parent) + + self.check_emoji_font() + # initializes the ui self.setupUi(self) - self.retranslateUi(self) + + self.font_manager = QgsApplication.fontManager() self.items_per_row = items_per_row self.performance_search = performance_search @@ -77,7 +269,7 @@ def __init__( for i, (emoji, name) in enumerate(items.items()): # uses a little modified push button which recognizes when the mouse is over the button button = self.__QHoverPushButton(text=emoji, parent_emoji_picker=self) - + button.setFont(emoji_font) button.setFlat(True) button.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) button.setFixedSize(30, 30) @@ -134,44 +326,46 @@ def setupUi(self, Form): self.emoji_image_label.sizePolicy().hasHeightForWidth() ) self.emoji_image_label.setSizePolicy(size_policy) - font = QtGui.QFont() - font.setPointSize(22) - self.emoji_image_label.setFont(font) + self.emoji_image_label.setFont(emoji_font) self.emoji_image_label.setText("") self.emoji_image_label.setObjectName("emoji_image_label") self.emoji_information_hlayout.addWidget(self.emoji_image_label) self.emoji_name_label = QLabel(Form) - size_policy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) + size_policy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) size_policy.setHorizontalStretch(0) size_policy.setVerticalStretch(0) size_policy.setHeightForWidth( self.emoji_name_label.sizePolicy().hasHeightForWidth() ) self.emoji_name_label.setSizePolicy(size_policy) - font = QtGui.QFont() - font.setPointSize(10) - self.emoji_name_label.setFont(font) + self.emoji_name_label.setFont(emoji_font) self.emoji_name_label.setText("") self.emoji_name_label.setObjectName("emoji_name_label") self.emoji_information_hlayout.addWidget(self.emoji_name_label) self.verticalLayout.addLayout(self.emoji_information_hlayout) - self.retranslateUi(Form) QtCore.QMetaObject.connectSlotsByName(Form) + def check_emoji_font(self): + print(self.is_font_available(font_family="Noto Color Emoji")) + + def is_font_available(self, font_family: str) -> bool: + available_fonts = QFontDatabase().families() + return font_family in available_fonts + def load_emojis(self) -> dict: - with DIR_PLUGIN_ROOT.joinpath("resources/emojis2.json").open( + """Load emojis from JSON file. + + :return: _description_ + :rtype: dict + """ + with DIR_PLUGIN_ROOT.joinpath("resources/emojis/selection.json").open( mode="r", encoding="UTF-8" ) as in_json: emojis = json.load(in_json) return emojis - def retranslateUi(self, Form): - _translate = QtCore.QCoreApplication.translate - Form.setWindowTitle(_translate("Form", "Form")) - self.search_line_edit.setPlaceholderText(_translate("Form", "Search...")) - - def select(self) -> typing.Union[str, None]: + def select(self) -> Union[str, None]: """Shows this window and returns the selected emoji if a button was pressed or none, if the window was closed without choosing an emoji""" self.exec() return self.selected_emoji @@ -275,7 +469,9 @@ def enterEvent(self, a0: QtCore.QEvent) -> None: ) else: self.parent_emoji_picker.emoji_name_label.setText( - self.parent_emoji_picker.emojis[group_title][self.text()] + self.parent_emoji_picker.emojis[group_title][self.text()].get( + "name" + ) ) def leaveEvent(self, a0: QtCore.QEvent) -> None: diff --git a/qtribu/gui/dlg_emoji_picker.ui b/qtribu/gui/dlg_emoji_picker.ui new file mode 100644 index 00000000..5750eac8 --- /dev/null +++ b/qtribu/gui/dlg_emoji_picker.ui @@ -0,0 +1,138 @@ + + + dlg_emoji_picker + + + + 0 + 0 + 379 + 162 + + + + + 100 + 150 + + + + Emojis Picker + + + 0.800000000000000 + + + true + + + + + + true + + + + + + + + + + + Qt::ImhPreferLatin + + + search for filtering... + + + true + + + + + + + Qt::NoContextMenu + + + QFrame::NoFrame + + + QFrame::Plain + + + true + + + + + 0 + 0 + 359 + 86 + + + + + + + + + + + QLayout::SetDefaultConstraint + + + 10 + + + + + + Noto Color Emoji + + + + Qt::NoContextMenu + + + true + + + ๐Ÿ™‚ + + + true + + + Qt::NoTextInteraction + + + + + + + + Ubuntu + + + + Slightly Smiling Face + + + + + + + :slightly_smiling_face: + + + + + + + + + + diff --git a/qtribu/resources/emojis.json b/qtribu/resources/emojis/emojis.json similarity index 100% rename from qtribu/resources/emojis.json rename to qtribu/resources/emojis/emojis.json diff --git a/qtribu/resources/emojis2.json b/qtribu/resources/emojis/emojis2.json similarity index 100% rename from qtribu/resources/emojis2.json rename to qtribu/resources/emojis/emojis2.json diff --git a/qtribu/resources/emojis/selection.json b/qtribu/resources/emojis/selection.json new file mode 100644 index 00000000..b66ae350 --- /dev/null +++ b/qtribu/resources/emojis/selection.json @@ -0,0 +1,39 @@ +{ + "Gestures": { + "๐Ÿคฒ": { + "name": "Palms Up Together", + "codes": [ + "palms" + ] + }, + "๐Ÿค": { + "name": "Handshake", + "codes": [ + "handshake", + "shake" + ] + } + }, + "Smileys & People": { + "๐Ÿ™‚": { + "name": "Slightly Smiling Face", + "codes": [ + "palms" + ] + }, + "๐Ÿ˜‚": { + "name": "Handshake", + "codes": [ + "handshake", + "shake" + ] + }, + "๐Ÿ˜‡": { + "name": "Handshake", + "codes": [ + "handshake", + "shake" + ] + } + } +} diff --git a/qtribu/toolbelt/preferences.py b/qtribu/toolbelt/preferences.py index be130249..a3c1377a 100644 --- a/qtribu/toolbelt/preferences.py +++ b/qtribu/toolbelt/preferences.py @@ -47,6 +47,10 @@ class PlgSettingsStructure: qchat_color_mention: str = "#4169e1" qchat_color_self: str = "#00cc00" qchat_color_admin: str = "#ffa500" + font_emoji_family: str = "Noto Color Emoji" + font_emoji_download_url: str = ( + "https://github.com/google/fonts/raw/main/ofl/notocoloremoji/NotoColorEmoji-Regular.ttf" + ) # QChat qchat_instance_uri: str = "https://gischat.geotribu.net"