# emoji-data.txt
# Date: 2017-03-27, 07:29:32 GMT
# © 2017 Unicode®, Inc.
# Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
# For terms of use, see http://www.unicode.org/terms_of_use.html
#
# Emoji Data for UTR #51
# Version: 5.0
#
# For documentation and usage, see http://www.unicode.org/reports/tr51
#
# Warning: the format has changed from Version 1.0
# Format: 
# codepoint(s) ; property(=Yes) # comments 
#
# Characters and sequences are listed in code point order. Users should be shown a more natural order.
# See the CLDR collation order for Emoji.


# ================================================

# All omitted code points have Emoji=No 
# @missing: 0000..10FFFF  ; Emoji ; No

0023          ; Emoji                #  1.1  [1] (#️)       number sign
002A          ; Emoji                #  1.1  [1] (*️)       asterisk
0030..0039    ; Emoji                #  1.1 [10] (0️..9️)    digit zero..digit nine
00A9          ; Emoji                #  1.1  [1] (©️)       copyright
00AE          ; Emoji                #  1.1  [1] (®️)       registered
203C          ; Emoji                #  1.1  [1] (‼️)       double exclamation mark
2049          ; Emoji                #  3.0  [1] (⁉️)       exclamation question mark
2122          ; Emoji                #  1.1  [1] (™️)       trade mark
2139          ; Emoji                #  3.0  [1] (ℹ️)       information
2194..2199    ; Emoji                #  1.1  [6] (↔️..↙️)    left-right arrow..down-left arrow
21A9..21AA    ; Emoji                #  1.1  [2] (↩️..↪️)    right arrow curving left..left arrow curving right
231A..231B    ; Emoji                #  1.1  [2] (⌚..⌛)    watch..hourglass
2328          ; Emoji                #  1.1  [1] (⌨️)       keyboard
23CF          ; Emoji                #  4.0  [1] (⏏️)       eject button
23E9..23F3    ; Emoji                #  6.0 [11] (⏩..⏳)    fast-forward button..hourglass with flowing sand
23F8..23FA    ; Emoji                #  7.0  [3] (⏸️..⏺️)    pause button..record button
24C2          ; Emoji                #  1.1  [1] (Ⓜ️)       circled M
25AA..25AB    ; Emoji                #  1.1  [2] (▪️..▫️)    black small square..white small square
25B6          ; Emoji                #  1.1  [1] (▶️)       play button
25C0          ; Emoji                #  1.1  [1] (◀️)       reverse button
25FB..25FE    ; Emoji                #  3.2  [4] (◻️..◾)    white medium square..black medium-small square
2600..2604    ; Emoji                #  1.1  [5] (☀️..☄️)    sun..comet
260E          ; Emoji                #  1.1  [1] (☎️)       telephone
2611          ; Emoji                #  1.1  [1] (☑️)       ballot box with check
2614..2615    ; Emoji                #  4.0  [2] (☔..☕)    umbrella with rain drops..hot beverage
2618          ; Emoji                #  4.1  [1] (☘️)       shamrock
261D          ; Emoji                #  1.1  [1] (☝️)       index pointing up
2620          ; Emoji                #  1.1  [1] (☠️)       skull and crossbones
2622..2623    ; Emoji                #  1.1  [2] (☢️..☣️)    radioactive..biohazard
2626          ; Emoji                #  1.1  [1] (☦️)       orthodox cross
262A          ; Emoji                #  1.1  [1] (☪️)       star and crescent
262E..262F    ; Emoji                #  1.1  [2] (☮️..☯️)    peace symbol..yin yang
2638..263A    ; Emoji                #  1.1  [3] (☸️..☺️)    wheel of dharma..smiling face
2640          ; Emoji                #  1.1  [1] (♀️)       female sign
2642          ; Emoji                #  1.1  [1] (♂️)       male sign
2648..2653    ; Emoji                #  1.1 [12] (♈..♓)    Aries..Pisces
2660          ; Emoji                #  1.1  [1] (♠️)       spade suit
2663          ; Emoji                #  1.1  [1] (♣️)       club suit
2665..2666    ; Emoji                #  1.1  [2] (♥️..♦️)    heart suit..diamond suit
2668          ; Emoji                #  1.1  [1] (♨️)       hot springs
267B          ; Emoji                #  3.2  [1] (♻️)       recycling symbol
267F          ; Emoji                #  4.1  [1] (♿)       wheelchair symbol
2692..2697    ; Emoji                #  4.1  [6] (⚒️..⚗️)    hammer and pick..alembic
2699          ; Emoji                #  4.1  [1] (⚙️)       gear
269B..269C    ; Emoji                #  4.1  [2] (⚛️..⚜️)    atom symbol..fleur-de-lis
26A0..26A1    ; Emoji                #  4.0  [2] (⚠️..⚡)    warning..high voltage
26AA..26AB    ; Emoji                #  4.1  [2] (⚪..⚫)    white circle..black circle
26B0..26B1    ; Emoji                #  4.1  [2] (⚰️..⚱️)    coffin..funeral urn
26BD..26BE    ; Emoji                #  5.2  [2] (⚽..⚾)    soccer ball..baseball
26C4..26C5    ; Emoji                #  5.2  [2] (⛄..⛅)    snowman without snow..sun behind cloud
26C8          ; Emoji                #  5.2  [1] (⛈️)       cloud with lightning and rain
26CE          ; Emoji                #  6.0  [1] (⛎)       Ophiuchus
26CF          ; Emoji                #  5.2  [1] (⛏️)       pick
26D1          ; Emoji                #  5.2  [1] (⛑️)       rescue worker’s helmet
26D3..26D4    ; Emoji                #  5.2  [2] (⛓️..⛔)    chains..no entry
26E9..26EA    ; Emoji                #  5.2  [2] (⛩️..⛪)    shinto shrine..church
26F0..26F5    ; Emoji                #  5.2  [6] (⛰️..⛵)    mountain..sailboat
26F7..26FA    ; Emoji                #  5.2  [4] (⛷️..⛺)    skier..tent
26FD          ; Emoji                #  5.2  [1] (⛽)       fuel pump
2702          ; Emoji                #  1.1  [1] (✂️)       scissors
2705          ; Emoji                #  6.0  [1] (✅)       white heavy check mark
2708..2709    ; Emoji                #  1.1  [2] (✈️..✉️)    airplane..envelope
270A..270B    ; Emoji                #  6.0  [2] (✊..✋)    raised fist..raised hand
270C..270D    ; Emoji                #  1.1  [2] (✌️..✍️)    victory hand..writing hand
270F          ; Emoji                #  1.1  [1] (✏️)       pencil
2712          ; Emoji                #  1.1  [1] (✒️)       black nib
2714          ; Emoji                #  1.1  [1] (✔️)       heavy check mark
2716          ; Emoji                #  1.1  [1] (✖️)       heavy multiplication x
271D          ; Emoji                #  1.1  [1] (✝️)       latin cross
2721          ; Emoji                #  1.1  [1] (✡️)       star of David
2728          ; Emoji                #  6.0  [1] (✨)       sparkles
2733..2734    ; Emoji                #  1.1  [2] (✳️..✴️)    eight-spoked asterisk..eight-pointed star
2744          ; Emoji                #  1.1  [1] (❄️)       snowflake
2747          ; Emoji                #  1.1  [1] (❇️)       sparkle
274C          ; Emoji                #  6.0  [1] (❌)       cross mark
274E          ; Emoji                #  6.0  [1] (❎)       cross mark button
2753..2755    ; Emoji                #  6.0  [3] (❓..❕)    question mark..white exclamation mark
2757          ; Emoji                #  5.2  [1] (❗)       exclamation mark
2763..2764    ; Emoji                #  1.1  [2] (❣️..❤️)    heavy heart exclamation..red heart
2795..2797    ; Emoji                #  6.0  [3] (➕..➗)    heavy plus sign..heavy division sign
27A1          ; Emoji                #  1.1  [1] (➡️)       right arrow
27B0          ; Emoji                #  6.0  [1] (➰)       curly loop
27BF          ; Emoji                #  6.0  [1] (➿)       double curly loop
2934..2935    ; Emoji                #  3.2  [2] (⤴️..⤵️)    right arrow curving up..right arrow curving down
2B05..2B07    ; Emoji                #  4.0  [3] (⬅️..⬇️)    left arrow..down arrow
2B1B..2B1C    ; Emoji                #  5.1  [2] (⬛..⬜)    black large square..white large square
2B50          ; Emoji                #  5.1  [1] (⭐)       white medium star
2B55          ; Emoji                #  5.2  [1] (⭕)       heavy large circle
3030          ; Emoji                #  1.1  [1] (〰️)       wavy dash
303D          ; Emoji                #  3.2  [1] (〽️)       part alternation mark
3297          ; Emoji                #  1.1  [1] (㊗️)       Japanese “congratulations” button
3299          ; Emoji                #  1.1  [1] (㊙️)       Japanese “secret” button
1F004         ; Emoji                #  5.1  [1] (🀄)       mahjong red dragon
1F0CF         ; Emoji                #  6.0  [1] (🃏)       joker
1F170..1F171  ; Emoji                #  6.0  [2] (🅰️..🅱️)    A button (blood type)..B button (blood type)
1F17E         ; Emoji                #  6.0  [1] (🅾️)       O button (blood type)
1F17F         ; Emoji                #  5.2  [1] (🅿️)       P button
1F18E         ; Emoji                #  6.0  [1] (🆎)       AB button (blood type)
1F191..1F19A  ; Emoji                #  6.0 [10] (🆑..🆚)    CL button..VS button
1F1E6..1F1FF  ; Emoji                #  6.0 [26] (🇦..🇿)    regional indicator symbol letter a..regional indicator symbol letter z
1F201..1F202  ; Emoji                #  6.0  [2] (🈁..🈂️)    Japanese “here” button..Japanese “service charge” button
1F21A         ; Emoji                #  5.2  [1] (🈚)       Japanese “free of charge” button
1F22F         ; Emoji                #  5.2  [1] (🈯)       Japanese “reserved” button
1F232..1F23A  ; Emoji                #  6.0  [9] (🈲..🈺)    Japanese “prohibited” button..Japanese “open for business” button
1F250..1F251  ; Emoji                #  6.0  [2] (🉐..🉑)    Japanese “bargain” button..Japanese “acceptable” button
1F300..1F320  ; Emoji                #  6.0 [33] (🌀..🌠)    cyclone..shooting star
1F321         ; Emoji                #  7.0  [1] (🌡️)       thermometer
1F324..1F32C  ; Emoji                #  7.0  [9] (🌤️..🌬️)    sun behind small cloud..wind face
1F32D..1F32F  ; Emoji                #  8.0  [3] (🌭..🌯)    hot dog..burrito
1F330..1F335  ; Emoji                #  6.0  [6] (🌰..🌵)    chestnut..cactus
1F336         ; Emoji                #  7.0  [1] (🌶️)       hot pepper
1F337..1F37C  ; Emoji                #  6.0 [70] (🌷..🍼)    tulip..baby bottle
1F37D         ; Emoji                #  7.0  [1] (🍽️)       fork and knife with plate
1F37E..1F37F  ; Emoji                #  8.0  [2] (🍾..🍿)    bottle with popping cork..popcorn
1F380..1F393  ; Emoji                #  6.0 [20] (🎀..🎓)    ribbon..graduation cap
1F396..1F397  ; Emoji                #  7.0  [2] (🎖️..🎗️)    military medal..reminder ribbon
1F399..1F39B  ; Emoji                #  7.0  [3] (🎙️..🎛️)    studio microphone..control knobs
1F39E..1F39F  ; Emoji                #  7.0  [2] (🎞️..🎟️)    film frames..admission tickets
1F3A0..1F3C4  ; Emoji                #  6.0 [37] (🎠..🏄)    carousel horse..person surfing
1F3C5         ; Emoji                #  7.0  [1] (🏅)       sports medal
1F3C6..1F3CA  ; Emoji                #  6.0  [5] (🏆..🏊)    trophy..person swimming
1F3CB..1F3CE  ; Emoji                #  7.0  [4] (🏋️..🏎️)    person lifting weights..racing car
1F3CF..1F3D3  ; Emoji                #  8.0  [5] (🏏..🏓)    cricket..ping pong
1F3D4..1F3DF  ; Emoji                #  7.0 [12] (🏔️..🏟️)    snow-capped mountain..stadium
1F3E0..1F3F0  ; Emoji                #  6.0 [17] (🏠..🏰)    house..castle
1F3F3..1F3F5  ; Emoji                #  7.0  [3] (🏳️..🏵️)    white flag..rosette
1F3F7         ; Emoji                #  7.0  [1] (🏷️)       label
1F3F8..1F3FF  ; Emoji                #  8.0  [8] (🏸..🏿)    badminton..dark skin tone
1F400..1F43E  ; Emoji                #  6.0 [63] (🐀..🐾)    rat..paw prints
1F43F         ; Emoji                #  7.0  [1] (🐿️)       chipmunk
1F440         ; Emoji                #  6.0  [1] (👀)       eyes
1F441         ; Emoji                #  7.0  [1] (👁️)       eye
1F442..1F4F7  ; Emoji                #  6.0[182] (👂..📷)    ear..camera
1F4F8         ; Emoji                #  7.0  [1] (📸)       camera with flash
1F4F9..1F4FC  ; Emoji                #  6.0  [4] (📹..📼)    video camera..videocassette
1F4FD         ; Emoji                #  7.0  [1] (📽️)       film projector
1F4FF         ; Emoji                #  8.0  [1] (📿)       prayer beads
1F500..1F53D  ; Emoji                #  6.0 [62] (🔀..🔽)    shuffle tracks button..down button
1F549..1F54A  ; Emoji                #  7.0  [2] (🕉️..🕊️)    om..dove
1F54B..1F54E  ; Emoji                #  8.0  [4] (🕋..🕎)    kaaba..menorah
1F550..1F567  ; Emoji                #  6.0 [24] (🕐..🕧)    one o’clock..twelve-thirty
1F56F..1F570  ; Emoji                #  7.0  [2] (🕯️..🕰️)    candle..mantelpiece clock
1F573..1F579  ; Emoji                #  7.0  [7] (🕳️..🕹️)    hole..joystick
1F57A         ; Emoji                #  9.0  [1] (🕺)       man dancing
1F587         ; Emoji                #  7.0  [1] (🖇️)       linked paperclips
1F58A..1F58D  ; Emoji                #  7.0  [4] (🖊️..🖍️)    pen..crayon
1F590         ; Emoji                #  7.0  [1] (🖐️)       raised hand with fingers splayed
1F595..1F596  ; Emoji                #  7.0  [2] (🖕..🖖)    middle finger..vulcan salute
1F5A4         ; Emoji                #  9.0  [1] (🖤)       black heart
1F5A5         ; Emoji                #  7.0  [1] (🖥️)       desktop computer
1F5A8         ; Emoji                #  7.0  [1] (🖨️)       printer
1F5B1..1F5B2  ; Emoji                #  7.0  [2] (🖱️..🖲️)    computer mouse..trackball
1F5BC         ; Emoji                #  7.0  [1] (🖼️)       framed picture
1F5C2..1F5C4  ; Emoji                #  7.0  [3] (🗂️..🗄️)    card index dividers..file cabinet
1F5D1..1F5D3  ; Emoji                #  7.0  [3] (🗑️..🗓️)    wastebasket..spiral calendar
1F5DC..1F5DE  ; Emoji                #  7.0  [3] (🗜️..🗞️)    clamp..rolled-up newspaper
1F5E1         ; Emoji                #  7.0  [1] (🗡️)       dagger
1F5E3         ; Emoji                #  7.0  [1] (🗣️)       speaking head
1F5E8         ; Emoji                #  7.0  [1] (🗨️)       left speech bubble
1F5EF         ; Emoji                #  7.0  [1] (🗯️)       right anger bubble
1F5F3         ; Emoji                #  7.0  [1] (🗳️)       ballot box with ballot
1F5FA         ; Emoji                #  7.0  [1] (🗺️)       world map
1F5FB..1F5FF  ; Emoji                #  6.0  [5] (🗻..🗿)    mount fuji..moai
1F600         ; Emoji                #  6.1  [1] (😀)       grinning face
1F601..1F610  ; Emoji                #  6.0 [16] (😁..😐)    grinning face with smiling eyes..neutral face
1F611         ; Emoji                #  6.1  [1] (😑)       expressionless face
1F612..1F614  ; Emoji                #  6.0  [3] (😒..😔)    unamused face..pensive face
1F615         ; Emoji                #  6.1  [1] (😕)       confused face
1F616         ; Emoji                #  6.0  [1] (😖)       confounded face
1F617         ; Emoji                #  6.1  [1] (😗)       kissing face
1F618         ; Emoji                #  6.0  [1] (😘)       face blowing a kiss
1F619         ; Emoji                #  6.1  [1] (😙)       kissing face with smiling eyes
1F61A         ; Emoji                #  6.0  [1] (😚)       kissing face with closed eyes
1F61B         ; Emoji                #  6.1  [1] (😛)       face with stuck-out tongue
1F61C..1F61E  ; Emoji                #  6.0  [3] (😜..😞)    face with stuck-out tongue & winking eye..disappointed face
1F61F         ; Emoji                #  6.1  [1] (😟)       worried face
1F620..1F625  ; Emoji                #  6.0  [6] (😠..😥)    angry face..disappointed but relieved face
1F626..1F627  ; Emoji                #  6.1  [2] (😦..😧)    frowning face with open mouth..anguished face
1F628..1F62B  ; Emoji                #  6.0  [4] (😨..😫)    fearful face..tired face
1F62C         ; Emoji                #  6.1  [1] (😬)       grimacing face
1F62D         ; Emoji                #  6.0  [1] (😭)       loudly crying face
1F62E..1F62F  ; Emoji                #  6.1  [2] (😮..😯)    face with open mouth..hushed face
1F630..1F633  ; Emoji                #  6.0  [4] (😰..😳)    face with open mouth & cold sweat..flushed face
1F634         ; Emoji                #  6.1  [1] (😴)       sleeping face
1F635..1F640  ; Emoji                #  6.0 [12] (😵..🙀)    dizzy face..weary cat face
1F641..1F642  ; Emoji                #  7.0  [2] (🙁..🙂)    slightly frowning face..slightly smiling face
1F643..1F644  ; Emoji                #  8.0  [2] (🙃..🙄)    upside-down face..face with rolling eyes
1F645..1F64F  ; Emoji                #  6.0 [11] (🙅..🙏)    person gesturing NO..folded hands
1F680..1F6C5  ; Emoji                #  6.0 [70] (🚀..🛅)    rocket..left luggage
1F6CB..1F6CF  ; Emoji                #  7.0  [5] (🛋️..🛏️)    couch and lamp..bed
1F6D0         ; Emoji                #  8.0  [1] (🛐)       place of worship
1F6D1..1F6D2  ; Emoji                #  9.0  [2] (🛑..🛒)    stop sign..shopping cart
1F6E0..1F6E5  ; Emoji                #  7.0  [6] (🛠️..🛥️)    hammer and wrench..motor boat
1F6E9         ; Emoji                #  7.0  [1] (🛩️)       small airplane
1F6EB..1F6EC  ; Emoji                #  7.0  [2] (🛫..🛬)    airplane departure..airplane arrival
1F6F0         ; Emoji                #  7.0  [1] (🛰️)       satellite
1F6F3         ; Emoji                #  7.0  [1] (🛳️)       passenger ship
1F6F4..1F6F6  ; Emoji                #  9.0  [3] (🛴..🛶)    kick scooter..canoe
1F6F7..1F6F8  ; Emoji                # 10.0  [2] (🛷..🛸)    sled..flying saucer
1F910..1F918  ; Emoji                #  8.0  [9] (🤐..🤘)    zipper-mouth face..sign of the horns
1F919..1F91E  ; Emoji                #  9.0  [6] (🤙..🤞)    call me hand..crossed fingers
1F91F         ; Emoji                # 10.0  [1] (🤟)       love-you gesture
1F920..1F927  ; Emoji                #  9.0  [8] (🤠..🤧)    cowboy hat face..sneezing face
1F928..1F92F  ; Emoji                # 10.0  [8] (🤨..🤯)    face with raised eyebrow..exploding head
1F930         ; Emoji                #  9.0  [1] (🤰)       pregnant woman
1F931..1F932  ; Emoji                # 10.0  [2] (🤱..🤲)    breast-feeding..palms up together
1F933..1F93A  ; Emoji                #  9.0  [8] (🤳..🤺)    selfie..person fencing
1F93C..1F93E  ; Emoji                #  9.0  [3] (🤼..🤾)    people wrestling..person playing handball
1F940..1F945  ; Emoji                #  9.0  [6] (🥀..🥅)    wilted flower..goal net
1F947..1F94B  ; Emoji                #  9.0  [5] (🥇..🥋)    1st place medal..martial arts uniform
1F94C         ; Emoji                # 10.0  [1] (🥌)       curling stone
1F950..1F95E  ; Emoji                #  9.0 [15] (🥐..🥞)    croissant..pancakes
1F95F..1F96B  ; Emoji                # 10.0 [13] (🥟..🥫)    dumpling..canned food
1F980..1F984  ; Emoji                #  8.0  [5] (🦀..🦄)    crab..unicorn face
1F985..1F991  ; Emoji                #  9.0 [13] (🦅..🦑)    eagle..squid
1F992..1F997  ; Emoji                # 10.0  [6] (🦒..🦗)    giraffe..cricket
1F9C0         ; Emoji                #  8.0  [1] (🧀)       cheese wedge
1F9D0..1F9E6  ; Emoji                # 10.0 [23] (🧐..🧦)    face with monocle..socks

