diff options
author | android-build-prod (mdb) <android-build-team-robot@google.com> | 2021-03-30 13:23:37 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2021-03-30 13:23:37 +0000 |
commit | 22a25e94af6fb30de3ca23946a33683c0f606767 (patch) | |
tree | 827cb5fc6aa7d8c4e716858bdb57ead46823931f | |
parent | 15a16b348d8551907d1b8a9962ac1a7a927c4a13 (diff) | |
parent | 571586d065faf10570566abf61a145f26fcc1a5a (diff) | |
download | noto-fonts-22a25e94af6fb30de3ca23946a33683c0f606767.tar.gz |
Merge "Snap for 7244831 from 6438f2d74a2520310cc67fda9d45091f02274f37 to androidx-main-release" into androidx-main-release
-rw-r--r-- | emoji-compat-flatbuffers/Android.mk (renamed from emoji-compat/Android.mk) | 2 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/build.gradle (renamed from emoji-compat/build.gradle) | 0 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/data/emoji_metadata.fbs (renamed from emoji-compat/data/emoji_metadata.fbs) | 0 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/data/flatbuffer_header.txt (renamed from emoji-compat/data/flatbuffer_header.txt) | 0 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/jarjar-rules.txt (renamed from emoji-compat/jarjar-rules.txt) | 0 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/settings.gradle (renamed from emoji-compat/settings.gradle) | 0 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/src/java/androidx/text/emoji/flatbuffer/MetadataItem.java (renamed from emoji-compat/src/java/androidx/text/emoji/flatbuffer/MetadataItem.java) | 0 | ||||
-rw-r--r-- | emoji-compat-flatbuffers/src/java/androidx/text/emoji/flatbuffer/MetadataList.java (renamed from emoji-compat/src/java/androidx/text/emoji/flatbuffer/MetadataList.java) | 0 | ||||
-rwxr-xr-x | emoji-compat/createfont.py | 74 | ||||
-rw-r--r-- | emoji-compat/data/emoji_metadata.txt | 217 | ||||
-rw-r--r-- | emoji-compat/font/NotoColorEmojiCompat.ttf | bin | 9881724 -> 10589920 bytes | |||
-rw-r--r-- | emoji-compat/supported-emojis/emojis.txt | 217 |
12 files changed, 486 insertions, 24 deletions
diff --git a/emoji-compat/Android.mk b/emoji-compat-flatbuffers/Android.mk index bc47046..76bd918 100644 --- a/emoji-compat/Android.mk +++ b/emoji-compat-flatbuffers/Android.mk @@ -15,7 +15,7 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -LOCAL_MODULE := noto-emoji-compat-java +LOCAL_MODULE := noto-emoji-compat-flatbuffers-java LOCAL_SRC_FILES := $(call all-java-files-under, src/java) LOCAL_SDK_VERSION := current diff --git a/emoji-compat/build.gradle b/emoji-compat-flatbuffers/build.gradle index 20d8dfb..20d8dfb 100644 --- a/emoji-compat/build.gradle +++ b/emoji-compat-flatbuffers/build.gradle diff --git a/emoji-compat/data/emoji_metadata.fbs b/emoji-compat-flatbuffers/data/emoji_metadata.fbs index 23d0db9..23d0db9 100644 --- a/emoji-compat/data/emoji_metadata.fbs +++ b/emoji-compat-flatbuffers/data/emoji_metadata.fbs diff --git a/emoji-compat/data/flatbuffer_header.txt b/emoji-compat-flatbuffers/data/flatbuffer_header.txt index 2b40a04..2b40a04 100644 --- a/emoji-compat/data/flatbuffer_header.txt +++ b/emoji-compat-flatbuffers/data/flatbuffer_header.txt diff --git a/emoji-compat/jarjar-rules.txt b/emoji-compat-flatbuffers/jarjar-rules.txt index fdc3188..fdc3188 100644 --- a/emoji-compat/jarjar-rules.txt +++ b/emoji-compat-flatbuffers/jarjar-rules.txt diff --git a/emoji-compat/settings.gradle b/emoji-compat-flatbuffers/settings.gradle index 5e6c61e..5e6c61e 100644 --- a/emoji-compat/settings.gradle +++ b/emoji-compat-flatbuffers/settings.gradle diff --git a/emoji-compat/src/java/androidx/text/emoji/flatbuffer/MetadataItem.java b/emoji-compat-flatbuffers/src/java/androidx/text/emoji/flatbuffer/MetadataItem.java index 0b2a694..0b2a694 100644 --- a/emoji-compat/src/java/androidx/text/emoji/flatbuffer/MetadataItem.java +++ b/emoji-compat-flatbuffers/src/java/androidx/text/emoji/flatbuffer/MetadataItem.java diff --git a/emoji-compat/src/java/androidx/text/emoji/flatbuffer/MetadataList.java b/emoji-compat-flatbuffers/src/java/androidx/text/emoji/flatbuffer/MetadataList.java index 6330098..6330098 100644 --- a/emoji-compat/src/java/androidx/text/emoji/flatbuffer/MetadataList.java +++ b/emoji-compat-flatbuffers/src/java/androidx/text/emoji/flatbuffer/MetadataList.java diff --git a/emoji-compat/createfont.py b/emoji-compat/createfont.py index d30d0bb..39204f8 100755 --- a/emoji-compat/createfont.py +++ b/emoji-compat/createfont.py @@ -61,14 +61,14 @@ SDK_VERSION = 30 # metadata version that will be embedded into font. If there are updates to the font that would # cause data/emoji_metadata.txt to change, this integer number should be incremented. This number # defines in which EmojiCompat metadata version the emoji is added to the font. -METADATA_VERSION = 6 +METADATA_VERSION = 7 ####### main directories where output files are created ####### SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__)) FONT_DIR = os.path.join(SCRIPT_DIR, 'font') DATA_DIR = os.path.join(SCRIPT_DIR, 'data') SUPPORTED_EMOJIS_DIR = os.path.join(SCRIPT_DIR, 'supported-emojis') -JAVA_SRC_DIR = os.path.join(SCRIPT_DIR, 'src', 'java') +JAVA_SRC_DIR = os.path.join('src', 'java') ####### output files ####### # font file FONT_PATH = os.path.join(FONT_DIR, 'NotoColorEmojiCompat.ttf') @@ -90,10 +90,12 @@ ANDROID_EMOJIS_SEQ_FILE = os.path.join('additions', 'emoji-sequences.txt') EMOJI_STYLE_OVERRIDE_FILE = os.path.join('additions', 'emoji-data.txt') # emoji metadata file INPUT_META_FILE = OUTPUT_META_FILE +# default flatbuffer module location (if not specified by caller) +FLATBUFFER_MODULE_DIR = os.path.join(SCRIPT_DIR, '..', 'emoji-compat-flatbuffers') # flatbuffer schema -FLATBUFFER_SCHEMA = os.path.join(DATA_DIR, 'emoji_metadata.fbs') +FLATBUFFER_SCHEMA = os.path.join(FLATBUFFER_MODULE_DIR, 'data', 'emoji_metadata.fbs') # file path for java header, it will be prepended to flatbuffer java files -FLATBUFFER_HEADER = os.path.join(DATA_DIR, "flatbuffer_header.txt") +FLATBUFFER_HEADER = os.path.join(FLATBUFFER_MODULE_DIR, 'data', 'flatbuffer_header.txt') # temporary emoji metadata json output file OUTPUT_JSON_FILE_NAME = 'emoji_metadata.json' # temporary binary file generated by flatbuffer @@ -105,7 +107,7 @@ FLATBUFFER_JAVA_PATH = os.path.join(FLATBUFFER_PACKAGE_PATH) FLATBUFFER_METADATA_LIST_JAVA = "MetadataList.java" FLATBUFFER_METADATA_ITEM_JAVA = "MetadataItem.java" # directory under source where flatbuffer java files will be copied into -FLATBUFFER_JAVA_TARGET = os.path.join(JAVA_SRC_DIR, FLATBUFFER_PACKAGE_PATH) +FLATBUFFER_JAVA_TARGET = os.path.join(FLATBUFFER_MODULE_DIR, JAVA_SRC_DIR, FLATBUFFER_PACKAGE_PATH) # meta tag name used in the font to embed the emoji metadata. This value is also used in # MetadataListReader.java in order to locate the metadata location. EMOJI_META_TAG_NAME = 'Emji' @@ -130,28 +132,28 @@ def codepoint_to_string(codepoints): """Converts a list of codepoints into a string separated with space.""" return ' '.join([to_hex_str(x) for x in codepoints]) -def prepend_header_to_file(file_path): +def prepend_header_to_file(file_path, header_path): """Prepends the header to the file. Used to update flatbuffer java files with header, comments and annotations.""" with open(file_path, "r+") as original_file: - with open(FLATBUFFER_HEADER, "r") as copyright_file: + with open(header_path, "r") as copyright_file: original_content = original_file.read() original_file.seek(0) original_file.write(copyright_file.read() + "\n" + original_content) -def update_flatbuffer_java_files(flatbuffer_java_dir): +def update_flatbuffer_java_files(flatbuffer_java_dir, header_dir, target_dir): """Prepends headers to flatbuffer java files and copies to the final destination""" tmp_metadata_list = flatbuffer_java_dir + FLATBUFFER_METADATA_LIST_JAVA tmp_metadata_item = flatbuffer_java_dir + FLATBUFFER_METADATA_ITEM_JAVA - prepend_header_to_file(tmp_metadata_list) - prepend_header_to_file(tmp_metadata_item) + prepend_header_to_file(tmp_metadata_list, header_dir) + prepend_header_to_file(tmp_metadata_item, header_dir) - if not os.path.exists(FLATBUFFER_JAVA_TARGET): - os.makedirs(FLATBUFFER_JAVA_TARGET) + if not os.path.exists(target_dir): + os.makedirs(target_dir) - shutil.copy(tmp_metadata_list, FLATBUFFER_JAVA_TARGET + FLATBUFFER_METADATA_LIST_JAVA) - shutil.copy(tmp_metadata_item, FLATBUFFER_JAVA_TARGET + FLATBUFFER_METADATA_ITEM_JAVA) + shutil.copy(tmp_metadata_list, os.path.join(target_dir, FLATBUFFER_METADATA_LIST_JAVA)) + shutil.copy(tmp_metadata_item, os.path.join(target_dir, FLATBUFFER_METADATA_ITEM_JAVA)) def create_test_data(unicode_path): """Read all the emojis in the unicode files and update the test file""" @@ -427,7 +429,7 @@ def inject_meta_into_font(ttf, flatbuffer_bin_filename): update_ttlib_orig_sort() -def validate_input_files(font_path, unicode_path): +def validate_input_files(font_path, unicode_path, flatbuffer_path): """Validate the existence of font file and the unicode files""" if not os.path.isfile(font_path): raise ValueError("Font file does not exist: " + font_path) @@ -443,6 +445,16 @@ def validate_input_files(font_path, unicode_path): if not os.path.isfile(emoji_filename): raise ValueError("Unicode emoji data file does not exist: " + emoji_filename) + if not os.path.isdir(flatbuffer_path): + raise ValueError( + "Flatbuffer directory does not exist or is not a directory " + flatbuffer_path) + + flatbuffer_filenames = [os.path.join(flatbuffer_path, FLATBUFFER_SCHEMA), + os.path.join(flatbuffer_path, FLATBUFFER_HEADER)] + for flatbuffer_filename in flatbuffer_filenames: + if not os.path.isfile(flatbuffer_filename): + raise ValueError("Flatbuffer file does not exist: " + flatbuffer_filename) + def add_file_to_sha(sha_algo, file_path): with open(file_path, 'rb') as input_file: @@ -461,7 +473,7 @@ class EmojiFontCreator(object): """Creates the EmojiCompat font""" def __init__(self, font_path, unicode_path): - validate_input_files(font_path, unicode_path) + validate_input_files(font_path, unicode_path, FLATBUFFER_MODULE_DIR) self.font_path = font_path self.unicode_path = unicode_path @@ -647,8 +659,14 @@ class EmojiFontCreator(object): total_emoji_count = self.write_metadata_json(output_json_file) # create the flatbuffers binary and java classes - flatc_command = 'flatc -o {0} -b -j {1} {2}'.format(tmp_dir, FLATBUFFER_SCHEMA, output_json_file) - subprocess.check_output(flatc_command, shell=True) + flatc_command = ['flatc', + '-o', + tmp_dir, + '-b', + '-j', + FLATBUFFER_SCHEMA, + output_json_file] + subprocess.check_output(flatc_command) # inject metadata binary into font inject_meta_into_font(ttf, flatbuffer_bin_file) @@ -660,7 +678,9 @@ class EmojiFontCreator(object): # save the new font ttf.save(FONT_PATH) - update_flatbuffer_java_files(flatbuffer_java_dir) + update_flatbuffer_java_files(flatbuffer_java_dir, #tmp dir + FLATBUFFER_HEADER, + FLATBUFFER_JAVA_TARGET) create_test_data(self.unicode_path) @@ -676,9 +696,17 @@ def print_usage(): print("Please specify a path to font and unicode files.\n" "usage: createfont.py noto-color-emoji-path unicode-dir-path") - -if __name__ == '__main__': - if len(sys.argv) < 3: +def parse_args(argv): + # parse manually to avoid any extra dependencies + if len(argv) < 3: print_usage() sys.exit(1) - EmojiFontCreator(sys.argv[1], sys.argv[2]).create_font() + return (sys.argv[1], sys.argv[2]) + +def main(): + font_file, unicode_dir = parse_args(sys.argv) + EmojiFontCreator(font_file, unicode_dir).create_font() + + +if __name__ == '__main__': + main() diff --git a/emoji-compat/data/emoji_metadata.txt b/emoji-compat/data/emoji_metadata.txt index c51ada2..6bee6fa 100644 --- a/emoji-compat/data/emoji_metadata.txt +++ b/emoji-compat/data/emoji_metadata.txt @@ -3361,3 +3361,220 @@ F0D53 30 6 1F9D1 1F3FF 200D 1F37C F0D54 30 6 1F9D1 1F3FF 200D 1F384
F0D55 30 6 1F9D1 200D 1F37C
F0D56 30 6 1F9D1 200D 1F384
+F0D57 30 7 2764 200D 1F525
+F0D58 30 7 2764 200D 1FA79
+F0D59 30 7 1F468 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D5A 30 7 1F468 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D5B 30 7 1F468 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D5C 30 7 1F468 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D5D 30 7 1F468 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D5E 30 7 1F468 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D5F 30 7 1F468 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D60 30 7 1F468 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D61 30 7 1F468 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D62 30 7 1F468 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D63 30 7 1F468 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D64 30 7 1F468 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D65 30 7 1F468 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D66 30 7 1F468 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D67 30 7 1F468 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D68 30 7 1F468 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D69 30 7 1F468 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D6A 30 7 1F468 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D6B 30 7 1F468 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D6C 30 7 1F468 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D6D 30 7 1F468 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D6E 30 7 1F468 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D6F 30 7 1F468 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D70 30 7 1F468 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D71 30 7 1F468 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D72 30 7 1F468 1F3FB 200D 2764 200D 1F468 1F3FB
+F0D73 30 7 1F468 1F3FB 200D 2764 200D 1F468 1F3FC
+F0D74 30 7 1F468 1F3FB 200D 2764 200D 1F468 1F3FD
+F0D75 30 7 1F468 1F3FB 200D 2764 200D 1F468 1F3FE
+F0D76 30 7 1F468 1F3FB 200D 2764 200D 1F468 1F3FF
+F0D77 30 7 1F468 1F3FC 200D 2764 200D 1F468 1F3FB
+F0D78 30 7 1F468 1F3FC 200D 2764 200D 1F468 1F3FC
+F0D79 30 7 1F468 1F3FC 200D 2764 200D 1F468 1F3FD
+F0D7A 30 7 1F468 1F3FC 200D 2764 200D 1F468 1F3FE
+F0D7B 30 7 1F468 1F3FC 200D 2764 200D 1F468 1F3FF
+F0D7C 30 7 1F468 1F3FD 200D 2764 200D 1F468 1F3FB
+F0D7D 30 7 1F468 1F3FD 200D 2764 200D 1F468 1F3FC
+F0D7E 30 7 1F468 1F3FD 200D 2764 200D 1F468 1F3FD
+F0D7F 30 7 1F468 1F3FD 200D 2764 200D 1F468 1F3FE
+F0D80 30 7 1F468 1F3FD 200D 2764 200D 1F468 1F3FF
+F0D81 30 7 1F468 1F3FE 200D 2764 200D 1F468 1F3FB
+F0D82 30 7 1F468 1F3FE 200D 2764 200D 1F468 1F3FC
+F0D83 30 7 1F468 1F3FE 200D 2764 200D 1F468 1F3FD
+F0D84 30 7 1F468 1F3FE 200D 2764 200D 1F468 1F3FE
+F0D85 30 7 1F468 1F3FE 200D 2764 200D 1F468 1F3FF
+F0D86 30 7 1F468 1F3FF 200D 2764 200D 1F468 1F3FB
+F0D87 30 7 1F468 1F3FF 200D 2764 200D 1F468 1F3FC
+F0D88 30 7 1F468 1F3FF 200D 2764 200D 1F468 1F3FD
+F0D89 30 7 1F468 1F3FF 200D 2764 200D 1F468 1F3FE
+F0D8A 30 7 1F468 1F3FF 200D 2764 200D 1F468 1F3FF
+F0D8B 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D8C 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D8D 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D8E 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D8F 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D90 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F469 1F3FB
+F0D91 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F469 1F3FC
+F0D92 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F469 1F3FD
+F0D93 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F469 1F3FE
+F0D94 30 7 1F469 1F3FB 200D 2764 200D 1F48B 200D 1F469 1F3FF
+F0D95 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0D96 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0D97 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0D98 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0D99 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0D9A 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F469 1F3FB
+F0D9B 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F469 1F3FC
+F0D9C 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F469 1F3FD
+F0D9D 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F469 1F3FE
+F0D9E 30 7 1F469 1F3FC 200D 2764 200D 1F48B 200D 1F469 1F3FF
+F0D9F 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0DA0 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0DA1 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0DA2 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0DA3 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0DA4 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F469 1F3FB
+F0DA5 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F469 1F3FC
+F0DA6 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F469 1F3FD
+F0DA7 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F469 1F3FE
+F0DA8 30 7 1F469 1F3FD 200D 2764 200D 1F48B 200D 1F469 1F3FF
+F0DA9 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0DAA 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0DAB 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0DAC 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0DAD 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0DAE 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F469 1F3FB
+F0DAF 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F469 1F3FC
+F0DB0 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F469 1F3FD
+F0DB1 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F469 1F3FE
+F0DB2 30 7 1F469 1F3FE 200D 2764 200D 1F48B 200D 1F469 1F3FF
+F0DB3 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FB
+F0DB4 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FC
+F0DB5 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FD
+F0DB6 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FE
+F0DB7 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F468 1F3FF
+F0DB8 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F469 1F3FB
+F0DB9 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F469 1F3FC
+F0DBA 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F469 1F3FD
+F0DBB 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F469 1F3FE
+F0DBC 30 7 1F469 1F3FF 200D 2764 200D 1F48B 200D 1F469 1F3FF
+F0DBD 30 7 1F469 1F3FB 200D 2764 200D 1F468 1F3FB
+F0DBE 30 7 1F469 1F3FB 200D 2764 200D 1F468 1F3FC
+F0DBF 30 7 1F469 1F3FB 200D 2764 200D 1F468 1F3FD
+F0DC0 30 7 1F469 1F3FB 200D 2764 200D 1F468 1F3FE
+F0DC1 30 7 1F469 1F3FB 200D 2764 200D 1F468 1F3FF
+F0DC2 30 7 1F469 1F3FB 200D 2764 200D 1F469 1F3FB
+F0DC3 30 7 1F469 1F3FB 200D 2764 200D 1F469 1F3FC
+F0DC4 30 7 1F469 1F3FB 200D 2764 200D 1F469 1F3FD
+F0DC5 30 7 1F469 1F3FB 200D 2764 200D 1F469 1F3FE
+F0DC6 30 7 1F469 1F3FB 200D 2764 200D 1F469 1F3FF
+F0DC7 30 7 1F469 1F3FC 200D 2764 200D 1F468 1F3FB
+F0DC8 30 7 1F469 1F3FC 200D 2764 200D 1F468 1F3FC
+F0DC9 30 7 1F469 1F3FC 200D 2764 200D 1F468 1F3FD
+F0DCA 30 7 1F469 1F3FC 200D 2764 200D 1F468 1F3FE
+F0DCB 30 7 1F469 1F3FC 200D 2764 200D 1F468 1F3FF
+F0DCC 30 7 1F469 1F3FC 200D 2764 200D 1F469 1F3FB
+F0DCD 30 7 1F469 1F3FC 200D 2764 200D 1F469 1F3FC
+F0DCE 30 7 1F469 1F3FC 200D 2764 200D 1F469 1F3FD
+F0DCF 30 7 1F469 1F3FC 200D 2764 200D 1F469 1F3FE
+F0DD0 30 7 1F469 1F3FC 200D 2764 200D 1F469 1F3FF
+F0DD1 30 7 1F469 1F3FD 200D 2764 200D 1F468 1F3FB
+F0DD2 30 7 1F469 1F3FD 200D 2764 200D 1F468 1F3FC
+F0DD3 30 7 1F469 1F3FD 200D 2764 200D 1F468 1F3FD
+F0DD4 30 7 1F469 1F3FD 200D 2764 200D 1F468 1F3FE
+F0DD5 30 7 1F469 1F3FD 200D 2764 200D 1F468 1F3FF
+F0DD6 30 7 1F469 1F3FD 200D 2764 200D 1F469 1F3FB
+F0DD7 30 7 1F469 1F3FD 200D 2764 200D 1F469 1F3FC
+F0DD8 30 7 1F469 1F3FD 200D 2764 200D 1F469 1F3FD
+F0DD9 30 7 1F469 1F3FD 200D 2764 200D 1F469 1F3FE
+F0DDA 30 7 1F469 1F3FD 200D 2764 200D 1F469 1F3FF
+F0DDB 30 7 1F469 1F3FE 200D 2764 200D 1F468 1F3FB
+F0DDC 30 7 1F469 1F3FE 200D 2764 200D 1F468 1F3FC
+F0DDD 30 7 1F469 1F3FE 200D 2764 200D 1F468 1F3FD
+F0DDE 30 7 1F469 1F3FE 200D 2764 200D 1F468 1F3FE
+F0DDF 30 7 1F469 1F3FE 200D 2764 200D 1F468 1F3FF
+F0DE0 30 7 1F469 1F3FE 200D 2764 200D 1F469 1F3FB
+F0DE1 30 7 1F469 1F3FE 200D 2764 200D 1F469 1F3FC
+F0DE2 30 7 1F469 1F3FE 200D 2764 200D 1F469 1F3FD
+F0DE3 30 7 1F469 1F3FE 200D 2764 200D 1F469 1F3FE
+F0DE4 30 7 1F469 1F3FE 200D 2764 200D 1F469 1F3FF
+F0DE5 30 7 1F469 1F3FF 200D 2764 200D 1F468 1F3FB
+F0DE6 30 7 1F469 1F3FF 200D 2764 200D 1F468 1F3FC
+F0DE7 30 7 1F469 1F3FF 200D 2764 200D 1F468 1F3FD
+F0DE8 30 7 1F469 1F3FF 200D 2764 200D 1F468 1F3FE
+F0DE9 30 7 1F469 1F3FF 200D 2764 200D 1F468 1F3FF
+F0DEA 30 7 1F469 1F3FF 200D 2764 200D 1F469 1F3FB
+F0DEB 30 7 1F469 1F3FF 200D 2764 200D 1F469 1F3FC
+F0DEC 30 7 1F469 1F3FF 200D 2764 200D 1F469 1F3FD
+F0DED 30 7 1F469 1F3FF 200D 2764 200D 1F469 1F3FE
+F0DEE 30 7 1F469 1F3FF 200D 2764 200D 1F469 1F3FF
+F0DEF 30 7 1F48F 1F3FB
+F0DF0 30 7 1F48F 1F3FC
+F0DF1 30 7 1F48F 1F3FD
+F0DF2 30 7 1F48F 1F3FE
+F0DF3 30 7 1F48F 1F3FF
+F0DF4 30 7 1F491 1F3FB
+F0DF5 30 7 1F491 1F3FC
+F0DF6 30 7 1F491 1F3FD
+F0DF7 30 7 1F491 1F3FE
+F0DF8 30 7 1F491 1F3FF
+F0DF9 30 7 1F62E 200D 1F4A8
+F0DFA 30 7 1F635 200D 1F4AB
+F0DFB 30 7 1F636 200D 1F32B
+F0DFC 30 7 1F9D1 1F3FB 200D 2764 200D 1F48B 200D 1F9D1 1F3FC
+F0DFD 30 7 1F9D1 1F3FB 200D 2764 200D 1F48B 200D 1F9D1 1F3FD
+F0DFE 30 7 1F9D1 1F3FB 200D 2764 200D 1F48B 200D 1F9D1 1F3FE
+F0DFF 30 7 1F9D1 1F3FB 200D 2764 200D 1F48B 200D 1F9D1 1F3FF
+F0E00 30 7 1F9D1 1F3FC 200D 2764 200D 1F48B 200D 1F9D1 1F3FB
+F0E01 30 7 1F9D1 1F3FC 200D 2764 200D 1F48B 200D 1F9D1 1F3FD
+F0E02 30 7 1F9D1 1F3FC 200D 2764 200D 1F48B 200D 1F9D1 1F3FE
+F0E03 30 7 1F9D1 1F3FC 200D 2764 200D 1F48B 200D 1F9D1 1F3FF
+F0E04 30 7 1F9D1 1F3FD 200D 2764 200D 1F48B 200D 1F9D1 1F3FB
+F0E05 30 7 1F9D1 1F3FD 200D 2764 200D 1F48B 200D 1F9D1 1F3FC
+F0E06 30 7 1F9D1 1F3FD 200D 2764 200D 1F48B 200D 1F9D1 1F3FE
+F0E07 30 7 1F9D1 1F3FD 200D 2764 200D 1F48B 200D 1F9D1 1F3FF
+F0E08 30 7 1F9D1 1F3FE 200D 2764 200D 1F48B 200D 1F9D1 1F3FB
+F0E09 30 7 1F9D1 1F3FE 200D 2764 200D 1F48B 200D 1F9D1 1F3FC
+F0E0A 30 7 1F9D1 1F3FE 200D 2764 200D 1F48B 200D 1F9D1 1F3FD
+F0E0B 30 7 1F9D1 1F3FE 200D 2764 200D 1F48B 200D 1F9D1 1F3FF
+F0E0C 30 7 1F9D1 1F3FF 200D 2764 200D 1F48B 200D 1F9D1 1F3FB
+F0E0D 30 7 1F9D1 1F3FF 200D 2764 200D 1F48B 200D 1F9D1 1F3FC
+F0E0E 30 7 1F9D1 1F3FF 200D 2764 200D 1F48B 200D 1F9D1 1F3FD
+F0E0F 30 7 1F9D1 1F3FF 200D 2764 200D 1F48B 200D 1F9D1 1F3FE
+F0E10 30 7 1F9D1 1F3FB 200D 2764 200D 1F9D1 1F3FC
+F0E11 30 7 1F9D1 1F3FB 200D 2764 200D 1F9D1 1F3FD
+F0E12 30 7 1F9D1 1F3FB 200D 2764 200D 1F9D1 1F3FE
+F0E13 30 7 1F9D1 1F3FB 200D 2764 200D 1F9D1 1F3FF
+F0E14 30 7 1F9D1 1F3FC 200D 2764 200D 1F9D1 1F3FB
+F0E15 30 7 1F9D1 1F3FC 200D 2764 200D 1F9D1 1F3FD
+F0E16 30 7 1F9D1 1F3FC 200D 2764 200D 1F9D1 1F3FE
+F0E17 30 7 1F9D1 1F3FC 200D 2764 200D 1F9D1 1F3FF
+F0E18 30 7 1F9D1 1F3FD 200D 2764 200D 1F9D1 1F3FB
+F0E19 30 7 1F9D1 1F3FD 200D 2764 200D 1F9D1 1F3FC
+F0E1A 30 7 1F9D1 1F3FD 200D 2764 200D 1F9D1 1F3FE
+F0E1B 30 7 1F9D1 1F3FD 200D 2764 200D 1F9D1 1F3FF
+F0E1C 30 7 1F9D1 1F3FE 200D 2764 200D 1F9D1 1F3FB
+F0E1D 30 7 1F9D1 1F3FE 200D 2764 200D 1F9D1 1F3FC
+F0E1E 30 7 1F9D1 1F3FE 200D 2764 200D 1F9D1 1F3FD
+F0E1F 30 7 1F9D1 1F3FE 200D 2764 200D 1F9D1 1F3FF
+F0E20 30 7 1F9D1 1F3FF 200D 2764 200D 1F9D1 1F3FB
+F0E21 30 7 1F9D1 1F3FF 200D 2764 200D 1F9D1 1F3FC
+F0E22 30 7 1F9D1 1F3FF 200D 2764 200D 1F9D1 1F3FD
+F0E23 30 7 1F9D1 1F3FF 200D 2764 200D 1F9D1 1F3FE
+F0E24 30 7 1F9D4 1F3FB 200D 2640
+F0E25 30 7 1F9D4 1F3FB 200D 2642
+F0E26 30 7 1F9D4 1F3FC 200D 2640
+F0E27 30 7 1F9D4 1F3FC 200D 2642
+F0E28 30 7 1F9D4 1F3FD 200D 2640
+F0E29 30 7 1F9D4 1F3FD 200D 2642
+F0E2A 30 7 1F9D4 1F3FE 200D 2640
+F0E2B 30 7 1F9D4 1F3FE 200D 2642
+F0E2C 30 7 1F9D4 1F3FF 200D 2640
+F0E2D 30 7 1F9D4 1F3FF 200D 2642
+F0E2E 30 7 1F9D4 200D 2640
+F0E2F 30 7 1F9D4 200D 2642
diff --git a/emoji-compat/font/NotoColorEmojiCompat.ttf b/emoji-compat/font/NotoColorEmojiCompat.ttf Binary files differindex c9fbae3..0b2e8d0 100644 --- a/emoji-compat/font/NotoColorEmojiCompat.ttf +++ b/emoji-compat/font/NotoColorEmojiCompat.ttf diff --git a/emoji-compat/supported-emojis/emojis.txt b/emoji-compat/supported-emojis/emojis.txt index 9021caa..a4818c0 100644 --- a/emoji-compat/supported-emojis/emojis.txt +++ b/emoji-compat/supported-emojis/emojis.txt @@ -911,6 +911,16 @@ 1F468 1F3FB 200D 2695 FE0F 1F468 1F3FB 200D 2696 FE0F 1F468 1F3FB 200D 2708 FE0F +1F468 1F3FB 200D 2764 FE0F 200D 1F468 1F3FB +1F468 1F3FB 200D 2764 FE0F 200D 1F468 1F3FC +1F468 1F3FB 200D 2764 FE0F 200D 1F468 1F3FD +1F468 1F3FB 200D 2764 FE0F 200D 1F468 1F3FE +1F468 1F3FB 200D 2764 FE0F 200D 1F468 1F3FF +1F468 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F468 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F468 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F468 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F468 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF 1F468 1F3FC 1F468 1F3FC 200D 1F33E 1F468 1F3FC 200D 1F373 @@ -940,6 +950,16 @@ 1F468 1F3FC 200D 2695 FE0F 1F468 1F3FC 200D 2696 FE0F 1F468 1F3FC 200D 2708 FE0F +1F468 1F3FC 200D 2764 FE0F 200D 1F468 1F3FB +1F468 1F3FC 200D 2764 FE0F 200D 1F468 1F3FC +1F468 1F3FC 200D 2764 FE0F 200D 1F468 1F3FD +1F468 1F3FC 200D 2764 FE0F 200D 1F468 1F3FE +1F468 1F3FC 200D 2764 FE0F 200D 1F468 1F3FF +1F468 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F468 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F468 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F468 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F468 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF 1F468 1F3FD 1F468 1F3FD 200D 1F33E 1F468 1F3FD 200D 1F373 @@ -969,6 +989,16 @@ 1F468 1F3FD 200D 2695 FE0F 1F468 1F3FD 200D 2696 FE0F 1F468 1F3FD 200D 2708 FE0F +1F468 1F3FD 200D 2764 FE0F 200D 1F468 1F3FB +1F468 1F3FD 200D 2764 FE0F 200D 1F468 1F3FC +1F468 1F3FD 200D 2764 FE0F 200D 1F468 1F3FD +1F468 1F3FD 200D 2764 FE0F 200D 1F468 1F3FE +1F468 1F3FD 200D 2764 FE0F 200D 1F468 1F3FF +1F468 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F468 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F468 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F468 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F468 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF 1F468 1F3FE 1F468 1F3FE 200D 1F33E 1F468 1F3FE 200D 1F373 @@ -998,6 +1028,16 @@ 1F468 1F3FE 200D 2695 FE0F 1F468 1F3FE 200D 2696 FE0F 1F468 1F3FE 200D 2708 FE0F +1F468 1F3FE 200D 2764 FE0F 200D 1F468 1F3FB +1F468 1F3FE 200D 2764 FE0F 200D 1F468 1F3FC +1F468 1F3FE 200D 2764 FE0F 200D 1F468 1F3FD +1F468 1F3FE 200D 2764 FE0F 200D 1F468 1F3FE +1F468 1F3FE 200D 2764 FE0F 200D 1F468 1F3FF +1F468 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F468 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F468 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F468 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F468 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF 1F468 1F3FF 1F468 1F3FF 200D 1F33E 1F468 1F3FF 200D 1F373 @@ -1027,6 +1067,16 @@ 1F468 1F3FF 200D 2695 FE0F 1F468 1F3FF 200D 2696 FE0F 1F468 1F3FF 200D 2708 FE0F +1F468 1F3FF 200D 2764 FE0F 200D 1F468 1F3FB +1F468 1F3FF 200D 2764 FE0F 200D 1F468 1F3FC +1F468 1F3FF 200D 2764 FE0F 200D 1F468 1F3FD +1F468 1F3FF 200D 2764 FE0F 200D 1F468 1F3FE +1F468 1F3FF 200D 2764 FE0F 200D 1F468 1F3FF +1F468 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F468 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F468 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F468 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F468 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF 1F468 200D 1F33E 1F468 200D 1F373 1F468 200D 1F37C @@ -1102,6 +1152,26 @@ 1F469 1F3FB 200D 2695 FE0F 1F469 1F3FB 200D 2696 FE0F 1F469 1F3FB 200D 2708 FE0F +1F469 1F3FB 200D 2764 FE0F 200D 1F468 1F3FB +1F469 1F3FB 200D 2764 FE0F 200D 1F468 1F3FC +1F469 1F3FB 200D 2764 FE0F 200D 1F468 1F3FD +1F469 1F3FB 200D 2764 FE0F 200D 1F468 1F3FE +1F469 1F3FB 200D 2764 FE0F 200D 1F468 1F3FF +1F469 1F3FB 200D 2764 FE0F 200D 1F469 1F3FB +1F469 1F3FB 200D 2764 FE0F 200D 1F469 1F3FC +1F469 1F3FB 200D 2764 FE0F 200D 1F469 1F3FD +1F469 1F3FB 200D 2764 FE0F 200D 1F469 1F3FE +1F469 1F3FB 200D 2764 FE0F 200D 1F469 1F3FF +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FB +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FC +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FD +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FE +1F469 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FF 1F469 1F3FC 1F469 1F3FC 200D 1F33E 1F469 1F3FC 200D 1F373 @@ -1135,6 +1205,26 @@ 1F469 1F3FC 200D 2695 FE0F 1F469 1F3FC 200D 2696 FE0F 1F469 1F3FC 200D 2708 FE0F +1F469 1F3FC 200D 2764 FE0F 200D 1F468 1F3FB +1F469 1F3FC 200D 2764 FE0F 200D 1F468 1F3FC +1F469 1F3FC 200D 2764 FE0F 200D 1F468 1F3FD +1F469 1F3FC 200D 2764 FE0F 200D 1F468 1F3FE +1F469 1F3FC 200D 2764 FE0F 200D 1F468 1F3FF +1F469 1F3FC 200D 2764 FE0F 200D 1F469 1F3FB +1F469 1F3FC 200D 2764 FE0F 200D 1F469 1F3FC +1F469 1F3FC 200D 2764 FE0F 200D 1F469 1F3FD +1F469 1F3FC 200D 2764 FE0F 200D 1F469 1F3FE +1F469 1F3FC 200D 2764 FE0F 200D 1F469 1F3FF +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FB +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FC +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FD +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FE +1F469 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FF 1F469 1F3FD 1F469 1F3FD 200D 1F33E 1F469 1F3FD 200D 1F373 @@ -1168,6 +1258,26 @@ 1F469 1F3FD 200D 2695 FE0F 1F469 1F3FD 200D 2696 FE0F 1F469 1F3FD 200D 2708 FE0F +1F469 1F3FD 200D 2764 FE0F 200D 1F468 1F3FB +1F469 1F3FD 200D 2764 FE0F 200D 1F468 1F3FC +1F469 1F3FD 200D 2764 FE0F 200D 1F468 1F3FD +1F469 1F3FD 200D 2764 FE0F 200D 1F468 1F3FE +1F469 1F3FD 200D 2764 FE0F 200D 1F468 1F3FF +1F469 1F3FD 200D 2764 FE0F 200D 1F469 1F3FB +1F469 1F3FD 200D 2764 FE0F 200D 1F469 1F3FC +1F469 1F3FD 200D 2764 FE0F 200D 1F469 1F3FD +1F469 1F3FD 200D 2764 FE0F 200D 1F469 1F3FE +1F469 1F3FD 200D 2764 FE0F 200D 1F469 1F3FF +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FB +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FC +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FD +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FE +1F469 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FF 1F469 1F3FE 1F469 1F3FE 200D 1F33E 1F469 1F3FE 200D 1F373 @@ -1201,6 +1311,26 @@ 1F469 1F3FE 200D 2695 FE0F 1F469 1F3FE 200D 2696 FE0F 1F469 1F3FE 200D 2708 FE0F +1F469 1F3FE 200D 2764 FE0F 200D 1F468 1F3FB +1F469 1F3FE 200D 2764 FE0F 200D 1F468 1F3FC +1F469 1F3FE 200D 2764 FE0F 200D 1F468 1F3FD +1F469 1F3FE 200D 2764 FE0F 200D 1F468 1F3FE +1F469 1F3FE 200D 2764 FE0F 200D 1F468 1F3FF +1F469 1F3FE 200D 2764 FE0F 200D 1F469 1F3FB +1F469 1F3FE 200D 2764 FE0F 200D 1F469 1F3FC +1F469 1F3FE 200D 2764 FE0F 200D 1F469 1F3FD +1F469 1F3FE 200D 2764 FE0F 200D 1F469 1F3FE +1F469 1F3FE 200D 2764 FE0F 200D 1F469 1F3FF +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FB +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FC +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FD +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FE +1F469 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FF 1F469 1F3FF 1F469 1F3FF 200D 1F33E 1F469 1F3FF 200D 1F373 @@ -1234,6 +1364,26 @@ 1F469 1F3FF 200D 2695 FE0F 1F469 1F3FF 200D 2696 FE0F 1F469 1F3FF 200D 2708 FE0F +1F469 1F3FF 200D 2764 FE0F 200D 1F468 1F3FB +1F469 1F3FF 200D 2764 FE0F 200D 1F468 1F3FC +1F469 1F3FF 200D 2764 FE0F 200D 1F468 1F3FD +1F469 1F3FF 200D 2764 FE0F 200D 1F468 1F3FE +1F469 1F3FF 200D 2764 FE0F 200D 1F468 1F3FF +1F469 1F3FF 200D 2764 FE0F 200D 1F469 1F3FB +1F469 1F3FF 200D 2764 FE0F 200D 1F469 1F3FC +1F469 1F3FF 200D 2764 FE0F 200D 1F469 1F3FD +1F469 1F3FF 200D 2764 FE0F 200D 1F469 1F3FE +1F469 1F3FF 200D 2764 FE0F 200D 1F469 1F3FF +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FB +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FC +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FD +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FE +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F468 1F3FF +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FB +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FC +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FD +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FE +1F469 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F469 1F3FF 1F469 200D 1F33E 1F469 200D 1F373 1F469 200D 1F37C @@ -1522,8 +1672,18 @@ 1F48D 1F48E 1F48F +1F48F 1F3FB +1F48F 1F3FC +1F48F 1F3FD +1F48F 1F3FE +1F48F 1F3FF 1F490 1F491 +1F491 1F3FB +1F491 1F3FC +1F491 1F3FD +1F491 1F3FE +1F491 1F3FF 1F492 1F493 1F494 @@ -1911,6 +2071,7 @@ 1F62C 1F62D 1F62E +1F62E 200D 1F4A8 1F62F 1F630 1F631 @@ -1918,7 +2079,9 @@ 1F633 1F634 1F635 +1F635 200D 1F4AB 1F636 +1F636 200D 1F32B FE0F 1F637 1F638 1F639 @@ -2803,6 +2966,14 @@ 1F9D1 1F3FB 200D 2695 FE0F 1F9D1 1F3FB 200D 2696 FE0F 1F9D1 1F3FB 200D 2708 FE0F +1F9D1 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FC +1F9D1 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FD +1F9D1 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FE +1F9D1 1F3FB 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FF +1F9D1 1F3FB 200D 2764 FE0F 200D 1F9D1 1F3FC +1F9D1 1F3FB 200D 2764 FE0F 200D 1F9D1 1F3FD +1F9D1 1F3FB 200D 2764 FE0F 200D 1F9D1 1F3FE +1F9D1 1F3FB 200D 2764 FE0F 200D 1F9D1 1F3FF 1F9D1 1F3FC 1F9D1 1F3FC 200D 1F33E 1F9D1 1F3FC 200D 1F373 @@ -2834,6 +3005,14 @@ 1F9D1 1F3FC 200D 2695 FE0F 1F9D1 1F3FC 200D 2696 FE0F 1F9D1 1F3FC 200D 2708 FE0F +1F9D1 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FB +1F9D1 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FD +1F9D1 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FE +1F9D1 1F3FC 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FF +1F9D1 1F3FC 200D 2764 FE0F 200D 1F9D1 1F3FB +1F9D1 1F3FC 200D 2764 FE0F 200D 1F9D1 1F3FD +1F9D1 1F3FC 200D 2764 FE0F 200D 1F9D1 1F3FE +1F9D1 1F3FC 200D 2764 FE0F 200D 1F9D1 1F3FF 1F9D1 1F3FD 1F9D1 1F3FD 200D 1F33E 1F9D1 1F3FD 200D 1F373 @@ -2865,6 +3044,14 @@ 1F9D1 1F3FD 200D 2695 FE0F 1F9D1 1F3FD 200D 2696 FE0F 1F9D1 1F3FD 200D 2708 FE0F +1F9D1 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FB +1F9D1 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FC +1F9D1 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FE +1F9D1 1F3FD 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FF +1F9D1 1F3FD 200D 2764 FE0F 200D 1F9D1 1F3FB +1F9D1 1F3FD 200D 2764 FE0F 200D 1F9D1 1F3FC +1F9D1 1F3FD 200D 2764 FE0F 200D 1F9D1 1F3FE +1F9D1 1F3FD 200D 2764 FE0F 200D 1F9D1 1F3FF 1F9D1 1F3FE 1F9D1 1F3FE 200D 1F33E 1F9D1 1F3FE 200D 1F373 @@ -2896,6 +3083,14 @@ 1F9D1 1F3FE 200D 2695 FE0F 1F9D1 1F3FE 200D 2696 FE0F 1F9D1 1F3FE 200D 2708 FE0F +1F9D1 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FB +1F9D1 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FC +1F9D1 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FD +1F9D1 1F3FE 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FF +1F9D1 1F3FE 200D 2764 FE0F 200D 1F9D1 1F3FB +1F9D1 1F3FE 200D 2764 FE0F 200D 1F9D1 1F3FC +1F9D1 1F3FE 200D 2764 FE0F 200D 1F9D1 1F3FD +1F9D1 1F3FE 200D 2764 FE0F 200D 1F9D1 1F3FF 1F9D1 1F3FF 1F9D1 1F3FF 200D 1F33E 1F9D1 1F3FF 200D 1F373 @@ -2927,6 +3122,14 @@ 1F9D1 1F3FF 200D 2695 FE0F 1F9D1 1F3FF 200D 2696 FE0F 1F9D1 1F3FF 200D 2708 FE0F +1F9D1 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FB +1F9D1 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FC +1F9D1 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FD +1F9D1 1F3FF 200D 2764 FE0F 200D 1F48B 200D 1F9D1 1F3FE +1F9D1 1F3FF 200D 2764 FE0F 200D 1F9D1 1F3FB +1F9D1 1F3FF 200D 2764 FE0F 200D 1F9D1 1F3FC +1F9D1 1F3FF 200D 2764 FE0F 200D 1F9D1 1F3FD +1F9D1 1F3FF 200D 2764 FE0F 200D 1F9D1 1F3FE 1F9D1 200D 1F33E 1F9D1 200D 1F373 1F9D1 200D 1F37C @@ -2967,10 +3170,22 @@ 1F9D3 1F3FF 1F9D4 1F9D4 1F3FB +1F9D4 1F3FB 200D 2640 FE0F +1F9D4 1F3FB 200D 2642 FE0F 1F9D4 1F3FC +1F9D4 1F3FC 200D 2640 FE0F +1F9D4 1F3FC 200D 2642 FE0F 1F9D4 1F3FD +1F9D4 1F3FD 200D 2640 FE0F +1F9D4 1F3FD 200D 2642 FE0F 1F9D4 1F3FE +1F9D4 1F3FE 200D 2640 FE0F +1F9D4 1F3FE 200D 2642 FE0F 1F9D4 1F3FF +1F9D4 1F3FF 200D 2640 FE0F +1F9D4 1F3FF 200D 2642 FE0F +1F9D4 200D 2640 FE0F +1F9D4 200D 2642 FE0F 1F9D5 1F9D5 1F3FB 1F9D5 1F3FC @@ -3460,6 +3675,8 @@ 2763 FE0F 2764 2764 FE0F +2764 FE0F 200D 1F525 +2764 FE0F 200D 1FA79 2795 2796 2797 |