diff options
author | Siyamed Sinir <siyamed@google.com> | 2018-07-24 18:50:43 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-07-24 18:50:43 +0000 |
commit | 4d84d423c6504a7ddd272a4d48dfbdfa2cc65032 (patch) | |
tree | 7432fc84da9665eb0567de6002de58529c3f5a59 | |
parent | a1abe1cc11518fd5576f59f6764fd5db8a9c7a94 (diff) | |
parent | 5a46428fb528c22e17ec08ec44fbbad6c35890fc (diff) | |
download | noto-fonts-pie-qpr3-b-release.tar.gz |
Merge "Update EmojiCompat font for Unicode 11" into pi-devandroid-9.0.0_r47android-9.0.0_r46android-9.0.0_r45android-9.0.0_r44android-9.0.0_r43android-9.0.0_r42android-9.0.0_r41android-9.0.0_r40android-9.0.0_r39android-9.0.0_r38android-9.0.0_r37android-9.0.0_r36pie-qpr3-s1-releasepie-qpr3-releasepie-qpr3-b-releasepie-b4s4-releasepie-b4s4-dev
-rwxr-xr-x | emoji-compat/createfont.py | 16 | ||||
-rw-r--r-- | emoji-compat/data/emoji_metadata.txt | 161 | ||||
-rw-r--r-- | emoji-compat/font/NotoColorEmojiCompat.ttf | bin | 7406132 -> 7925936 bytes | |||
-rw-r--r-- | emoji-compat/supported-emojis/emojis.txt | 161 |
4 files changed, 334 insertions, 4 deletions
diff --git a/emoji-compat/createfont.py b/emoji-compat/createfont.py index 7acd6e6..da1910c 100755 --- a/emoji-compat/createfont.py +++ b/emoji-compat/createfont.py @@ -58,11 +58,11 @@ from fontTools import ttLib ########### UPDATE OR CHECK WHEN A NEW FONT IS BEING GENERATED ########### # Last Android SDK Version -SDK_VERSION = 26 +SDK_VERSION = 28 # 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 = 2 +METADATA_VERSION = 3 ####### main directories where output files are created ####### SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__)) @@ -111,7 +111,9 @@ FLATBUFFER_JAVA_TARGET = os.path.join(JAVA_SRC_DIR, FLATBUFFER_PACKAGE_PATH) # MetadataListReader.java in order to locate the metadata location. EMOJI_META_TAG_NAME = 'Emji' +EMOJI_STR = 'EMOJI' EMOJI_PRESENTATION_STR = 'EMOJI_PRESENTATION' +ACCEPTED_EMOJI_PROPERTIES = [EMOJI_PRESENTATION_STR, EMOJI_STR] STD_VARIANTS_EMOJI_STYLE = 'EMOJI STYLE' DEFAULT_EMOJI_ID = 0xF0001 @@ -177,6 +179,8 @@ def create_test_data(unicode_path): emoji_data_lines = read_emoji_lines(os.path.join(unicode_path, EMOJI_DATA_FILE)) for line in emoji_data_lines: codepoints_range, emoji_property = codepoints_and_emoji_prop(line) + if not emoji_property in ACCEPTED_EMOJI_PROPERTIES: + continue is_emoji_style = emoji_property == EMOJI_PRESENTATION_STR if is_emoji_style: codepoints = [to_hex_str(x) for x in @@ -288,7 +292,8 @@ def codepoints_for_emojirange(codepoints_range): def codepoints_and_emoji_prop(line): """For a given emoji file line, return codepoints and emoji property in the line. - 1F93C..1F93E ; [Emoji|Emoji_Presentation|Emoji_Modifier_Base] # [...]""" + 1F93C..1F93E ; [Emoji|Emoji_Presentation|Emoji_Modifier_Base|Emoji_Component + |Extended_Pictographic] # [...]""" line = line.strip() if '#' in line: line = line[:line.index('#')] @@ -304,11 +309,14 @@ def read_emoji_intervals(emoji_data_map, file_path, emoji_style_exceptions): """Read unicode lines of unicode emoji file in which each line describes a set of codepoint intervals. Expands the interval on a line and inserts related EmojiDatas into emoji_data_map. A line format that is expected is as follows: - 1F93C..1F93E ; [Emoji|Emoji_Presentation|Emoji_Modifier_Base] # [...]""" + 1F93C..1F93E ; [Emoji|Emoji_Presentation|Emoji_Modifier_Base|Emoji_Component + |Extended_Pictographic] # [...]""" lines = read_emoji_lines(file_path) for line in lines: codepoints_range, emoji_property = codepoints_and_emoji_prop(line) + if not emoji_property in ACCEPTED_EMOJI_PROPERTIES: + continue is_emoji_style = emoji_property == EMOJI_PRESENTATION_STR codepoints = codepoints_for_emojirange(codepoints_range) diff --git a/emoji-compat/data/emoji_metadata.txt b/emoji-compat/data/emoji_metadata.txt index 47c02e4..048957f 100644 --- a/emoji-compat/data/emoji_metadata.txt +++ b/emoji-compat/data/emoji_metadata.txt @@ -2685,3 +2685,164 @@ F0AAF 26 2 1F3CC 1F3FC F0AB0 26 2 1F3CC 1F3FD
F0AB1 26 2 1F3CC 1F3FE
F0AB2 26 2 1F3CC 1F3FF
+F0AB3 28 3 1F9FA
+F0AB4 28 3 1F9EF
+F0AB5 28 3 1F970
+F0AB6 28 3 1F9FB
+F0AB7 28 3 1F976
+F0AB8 28 3 1F9FC
+F0AB9 28 3 1F9EA
+F0ABA 28 3 1F97E
+F0ABB 28 3 1F97F
+F0ABC 28 3 1F9E8
+F0ABD 28 3 1F9E7
+F0ABE 28 3 1F94D
+F0ABF 28 3 1F94E
+F0AC0 28 3 1F94F
+F0AC1 28 3 1F96C
+F0AC2 28 3 1F96D
+F0AC3 28 3 1F96E
+F0AC4 28 3 1F96F
+F0AC5 28 3 1F973
+F0AC6 28 3 1F974
+F0AC7 28 3 1F975
+F0AC8 28 3 1F97A
+F0AC9 28 3 1F97C
+F0ACA 28 3 1F97D
+F0ACB 28 3 1F99B
+F0ACC 28 3 1F99C
+F0ACD 28 3 1F99A
+F0ACE 28 3 1F99E
+F0ACF 28 3 1F99F
+F0AD0 28 3 1F9A0
+F0AD1 28 3 1F9A2
+F0AD2 28 3 1F99D
+F0AD3 28 3 1F9B0
+F0AD4 28 3 1F9B1
+F0AD5 28 3 1F9B2
+F0AD6 28 3 1F9B4
+F0AD7 28 3 1F9B5
+F0AD8 28 3 1F9B6
+F0AD9 28 3 1F9B7
+F0ADA 28 3 1F9B8
+F0ADB 28 3 1F9C1
+F0ADC 28 3 1F9A1
+F0ADD 28 3 1F6F9
+F0ADE 28 3 1F9F1
+F0ADF 28 3 1F9F2
+F0AE0 28 3 1F9F0
+F0AE1 28 3 1F9F3
+F0AE2 28 3 1F9B9
+F0AE3 28 3 1F9F4
+F0AE4 28 3 1F9FE
+F0AE5 28 3 1F9F5
+F0AE6 28 3 1F9C2
+F0AE7 28 3 1F9E9
+F0AE8 28 3 1F9ED
+F0AE9 28 3 1F9F7
+F0AEA 28 3 1F9B3
+F0AEB 28 3 1F9F8
+F0AEC 28 3 1F9EE
+F0AED 28 3 1F9FD
+F0AEE 28 3 1F9F6
+F0AEF 28 3 265F
+F0AF0 28 3 267E
+F0AF1 28 3 1F9EB
+F0AF2 28 3 1F9FF
+F0AF3 28 3 1F9F9
+F0AF4 28 3 1F998
+F0AF5 28 3 1F999
+F0AF6 28 3 1F9EC
+F0AF7 28 3 1F469 1F3FB 200D 1F9B0
+F0AF8 28 3 1F469 1F3FB 200D 1F9B1
+F0AF9 28 3 1F469 1F3FB 200D 1F9B2
+F0AFA 28 3 1F469 1F3FB 200D 1F9B3
+F0AFB 28 3 1F469 1F3FC 200D 1F9B0
+F0AFC 28 3 1F469 1F3FC 200D 1F9B1
+F0AFD 28 3 1F469 1F3FC 200D 1F9B2
+F0AFE 28 3 1F469 1F3FC 200D 1F9B3
+F0AFF 28 3 1F469 1F3FD 200D 1F9B0
+F0B00 28 3 1F469 1F3FD 200D 1F9B1
+F0B01 28 3 1F469 1F3FD 200D 1F9B2
+F0B02 28 3 1F469 1F3FD 200D 1F9B3
+F0B03 28 3 1F469 1F3FE 200D 1F9B0
+F0B04 28 3 1F469 1F3FE 200D 1F9B1
+F0B05 28 3 1F469 1F3FE 200D 1F9B2
+F0B06 28 3 1F469 1F3FE 200D 1F9B3
+F0B07 28 3 1F469 1F3FF 200D 1F9B0
+F0B08 28 3 1F469 1F3FF 200D 1F9B1
+F0B09 28 3 1F469 1F3FF 200D 1F9B2
+F0B0A 28 3 1F469 1F3FF 200D 1F9B3
+F0B0B 28 3 1F469 200D 1F9B0
+F0B0C 28 3 1F469 200D 1F9B1
+F0B0D 28 3 1F469 200D 1F9B2
+F0B0E 28 3 1F469 200D 1F9B3
+F0B0F 28 3 1F468 1F3FB 200D 1F9B0
+F0B10 28 3 1F468 1F3FB 200D 1F9B1
+F0B11 28 3 1F468 1F3FB 200D 1F9B2
+F0B12 28 3 1F468 1F3FB 200D 1F9B3
+F0B13 28 3 1F468 1F3FC 200D 1F9B0
+F0B14 28 3 1F468 1F3FC 200D 1F9B1
+F0B15 28 3 1F468 1F3FC 200D 1F9B2
+F0B16 28 3 1F468 1F3FC 200D 1F9B3
+F0B17 28 3 1F468 1F3FD 200D 1F9B0
+F0B18 28 3 1F468 1F3FD 200D 1F9B1
+F0B19 28 3 1F468 1F3FD 200D 1F9B2
+F0B1A 28 3 1F468 1F3FD 200D 1F9B3
+F0B1B 28 3 1F468 1F3FE 200D 1F9B0
+F0B1C 28 3 1F468 1F3FE 200D 1F9B1
+F0B1D 28 3 1F468 1F3FE 200D 1F9B2
+F0B1E 28 3 1F468 1F3FE 200D 1F9B3
+F0B1F 28 3 1F468 1F3FF 200D 1F9B0
+F0B20 28 3 1F468 1F3FF 200D 1F9B1
+F0B21 28 3 1F468 1F3FF 200D 1F9B2
+F0B22 28 3 1F468 1F3FF 200D 1F9B3
+F0B23 28 3 1F468 200D 1F9B0
+F0B24 28 3 1F468 200D 1F9B1
+F0B25 28 3 1F468 200D 1F9B2
+F0B26 28 3 1F468 200D 1F9B3
+F0B27 28 3 1F9B5 1F3FB
+F0B28 28 3 1F9B5 1F3FC
+F0B29 28 3 1F9B5 1F3FD
+F0B2A 28 3 1F9B5 1F3FE
+F0B2B 28 3 1F9B5 1F3FF
+F0B2C 28 3 1F3F4 200D 2620
+F0B2D 28 3 1F9B9 1F3FB 200D 2640
+F0B2E 28 3 1F9B9 1F3FB 200D 2642
+F0B2F 28 3 1F9B9 1F3FC 200D 2640
+F0B30 28 3 1F9B9 1F3FC 200D 2642
+F0B31 28 3 1F9B9 1F3FD 200D 2640
+F0B32 28 3 1F9B9 1F3FD 200D 2642
+F0B33 28 3 1F9B9 1F3FE 200D 2640
+F0B34 28 3 1F9B9 1F3FE 200D 2642
+F0B35 28 3 1F9B9 1F3FF 200D 2640
+F0B36 28 3 1F9B9 1F3FF 200D 2642
+F0B37 28 3 1F9B9 200D 2640
+F0B38 28 3 1F9B9 200D 2642
+F0B39 28 3 1F9B9 1F3FB
+F0B3A 28 3 1F9B9 1F3FC
+F0B3B 28 3 1F9B9 1F3FD
+F0B3C 28 3 1F9B9 1F3FE
+F0B3D 28 3 1F9B9 1F3FF
+F0B3E 28 3 1F9B8 1F3FB 200D 2640
+F0B3F 28 3 1F9B8 1F3FB 200D 2642
+F0B40 28 3 1F9B8 1F3FC 200D 2640
+F0B41 28 3 1F9B8 1F3FC 200D 2642
+F0B42 28 3 1F9B8 1F3FD 200D 2640
+F0B43 28 3 1F9B8 1F3FD 200D 2642
+F0B44 28 3 1F9B8 1F3FE 200D 2640
+F0B45 28 3 1F9B8 1F3FE 200D 2642
+F0B46 28 3 1F9B8 1F3FF 200D 2640
+F0B47 28 3 1F9B8 1F3FF 200D 2642
+F0B48 28 3 1F9B8 200D 2640
+F0B49 28 3 1F9B8 200D 2642
+F0B4A 28 3 1F9B8 1F3FB
+F0B4B 28 3 1F9B8 1F3FC
+F0B4C 28 3 1F9B8 1F3FD
+F0B4D 28 3 1F9B8 1F3FE
+F0B4E 28 3 1F9B8 1F3FF
+F0B4F 28 3 1F9B6 1F3FB
+F0B50 28 3 1F9B6 1F3FC
+F0B51 28 3 1F9B6 1F3FD
+F0B52 28 3 1F9B6 1F3FE
+F0B53 28 3 1F9B6 1F3FF
diff --git a/emoji-compat/font/NotoColorEmojiCompat.ttf b/emoji-compat/font/NotoColorEmojiCompat.ttf Binary files differindex 9ac524d..b518b8b 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 19cba9f..0e2ddc2 100644 --- a/emoji-compat/supported-emojis/emojis.txt +++ b/emoji-compat/supported-emojis/emojis.txt @@ -671,6 +671,7 @@ 1F3F3 FE0F 1F3F3 FE0F 200D 1F308 1F3F4 +1F3F4 200D 2620 FE0F 1F3F4 E0067 E0062 E0065 E006E E0067 E007F 1F3F4 E0067 E0062 E0073 E0063 E0074 E007F 1F3F4 E0067 E0062 E0077 E006C E0073 E007F @@ -891,6 +892,10 @@ 1F468 1F3FB 200D 1F52C 1F468 1F3FB 200D 1F680 1F468 1F3FB 200D 1F692 +1F468 1F3FB 200D 1F9B0 +1F468 1F3FB 200D 1F9B1 +1F468 1F3FB 200D 1F9B2 +1F468 1F3FB 200D 1F9B3 1F468 1F3FB 200D 2695 FE0F 1F468 1F3FB 200D 2696 FE0F 1F468 1F3FB 200D 2708 FE0F @@ -908,6 +913,10 @@ 1F468 1F3FC 200D 1F52C 1F468 1F3FC 200D 1F680 1F468 1F3FC 200D 1F692 +1F468 1F3FC 200D 1F9B0 +1F468 1F3FC 200D 1F9B1 +1F468 1F3FC 200D 1F9B2 +1F468 1F3FC 200D 1F9B3 1F468 1F3FC 200D 2695 FE0F 1F468 1F3FC 200D 2696 FE0F 1F468 1F3FC 200D 2708 FE0F @@ -925,6 +934,10 @@ 1F468 1F3FD 200D 1F52C 1F468 1F3FD 200D 1F680 1F468 1F3FD 200D 1F692 +1F468 1F3FD 200D 1F9B0 +1F468 1F3FD 200D 1F9B1 +1F468 1F3FD 200D 1F9B2 +1F468 1F3FD 200D 1F9B3 1F468 1F3FD 200D 2695 FE0F 1F468 1F3FD 200D 2696 FE0F 1F468 1F3FD 200D 2708 FE0F @@ -942,6 +955,10 @@ 1F468 1F3FE 200D 1F52C 1F468 1F3FE 200D 1F680 1F468 1F3FE 200D 1F692 +1F468 1F3FE 200D 1F9B0 +1F468 1F3FE 200D 1F9B1 +1F468 1F3FE 200D 1F9B2 +1F468 1F3FE 200D 1F9B3 1F468 1F3FE 200D 2695 FE0F 1F468 1F3FE 200D 2696 FE0F 1F468 1F3FE 200D 2708 FE0F @@ -959,6 +976,10 @@ 1F468 1F3FF 200D 1F52C 1F468 1F3FF 200D 1F680 1F468 1F3FF 200D 1F692 +1F468 1F3FF 200D 1F9B0 +1F468 1F3FF 200D 1F9B1 +1F468 1F3FF 200D 1F9B2 +1F468 1F3FF 200D 1F9B3 1F468 1F3FF 200D 2695 FE0F 1F468 1F3FF 200D 2696 FE0F 1F468 1F3FF 200D 2708 FE0F @@ -990,6 +1011,10 @@ 1F468 200D 1F52C 1F468 200D 1F680 1F468 200D 1F692 +1F468 200D 1F9B0 +1F468 200D 1F9B1 +1F468 200D 1F9B2 +1F468 200D 1F9B3 1F468 200D 2695 FE0F 1F468 200D 2696 FE0F 1F468 200D 2708 FE0F @@ -1010,6 +1035,10 @@ 1F469 1F3FB 200D 1F52C 1F469 1F3FB 200D 1F680 1F469 1F3FB 200D 1F692 +1F469 1F3FB 200D 1F9B0 +1F469 1F3FB 200D 1F9B1 +1F469 1F3FB 200D 1F9B2 +1F469 1F3FB 200D 1F9B3 1F469 1F3FB 200D 2695 FE0F 1F469 1F3FB 200D 2696 FE0F 1F469 1F3FB 200D 2708 FE0F @@ -1027,6 +1056,10 @@ 1F469 1F3FC 200D 1F52C 1F469 1F3FC 200D 1F680 1F469 1F3FC 200D 1F692 +1F469 1F3FC 200D 1F9B0 +1F469 1F3FC 200D 1F9B1 +1F469 1F3FC 200D 1F9B2 +1F469 1F3FC 200D 1F9B3 1F469 1F3FC 200D 2695 FE0F 1F469 1F3FC 200D 2696 FE0F 1F469 1F3FC 200D 2708 FE0F @@ -1044,6 +1077,10 @@ 1F469 1F3FD 200D 1F52C 1F469 1F3FD 200D 1F680 1F469 1F3FD 200D 1F692 +1F469 1F3FD 200D 1F9B0 +1F469 1F3FD 200D 1F9B1 +1F469 1F3FD 200D 1F9B2 +1F469 1F3FD 200D 1F9B3 1F469 1F3FD 200D 2695 FE0F 1F469 1F3FD 200D 2696 FE0F 1F469 1F3FD 200D 2708 FE0F @@ -1061,6 +1098,10 @@ 1F469 1F3FE 200D 1F52C 1F469 1F3FE 200D 1F680 1F469 1F3FE 200D 1F692 +1F469 1F3FE 200D 1F9B0 +1F469 1F3FE 200D 1F9B1 +1F469 1F3FE 200D 1F9B2 +1F469 1F3FE 200D 1F9B3 1F469 1F3FE 200D 2695 FE0F 1F469 1F3FE 200D 2696 FE0F 1F469 1F3FE 200D 2708 FE0F @@ -1078,6 +1119,10 @@ 1F469 1F3FF 200D 1F52C 1F469 1F3FF 200D 1F680 1F469 1F3FF 200D 1F692 +1F469 1F3FF 200D 1F9B0 +1F469 1F3FF 200D 1F9B1 +1F469 1F3FF 200D 1F9B2 +1F469 1F3FF 200D 1F9B3 1F469 1F3FF 200D 2695 FE0F 1F469 1F3FF 200D 2696 FE0F 1F469 1F3FF 200D 2708 FE0F @@ -1104,6 +1149,10 @@ 1F469 200D 1F52C 1F469 200D 1F680 1F469 200D 1F692 +1F469 200D 1F9B0 +1F469 200D 1F9B1 +1F469 200D 1F9B2 +1F469 200D 1F9B3 1F469 200D 2695 FE0F 1F469 200D 2696 FE0F 1F469 200D 2708 FE0F @@ -2050,6 +2099,7 @@ 1F6F6 1F6F7 1F6F8 +1F6F9 1F910 1F911 1F912 @@ -2302,6 +2352,9 @@ 1F94A 1F94B 1F94C +1F94D +1F94E +1F94F 1F950 1F951 1F952 @@ -2330,6 +2383,20 @@ 1F969 1F96A 1F96B +1F96C +1F96D +1F96E +1F96F +1F970 +1F973 +1F974 +1F975 +1F976 +1F97A +1F97C +1F97D +1F97E +1F97F 1F980 1F981 1F982 @@ -2354,7 +2421,74 @@ 1F995 1F996 1F997 +1F998 +1F999 +1F99A +1F99B +1F99C +1F99D +1F99E +1F99F +1F9A0 +1F9A1 +1F9A2 +1F9B0 +1F9B1 +1F9B2 +1F9B3 +1F9B4 +1F9B5 +1F9B5 1F3FB +1F9B5 1F3FC +1F9B5 1F3FD +1F9B5 1F3FE +1F9B5 1F3FF +1F9B6 +1F9B6 1F3FB +1F9B6 1F3FC +1F9B6 1F3FD +1F9B6 1F3FE +1F9B6 1F3FF +1F9B7 +1F9B8 +1F9B8 1F3FB +1F9B8 1F3FB 200D 2640 FE0F +1F9B8 1F3FB 200D 2642 FE0F +1F9B8 1F3FC +1F9B8 1F3FC 200D 2640 FE0F +1F9B8 1F3FC 200D 2642 FE0F +1F9B8 1F3FD +1F9B8 1F3FD 200D 2640 FE0F +1F9B8 1F3FD 200D 2642 FE0F +1F9B8 1F3FE +1F9B8 1F3FE 200D 2640 FE0F +1F9B8 1F3FE 200D 2642 FE0F +1F9B8 1F3FF +1F9B8 1F3FF 200D 2640 FE0F +1F9B8 1F3FF 200D 2642 FE0F +1F9B8 200D 2640 FE0F +1F9B8 200D 2642 FE0F +1F9B9 +1F9B9 1F3FB +1F9B9 1F3FB 200D 2640 FE0F +1F9B9 1F3FB 200D 2642 FE0F +1F9B9 1F3FC +1F9B9 1F3FC 200D 2640 FE0F +1F9B9 1F3FC 200D 2642 FE0F +1F9B9 1F3FD +1F9B9 1F3FD 200D 2640 FE0F +1F9B9 1F3FD 200D 2642 FE0F +1F9B9 1F3FE +1F9B9 1F3FE 200D 2640 FE0F +1F9B9 1F3FE 200D 2642 FE0F +1F9B9 1F3FF +1F9B9 1F3FF 200D 2640 FE0F +1F9B9 1F3FF 200D 2642 FE0F +1F9B9 200D 2640 FE0F +1F9B9 200D 2642 FE0F 1F9C0 +1F9C1 +1F9C2 1F9D0 1F9D1 1F9D1 1F3FB @@ -2543,6 +2677,31 @@ 1F9E4 1F9E5 1F9E6 +1F9E7 +1F9E8 +1F9E9 +1F9EA +1F9EB +1F9EC +1F9ED +1F9EE +1F9EF +1F9F0 +1F9F1 +1F9F2 +1F9F3 +1F9F4 +1F9F5 +1F9F6 +1F9F7 +1F9F8 +1F9F9 +1F9FA +1F9FB +1F9FC +1F9FD +1F9FE +1F9FF 203C FE0F 2049 FE0F 2122 FE0F @@ -2650,6 +2809,7 @@ 2652 FE0F 2653 2653 FE0F +265F FE0F 2660 2660 FE0F 2663 @@ -2660,6 +2820,7 @@ 2666 FE0F 2668 FE0F 267B FE0F +267E FE0F 267F 267F FE0F 2692 FE0F |