# Total elements: 1182

# ================================================

# All omitted code points have Emoji_Presentation=No 
# @missing: 0000..10FFFF  ; Emoji_Presentation ; No

231A..231B    ; Emoji_Presentation   #  1.1  [2] (⌚..⌛)    watch..hourglass
23E9..23EC    ; Emoji_Presentation   #  6.0  [4] (⏩..⏬)    fast-forward button..fast down button
23F0          ; Emoji_Presentation   #  6.0  [1] (⏰)       alarm clock
23F3          ; Emoji_Presentation   #  6.0  [1] (⏳)       hourglass with flowing sand
25FD..25FE    ; Emoji_Presentation   #  3.2  [2] (◽..◾)    white medium-small square..black medium-small square
2614..2615    ; Emoji_Presentation   #  4.0  [2] (☔..☕)    umbrella with rain drops..hot beverage
2648..2653    ; Emoji_Presentation   #  1.1 [12] (♈..♓)    Aries..Pisces
267F          ; Emoji_Presentation   #  4.1  [1] (♿)       wheelchair symbol
2693          ; Emoji_Presentation   #  4.1  [1] (⚓)       anchor
26A1          ; Emoji_Presentation   #  4.0  [1] (⚡)       high voltage
26AA..26AB    ; Emoji_Presentation   #  4.1  [2] (⚪..⚫)    white circle..black circle
26BD..26BE    ; Emoji_Presentation   #  5.2  [2] (⚽..⚾)    soccer ball..baseball
26C4..26C5    ; Emoji_Presentation   #  5.2  [2] (⛄..⛅)    snowman without snow..sun behind cloud
26CE          ; Emoji_Presentation   #  6.0  [1] (⛎)       Ophiuchus
26D4          ; Emoji_Presentation   #  5.2  [1] (⛔)       no entry
26EA          ; Emoji_Presentation   #  5.2  [1] (⛪)       church
26F2..26F3    ; Emoji_Presentation   #  5.2  [2] (⛲..⛳)    fountain..flag in hole
26F5          ; Emoji_Presentation   #  5.2  [1] (⛵)       sailboat
26FA          ; Emoji_Presentation   #  5.2  [1] (⛺)       tent
26FD          ; Emoji_Presentation   #  5.2  [1] (⛽)       fuel pump
2705          ; Emoji_Presentation   #  6.0  [1] (✅)       white heavy check mark
270A..270B    ; Emoji_Presentation   #  6.0  [2] (✊..✋)    raised fist..raised hand
2728          ; Emoji_Presentation   #  6.0  [1] (✨)       sparkles
274C          ; Emoji_Presentation   #  6.0  [1] (❌)       cross mark
274E          ; Emoji_Presentation   #  6.0  [1] (❎)       cross mark button
2753..2755    ; Emoji_Presentation   #  6.0  [3] (❓..❕)    question mark..white exclamation mark
2757          ; Emoji_Presentation   #  5.2  [1] (❗)       exclamation mark
2795..2797    ; Emoji_Presentation   #  6.0  [3] (➕..➗)    heavy plus sign..heavy division sign
27B0          ; Emoji_Presentation   #  6.0  [1] (➰)       curly loop
27BF          ; Emoji_Presentation   #  6.0  [1] (➿)       double curly loop
2B1B..2B1C    ; Emoji_Presentation   #  5.1  [2] (⬛..⬜)    black large square..white large square
2B50          ; Emoji_Presentation   #  5.1  [1] (⭐)       white medium star
2B55          ; Emoji_Presentation   #  5.2  [1] (⭕)       heavy large circle
1F004         ; Emoji_Presentation   #  5.1  [1] (🀄)       mahjong red dragon
1F0CF         ; Emoji_Presentation   #  6.0  [1] (🃏)       joker
1F18E         ; Emoji_Presentation   #  6.0  [1] (🆎)       AB button (blood type)
1F191..1F19A  ; Emoji_Presentation   #  6.0 [10] (🆑..🆚)    CL button..VS button
1F1E6..1F1FF  ; Emoji_Presentation   #  6.0 [26] (🇦..🇿)    regional indicator symbol letter a..regional indicator symbol letter z
1F201         ; Emoji_Presentation   #  6.0  [1] (🈁)       Japanese “here” button
1F21A         ; Emoji_Presentation   #  5.2  [1] (🈚)       Japanese “free of charge” button
1F22F         ; Emoji_Presentation   #  5.2  [1] (🈯)       Japanese “reserved” button
1F232..1F236  ; Emoji_Presentation   #  6.0  [5] (🈲..🈶)    Japanese “prohibited” button..Japanese “not free of charge” button
1F238..1F23A  ; Emoji_Presentation   #  6.0  [3] (🈸..🈺)    Japanese “application” button..Japanese “open for business” button
1F250..1F251  ; Emoji_Presentation   #  6.0  [2] (🉐..🉑)    Japanese “bargain” button..Japanese “acceptable” button
1F300..1F320  ; Emoji_Presentation   #  6.0 [33] (🌀..🌠)    cyclone..shooting star
1F32D..1F32F  ; Emoji_Presentation   #  8.0  [3] (🌭..🌯)    hot dog..burrito
1F330..1F335  ; Emoji_Presentation   #  6.0  [6] (🌰..🌵)    chestnut..cactus
1F337..1F37C  ; Emoji_Presentation   #  6.0 [70] (🌷..🍼)    tulip..baby bottle
1F37E..1F37F  ; Emoji_Presentation   #  8.0  [2] (🍾..🍿)    bottle with popping cork..popcorn
1F380..1F393  ; Emoji_Presentation   #  6.0 [20] (🎀..🎓)    ribbon..graduation cap
1F3A0..1F3C4  ; Emoji_Presentation   #  6.0 [37] (🎠..🏄)    carousel horse..person surfing
1F3C5         ; Emoji_Presentation   #  7.0  [1] (🏅)       sports medal
1F3C6..1F3CA  ; Emoji_Presentation   #  6.0  [5] (🏆..🏊)    trophy..person swimming
1F3CF..1F3D3  ; Emoji_Presentation   #  8.0  [5] (🏏..🏓)    cricket..ping pong
1F3E0..1F3F0  ; Emoji_Presentation   #  6.0 [17] (🏠..🏰)    house..castle
1F3F4         ; Emoji_Presentation   #  7.0  [1] (🏴)       black flag
1F3F8..1F3FF  ; Emoji_Presentation   #  8.0  [8] (🏸..🏿)    badminton..dark skin tone
1F400..1F43E  ; Emoji_Presentation   #  6.0 [63] (🐀..🐾)    rat..paw prints
1F440         ; Emoji_Presentation   #  6.0  [1] (👀)       eyes
1F442..1F4F7  ; Emoji_Presentation   #  6.0[182] (👂..📷)    ear..camera
1F4F8         ; Emoji_Presentation   #  7.0  [1] (📸)       camera with flash
1F4F9..1F4FC  ; Emoji_Presentation   #  6.0  [4] (📹..📼)    video camera..videocassette
1F4FF         ; Emoji_Presentation   #  8.0  [1] (📿)       prayer beads
1F500..1F53D  ; Emoji_Presentation   #  6.0 [62] (🔀..🔽)    shuffle tracks button..down button
1F54B..1F54E  ; Emoji_Presentation   #  8.0  [4] (🕋..🕎)    kaaba..menorah
1F550..1F567  ; Emoji_Presentation   #  6.0 [24] (🕐..🕧)    one o’clock..twelve-thirty
1F57A         ; Emoji_Presentation   #  9.0  [1] (🕺)       man dancing
1F595..1F596  ; Emoji_Presentation   #  7.0  [2] (🖕..🖖)    middle finger..vulcan salute
1F5A4         ; Emoji_Presentation   #  9.0  [1] (🖤)       black heart
1F5FB..1F5FF  ; Emoji_Presentation   #  6.0  [5] (🗻..🗿)    mount fuji..moai
1F600         ; Emoji_Presentation   #  6.1  [1] (😀)       grinning face
1F601..1F610  ; Emoji_Presentation   #  6.0 [16] (😁..😐)    grinning face with smiling eyes..neutral face
1F611         ; Emoji_Presentation   #  6.1  [1] (😑)       expressionless face
1F612..1F614  ; Emoji_Presentation   #  6.0  [3] (😒..😔)    unamused face..pensive face
1F615         ; Emoji_Presentation   #  6.1  [1] (😕)       confused face
1F616         ; Emoji_Presentation   #  6.0  [1] (😖)       confounded face
1F617         ; Emoji_Presentation   #  6.1  [1] (😗)       kissing face
1F618         ; Emoji_Presentation   #  6.0  [1] (😘)       face blowing a kiss
1F619         ; Emoji_Presentation   #  6.1  [1] (😙)       kissing face with smiling eyes
1F61A         ; Emoji_Presentation   #  6.0  [1] (😚)       kissing face with closed eyes
1F61B         ; Emoji_Presentation   #  6.1  [1] (😛)       face with stuck-out tongue
1F61C..1F61E  ; Emoji_Presentation   #  6.0  [3] (😜..😞)    face with stuck-out tongue & winking eye..disappointed face
1F61F         ; Emoji_Presentation   #  6.1  [1] (😟)       worried face
1F620..1F625  ; Emoji_Presentation   #  6.0  [6] (😠..😥)    angry face..disappointed but relieved face
1F626..1F627  ; Emoji_Presentation   #  6.1  [2] (😦..😧)    frowning face with open mouth..anguished face
1F628..1F62B  ; Emoji_Presentation   #  6.0  [4] (😨..😫)    fearful face..tired face
1F62C         ; Emoji_Presentation   #  6.1  [1] (😬)       grimacing face
1F62D         ; Emoji_Presentation   #  6.0  [1] (😭)       loudly crying face
1F62E..1F62F  ; Emoji_Presentation   #  6.1  [2] (😮..😯)    face with open mouth..hushed face
1F630..1F633  ; Emoji_Presentation   #  6.0  [4] (😰..😳)    face with open mouth & cold sweat..flushed face
1F634         ; Emoji_Presentation   #  6.1  [1] (😴)       sleeping face
1F635..1F640  ; Emoji_Presentation   #  6.0 [12] (😵..🙀)    dizzy face..weary cat face
1F641..1F642  ; Emoji_Presentation   #  7.0  [2] (🙁..🙂)    slightly frowning face..slightly smiling face
1F643..1F644  ; Emoji_Presentation   #  8.0  [2] (🙃..🙄)    upside-down face..face with rolling eyes
1F645..1F64F  ; Emoji_Presentation   #  6.0 [11] (🙅..🙏)    person gesturing NO..folded hands
1F680..1F6C5  ; Emoji_Presentation   #  6.0 [70] (🚀..🛅)    rocket..left luggage
1F6CC         ; Emoji_Presentation   #  7.0  [1] (🛌)       person in bed
1F6D0         ; Emoji_Presentation   #  8.0  [1] (🛐)       place of worship
1F6D1..1F6D2  ; Emoji_Presentation   #  9.0  [2] (🛑..🛒)    stop sign..shopping cart
1F6EB..1F6EC  ; Emoji_Presentation   #  7.0  [2] (🛫..🛬)    airplane departure..airplane arrival
1F6F4..1F6F6  ; Emoji_Presentation   #  9.0  [3] (🛴..🛶)    kick scooter..canoe
1F6F7..1F6F8  ; Emoji_Presentation   # 10.0  [2] (🛷..🛸)    sled..flying saucer
1F910..1F918  ; Emoji_Presentation   #  8.0  [9] (🤐..🤘)    zipper-mouth face..sign of the horns
1F919..1F91E  ; Emoji_Presentation   #  9.0  [6] (🤙..🤞)    call me hand..crossed fingers
1F91F         ; Emoji_Presentation   # 10.0  [1] (🤟)       love-you gesture
1F920..1F927  ; Emoji_Presentation   #  9.0  [8] (🤠..🤧)    cowboy hat face..sneezing face
1F928..1F92F  ; Emoji_Presentation   # 10.0  [8] (🤨..🤯)    face with raised eyebrow..exploding head
1F930         ; Emoji_Presentation   #  9.0  [1] (🤰)       pregnant woman
1F931..1F932  ; Emoji_Presentation   # 10.0  [2] (🤱..🤲)    breast-feeding..palms up together
1F933..1F93A  ; Emoji_Presentation   #  9.0  [8] (🤳..🤺)    selfie..person fencing
1F93C..1F93E  ; Emoji_Presentation   #  9.0  [3] (🤼..🤾)    people wrestling..person playing handball
1F940..1F945  ; Emoji_Presentation   #  9.0  [6] (🥀..🥅)    wilted flower..goal net
1F947..1F94B  ; Emoji_Presentation   #  9.0  [5] (🥇..🥋)    1st place medal..martial arts uniform
1F94C         ; Emoji_Presentation   # 10.0  [1] (🥌)       curling stone
1F950..1F95E  ; Emoji_Presentation   #  9.0 [15] (🥐..🥞)    croissant..pancakes
1F95F..1F96B  ; Emoji_Presentation   # 10.0 [13] (🥟..🥫)    dumpling..canned food
1F980..1F984  ; Emoji_Presentation   #  8.0  [5] (🦀..🦄)    crab..unicorn face
1F985..1F991  ; Emoji_Presentation   #  9.0 [13] (🦅..🦑)    eagle..squid
1F992..1F997  ; Emoji_Presentation   # 10.0  [6] (🦒..🦗)    giraffe..cricket
1F9C0         ; Emoji_Presentation   #  8.0  [1] (🧀)       cheese wedge
1F9D0..1F9E6  ; Emoji_Presentation   # 10.0 [23] (🧐..🧦)    face with monocle..socks

