diff --git a/src/main/resources/fonts/NotoColorEmoji.ttf b/src/main/resources/fonts/NotoColorEmoji.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2c1f104350d5183df04ccfb8159a1382e3b32ba4 Binary files /dev/null and b/src/main/resources/fonts/NotoColorEmoji.ttf differ diff --git a/src/main/resources/fonts/OpenMoji-Color.ttf b/src/main/resources/fonts/OpenMoji-Color.ttf new file mode 100644 index 0000000000000000000000000000000000000000..669dfdc28f291ffe808395002c6af86f803c71e9 Binary files /dev/null and b/src/main/resources/fonts/OpenMoji-Color.ttf differ diff --git a/src/test/kotlin/org/briarproject/briar/desktop/EmojiTest.kt b/src/test/kotlin/org/briarproject/briar/desktop/EmojiTest.kt new file mode 100644 index 0000000000000000000000000000000000000000..441192fdf5cadfba342e6384d8a50a6177e9316a --- /dev/null +++ b/src/test/kotlin/org/briarproject/briar/desktop/EmojiTest.kt @@ -0,0 +1,1864 @@ +package org.briarproject.briar.desktop + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.sizeIn +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.material.LocalTextStyle +import androidx.compose.material.Text +import androidx.compose.ui.Modifier +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.platform.Font +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.compose.ui.window.singleWindowApplication + +fun main() = singleWindowApplication { + // val font = FontFamily(Font(resource = "fonts/OpenMoji-Color.ttf")) + val font = FontFamily(Font(resource = "fonts/NotoColorEmoji.ttf")) + LazyColumn(Modifier.fillMaxWidth()) { + items(emojis_chunked) { row -> + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceEvenly + ) { + row.forEach { emoji -> + Text( + modifier = Modifier + .sizeIn(minWidth = 42.dp, minHeight = 42.dp) + .padding(8.dp), + text = emoji, + fontFamily = font, + style = LocalTextStyle.current.copy( + fontSize = 18.sp, + textAlign = TextAlign.Center + ) + ) + } + } + } + } +} + +private const val EMOJI_COLUMNS = 10 + +private val emojis = listOf( + "😀", + "😃", + "😄", + "ðŸ˜", + "😆", + "😅", + "🤣", + "😂", + "🙂", + "🙃", + "😉", + "😊", + "😇", + "🥰", + "ðŸ˜", + "🤩", + "😘", + "😗", + "☺ï¸", + "😚", + "😙", + "🥲", + "😋", + "😛", + "😜", + "🤪", + "ðŸ˜", + "🤑", + "🤗", + "ðŸ¤", + "🤫", + "🤔", + "ðŸ¤", + "🤨", + "ðŸ˜", + "😑", + "😶", + "😶â€ðŸŒ«ï¸", + "ðŸ˜", + "😒", + "🙄", + "😬", + "😮â€ðŸ’¨", + "🤥", + "😌", + "😔", + "😪", + "🤤", + "😴", + "😷", + "🤒", + "🤕", + "🤢", + "🤮", + "🤧", + "🥵", + "🥶", + "🥴", + "😵", + "😵â€ðŸ’«", + "🤯", + "🤠", + "🥳", + "🥸", + "😎", + "🤓", + "ðŸ§", + "😕", + "😟", + "ðŸ™", + "☹ï¸", + "😮", + "😯", + "😲", + "😳", + "🥺", + "😦", + "😧", + "😨", + "😰", + "😥", + "😢", + "ðŸ˜", + "😱", + "😖", + "😣", + "😞", + "😓", + "😩", + "😫", + "🥱", + "😤", + "😡", + "😠", + "🤬", + "😈", + "👿", + "💀", + "☠ï¸", + "💩", + "🤡", + "👹", + "👺", + "👻", + "👽", + "👾", + "🤖", + "😺", + "😸", + "😹", + "😻", + "😼", + "😽", + "🙀", + "😿", + "😾", + "🙈", + "🙉", + "🙊", + "💋", + "💌", + "💘", + "ðŸ’", + "💖", + "💗", + "💓", + "💞", + "💕", + "💟", + "â£ï¸", + "💔", + "â¤ï¸â€ðŸ”¥", + "â¤ï¸â€ðŸ©¹", + "â¤ï¸", + "🧡", + "💛", + "💚", + "💙", + "💜", + "🤎", + "🖤", + "ðŸ¤", + "💯", + "💢", + "💥", + "💫", + "💦", + "💨", + "🕳ï¸", + "💣", + "💬", + "ðŸ‘ï¸â€ðŸ—¨ï¸", + "🗨ï¸", + "🗯ï¸", + "ðŸ’", + "💤", + "👋", + "🤚", + "ðŸ–ï¸", + "✋", + "🖖", + "👌", + "🤌", + "ðŸ¤", + "✌ï¸", + "🤞", + "🤟", + "🤘", + "🤙", + "👈", + "👉", + "👆", + "🖕", + "👇", + "â˜ï¸", + "ðŸ‘", + "👎", + "✊", + "👊", + "🤛", + "🤜", + "ðŸ‘", + "🙌", + "ðŸ‘", + "🤲", + "ðŸ¤", + "ðŸ™", + "âœï¸", + "💅", + "🤳", + "💪", + "🦾", + "🦿", + "🦵", + "🦶", + "👂", + "🦻", + "👃", + "🧠", + "🫀", + "ðŸ«", + "🦷", + "🦴", + "👀", + "ðŸ‘ï¸", + "👅", + "👄", + "👶", + "🧒", + "👦", + "👧", + "🧑", + "👱", + "👨", + "🧔", + "🧔â€â™‚ï¸", + "🧔â€â™€ï¸", + "👨â€ðŸ¦°", + "👨â€ðŸ¦±", + "👨â€ðŸ¦³", + "👨â€ðŸ¦²", + "👩", + "👩â€ðŸ¦°", + "🧑â€ðŸ¦°", + "👩â€ðŸ¦±", + "🧑â€ðŸ¦±", + "👩â€ðŸ¦³", + "🧑â€ðŸ¦³", + "👩â€ðŸ¦²", + "🧑â€ðŸ¦²", + "👱â€â™€ï¸", + "👱â€â™‚ï¸", + "🧓", + "👴", + "👵", + "ðŸ™", + "ðŸ™â€â™‚ï¸", + "ðŸ™â€â™€ï¸", + "🙎", + "🙎â€â™‚ï¸", + "🙎â€â™€ï¸", + "🙅", + "🙅â€â™‚ï¸", + "🙅â€â™€ï¸", + "🙆", + "🙆â€â™‚ï¸", + "🙆â€â™€ï¸", + "ðŸ’", + "ðŸ’â€â™‚ï¸", + "ðŸ’â€â™€ï¸", + "🙋", + "🙋â€â™‚ï¸", + "🙋â€â™€ï¸", + "ðŸ§", + "ðŸ§â€â™‚ï¸", + "ðŸ§â€â™€ï¸", + "🙇", + "🙇â€â™‚ï¸", + "🙇â€â™€ï¸", + "🤦", + "🤦â€â™‚ï¸", + "🤦â€â™€ï¸", + "🤷", + "🤷â€â™‚ï¸", + "🤷â€â™€ï¸", + "🧑â€âš•ï¸", + "👨â€âš•ï¸", + "👩â€âš•ï¸", + "🧑â€ðŸŽ“", + "👨â€ðŸŽ“", + "👩â€ðŸŽ“", + "🧑â€ðŸ«", + "👨â€ðŸ«", + "👩â€ðŸ«", + "🧑â€âš–ï¸", + "👨â€âš–ï¸", + "👩â€âš–ï¸", + "🧑â€ðŸŒ¾", + "👨â€ðŸŒ¾", + "👩â€ðŸŒ¾", + "🧑â€ðŸ³", + "👨â€ðŸ³", + "👩â€ðŸ³", + "🧑â€ðŸ”§", + "👨â€ðŸ”§", + "👩â€ðŸ”§", + "🧑â€ðŸ", + "👨â€ðŸ", + "👩â€ðŸ", + "🧑â€ðŸ’¼", + "👨â€ðŸ’¼", + "👩â€ðŸ’¼", + "🧑â€ðŸ”¬", + "👨â€ðŸ”¬", + "👩â€ðŸ”¬", + "🧑â€ðŸ’»", + "👨â€ðŸ’»", + "👩â€ðŸ’»", + "🧑â€ðŸŽ¤", + "👨â€ðŸŽ¤", + "👩â€ðŸŽ¤", + "🧑â€ðŸŽ¨", + "👨â€ðŸŽ¨", + "👩â€ðŸŽ¨", + "🧑â€âœˆï¸", + "👨â€âœˆï¸", + "👩â€âœˆï¸", + "🧑â€ðŸš€", + "👨â€ðŸš€", + "👩â€ðŸš€", + "🧑â€ðŸš’", + "👨â€ðŸš’", + "👩â€ðŸš’", + "👮", + "👮â€â™‚ï¸", + "👮â€â™€ï¸", + "🕵ï¸", + "🕵ï¸â€â™‚ï¸", + "🕵ï¸â€â™€ï¸", + "💂", + "💂â€â™‚ï¸", + "💂â€â™€ï¸", + "🥷", + "👷", + "👷â€â™‚ï¸", + "👷â€â™€ï¸", + "🤴", + "👸", + "👳", + "👳â€â™‚ï¸", + "👳â€â™€ï¸", + "👲", + "🧕", + "🤵", + "🤵â€â™‚ï¸", + "🤵â€â™€ï¸", + "👰", + "👰â€â™‚ï¸", + "👰â€â™€ï¸", + "🤰", + "🤱", + "👩â€ðŸ¼", + "👨â€ðŸ¼", + "🧑â€ðŸ¼", + "👼", + "🎅", + "🤶", + "🧑â€ðŸŽ„", + "🦸", + "🦸â€â™‚ï¸", + "🦸â€â™€ï¸", + "🦹", + "🦹â€â™‚ï¸", + "🦹â€â™€ï¸", + "🧙", + "🧙â€â™‚ï¸", + "🧙â€â™€ï¸", + "🧚", + "🧚â€â™‚ï¸", + "🧚â€â™€ï¸", + "🧛", + "🧛â€â™‚ï¸", + "🧛â€â™€ï¸", + "🧜", + "🧜â€â™‚ï¸", + "🧜â€â™€ï¸", + "ðŸ§", + "ðŸ§â€â™‚ï¸", + "ðŸ§â€â™€ï¸", + "🧞", + "🧞â€â™‚ï¸", + "🧞â€â™€ï¸", + "🧟", + "🧟â€â™‚ï¸", + "🧟â€â™€ï¸", + "💆", + "💆â€â™‚ï¸", + "💆â€â™€ï¸", + "💇", + "💇â€â™‚ï¸", + "💇â€â™€ï¸", + "🚶", + "🚶â€â™‚ï¸", + "🚶â€â™€ï¸", + "ðŸ§", + "ðŸ§â€â™‚ï¸", + "ðŸ§â€â™€ï¸", + "🧎", + "🧎â€â™‚ï¸", + "🧎â€â™€ï¸", + "🧑â€ðŸ¦¯", + "👨â€ðŸ¦¯", + "👩â€ðŸ¦¯", + "🧑â€ðŸ¦¼", + "👨â€ðŸ¦¼", + "👩â€ðŸ¦¼", + "🧑â€ðŸ¦½", + "👨â€ðŸ¦½", + "👩â€ðŸ¦½", + "ðŸƒ", + "ðŸƒâ€â™‚ï¸", + "ðŸƒâ€â™€ï¸", + "💃", + "🕺", + "🕴ï¸", + "👯", + "👯â€â™‚ï¸", + "👯â€â™€ï¸", + "🧖", + "🧖â€â™‚ï¸", + "🧖â€â™€ï¸", + "🧗", + "🧗â€â™‚ï¸", + "🧗â€â™€ï¸", + "🤺", + "ðŸ‡", + "â›·ï¸", + "ðŸ‚", + "ðŸŒï¸", + "ðŸŒï¸â€â™‚ï¸", + "ðŸŒï¸â€â™€ï¸", + "ðŸ„", + "ðŸ„â€â™‚ï¸", + "ðŸ„â€â™€ï¸", + "🚣", + "🚣â€â™‚ï¸", + "🚣â€â™€ï¸", + "ðŸŠ", + "ðŸŠâ€â™‚ï¸", + "ðŸŠâ€â™€ï¸", + "⛹ï¸", + "⛹ï¸â€â™‚ï¸", + "⛹ï¸â€â™€ï¸", + "ðŸ‹ï¸", + "ðŸ‹ï¸â€â™‚ï¸", + "ðŸ‹ï¸â€â™€ï¸", + "🚴", + "🚴â€â™‚ï¸", + "🚴â€â™€ï¸", + "🚵", + "🚵â€â™‚ï¸", + "🚵â€â™€ï¸", + "🤸", + "🤸â€â™‚ï¸", + "🤸â€â™€ï¸", + "🤼", + "🤼â€â™‚ï¸", + "🤼â€â™€ï¸", + "🤽", + "🤽â€â™‚ï¸", + "🤽â€â™€ï¸", + "🤾", + "🤾â€â™‚ï¸", + "🤾â€â™€ï¸", + "🤹", + "🤹â€â™‚ï¸", + "🤹â€â™€ï¸", + "🧘", + "🧘â€â™‚ï¸", + "🧘â€â™€ï¸", + "🛀", + "🛌", + "🧑â€ðŸ¤â€ðŸ§‘", + "ðŸ‘", + "👫", + "👬", + "ðŸ’", + "👩â€â¤ï¸â€ðŸ’‹â€ðŸ‘¨", + "👨â€â¤ï¸â€ðŸ’‹â€ðŸ‘¨", + "👩â€â¤ï¸â€ðŸ’‹â€ðŸ‘©", + "💑", + "👩â€â¤ï¸â€ðŸ‘¨", + "👨â€â¤ï¸â€ðŸ‘¨", + "👩â€â¤ï¸â€ðŸ‘©", + "👪", + "👨â€ðŸ‘©â€ðŸ‘¦", + "👨â€ðŸ‘©â€ðŸ‘§", + "👨â€ðŸ‘©â€ðŸ‘§â€ðŸ‘¦", + "👨â€ðŸ‘©â€ðŸ‘¦â€ðŸ‘¦", + "👨â€ðŸ‘©â€ðŸ‘§â€ðŸ‘§", + "👨â€ðŸ‘¨â€ðŸ‘¦", + "👨â€ðŸ‘¨â€ðŸ‘§", + "👨â€ðŸ‘¨â€ðŸ‘§â€ðŸ‘¦", + "👨â€ðŸ‘¨â€ðŸ‘¦â€ðŸ‘¦", + "👨â€ðŸ‘¨â€ðŸ‘§â€ðŸ‘§", + "👩â€ðŸ‘©â€ðŸ‘¦", + "👩â€ðŸ‘©â€ðŸ‘§", + "👩â€ðŸ‘©â€ðŸ‘§â€ðŸ‘¦", + "👩â€ðŸ‘©â€ðŸ‘¦â€ðŸ‘¦", + "👩â€ðŸ‘©â€ðŸ‘§â€ðŸ‘§", + "👨â€ðŸ‘¦", + "👨â€ðŸ‘¦â€ðŸ‘¦", + "👨â€ðŸ‘§", + "👨â€ðŸ‘§â€ðŸ‘¦", + "👨â€ðŸ‘§â€ðŸ‘§", + "👩â€ðŸ‘¦", + "👩â€ðŸ‘¦â€ðŸ‘¦", + "👩â€ðŸ‘§", + "👩â€ðŸ‘§â€ðŸ‘¦", + "👩â€ðŸ‘§â€ðŸ‘§", + "🗣ï¸", + "👤", + "👥", + "🫂", + "👣", + "ðŸµ", + "ðŸ’", + "ðŸ¦", + "🦧", + "ðŸ¶", + "ðŸ•", + "🦮", + "ðŸ•â€ðŸ¦º", + "ðŸ©", + "ðŸº", + "🦊", + "ðŸ¦", + "ðŸ±", + "ðŸˆ", + "ðŸˆâ€â¬›", + "ðŸ¦", + "ðŸ¯", + "ðŸ…", + "ðŸ†", + "ðŸ´", + "ðŸŽ", + "🦄", + "🦓", + "🦌", + "🦬", + "ðŸ®", + "ðŸ‚", + "ðŸƒ", + "ðŸ„", + "ðŸ·", + "ðŸ–", + "ðŸ—", + "ðŸ½", + "ðŸ", + "ðŸ‘", + "ðŸ", + "ðŸª", + "ðŸ«", + "🦙", + "🦒", + "ðŸ˜", + "🦣", + "ðŸ¦", + "🦛", + "ðŸ", + "ðŸ", + "ðŸ€", + "ðŸ¹", + "ðŸ°", + "ðŸ‡", + "ðŸ¿ï¸", + "🦫", + "🦔", + "🦇", + "ðŸ»", + "ðŸ»â€â„ï¸", + "ðŸ¨", + "ðŸ¼", + "🦥", + "🦦", + "🦨", + "🦘", + "🦡", + "ðŸ¾", + "🦃", + "ðŸ”", + "ðŸ“", + "ðŸ£", + "ðŸ¤", + "ðŸ¥", + "ðŸ¦", + "ðŸ§", + "🕊ï¸", + "🦅", + "🦆", + "🦢", + "🦉", + "🦤", + "🪶", + "🦩", + "🦚", + "🦜", + "ðŸ¸", + "ðŸŠ", + "ðŸ¢", + "🦎", + "ðŸ", + "ðŸ²", + "ðŸ‰", + "🦕", + "🦖", + "ðŸ³", + "ðŸ‹", + "ðŸ¬", + "ðŸ¦", + "ðŸŸ", + "ðŸ ", + "ðŸ¡", + "🦈", + "ðŸ™", + "ðŸš", + "ðŸŒ", + "🦋", + "ðŸ›", + "ðŸœ", + "ðŸ", + "🪲", + "ðŸž", + "🦗", + "🪳", + "🕷ï¸", + "🕸ï¸", + "🦂", + "🦟", + "🪰", + "🪱", + "🦠", + "ðŸ’", + "🌸", + "💮", + "ðŸµï¸", + "🌹", + "🥀", + "🌺", + "🌻", + "🌼", + "🌷", + "🌱", + "🪴", + "🌲", + "🌳", + "🌴", + "🌵", + "🌾", + "🌿", + "☘ï¸", + "ðŸ€", + "ðŸ", + "ðŸ‚", + "ðŸƒ", + "ðŸ‡", + "ðŸˆ", + "ðŸ‰", + "ðŸŠ", + "ðŸ‹", + "ðŸŒ", + "ðŸ", + "ðŸ¥", + "ðŸŽ", + "ðŸ", + "ðŸ", + "ðŸ‘", + "ðŸ’", + "ðŸ“", + "ðŸ«", + "ðŸ¥", + "ðŸ…", + "🫒", + "🥥", + "🥑", + "ðŸ†", + "🥔", + "🥕", + "🌽", + "🌶ï¸", + "🫑", + "🥒", + "🥬", + "🥦", + "🧄", + "🧅", + "ðŸ„", + "🥜", + "🌰", + "ðŸž", + "ðŸ¥", + "🥖", + "🫓", + "🥨", + "🥯", + "🥞", + "🧇", + "🧀", + "ðŸ–", + "ðŸ—", + "🥩", + "🥓", + "ðŸ”", + "ðŸŸ", + "ðŸ•", + "ðŸŒ", + "🥪", + "🌮", + "🌯", + "🫔", + "🥙", + "🧆", + "🥚", + "ðŸ³", + "🥘", + "ðŸ²", + "🫕", + "🥣", + "🥗", + "ðŸ¿", + "🧈", + "🧂", + "🥫", + "ðŸ±", + "ðŸ˜", + "ðŸ™", + "ðŸš", + "ðŸ›", + "ðŸœ", + "ðŸ", + "ðŸ ", + "ðŸ¢", + "ðŸ£", + "ðŸ¤", + "ðŸ¥", + "🥮", + "ðŸ¡", + "🥟", + "🥠", + "🥡", + "🦀", + "🦞", + "ðŸ¦", + "🦑", + "🦪", + "ðŸ¦", + "ðŸ§", + "ðŸ¨", + "ðŸ©", + "ðŸª", + "🎂", + "ðŸ°", + "ðŸ§", + "🥧", + "ðŸ«", + "ðŸ¬", + "ðŸ", + "ðŸ®", + "ðŸ¯", + "ðŸ¼", + "🥛", + "☕", + "🫖", + "ðŸµ", + "ðŸ¶", + "ðŸ¾", + "ðŸ·", + "ðŸ¸", + "ðŸ¹", + "ðŸº", + "ðŸ»", + "🥂", + "🥃", + "🥤", + "🧋", + "🧃", + "🧉", + "🧊", + "🥢", + "ðŸ½ï¸", + "ðŸ´", + "🥄", + "🔪", + "ðŸº", + "ðŸŒ", + "🌎", + "ðŸŒ", + "ðŸŒ", + "🗺ï¸", + "🗾", + "ðŸ§", + "ðŸ”ï¸", + "â›°ï¸", + "🌋", + "🗻", + "ðŸ•ï¸", + "ðŸ–ï¸", + "ðŸœï¸", + "ðŸï¸", + "ðŸžï¸", + "ðŸŸï¸", + "ðŸ›ï¸", + "ðŸ—ï¸", + "🧱", + "🪨", + "🪵", + "🛖", + "ðŸ˜ï¸", + "ðŸšï¸", + "ðŸ ", + "ðŸ¡", + "ðŸ¢", + "ðŸ£", + "ðŸ¤", + "ðŸ¥", + "ðŸ¦", + "ðŸ¨", + "ðŸ©", + "ðŸª", + "ðŸ«", + "ðŸ¬", + "ðŸ", + "ðŸ¯", + "ðŸ°", + "💒", + "🗼", + "🗽", + "⛪", + "🕌", + "🛕", + "ðŸ•", + "⛩ï¸", + "🕋", + "⛲", + "⛺", + "ðŸŒ", + "🌃", + "ðŸ™ï¸", + "🌄", + "🌅", + "🌆", + "🌇", + "🌉", + "♨ï¸", + "🎠", + "🎡", + "🎢", + "💈", + "🎪", + "🚂", + "🚃", + "🚄", + "🚅", + "🚆", + "🚇", + "🚈", + "🚉", + "🚊", + "ðŸš", + "🚞", + "🚋", + "🚌", + "ðŸš", + "🚎", + "ðŸš", + "🚑", + "🚒", + "🚓", + "🚔", + "🚕", + "🚖", + "🚗", + "🚘", + "🚙", + "🛻", + "🚚", + "🚛", + "🚜", + "ðŸŽï¸", + "ðŸï¸", + "🛵", + "🦽", + "🦼", + "🛺", + "🚲", + "🛴", + "🛹", + "🛼", + "ðŸš", + "🛣ï¸", + "🛤ï¸", + "🛢ï¸", + "⛽", + "🚨", + "🚥", + "🚦", + "🛑", + "🚧", + "âš“", + "⛵", + "🛶", + "🚤", + "🛳ï¸", + "â›´ï¸", + "🛥ï¸", + "🚢", + "✈ï¸", + "🛩ï¸", + "🛫", + "🛬", + "🪂", + "💺", + "ðŸš", + "🚟", + "🚠", + "🚡", + "🛰ï¸", + "🚀", + "🛸", + "🛎ï¸", + "🧳", + "⌛", + "â³", + "⌚", + "â°", + "â±ï¸", + "â²ï¸", + "🕰ï¸", + "🕛", + "🕧", + "ðŸ•", + "🕜", + "🕑", + "ðŸ•", + "🕒", + "🕞", + "🕓", + "🕟", + "🕔", + "🕠", + "🕕", + "🕡", + "🕖", + "🕢", + "🕗", + "🕣", + "🕘", + "🕤", + "🕙", + "🕥", + "🕚", + "🕦", + "🌑", + "🌒", + "🌓", + "🌔", + "🌕", + "🌖", + "🌗", + "🌘", + "🌙", + "🌚", + "🌛", + "🌜", + "🌡ï¸", + "☀ï¸", + "ðŸŒ", + "🌞", + "ðŸª", + "â", + "🌟", + "🌠", + "🌌", + "â˜ï¸", + "â›…", + "⛈ï¸", + "🌤ï¸", + "🌥ï¸", + "🌦ï¸", + "🌧ï¸", + "🌨ï¸", + "🌩ï¸", + "🌪ï¸", + "🌫ï¸", + "🌬ï¸", + "🌀", + "🌈", + "🌂", + "☂ï¸", + "☔", + "â›±ï¸", + "âš¡", + "â„ï¸", + "☃ï¸", + "⛄", + "☄ï¸", + "🔥", + "💧", + "🌊", + "🎃", + "🎄", + "🎆", + "🎇", + "🧨", + "✨", + "🎈", + "🎉", + "🎊", + "🎋", + "ðŸŽ", + "🎎", + "ðŸŽ", + "ðŸŽ", + "🎑", + "🧧", + "🎀", + "ðŸŽ", + "🎗ï¸", + "🎟ï¸", + "🎫", + "🎖ï¸", + "ðŸ†", + "ðŸ…", + "🥇", + "🥈", + "🥉", + "âš½", + "âš¾", + "🥎", + "ðŸ€", + "ðŸ", + "ðŸˆ", + "ðŸ‰", + "🎾", + "ðŸ¥", + "🎳", + "ðŸ", + "ðŸ‘", + "ðŸ’", + "ðŸ¥", + "ðŸ“", + "ðŸ¸", + "🥊", + "🥋", + "🥅", + "⛳", + "⛸ï¸", + "🎣", + "🤿", + "🎽", + "🎿", + "🛷", + "🥌", + "🎯", + "🪀", + "ðŸª", + "🎱", + "🔮", + "🪄", + "🧿", + "🎮", + "🕹ï¸", + "🎰", + "🎲", + "🧩", + "🧸", + "🪅", + "🪆", + "â™ ï¸", + "♥ï¸", + "♦ï¸", + "♣ï¸", + "♟ï¸", + "ðŸƒ", + "🀄", + "🎴", + "ðŸŽ", + "🖼ï¸", + "🎨", + "🧵", + "🪡", + "🧶", + "🪢", + "👓", + "🕶ï¸", + "🥽", + "🥼", + "🦺", + "👔", + "👕", + "👖", + "🧣", + "🧤", + "🧥", + "🧦", + "👗", + "👘", + "🥻", + "🩱", + "🩲", + "🩳", + "👙", + "👚", + "👛", + "👜", + "ðŸ‘", + "ðŸ›ï¸", + "🎒", + "🩴", + "👞", + "👟", + "🥾", + "🥿", + "👠", + "👡", + "🩰", + "👢", + "👑", + "👒", + "🎩", + "🎓", + "🧢", + "🪖", + "⛑ï¸", + "📿", + "💄", + "ðŸ’", + "💎", + "🔇", + "🔈", + "🔉", + "🔊", + "📢", + "📣", + "📯", + "🔔", + "🔕", + "🎼", + "🎵", + "🎶", + "🎙ï¸", + "🎚ï¸", + "🎛ï¸", + "🎤", + "🎧", + "📻", + "🎷", + "🪗", + "🎸", + "🎹", + "🎺", + "🎻", + "🪕", + "ðŸ¥", + "🪘", + "📱", + "📲", + "☎ï¸", + "📞", + "📟", + "📠", + "🔋", + "🔌", + "💻", + "🖥ï¸", + "🖨ï¸", + "⌨ï¸", + "🖱ï¸", + "🖲ï¸", + "💽", + "💾", + "💿", + "📀", + "🧮", + "🎥", + "🎞ï¸", + "📽ï¸", + "🎬", + "📺", + "📷", + "📸", + "📹", + "📼", + "ðŸ”", + "🔎", + "🕯ï¸", + "💡", + "🔦", + "ðŸ®", + "🪔", + "📔", + "📕", + "📖", + "📗", + "📘", + "📙", + "📚", + "📓", + "📒", + "📃", + "📜", + "📄", + "📰", + "🗞ï¸", + "📑", + "🔖", + "ðŸ·ï¸", + "💰", + "🪙", + "💴", + "💵", + "💶", + "💷", + "💸", + "💳", + "🧾", + "💹", + "✉ï¸", + "📧", + "📨", + "📩", + "📤", + "📥", + "📦", + "📫", + "📪", + "📬", + "ðŸ“", + "📮", + "🗳ï¸", + "âœï¸", + "✒ï¸", + "🖋ï¸", + "🖊ï¸", + "🖌ï¸", + "ðŸ–ï¸", + "ðŸ“", + "💼", + "ðŸ“", + "📂", + "🗂ï¸", + "📅", + "📆", + "🗒ï¸", + "🗓ï¸", + "📇", + "📈", + "📉", + "📊", + "📋", + "📌", + "ðŸ“", + "📎", + "🖇ï¸", + "ðŸ“", + "ðŸ“", + "✂ï¸", + "🗃ï¸", + "🗄ï¸", + "🗑ï¸", + "🔒", + "🔓", + "ðŸ”", + "ðŸ”", + "🔑", + "ðŸ—ï¸", + "🔨", + "🪓", + "â›ï¸", + "âš’ï¸", + "🛠ï¸", + "🗡ï¸", + "âš”ï¸", + "🔫", + "🪃", + "ðŸ¹", + "🛡ï¸", + "🪚", + "🔧", + "🪛", + "🔩", + "âš™ï¸", + "🗜ï¸", + "âš–ï¸", + "🦯", + "🔗", + "⛓ï¸", + "ðŸª", + "🧰", + "🧲", + "🪜", + "âš—ï¸", + "🧪", + "🧫", + "🧬", + "🔬", + "ðŸ”", + "📡", + "💉", + "🩸", + "💊", + "🩹", + "🩺", + "🚪", + "🛗", + "🪞", + "🪟", + "ðŸ›ï¸", + "🛋ï¸", + "🪑", + "🚽", + "🪠", + "🚿", + "ðŸ›", + "🪤", + "🪒", + "🧴", + "🧷", + "🧹", + "🧺", + "🧻", + "🪣", + "🧼", + "🪥", + "🧽", + "🧯", + "🛒", + "🚬", + "âš°ï¸", + "🪦", + "âš±ï¸", + "🗿", + "🪧", + "ðŸ§", + "🚮", + "🚰", + "♿", + "🚹", + "🚺", + "🚻", + "🚼", + "🚾", + "🛂", + "🛃", + "🛄", + "🛅", + "âš ï¸", + "🚸", + "â›”", + "🚫", + "🚳", + "ðŸš", + "🚯", + "🚱", + "🚷", + "📵", + "🔞", + "☢ï¸", + "☣ï¸", + "⬆ï¸", + "↗ï¸", + "âž¡ï¸", + "↘ï¸", + "⬇ï¸", + "↙ï¸", + "⬅ï¸", + "↖ï¸", + "↕ï¸", + "↔ï¸", + "↩ï¸", + "↪ï¸", + "⤴ï¸", + "⤵ï¸", + "🔃", + "🔄", + "🔙", + "🔚", + "🔛", + "🔜", + "ðŸ”", + "ðŸ›", + "âš›ï¸", + "🕉ï¸", + "✡ï¸", + "☸ï¸", + "☯ï¸", + "âœï¸", + "☦ï¸", + "☪ï¸", + "☮ï¸", + "🕎", + "🔯", + "♈", + "♉", + "♊", + "♋", + "♌", + "â™", + "♎", + "â™", + "â™", + "♑", + "â™’", + "♓", + "⛎", + "🔀", + "ðŸ”", + "🔂", + "â–¶ï¸", + "â©", + "âï¸", + "â¯ï¸", + "â—€ï¸", + "âª", + "â®ï¸", + "🔼", + "â«", + "🔽", + "â¬", + "â¸ï¸", + "â¹ï¸", + "âºï¸", + "âï¸", + "🎦", + "🔅", + "🔆", + "📶", + "📳", + "📴", + "♀ï¸", + "♂ï¸", + "âš§ï¸", + "✖ï¸", + "âž•", + "âž–", + "âž—", + "♾ï¸", + "‼ï¸", + "â‰ï¸", + "â“", + "â”", + "â•", + "â—", + "〰ï¸", + "💱", + "💲", + "âš•ï¸", + "â™»ï¸", + "âšœï¸", + "🔱", + "📛", + "🔰", + "â•", + "✅", + "☑ï¸", + "✔ï¸", + "âŒ", + "âŽ", + "âž°", + "âž¿", + "〽ï¸", + "✳ï¸", + "✴ï¸", + "â‡ï¸", + "©ï¸", + "®ï¸", + "â„¢ï¸", + "#ï¸âƒ£", + "*ï¸âƒ£", + "0ï¸âƒ£", + "1ï¸âƒ£", + "2ï¸âƒ£", + "3ï¸âƒ£", + "4ï¸âƒ£", + "5ï¸âƒ£", + "6ï¸âƒ£", + "7ï¸âƒ£", + "8ï¸âƒ£", + "9ï¸âƒ£", + "🔟", + "🔠", + "🔡", + "🔢", + "🔣", + "🔤", + "🅰ï¸", + "🆎", + "🅱ï¸", + "🆑", + "🆒", + "🆓", + "ℹï¸", + "🆔", + "â“‚ï¸", + "🆕", + "🆖", + "🅾ï¸", + "🆗", + "🅿ï¸", + "🆘", + "🆙", + "🆚", + "ðŸˆ", + "🈂ï¸", + "🈷ï¸", + "🈶", + "🈯", + "ðŸ‰", + "🈹", + "🈚", + "🈲", + "🉑", + "🈸", + "🈴", + "🈳", + "㊗ï¸", + "㊙ï¸", + "🈺", + "🈵", + "🔴", + "🟠", + "🟡", + "🟢", + "🔵", + "🟣", + "🟤", + "âš«", + "⚪", + "🟥", + "🟧", + "🟨", + "🟩", + "🟦", + "🟪", + "🟫", + "⬛", + "⬜", + "â—¼ï¸", + "â—»ï¸", + "â—¾", + "â—½", + "â–ªï¸", + "â–«ï¸", + "🔶", + "🔷", + "🔸", + "🔹", + "🔺", + "🔻", + "💠", + "🔘", + "🔳", + "🔲", + "ðŸ", + "🚩", + "🎌", + "ðŸ´", + "ðŸ³ï¸", + "ðŸ³ï¸â€ðŸŒˆ", + "ðŸ³ï¸â€âš§ï¸", + "ðŸ´â€â˜ ï¸", + "🇦🇨", + "🇦🇩", + "🇦🇪", + "🇦🇫", + "🇦🇬", + "🇦🇮", + "🇦🇱", + "🇦🇲", + "🇦🇴", + "🇦🇶", + "🇦🇷", + "🇦🇸", + "🇦🇹", + "🇦🇺", + "🇦🇼", + "🇦🇽", + "🇦🇿", + "🇧🇦", + "🇧🇧", + "🇧🇩", + "🇧🇪", + "🇧🇫", + "🇧🇬", + "🇧ðŸ‡", + "🇧🇮", + "🇧🇯", + "🇧🇱", + "🇧🇲", + "🇧🇳", + "🇧🇴", + "🇧🇶", + "🇧🇷", + "🇧🇸", + "🇧🇹", + "🇧🇻", + "🇧🇼", + "🇧🇾", + "🇧🇿", + "🇨🇦", + "🇨🇨", + "🇨🇩", + "🇨🇫", + "🇨🇬", + "🇨ðŸ‡", + "🇨🇮", + "🇨🇰", + "🇨🇱", + "🇨🇲", + "🇨🇳", + "🇨🇴", + "🇨🇵", + "🇨🇷", + "🇨🇺", + "🇨🇻", + "🇨🇼", + "🇨🇽", + "🇨🇾", + "🇨🇿", + "🇩🇪", + "🇩🇬", + "🇩🇯", + "🇩🇰", + "🇩🇲", + "🇩🇴", + "🇩🇿", + "🇪🇦", + "🇪🇨", + "🇪🇪", + "🇪🇬", + "🇪ðŸ‡", + "🇪🇷", + "🇪🇸", + "🇪🇹", + "🇪🇺", + "🇫🇮", + "🇫🇯", + "🇫🇰", + "🇫🇲", + "🇫🇴", + "🇫🇷", + "🇬🇦", + "🇬🇧", + "🇬🇩", + "🇬🇪", + "🇬🇫", + "🇬🇬", + "🇬ðŸ‡", + "🇬🇮", + "🇬🇱", + "🇬🇲", + "🇬🇳", + "🇬🇵", + "🇬🇶", + "🇬🇷", + "🇬🇸", + "🇬🇹", + "🇬🇺", + "🇬🇼", + "🇬🇾", + "ðŸ‡ðŸ‡°", + "ðŸ‡ðŸ‡²", + "ðŸ‡ðŸ‡³", + "ðŸ‡ðŸ‡·", + "ðŸ‡ðŸ‡¹", + "ðŸ‡ðŸ‡º", + "🇮🇨", + "🇮🇩", + "🇮🇪", + "🇮🇱", + "🇮🇲", + "🇮🇳", + "🇮🇴", + "🇮🇶", + "🇮🇷", + "🇮🇸", + "🇮🇹", + "🇯🇪", + "🇯🇲", + "🇯🇴", + "🇯🇵", + "🇰🇪", + "🇰🇬", + "🇰ðŸ‡", + "🇰🇮", + "🇰🇲", + "🇰🇳", + "🇰🇵", + "🇰🇷", + "🇰🇼", + "🇰🇾", + "🇰🇿", + "🇱🇦", + "🇱🇧", + "🇱🇨", + "🇱🇮", + "🇱🇰", + "🇱🇷", + "🇱🇸", + "🇱🇹", + "🇱🇺", + "🇱🇻", + "🇱🇾", + "🇲🇦", + "🇲🇨", + "🇲🇩", + "🇲🇪", + "🇲🇫", + "🇲🇬", + "🇲ðŸ‡", + "🇲🇰", + "🇲🇱", + "🇲🇲", + "🇲🇳", + "🇲🇴", + "🇲🇵", + "🇲🇶", + "🇲🇷", + "🇲🇸", + "🇲🇹", + "🇲🇺", + "🇲🇻", + "🇲🇼", + "🇲🇽", + "🇲🇾", + "🇲🇿", + "🇳🇦", + "🇳🇨", + "🇳🇪", + "🇳🇫", + "🇳🇬", + "🇳🇮", + "🇳🇱", + "🇳🇴", + "🇳🇵", + "🇳🇷", + "🇳🇺", + "🇳🇿", + "🇴🇲", + "🇵🇦", + "🇵🇪", + "🇵🇫", + "🇵🇬", + "🇵ðŸ‡", + "🇵🇰", + "🇵🇱", + "🇵🇲", + "🇵🇳", + "🇵🇷", + "🇵🇸", + "🇵🇹", + "🇵🇼", + "🇵🇾", + "🇶🇦", + "🇷🇪", + "🇷🇴", + "🇷🇸", + "🇷🇺", + "🇷🇼", + "🇸🇦", + "🇸🇧", + "🇸🇨", + "🇸🇩", + "🇸🇪", + "🇸🇬", + "🇸ðŸ‡", + "🇸🇮", + "🇸🇯", + "🇸🇰", + "🇸🇱", + "🇸🇲", + "🇸🇳", + "🇸🇴", + "🇸🇷", + "🇸🇸", + "🇸🇹", + "🇸🇻", + "🇸🇽", + "🇸🇾", + "🇸🇿", + "🇹🇦", + "🇹🇨", + "🇹🇩", + "🇹🇫", + "🇹🇬", + "🇹ðŸ‡", + "🇹🇯", + "🇹🇰", + "🇹🇱", + "🇹🇲", + "🇹🇳", + "🇹🇴", + "🇹🇷", + "🇹🇹", + "🇹🇻", + "🇹🇼", + "🇹🇿", + "🇺🇦", + "🇺🇬", + "🇺🇲", + "🇺🇳", + "🇺🇸", + "🇺🇾", + "🇺🇿", + "🇻🇦", + "🇻🇨", + "🇻🇪", + "🇻🇬", + "🇻🇮", + "🇻🇳", + "🇻🇺", + "🇼🇫", + "🇼🇸", + "🇽🇰", + "🇾🇪", + "🇾🇹", + "🇿🇦", + "🇿🇲", + "🇿🇼", + "ðŸ´ó §ó ¢ó ¥ó ®ó §ó ¿", + "ðŸ´ó §ó ¢ó ³ó £ó ´ó ¿", + "ðŸ´ó §ó ¢ó ·ó ¬ó ³ó ¿", +) + +private val emojis_chunked = emojis.chunked(EMOJI_COLUMNS)