# Total elements: 966

# ================================================

# All omitted code points have Emoji_Modifier=No 
# @missing: 0000..10FFFF  ; Emoji_Modifier ; No

1F3FB..1F3FF  ; Emoji_Modifier       #  8.0  [5] (🏻..🏿)    light skin tone..dark skin tone

# Total elements: 5

# ================================================

# All omitted code points have Emoji_Modifier_Base=No 
# @missing: 0000..10FFFF  ; Emoji_Modifier_Base ; No

261D          ; Emoji_Modifier_Base  #  1.1  [1] (☝️)       index pointing up
26F9          ; Emoji_Modifier_Base  #  5.2  [1] (⛹️)       person bouncing ball
270A..270B    ; Emoji_Modifier_Base  #  6.0  [2] (✊..✋)    raised fist..raised hand
270C..270D    ; Emoji_Modifier_Base  #  1.1  [2] (✌️..✍️)    victory hand..writing hand
1F385         ; Emoji_Modifier_Base  #  6.0  [1] (🎅)       Santa Claus
1F3C2..1F3C4  ; Emoji_Modifier_Base  #  6.0  [3] (🏂..🏄)    snowboarder..person surfing
1F3C7         ; Emoji_Modifier_Base  #  6.0  [1] (🏇)       horse racing
1F3CA         ; Emoji_Modifier_Base  #  6.0  [1] (🏊)       person swimming
1F3CB..1F3CC  ; Emoji_Modifier_Base  #  7.0  [2] (🏋️..🏌️)    person lifting weights..person golfing
1F442..1F443  ; Emoji_Modifier_Base  #  6.0  [2] (👂..👃)    ear..nose
1F446..1F450  ; Emoji_Modifier_Base  #  6.0 [11] (👆..👐)    backhand index pointing up..open hands
1F466..1F469  ; Emoji_Modifier_Base  #  6.0  [4] (👦..👩)    boy..woman
1F46E         ; Emoji_Modifier_Base  #  6.0  [1] (👮)       police officer
1F470..1F478  ; Emoji_Modifier_Base  #  6.0  [9] (👰..👸)    bride with veil..princess
1F47C         ; Emoji_Modifier_Base  #  6.0  [1] (👼)       baby angel
1F481..1F483  ; Emoji_Modifier_Base  #  6.0  [3] (💁..💃)    person tipping hand..woman dancing
1F485..1F487  ; Emoji_Modifier_Base  #  6.0  [3] (💅..💇)    nail polish..person getting haircut
1F4AA         ; Emoji_Modifier_Base  #  6.0  [1] (💪)       flexed biceps
1F574..1F575  ; Emoji_Modifier_Base  #  7.0  [2] (🕴️..🕵️)    man in business suit levitating..detective
1F57A         ; Emoji_Modifier_Base  #  9.0  [1] (🕺)       man dancing
1F590         ; Emoji_Modifier_Base  #  7.0  [1] (🖐️)       raised hand with fingers splayed
1F595..1F596  ; Emoji_Modifier_Base  #  7.0  [2] (🖕..🖖)    middle finger..vulcan salute
1F645..1F647  ; Emoji_Modifier_Base  #  6.0  [3] (🙅..🙇)    person gesturing NO..person bowing
1F64B..1F64F  ; Emoji_Modifier_Base  #  6.0  [5] (🙋..🙏)    person raising hand..folded hands
1F6A3         ; Emoji_Modifier_Base  #  6.0  [1] (🚣)       person rowing boat
1F6B4..1F6B6  ; Emoji_Modifier_Base  #  6.0  [3] (🚴..🚶)    person biking..person walking
1F6C0         ; Emoji_Modifier_Base  #  6.0  [1] (🛀)       person taking bath
1F6CC         ; Emoji_Modifier_Base  #  7.0  [1] (🛌)       person in bed
1F918         ; Emoji_Modifier_Base  #  8.0  [1] (🤘)       sign of the horns
1F919..1F91C  ; Emoji_Modifier_Base  #  9.0  [4] (🤙..🤜)    call me hand..right-facing fist
1F91E         ; Emoji_Modifier_Base  #  9.0  [1] (🤞)       crossed fingers
1F91F         ; Emoji_Modifier_Base  # 10.0  [1] (🤟)       love-you gesture
1F926         ; Emoji_Modifier_Base  #  9.0  [1] (🤦)       person facepalming
1F930         ; Emoji_Modifier_Base  #  9.0  [1] (🤰)       pregnant woman
1F931..1F932  ; Emoji_Modifier_Base  # 10.0  [2] (🤱..🤲)    breast-feeding..palms up together
1F933..1F939  ; Emoji_Modifier_Base  #  9.0  [7] (🤳..🤹)    selfie..person juggling
1F93D..1F93E  ; Emoji_Modifier_Base  #  9.0  [2] (🤽..🤾)    person playing water polo..person playing handball
1F9D1..1F9DD  ; Emoji_Modifier_Base  # 10.0 [13] (🧑..🧝)    adult..elf

# Total elements: 102

# ================================================

# All omitted code points have Emoji_Component=No 
# @missing: 0000..10FFFF  ; Emoji_Component ; No

0023          ; Emoji_Component      #  1.1  [1] (#️)       number sign
002A          ; Emoji_Component      #  1.1  [1] (*️)       asterisk
0030..0039    ; Emoji_Component      #  1.1 [10] (0️..9️)    digit zero..digit nine
1F1E6..1F1FF  ; Emoji_Component      #  6.0 [26] (🇦..🇿)    regional indicator symbol letter a..regional indicator symbol letter z
1F3FB..1F3FF  ; Emoji_Component      #  8.0  [5] (🏻..🏿)    light skin tone..dark skin tone

# Total elements: 43

#EOF
