diff --git a/src/components/chatInput.ts b/src/components/chatInput.ts
index 1600d6ba..5f3ad624 100644
--- a/src/components/chatInput.ts
+++ b/src/components/chatInput.ts
@@ -447,6 +447,7 @@ export class ChatInput {
}
});
+ let emoticonsDisplayTimeout = 0;
this.toggleEmoticons.onmouseover = (e) => {
clearTimeout(this.emoticonsTimeout);
this.emoticonsTimeout = setTimeout(() => {
@@ -464,6 +465,11 @@ export class ChatInput {
this.toggleEmoticons.classList.remove('active');
lottieLoader.checkAnimations(true, EMOTICONSSTICKERGROUP);
this.emoticonsLazyLoadQueue.lock();
+
+ clearTimeout(emoticonsDisplayTimeout);
+ emoticonsDisplayTimeout = setTimeout(() => {
+ this.emoticonsDropdown.style.display = 'none';
+ }, 200);
}, 200);
};
@@ -471,8 +477,11 @@ export class ChatInput {
clearTimeout(this.emoticonsTimeout);
};
} else {
+ this.emoticonsDropdown.style.display = '';
+ void this.emoticonsDropdown.offsetLeft; // reflow
this.emoticonsDropdown.classList.add('active');
this.emoticonsLazyLoadQueue.unlock();
+ clearTimeout(emoticonsDisplayTimeout);
}
this.toggleEmoticons.classList.add('active');
diff --git a/src/components/emoticonsDropdown.ts b/src/components/emoticonsDropdown.ts
index e5fbc45a..b2dd336e 100644
--- a/src/components/emoticonsDropdown.ts
+++ b/src/components/emoticonsDropdown.ts
@@ -290,7 +290,13 @@ const initEmoticonsDropdown = (pageEl: HTMLDivElement,
docs.forEach(doc => {
let div = document.createElement('div');
- wrapSticker(doc, div, undefined, lazyLoadQueue, EMOTICONSSTICKERGROUP, true, false, true);
+ wrapSticker({
+ doc,
+ div,
+ lazyLoadQueue,
+ group: EMOTICONSSTICKERGROUP,
+ onlyThumb: true
+ });
itemsDiv.append(div);
});
@@ -408,7 +414,11 @@ const initEmoticonsDropdown = (pageEl: HTMLDivElement,
}
});
} else { // as thumb will be used first sticker
- wrapSticker(stickerSet.documents[0], li as any, undefined, undefined, EMOTICONSSTICKERGROUP); // kostil
+ wrapSticker({
+ doc: stickerSet.documents[0],
+ div: li as any,
+ group: EMOTICONSSTICKERGROUP
+ }); // kostil
}
categoryPush(categoryDiv, stickerSet.set.title, stickerSet.documents, false);
diff --git a/src/components/poll.ts b/src/components/poll.ts
index f69923d9..9da8e882 100644
--- a/src/components/poll.ts
+++ b/src/components/poll.ts
@@ -128,10 +128,10 @@ export default class PollElement extends HTMLElement {
+ ${RichTextProcessor.wrapEmojiText(answer.text)}
- ${RichTextProcessor.wrapEmojiText(answer.text)}
`;
}).join('');
diff --git a/src/components/preloader.ts b/src/components/preloader.ts
index 9063f001..12994891 100644
--- a/src/components/preloader.ts
+++ b/src/components/preloader.ts
@@ -44,7 +44,7 @@ export default class ProgressivePreloader {
}
}
- public attach(elem: Element, reset = true, promise?: CancellablePromise) {
+ public attach(elem: Element, reset = true, promise?: CancellablePromise, append = true) {
if(promise) {
this.promise = promise;
@@ -75,7 +75,8 @@ export default class ProgressivePreloader {
window.requestAnimationFrame(() => {
if(this.detached) return;
this.detached = false;
- elem.append(this.preloader);
+
+ elem[append ? 'append' : 'prepend'](this.preloader);
});
/* let isIn = isInDOM(this.preloader);
diff --git a/src/components/scrollable_new.ts b/src/components/scrollable_new.ts
index 8ff61374..0fa748ca 100644
--- a/src/components/scrollable_new.ts
+++ b/src/components/scrollable_new.ts
@@ -364,7 +364,7 @@ export default class Scrollable {
public scrollIntoView(element: HTMLElement, smooth = true) {
if(element.parentElement && !this.scrollLocked) {
let isFirstUnread = element.classList.contains('is-first-unread');
- let offsetTop = element.offsetTop;
+ let offsetTop = element.getBoundingClientRect().top - this.container.getBoundingClientRect().top;
if(!smooth && isFirstUnread) {
this.scrollTo(offsetTop, false);
return;
@@ -372,8 +372,9 @@ export default class Scrollable {
let clientHeight = this.container.clientHeight;
let height = element.scrollHeight;
-
- offsetTop -= (clientHeight - height) / 2;
+
+ let d = (clientHeight - height) / 2;
+ offsetTop = this.container.scrollTop + offsetTop - d;
this.scrollTo(offsetTop, smooth);
}
diff --git a/src/components/stickyIntersector.ts b/src/components/stickyIntersector.ts
new file mode 100644
index 00000000..4951af5b
--- /dev/null
+++ b/src/components/stickyIntersector.ts
@@ -0,0 +1,76 @@
+export default class StickyIntersector {
+ private headersObserver: IntersectionObserver;
+ private elementsObserver: IntersectionObserver;
+
+ constructor(private container: HTMLElement, private handler: (stuck: boolean, target: HTMLElement) => void) {
+ this.observeHeaders();
+ this.observeElements();
+ }
+
+ /**
+ * Sets up an intersection observer to notify when elements with the class
+ * `.sticky_sentinel--top` become visible/invisible at the top of the container.
+ * @param {!Element} container
+ */
+ private observeHeaders() {
+ this.headersObserver = new IntersectionObserver((entries) => {
+ for(const entry of entries) {
+ const targetInfo = entry.boundingClientRect;
+ const stickyTarget = entry.target.parentElement;
+ const rootBoundsInfo = entry.rootBounds;
+
+ // Started sticking.
+ if(targetInfo.bottom < rootBoundsInfo.top) {
+ this.handler(true, stickyTarget);
+ }
+
+ // Stopped sticking.
+ if(targetInfo.bottom >= rootBoundsInfo.top &&
+ targetInfo.bottom < rootBoundsInfo.bottom) {
+ this.handler(false, stickyTarget);
+ }
+ }
+ }, {threshold: 0, root: this.container});
+ }
+
+ private observeElements() {
+ this.elementsObserver = new IntersectionObserver((entries) => {
+ let entry = entries.filter(entry => entry.boundingClientRect.top < 0).sort((a, b) => a.boundingClientRect.top - b.boundingClientRect.top)[0];
+ if(!entry) return;
+ let container = entry.isIntersecting ? entry.target : entry.target.nextElementSibling;
+ this.handler(true, container as HTMLElement);
+ }, {root: this.container});
+ }
+
+ /**
+ * @param {!Element} container
+ * @param {string} className
+ */
+ private addSentinel(container: HTMLElement, className: string) {
+ const sentinel = document.createElement('div');
+ sentinel.classList.add('sticky_sentinel', className);
+ return container.appendChild(sentinel);
+ }
+
+ /**
+ * Notifies when elements w/ the `sticky` class begin to stick or stop sticking.
+ * Note: the elements should be children of `container`.
+ * @param {!Element} container
+ */
+ public observeStickyHeaderChanges(element: HTMLElement) {
+ const headerSentinel = this.addSentinel(element, 'sticky_sentinel--top');
+ this.headersObserver.observe(headerSentinel);
+
+ this.elementsObserver.observe(element);
+ }
+
+ public disconnect() {
+ this.headersObserver.disconnect();
+ this.elementsObserver.disconnect();
+ }
+
+ public unobserve(element: HTMLElement, headerSentinel: HTMLElement) {
+ this.elementsObserver.unobserve(element);
+ this.headersObserver.unobserve(headerSentinel);
+ }
+}
\ No newline at end of file
diff --git a/src/components/wrappers.ts b/src/components/wrappers.ts
index b8aa9ff8..d902a47f 100644
--- a/src/components/wrappers.ts
+++ b/src/components/wrappers.ts
@@ -4,7 +4,7 @@ import apiManager from '../lib/mtproto/mtprotoworker';
import LottieLoader from '../lib/lottieLoader';
import appStickersManager from "../lib/appManagers/appStickersManager";
import appDocsManager from "../lib/appManagers/appDocsManager";
-import { formatBytes } from "../lib/utils";
+import { formatBytes, getEmojiToneIndex } from "../lib/utils";
import ProgressivePreloader from './preloader';
import LazyLoadQueue from './lazyLoadQueue';
import apiFileManager from '../lib/mtproto/apiFileManager';
@@ -108,7 +108,7 @@ export function wrapVideo({doc, container, message, boxWidth, boxHeight, withTai
container.append(video);
}
- let span: HTMLSpanElement;
+ let span: HTMLSpanElement, spanPlay: HTMLSpanElement;
if(doc.type != 'round') {
span = document.createElement('span');
span.classList.add('video-time');
@@ -117,7 +117,7 @@ export function wrapVideo({doc, container, message, boxWidth, boxHeight, withTai
if(doc.type != 'gif') {
span.innerText = (doc.duration + '').toHHMMSS(false);
- let spanPlay = document.createElement('span');
+ spanPlay = document.createElement('span');
spanPlay.classList.add('video-play', 'tgico-largeplay', 'btn-circle', 'position-center');
container.append(spanPlay);
} else {
@@ -127,11 +127,11 @@ export function wrapVideo({doc, container, message, boxWidth, boxHeight, withTai
let loadVideo = async() => {
if(message.media.preloader) { // means upload
- message.media.preloader.attach(container);
+ (message.media.preloader as ProgressivePreloader).attach(container, undefined, undefined, false);
} else if(!doc.downloaded) {
let preloader = new ProgressivePreloader(container, true);
let promise = appDocsManager.downloadDoc(doc);
- preloader.attach(container, true, promise);
+ preloader.attach(container, true, promise, false);
await promise;
}
@@ -684,7 +684,16 @@ export function wrapPhoto(photoID: string, message: any, container: HTMLDivEleme
return photo.downloaded ? load() : lazyLoadQueue.push({div: container, load: load, wasSeen: true});
}
-export function wrapSticker(doc: MTDocument, div: HTMLDivElement, middleware?: () => boolean, lazyLoadQueue?: LazyLoadQueue, group?: string, canvas?: boolean, play = false, onlyThumb = false) {
+export function wrapSticker({doc, div, middleware, lazyLoadQueue, group, play, onlyThumb, emoji}: {
+ doc: MTDocument,
+ div: HTMLDivElement,
+ middleware?: () => boolean,
+ lazyLoadQueue?: LazyLoadQueue,
+ group?: string,
+ play?: boolean,
+ onlyThumb?: boolean,
+ emoji?: string
+}) {
let stickerType = doc.sticker;
if(stickerType == 2 && !LottieLoader.loaded) {
@@ -699,6 +708,8 @@ export function wrapSticker(doc: MTDocument, div: HTMLDivElement, middleware?: (
div.dataset.docID = doc.id;
//console.log('wrap sticker', doc, div, onlyThumb);
+
+ const toneIndex = emoji ? getEmojiToneIndex(emoji) : -1;
if(doc.thumbs && !div.firstElementChild && (!doc.downloaded || stickerType == 2)) {
let thumb = doc.thumbs[0];
@@ -777,52 +788,52 @@ export function wrapSticker(doc: MTDocument, div: HTMLDivElement, middleware?: (
const reader = new FileReader();
reader.addEventListener('loadend', async(e) => {
- console.time('decompress sticker' + doc.id);
- console.time('render sticker' + doc.id);
+ //console.time('decompress sticker' + doc.id);
+ //console.time('render sticker' + doc.id);
// @ts-ignore
const text = e.srcElement.result;
let json = await apiManager.gzipUncompress(text, true);
- console.timeEnd('decompress sticker' + doc.id);
-
+ //console.timeEnd('decompress sticker' + doc.id);
+
+ console.log('sticker json:', json);
+
let animation = await LottieLoader.loadAnimation({
container: div,
loop: false,
autoplay: false,
animationData: JSON.parse(json),
- renderer: canvas ? 'canvas' : 'svg'
- }, group);
+ renderer: 'svg'
+ }, group, toneIndex);
- console.timeEnd('render sticker' + doc.id);
+ //console.timeEnd('render sticker' + doc.id);
if(div.firstElementChild && div.firstElementChild.tagName == 'IMG') {
div.firstElementChild.remove();
}
- if(!canvas) {
- div.addEventListener('mouseover', (e) => {
- let animation = LottieLoader.getAnimation(div, group);
+ div.addEventListener('mouseover', (e) => {
+ let animation = LottieLoader.getAnimation(div, group);
+
+ if(animation) {
+ //console.log('sticker hover', animation, div);
- if(animation) {
- //console.log('sticker hover', animation, div);
-
- // @ts-ignore
- animation.loop = true;
-
- // @ts-ignore
- if(animation.currentFrame == animation.totalFrames - 1) {
- animation.goToAndPlay(0, true);
- } else {
- animation.play();
- }
-
- div.addEventListener('mouseout', () => {
- // @ts-ignore
- animation.loop = false;
- }, {once: true});
+ // @ts-ignore
+ animation.loop = true;
+
+ // @ts-ignore
+ if(animation.currentFrame == animation.totalFrames - 1) {
+ animation.goToAndPlay(0, true);
+ } else {
+ animation.play();
}
- });
- }
+
+ div.addEventListener('mouseout', () => {
+ // @ts-ignore
+ animation.loop = false;
+ }, {once: true});
+ }
+ });
if(play) {
animation.play();
diff --git a/src/emoji.json b/src/emoji.json
index 87f4509d..f4511eab 100644
--- a/src/emoji.json
+++ b/src/emoji.json
@@ -1 +1 @@
-{"#⃣":6365,"*⃣":6366,"0⃣":6367,"1⃣":6368,"2⃣":6369,"3⃣":6370,"4⃣":6371,"5⃣":6372,"6⃣":6373,"7⃣":6374,"8⃣":6375,"9⃣":6376,"©":6362,"®":6363,"🀄":573,"🃏":572,"🅰":6383,"🅱":6385,"🅾":6394,"🅿":6396,"🆎":6384,"🆑":6386,"🆒":6387,"🆓":6388,"🆔":6390,"🆕":6392,"🆖":6393,"🆗":6395,"🆘":6397,"🆙":6398,"🆚":6399,"🇦🇨":78,"🇦🇩":79,"🇦🇪":710,"🇦🇫":711,"🇦🇬":712,"🇦🇮":713,"🇦🇱":714,"🇦🇲":715,"🇦🇴":716,"🇦🇶":717,"🇦🇷":718,"🇦🇸":719,"🇦🇹":720,"🇦🇺":721,"🇦🇼":722,"🇦🇽":723,"🇦🇿":724,"🇧🇦":725,"🇧🇧":726,"🇧🇩":727,"🇧🇪":728,"🇧🇫":729,"🇧🇬":730,"🇧🇭":731,"🇧🇮":732,"🇧🇯":733,"🇧🇱":734,"🇧🇲":735,"🇧🇳":736,"🇧🇴":737,"🇧🇶":738,"🇧🇷":739,"🇧🇸":740,"🇧🇹":741,"🇧🇻":742,"🇧🇼":743,"🇧🇾":744,"🇧🇿":745,"🇨🇦":746,"🇨🇨":747,"🇨🇩":748,"🇨🇫":749,"🇨🇬":750,"🇨🇭":751,"🇨🇮":752,"🇨🇰":753,"🇨🇱":754,"🇨🇲":755,"🇨🇳":756,"🇨🇴":757,"🇨🇵":758,"🇨🇷":759,"🇨🇺":760,"🇨🇻":761,"🇨🇼":762,"🇨🇽":763,"🇨🇾":764,"🇨🇿":765,"🇩🇪":766,"🇩🇬":767,"🇩🇯":768,"🇩🇰":769,"🇩🇲":770,"🇩🇴":771,"🇩🇿":772,"🇪🇦":773,"🇪🇨":774,"🇪🇪":775,"🇪🇬":776,"🇪🇭":777,"🇪🇷":778,"🇪🇸":779,"🇪🇹":780,"🇪🇺":781,"🇫🇮":782,"🇫🇯":783,"🇫🇰":784,"🇫🇲":785,"🇫🇴":786,"🇫🇷":787,"🇬🇦":788,"🇬🇧":789,"🇬🇩":790,"🇬🇪":791,"🇬🇫":792,"🇬🇬":793,"🇬🇭":794,"🇬🇮":795,"🇬🇱":796,"🇬🇲":797,"🇬🇳":798,"🇬🇵":799,"🇬🇶":7100,"🇬🇷":7101,"🇬🇸":7102,"🇬🇹":7103,"🇬🇺":7104,"🇬🇼":7105,"🇬🇾":7106,"🇭🇰":7107,"🇭🇲":7108,"🇭🇳":7109,"🇭🇷":7110,"🇭🇹":7111,"🇭🇺":7112,"🇮🇨":7113,"🇮🇩":7114,"🇮🇪":7115,"🇮🇱":7116,"🇮🇲":7117,"🇮🇳":7118,"🇮🇴":7119,"🇮🇶":7120,"🇮🇷":7121,"🇮🇸":7122,"🇮🇹":7123,"🇯🇪":7124,"🇯🇲":7125,"🇯🇴":7126,"🇯🇵":7127,"🇰🇪":7128,"🇰🇬":7129,"🇰🇭":7130,"🇰🇮":7131,"🇰🇲":7132,"🇰🇳":7133,"🇰🇵":7134,"🇰🇷":7135,"🇰🇼":7136,"🇰🇾":7137,"🇰🇿":7138,"🇱🇦":7139,"🇱🇧":7140,"🇱🇨":7141,"🇱🇮":7142,"🇱🇰":7143,"🇱🇷":7144,"🇱🇸":7145,"🇱🇹":7146,"🇱🇺":7147,"🇱🇻":7148,"🇱🇾":7149,"🇲🇦":7150,"🇲🇨":7151,"🇲🇩":7152,"🇲🇪":7153,"🇲🇫":7154,"🇲🇬":7155,"🇲🇭":7156,"🇲🇰":7157,"🇲🇱":7158,"🇲🇲":7159,"🇲🇳":7160,"🇲🇴":7161,"🇲🇵":7162,"🇲🇶":7163,"🇲🇷":7164,"🇲🇸":7165,"🇲🇹":7166,"🇲🇺":7167,"🇲🇻":7168,"🇲🇼":7169,"🇲🇽":7170,"🇲🇾":7171,"🇲🇿":7172,"🇳🇦":7173,"🇳🇨":7174,"🇳🇪":7175,"🇳🇫":7176,"🇳🇬":7177,"🇳🇮":7178,"🇳🇱":7179,"🇳🇴":7180,"🇳🇵":7181,"🇳🇷":7182,"🇳🇺":7183,"🇳🇿":7184,"🇴🇲":7185,"🇵🇦":7186,"🇵🇪":7187,"🇵🇫":7188,"🇵🇬":7189,"🇵🇭":7190,"🇵🇰":7191,"🇵🇱":7192,"🇵🇲":7193,"🇵🇳":7194,"🇵🇷":7195,"🇵🇸":7196,"🇵🇹":7197,"🇵🇼":7198,"🇵🇾":7199,"🇶🇦":7200,"🇷🇪":7201,"🇷🇴":7202,"🇷🇸":7203,"🇷🇺":7204,"🇷🇼":7205,"🇸🇦":7206,"🇸🇧":7207,"🇸🇨":7208,"🇸🇩":7209,"🇸🇪":7210,"🇸🇬":7211,"🇸🇭":7212,"🇸🇮":7213,"🇸🇯":7214,"🇸🇰":7215,"🇸🇱":7216,"🇸🇲":7217,"🇸🇳":7218,"🇸🇴":7219,"🇸🇷":7220,"🇸🇸":7221,"🇸🇹":7222,"🇸🇻":7223,"🇸🇽":7224,"🇸🇾":7225,"🇸🇿":7226,"🇹🇦":7227,"🇹🇨":7228,"🇹🇩":7229,"🇹🇫":7230,"🇹🇬":7231,"🇹🇭":7232,"🇹🇯":7233,"🇹🇰":7234,"🇹🇱":7235,"🇹🇲":7236,"🇹🇳":7237,"🇹🇴":7238,"🇹🇷":7239,"🇹🇹":7240,"🇹🇻":7241,"🇹🇼":7242,"🇹🇿":7243,"🇺🇦":7244,"🇺🇬":7245,"🇺🇲":7246,"🇺🇳":7247,"🇺🇸":7248,"🇺🇾":7249,"🇺🇿":7250,"🇻🇦":7251,"🇻🇨":7252,"🇻🇪":7253,"🇻🇬":7254,"🇻🇮":7255,"🇻🇳":7256,"🇻🇺":7257,"🇼🇫":7258,"🇼🇸":7259,"🇽🇰":7260,"🇾🇪":7261,"🇾🇹":7262,"🇿🇦":7263,"🇿🇲":7264,"🇿🇼":7265,"🈁":6400,"🈂":6401,"🈚":6407,"🈯":6404,"🈲":6408,"🈳":6412,"🈴":6411,"🈵":6416,"🈶":6403,"🈷":6402,"🈸":6410,"🈹":6406,"🈺":6415,"🉐":6405,"🉑":6409,"🌀":4197,"🌁":449,"🌂":4199,"🌃":450,"🌄":452,"🌅":453,"🌆":454,"🌇":455,"🌈":4198,"🌉":456,"🌊":4210,"🌋":410,"🌌":4184,"🌍":41,"🌎":42,"🌏":43,"🌐":44,"🌑":4164,"🌒":4165,"🌓":4166,"🌔":4167,"🌕":4168,"🌖":4169,"🌗":4170,"🌘":4171,"🌙":4172,"🌚":4173,"🌛":4174,"🌜":4175,"🌝":4178,"🌞":4179,"🌟":4182,"🌠":4183,"🌡":4176,"🌤":4188,"🌥":4189,"🌦":4190,"🌧":4191,"🌨":4192,"🌩":4193,"🌪":4194,"🌫":4195,"🌬":4196,"🌭":347,"🌮":349,"🌯":350,"🌰":331,"🌱":2116,"🌲":2117,"🌳":2118,"🌴":2119,"🌵":2120,"🌶":323,"🌷":2115,"🌸":2107,"🌹":2110,"🌺":2112,"🌻":2113,"🌼":2114,"🌽":322,"🌾":2121,"🌿":2122,"🍀":2124,"🍁":2125,"🍂":2126,"🍃":2127,"🍄":329,"🍅":316,"🍆":319,"🍇":31,"🍈":32,"🍉":33,"🍊":34,"🍋":35,"🍌":36,"🍍":37,"🍎":39,"🍏":310,"🍐":311,"🍑":312,"🍒":313,"🍓":314,"🍔":344,"🍕":346,"🍖":340,"🍗":341,"🍘":364,"🍙":365,"🍚":366,"🍛":367,"🍜":368,"🍝":369,"🍞":332,"🍟":345,"🍠":370,"🍡":376,"🍢":371,"🍣":372,"🍤":373,"🍥":374,"🍦":385,"🍧":386,"🍨":387,"🍩":388,"🍪":389,"🍫":394,"🍬":395,"🍭":396,"🍮":397,"🍯":398,"🍰":391,"🍱":363,"🍲":356,"🍳":354,"🍴":3118,"🍵":3102,"🍶":3103,"🍷":3105,"🍸":3106,"🍹":3107,"🍺":3108,"🍻":3109,"🍼":399,"🍽":3117,"🍾":3104,"🍿":359,"🎀":517,"🎁":518,"🎂":390,"🎃":51,"🎄":52,"🎅":9177,"🎆":53,"🎇":54,"🎈":57,"🎉":58,"🎊":59,"🎋":510,"🎌":73,"🎍":511,"🎎":512,"🎏":513,"🎐":514,"🎑":515,"🎒":625,"🎓":637,"🎖":522,"🎗":519,"🎙":656,"🎚":657,"🎛":658,"🎞":689,"🎟":520,"🎠":458,"🎡":459,"🎢":460,"🎣":549,"🎤":659,"🎥":688,"🎦":6324,"🎧":660,"🎨":577,"🎩":636,"🎪":462,"🎫":521,"🎬":691,"🎭":575,"🎮":561,"🎯":555,"🎰":563,"🎱":558,"🎲":564,"🎳":537,"🎴":574,"🎵":654,"🎶":655,"🎷":662,"🎸":663,"🎹":664,"🎺":665,"🎻":666,"🎼":653,"🎽":551,"🎾":535,"🎿":552,"🏀":531,"🏁":71,"🏂":9248,"🏃♀":9232,"🏃♂":9231,"🏃":9230,"🏄♀":9254,"🏄♂":9253,"🏄":9252,"🏅":524,"🏆":523,"🏇":9246,"🏈":533,"🏉":534,"🏊♀":9260,"🏊♂":9259,"🏊":9258,"🏋♀":9266,"🏋♂":9265,"🏋":9264,"🏌♀":9251,"🏌♂":9250,"🏌":9249,"🏍":492,"🏎":491,"🏏":538,"🏐":532,"🏑":539,"🏒":540,"🏓":542,"🏔":48,"🏕":412,"🏖":413,"🏗":419,"🏘":421,"🏙":451,"🏚":422,"🏛":418,"🏜":414,"🏝":415,"🏞":416,"🏟":417,"🏠":423,"🏡":424,"🏢":425,"🏣":426,"🏤":427,"🏥":428,"🏦":429,"🏧":6234,"🏨":430,"🏩":431,"🏪":432,"🏫":433,"🏬":434,"🏭":435,"🏮":6102,"🏯":436,"🏰":437,"🏳🌈":76,"🏳":75,"🏴☠":77,"🏴":7266,"🏴":7267,"🏴":7268,"🏴":74,"🏵":2109,"🏷":6120,"🏸":543,"🏹":6189,"🏺":3121,"🏻":81,"🏼":82,"🏽":83,"🏾":84,"🏿":85,"🐀":244,"🐁":243,"🐂":225,"🐃":226,"🐄":227,"🐅":217,"🐆":218,"🐇":247,"🐈":214,"🐉":282,"🐊":277,"🐋":286,"🐌":294,"🐍":280,"🐎":220,"🐏":232,"🐐":234,"🐑":233,"🐒":22,"🐓":262,"🐔":261,"🐕🦺":28,"🐕":26,"🐖":229,"🐗":230,"🐘":239,"🐙":292,"🐚":293,"🐛":296,"🐜":297,"🐝":298,"🐞":299,"🐟":288,"🐠":289,"🐡":290,"🐢":278,"🐣":263,"🐤":264,"🐥":265,"🐦":266,"🐧":267,"🐨":252,"🐩":29,"🐪":235,"🐫":236,"🐬":287,"🐭":242,"🐮":224,"🐯":216,"🐰":246,"🐱":213,"🐲":281,"🐳":285,"🐴":219,"🐵":21,"🐶":25,"🐷":228,"🐸":276,"🐹":245,"🐺":210,"🐻":251,"🐼":253,"🐽":231,"🐾":259,"🐿":248,"👀":945,"👁🗨":1145,"👁":946,"👂":939,"👃":941,"👄":948,"👅":947,"👆":915,"👇":917,"👈":913,"👉":914,"👊":922,"👋":91,"👌":96,"👍":919,"👎":920,"👏":925,"👐":927,"👑":634,"👒":635,"👓":61,"👔":66,"👕":67,"👖":68,"👗":613,"👘":614,"👙":619,"👚":620,"👛":621,"👜":622,"👝":623,"👞":626,"👟":627,"👠":630,"👡":631,"👢":633,"👣":9334,"👤":9332,"👥":9333,"👦":951,"👧":952,"👨🌾":9118,"👨🍳":9121,"👨🎓":9109,"👨🎤":9139,"👨🎨":9142,"👨🏫":9112,"👨🏭":9127,"👨👦👦":9322,"👨👦":9321,"👨👧👦":9324,"👨👧👧":9325,"👨👧":9323,"👨👨👦":9311,"👨👨👦👦":9314,"👨👨👧":9312,"👨👨👧👦":9313,"👨👨👧👧":9315,"👨👩👦":9306,"👨👩👦👦":9309,"👨👩👧":9307,"👨👩👧👦":9308,"👨👩👧👧":9310,"👨💻":9136,"👨💼":9130,"👨🔧":9124,"👨🔬":9133,"👨🚀":9148,"👨🚒":9151,"👨🦯":9222,"👨🦰":957,"👨🦱":958,"👨🦲":960,"👨🦳":959,"👨🦼":9225,"👨🦽":9228,"👨⚕":9106,"👨⚖":9115,"👨✈":9145,"👨❤👨":9303,"👨❤💋👨":9299,"👨":955,"👩🌾":9119,"👩🍳":9122,"👩🎓":9110,"👩🎤":9140,"👩🎨":9143,"👩🏫":9113,"👩🏭":9128,"👩👦👦":9327,"👩👦":9326,"👩👧👦":9329,"👩👧👧":9330,"👩👧":9328,"👩👩👦":9316,"👩👩👦👦":9319,"👩👩👧":9317,"👩👩👧👦":9318,"👩👩👧👧":9320,"👩💻":9137,"👩💼":9131,"👩🔧":9125,"👩🔬":9134,"👩🚀":9149,"👩🚒":9152,"👩🦯":9223,"👩🦰":962,"👩🦱":964,"👩🦲":968,"👩🦳":966,"👩🦼":9226,"👩🦽":9229,"👩⚕":9107,"👩⚖":9116,"👩✈":9146,"👩❤👨":9302,"👩❤👩":9304,"👩❤💋👨":9298,"👩❤💋👩":9300,"👩":961,"👪":9305,"👫":9295,"👬":9296,"👭":9294,"👮♀":9155,"👮♂":9154,"👮":9153,"👯♀":9238,"👯♂":9237,"👯":9236,"👰":9173,"👱♀":970,"👱♂":971,"👱":954,"👲":9170,"👳♀":9169,"👳♂":9168,"👳":9167,"👴":973,"👵":974,"👶":949,"👷♀":9164,"👷♂":9163,"👷":9162,"👸":9166,"👹":197,"👺":198,"👻":199,"👼":9176,"👽":1100,"👾":1101,"👿":192,"💀":193,"💁♀":989,"💁♂":988,"💁":987,"💂♀":9161,"💂♂":9160,"💂":9159,"💃":9233,"💄":641,"💅":932,"💆♀":9208,"💆♂":9207,"💆":9206,"💇♀":9211,"💇♂":9210,"💇":9209,"💈":461,"💉":6208,"💊":6210,"💋":1115,"💌":1116,"💍":642,"💎":643,"💏":9297,"💐":2106,"💑":9301,"💒":438,"💓":1121,"💔":1126,"💕":1123,"💖":1119,"💗":1120,"💘":1117,"💙":1131,"💚":1130,"💛":1129,"💜":1132,"💝":1118,"💞":1122,"💟":1124,"💠":6447,"💡":6100,"💢":1137,"💣":1143,"💤":1149,"💥":1138,"💦":1140,"💧":4209,"💨":1141,"💩":195,"💪":934,"💫":1139,"💬":1144,"💭":1148,"💮":2108,"💯":1136,"💰":6121,"💱":6130,"💲":6131,"💳":6127,"💴":6122,"💵":6123,"💶":6124,"💷":6125,"💸":6126,"💹":6129,"💺":4123,"💻":677,"💼":6152,"💽":683,"💾":684,"💿":685,"📀":686,"📁":6153,"📂":6154,"📃":6113,"📄":6115,"📅":6156,"📆":6157,"📇":6160,"📈":6161,"📉":6162,"📊":6163,"📋":6164,"📌":6165,"📍":6166,"📎":6167,"📏":6169,"📐":6170,"📑":6118,"📒":6112,"📓":6111,"📔":6104,"📕":6105,"📖":6106,"📗":6107,"📘":6108,"📙":6109,"📚":6110,"📛":6337,"📜":6114,"📝":6151,"📞":672,"📟":673,"📠":674,"📡":6207,"📢":648,"📣":649,"📤":6136,"📥":6137,"📦":6138,"📧":6133,"📨":6134,"📩":6135,"📪":6140,"📫":6139,"📬":6141,"📭":6142,"📮":6143,"📯":650,"📰":6116,"📱":669,"📲":670,"📳":6328,"📴":6329,"📵":6256,"📶":6327,"📷":693,"📸":694,"📹":695,"📺":692,"📻":661,"📼":696,"📽":690,"📿":640,"🔀":6306,"🔁":6307,"🔂":6308,"🔃":6274,"🔄":6275,"🔅":6325,"🔆":6326,"🔇":644,"🔈":645,"🔉":646,"🔊":647,"🔋":675,"🔌":676,"🔍":697,"🔎":698,"🔏":6177,"🔐":6178,"🔑":6179,"🔒":6175,"🔓":6176,"🔔":651,"🔕":652,"🔖":6119,"🔗":6197,"🔘":6448,"🔙":6276,"🔚":6277,"🔛":6278,"🔜":6279,"🔝":6280,"🔞":6257,"🔟":6377,"🔠":6378,"🔡":6379,"🔢":6380,"🔣":6381,"🔤":6382,"🔥":4208,"🔦":6101,"🔧":6191,"🔨":6181,"🔩":6192,"🔪":3120,"🔫":6188,"🔬":6205,"🔭":6206,"🔮":559,"🔯":6292,"🔰":6338,"🔱":6336,"🔲":6450,"🔳":6449,"🔴":6417,"🔵":6421,"🔶":6441,"🔷":6442,"🔸":6443,"🔹":6444,"🔺":6445,"🔻":6446,"🔼":6316,"🔽":6318,"🕉":6283,"🕊":268,"🕋":446,"🕌":442,"🕍":444,"🕎":6291,"🕐":4142,"🕑":4144,"🕒":4146,"🕓":4148,"🕔":4150,"🕕":4152,"🕖":4154,"🕗":4156,"🕘":4158,"🕙":4160,"🕚":4162,"🕛":4140,"🕜":4143,"🕝":4145,"🕞":4147,"🕟":4149,"🕠":4151,"🕡":4153,"🕢":4155,"🕣":4157,"🕤":4159,"🕥":4161,"🕦":4163,"🕧":4141,"🕯":699,"🕰":4139,"🕳":1142,"🕴":9235,"🕵♀":9158,"🕵♂":9157,"🕵":9156,"🕶":62,"🕷":2101,"🕸":2102,"🕹":562,"🕺":9234,"🖇":6168,"🖊":6148,"🖋":6147,"🖌":6149,"🖍":6150,"🖐":93,"🖕":916,"🖖":95,"🖤":1134,"🖥":678,"🖨":679,"🖱":681,"🖲":682,"🖼":576,"🗂":6155,"🗃":6172,"🗄":6173,"🗑":6174,"🗒":6158,"🗓":6159,"🗜":6194,"🗝":6180,"🗞":6117,"🗡":6186,"🗣":9331,"🗨":1146,"🗯":1147,"🗳":6144,"🗺":45,"🗻":411,"🗼":439,"🗽":440,"🗾":46,"🗿":6233,"😀":11,"😁":14,"😂":18,"😃":12,"😄":13,"😅":16,"😆":15,"😇":113,"😈":191,"😉":111,"😊":112,"😋":122,"😌":142,"😍":115,"😎":160,"😏":137,"😐":134,"😑":135,"😒":138,"😓":183,"😔":143,"😕":163,"😖":180,"😗":118,"😘":117,"😙":121,"😚":120,"😛":123,"😜":124,"😝":126,"😞":182,"😟":164,"😠":189,"😡":188,"😢":177,"😣":181,"😤":187,"😥":176,"😦":172,"😧":173,"😨":174,"😩":184,"😪":144,"😫":185,"😬":140,"😭":178,"😮":167,"😯":168,"😰":175,"😱":179,"😲":169,"😳":170,"😴":146,"😵":156,"😶":136,"😷":147,"😸":1104,"😹":1105,"😺":1103,"😻":1106,"😼":1107,"😽":1108,"😾":1111,"😿":1110,"🙀":1109,"🙁":165,"🙂":19,"🙃":110,"🙄":139,"🙅♀":983,"🙅♂":982,"🙅":981,"🙆♀":986,"🙆♂":985,"🙆":984,"🙇♀":998,"🙇♂":997,"🙇":996,"🙈":1112,"🙉":1113,"🙊":1114,"🙋♀":992,"🙋♂":991,"🙋":990,"🙌":926,"🙍♀":977,"🙍♂":976,"🙍":975,"🙎♀":980,"🙎♂":979,"🙎":978,"🙏":930,"🚀":4129,"🚁":4124,"🚂":463,"🚃":464,"🚄":465,"🚅":466,"🚆":467,"🚇":468,"🚈":469,"🚉":470,"🚊":471,"🚋":474,"🚌":475,"🚍":476,"🚎":477,"🚏":4100,"🚐":478,"🚑":479,"🚒":480,"🚓":481,"🚔":482,"🚕":483,"🚖":484,"🚗":485,"🚘":486,"🚙":487,"🚚":488,"🚛":489,"🚜":490,"🚝":472,"🚞":473,"🚟":4125,"🚠":4126,"🚡":4127,"🚢":4117,"🚣♀":9257,"🚣♂":9256,"🚣":9255,"🚤":4113,"🚥":4106,"🚦":4107,"🚧":4109,"🚨":4105,"🚩":72,"🚪":6213,"🚫":6250,"🚬":6230,"🚭":6252,"🚮":6235,"🚯":6253,"🚰":6236,"🚱":6254,"🚲":497,"🚳":6251,"🚴♀":9269,"🚴♂":9268,"🚴":9267,"🚵♀":9272,"🚵♂":9271,"🚵":9270,"🚶♀":9214,"🚶♂":9213,"🚶":9212,"🚷":6255,"🚸":6248,"🚹":6238,"🚺":6239,"🚻":6240,"🚼":6241,"🚽":6217,"🚾":6242,"🚿":6218,"🛀":9291,"🛁":6219,"🛂":6243,"🛃":6244,"🛄":6245,"🛅":6246,"🛋":6215,"🛌":9292,"🛍":624,"🛎":4131,"🛏":6214,"🛐":6281,"🛑":4108,"🛒":6229,"🛕":443,"🛠":6185,"🛡":6190,"🛢":4103,"🛣":4101,"🛤":4102,"🛥":4116,"🛩":4119,"🛫":4120,"🛬":4121,"🛰":4128,"🛳":4114,"🛴":498,"🛵":493,"🛶":4112,"🛷":553,"🛸":4130,"🛹":499,"🛺":496,"🟠":6418,"🟡":6419,"🟢":6420,"🟣":6422,"🟤":6423,"🟥":6426,"🟦":6430,"🟧":6427,"🟨":6428,"🟩":6429,"🟪":6431,"🟫":6432,"🤍":1135,"🤎":1133,"🤏":97,"🤐":132,"🤑":127,"🤒":148,"🤓":161,"🤔":131,"🤕":149,"🤖":1102,"🤗":128,"🤘":911,"🤙":912,"🤚":92,"🤛":923,"🤜":924,"🤝":929,"🤞":99,"🤟":910,"🤠":158,"🤡":196,"🤢":150,"🤣":17,"🤤":145,"🤥":141,"🤦♀":9101,"🤦♂":9100,"🤦":999,"🤧":152,"🤨":133,"🤩":116,"🤪":125,"🤫":130,"🤬":190,"🤭":129,"🤮":151,"🤯":157,"🤰":9174,"🤱":9175,"🤲":928,"🤳":933,"🤴":9165,"🤵":9172,"🤶":9178,"🤷♀":9104,"🤷♂":9103,"🤷":9102,"🤸♀":9275,"🤸♂":9274,"🤸":9273,"🤹♀":9287,"🤹♂":9286,"🤹":9285,"🤺":9245,"🤼♀":9278,"🤼♂":9277,"🤼":9276,"🤽♀":9281,"🤽♂":9280,"🤽":9279,"🤾♀":9284,"🤾♂":9283,"🤾":9282,"🤿":550,"🥀":2111,"🥁":668,"🥂":3110,"🥃":3111,"🥄":3119,"🥅":546,"🥇":525,"🥈":526,"🥉":527,"🥊":544,"🥋":545,"🥌":554,"🥍":541,"🥎":530,"🥏":536,"🥐":333,"🥑":318,"🥒":324,"🥓":343,"🥔":320,"🥕":321,"🥖":334,"🥗":358,"🥘":355,"🥙":351,"🥚":353,"🥛":3100,"🥜":330,"🥝":315,"🥞":337,"🥟":377,"🥠":378,"🥡":379,"🥢":3116,"🥣":357,"🥤":3112,"🥥":317,"🥦":326,"🥧":393,"🥨":335,"🥩":342,"🥪":348,"🥫":362,"🥬":325,"🥭":38,"🥮":375,"🥯":336,"🥰":114,"🥱":186,"🥳":159,"🥴":155,"🥵":153,"🥶":154,"🥺":171,"🥻":615,"🥼":64,"🥽":63,"🥾":628,"🥿":629,"🦀":380,"🦁":215,"🦂":2103,"🦃":260,"🦄":221,"🦅":269,"🦆":270,"🦇":250,"🦈":291,"🦉":272,"🦊":211,"🦋":295,"🦌":223,"🦍":23,"🦎":279,"🦏":240,"🦐":382,"🦑":383,"🦒":238,"🦓":222,"🦔":249,"🦕":283,"🦖":284,"🦗":2100,"🦘":257,"🦙":237,"🦚":274,"🦛":241,"🦜":275,"🦝":212,"🦞":381,"🦟":2104,"🦠":2105,"🦡":258,"🦢":271,"🦥":254,"🦦":255,"🦧":24,"🦨":256,"🦩":273,"🦪":384,"🦮":27,"🦯":6196,"🦴":944,"🦵":937,"🦶":938,"🦷":943,"🦸♀":9181,"🦸♂":9180,"🦸":9179,"🦹♀":9184,"🦹♂":9183,"🦹":9182,"🦺":65,"🦻":940,"🦼":495,"🦽":494,"🦾":935,"🦿":936,"🧀":339,"🧁":392,"🧂":361,"🧃":3113,"🧄":327,"🧅":328,"🧆":352,"🧇":338,"🧈":360,"🧉":3114,"🧊":3115,"🧍♀":9217,"🧍♂":9216,"🧍":9215,"🧎♀":9220,"🧎♂":9219,"🧎":9218,"🧏♀":995,"🧏♂":994,"🧏":993,"🧐":162,"🧑🌾":9117,"🧑🍳":9120,"🧑🎓":9108,"🧑🎤":9138,"🧑🎨":9141,"🧑🏫":9111,"🧑🏭":9126,"🧑💻":9135,"🧑💼":9129,"🧑🔧":9123,"🧑🔬":9132,"🧑🚀":9147,"🧑🚒":9150,"🧑🤝🧑":9293,"🧑🦯":9221,"🧑🦰":963,"🧑🦱":965,"🧑🦲":969,"🧑🦳":967,"🧑🦼":9224,"🧑🦽":9227,"🧑⚕":9105,"🧑⚖":9114,"🧑✈":9144,"🧑":953,"🧒":950,"🧓":972,"🧔":956,"🧕":9171,"🧖♀":9241,"🧖♂":9240,"🧖":9239,"🧗♀":9244,"🧗♂":9243,"🧗":9242,"🧘♀":9290,"🧘♂":9289,"🧘":9288,"🧙♀":9187,"🧙♂":9186,"🧙":9185,"🧚♀":9190,"🧚♂":9189,"🧚":9188,"🧛♀":9193,"🧛♂":9192,"🧛":9191,"🧜♀":9196,"🧜♂":9195,"🧜":9194,"🧝♀":9199,"🧝♂":9198,"🧝":9197,"🧞♀":9202,"🧞♂":9201,"🧞":9200,"🧟♀":9205,"🧟♂":9204,"🧟":9203,"🧠":942,"🧡":1128,"🧢":638,"🧣":69,"🧤":610,"🧥":611,"🧦":612,"🧧":516,"🧨":55,"🧩":565,"🧪":6202,"🧫":6203,"🧬":6204,"🧭":47,"🧮":687,"🧯":6228,"🧰":6199,"🧱":420,"🧲":6200,"🧳":4132,"🧴":6221,"🧵":578,"🧶":579,"🧷":6222,"🧸":566,"🧹":6223,"🧺":6224,"🧻":6225,"🧼":6226,"🧽":6227,"🧾":6128,"🧿":560,"🩰":632,"🩱":616,"🩲":617,"🩳":618,"🩸":6209,"🩹":6211,"🩺":6212,"🪀":556,"🪁":557,"🪂":4122,"🪐":4180,"🪑":6216,"🪒":6220,"🪓":6182,"🪔":6103,"🪕":667,"‼":6355,"⁉":6356,"™":6364,"ℹ":6389,"↔":6269,"↕":6268,"↖":6267,"↗":6261,"↘":6263,"↙":6265,"↩":6270,"↪":6271,"⌚":4135,"⌛":4133,"⌨":680,"⏏":6323,"⏩":6310,"⏪":6314,"⏫":6317,"⏬":6319,"⏭":6311,"⏮":6315,"⏯":6312,"⏰":4136,"⏱":4137,"⏲":4138,"⏳":4134,"⏸":6320,"⏹":6321,"⏺":6322,"Ⓜ":6391,"▪":6439,"▫":6440,"▶":6309,"◀":6313,"◻":6436,"◼":6435,"◽":6438,"◾":6437,"☀":4177,"☁":4185,"☂":4200,"☃":4205,"☄":4207,"☎":671,"☑":6341,"☔":4201,"☕":3101,"☘":2123,"☝":918,"☠":194,"☢":6258,"☣":6259,"☦":6288,"☪":6289,"☮":6290,"☯":6286,"☸":6285,"☹":166,"☺":119,"♈":6293,"♉":6294,"♊":6295,"♋":6296,"♌":6297,"♍":6298,"♎":6299,"♏":6300,"♐":6301,"♑":6302,"♒":6303,"♓":6304,"♟":571,"♠":567,"♣":570,"♥":568,"♦":569,"♨":457,"♻":6334,"♾":6333,"♿":6237,"⚒":6184,"⚓":4110,"⚔":6187,"⚖":6195,"⚗":6201,"⚙":6193,"⚛":6282,"⚜":6335,"⚠":6247,"⚡":4203,"⚪":6425,"⚫":6424,"⚰":6231,"⚱":6232,"⚽":528,"⚾":529,"⛄":4206,"⛅":4186,"⛈":4187,"⛎":6305,"⛏":6183,"⛑":639,"⛓":6198,"⛔":6249,"⛩":445,"⛪":441,"⛰":49,"⛱":4202,"⛲":447,"⛳":547,"⛴":4115,"⛵":4111,"⛷":9247,"⛸":548,"⛹♀":9263,"⛹♂":9262,"⛹":9261,"⛺":448,"⛽":4104,"✂":6171,"✅":6340,"✈":4118,"✉":6132,"✊":921,"✋":94,"✌":98,"✍":931,"✏":6145,"✒":6146,"✔":6342,"✖":6343,"✝":6287,"✡":6284,"✨":56,"✳":6352,"✴":6353,"❄":4204,"❇":6354,"❌":6344,"❎":6345,"❓":6357,"❔":6358,"❕":6359,"❗":6360,"❣":1125,"❤":1127,"➕":6346,"➖":6347,"➗":6348,"➡":6262,"➰":6349,"➿":6350,"⤴":6272,"⤵":6273,"⬅":6266,"⬆":6260,"⬇":6264,"⬛":6433,"⬜":6434,"⭐":4181,"⭕":6339,"〰":6361,"〽":6351,"㊗":6413,"㊙":6414,"🎅🏻":0,"🎅🏼":0,"🎅🏽":0,"🎅🏾":0,"🎅🏿":0,"🏂🏻":0,"🏂🏼":0,"🏂🏽":0,"🏂🏾":0,"🏂🏿":0,"🏃🏻♀":0,"🏃🏼♀":0,"🏃🏽♀":0,"🏃🏾♀":0,"🏃🏿♀":0,"🏃🏻♂":0,"🏃🏼♂":0,"🏃🏽♂":0,"🏃🏾♂":0,"🏃🏿♂":0,"🏃🏻":0,"🏃🏼":0,"🏃🏽":0,"🏃🏾":0,"🏃🏿":0,"🏄🏻♀":0,"🏄🏼♀":0,"🏄🏽♀":0,"🏄🏾♀":0,"🏄🏿♀":0,"🏄🏻♂":0,"🏄🏼♂":0,"🏄🏽♂":0,"🏄🏾♂":0,"🏄🏿♂":0,"🏄🏻":0,"🏄🏼":0,"🏄🏽":0,"🏄🏾":0,"🏄🏿":0,"🏇🏻":0,"🏇🏼":0,"🏇🏽":0,"🏇🏾":0,"🏇🏿":0,"🏊🏻♀":0,"🏊🏼♀":0,"🏊🏽♀":0,"🏊🏾♀":0,"🏊🏿♀":0,"🏊🏻♂":0,"🏊🏼♂":0,"🏊🏽♂":0,"🏊🏾♂":0,"🏊🏿♂":0,"🏊🏻":0,"🏊🏼":0,"🏊🏽":0,"🏊🏾":0,"🏊🏿":0,"🏋🏻♀":0,"🏋🏼♀":0,"🏋🏽♀":0,"🏋🏾♀":0,"🏋🏿♀":0,"🏋🏻♂":0,"🏋🏼♂":0,"🏋🏽♂":0,"🏋🏾♂":0,"🏋🏿♂":0,"🏋🏻":0,"🏋🏼":0,"🏋🏽":0,"🏋🏾":0,"🏋🏿":0,"🏌🏻♀":0,"🏌🏼♀":0,"🏌🏽♀":0,"🏌🏾♀":0,"🏌🏿♀":0,"🏌🏻♂":0,"🏌🏼♂":0,"🏌🏽♂":0,"🏌🏾♂":0,"🏌🏿♂":0,"🏌🏻":0,"🏌🏼":0,"🏌🏽":0,"🏌🏾":0,"🏌🏿":0,"👂🏻":0,"👂🏼":0,"👂🏽":0,"👂🏾":0,"👂🏿":0,"👃🏻":0,"👃🏼":0,"👃🏽":0,"👃🏾":0,"👃🏿":0,"👆🏻":0,"👆🏼":0,"👆🏽":0,"👆🏾":0,"👆🏿":0,"👇🏻":0,"👇🏼":0,"👇🏽":0,"👇🏾":0,"👇🏿":0,"👈🏻":0,"👈🏼":0,"👈🏽":0,"👈🏾":0,"👈🏿":0,"👉🏻":0,"👉🏼":0,"👉🏽":0,"👉🏾":0,"👉🏿":0,"👊🏻":0,"👊🏼":0,"👊🏽":0,"👊🏾":0,"👊🏿":0,"👋🏻":0,"👋🏼":0,"👋🏽":0,"👋🏾":0,"👋🏿":0,"👌🏻":0,"👌🏼":0,"👌🏽":0,"👌🏾":0,"👌🏿":0,"👍🏻":0,"👍🏼":0,"👍🏽":0,"👍🏾":0,"👍🏿":0,"👎🏻":0,"👎🏼":0,"👎🏽":0,"👎🏾":0,"👎🏿":0,"👏🏻":0,"👏🏼":0,"👏🏽":0,"👏🏾":0,"👏🏿":0,"👐🏻":0,"👐🏼":0,"👐🏽":0,"👐🏾":0,"👐🏿":0,"👦🏻":0,"👦🏼":0,"👦🏽":0,"👦🏾":0,"👦🏿":0,"👧🏻":0,"👧🏼":0,"👧🏽":0,"👧🏾":0,"👧🏿":0,"👨🏻🌾":0,"👨🏼🌾":0,"👨🏽🌾":0,"👨🏾🌾":0,"👨🏿🌾":0,"👨🏻🍳":0,"👨🏼🍳":0,"👨🏽🍳":0,"👨🏾🍳":0,"👨🏿🍳":0,"👨🏻🎓":0,"👨🏼🎓":0,"👨🏽🎓":0,"👨🏾🎓":0,"👨🏿🎓":0,"👨🏻🎤":0,"👨🏼🎤":0,"👨🏽🎤":0,"👨🏾🎤":0,"👨🏿🎤":0,"👨🏻🎨":0,"👨🏼🎨":0,"👨🏽🎨":0,"👨🏾🎨":0,"👨🏿🎨":0,"👨🏻🏫":0,"👨🏼🏫":0,"👨🏽🏫":0,"👨🏾🏫":0,"👨🏿🏫":0,"👨🏻🏭":0,"👨🏼🏭":0,"👨🏽🏭":0,"👨🏾🏭":0,"👨🏿🏭":0,"👨🏻💻":0,"👨🏼💻":0,"👨🏽💻":0,"👨🏾💻":0,"👨🏿💻":0,"👨🏻💼":0,"👨🏼💼":0,"👨🏽💼":0,"👨🏾💼":0,"👨🏿💼":0,"👨🏻🔧":0,"👨🏼🔧":0,"👨🏽🔧":0,"👨🏾🔧":0,"👨🏿🔧":0,"👨🏻🔬":0,"👨🏼🔬":0,"👨🏽🔬":0,"👨🏾🔬":0,"👨🏿🔬":0,"👨🏻🚀":0,"👨🏼🚀":0,"👨🏽🚀":0,"👨🏾🚀":0,"👨🏿🚀":0,"👨🏻🚒":0,"👨🏼🚒":0,"👨🏽🚒":0,"👨🏾🚒":0,"👨🏿🚒":0,"👨🏻🦯":0,"👨🏼🦯":0,"👨🏽🦯":0,"👨🏾🦯":0,"👨🏿🦯":0,"👨🏻🦰":0,"👨🏼🦰":0,"👨🏽🦰":0,"👨🏾🦰":0,"👨🏿🦰":0,"👨🏻🦱":0,"👨🏼🦱":0,"👨🏽🦱":0,"👨🏾🦱":0,"👨🏿🦱":0,"👨🏻🦲":0,"👨🏼🦲":0,"👨🏽🦲":0,"👨🏾🦲":0,"👨🏿🦲":0,"👨🏻🦳":0,"👨🏼🦳":0,"👨🏽🦳":0,"👨🏾🦳":0,"👨🏿🦳":0,"👨🏻🦼":0,"👨🏼🦼":0,"👨🏽🦼":0,"👨🏾🦼":0,"👨🏿🦼":0,"👨🏻🦽":0,"👨🏼🦽":0,"👨🏽🦽":0,"👨🏾🦽":0,"👨🏿🦽":0,"👨🏻⚕":0,"👨🏼⚕":0,"👨🏽⚕":0,"👨🏾⚕":0,"👨🏿⚕":0,"👨🏻⚖":0,"👨🏼⚖":0,"👨🏽⚖":0,"👨🏾⚖":0,"👨🏿⚖":0,"👨🏻✈":0,"👨🏼✈":0,"👨🏽✈":0,"👨🏾✈":0,"👨🏿✈":0,"👨🏻":0,"👨🏼":0,"👨🏽":0,"👨🏾":0,"👨🏿":0,"👩🏻🌾":0,"👩🏼🌾":0,"👩🏽🌾":0,"👩🏾🌾":0,"👩🏿🌾":0,"👩🏻🍳":0,"👩🏼🍳":0,"👩🏽🍳":0,"👩🏾🍳":0,"👩🏿🍳":0,"👩🏻🎓":0,"👩🏼🎓":0,"👩🏽🎓":0,"👩🏾🎓":0,"👩🏿🎓":0,"👩🏻🎤":0,"👩🏼🎤":0,"👩🏽🎤":0,"👩🏾🎤":0,"👩🏿🎤":0,"👩🏻🎨":0,"👩🏼🎨":0,"👩🏽🎨":0,"👩🏾🎨":0,"👩🏿🎨":0,"👩🏻🏫":0,"👩🏼🏫":0,"👩🏽🏫":0,"👩🏾🏫":0,"👩🏿🏫":0,"👩🏻🏭":0,"👩🏼🏭":0,"👩🏽🏭":0,"👩🏾🏭":0,"👩🏿🏭":0,"👩🏻💻":0,"👩🏼💻":0,"👩🏽💻":0,"👩🏾💻":0,"👩🏿💻":0,"👩🏻💼":0,"👩🏼💼":0,"👩🏽💼":0,"👩🏾💼":0,"👩🏿💼":0,"👩🏻🔧":0,"👩🏼🔧":0,"👩🏽🔧":0,"👩🏾🔧":0,"👩🏿🔧":0,"👩🏻🔬":0,"👩🏼🔬":0,"👩🏽🔬":0,"👩🏾🔬":0,"👩🏿🔬":0,"👩🏻🚀":0,"👩🏼🚀":0,"👩🏽🚀":0,"👩🏾🚀":0,"👩🏿🚀":0,"👩🏻🚒":0,"👩🏼🚒":0,"👩🏽🚒":0,"👩🏾🚒":0,"👩🏿🚒":0,"👩🏻🦯":0,"👩🏼🦯":0,"👩🏽🦯":0,"👩🏾🦯":0,"👩🏿🦯":0,"👩🏻🦰":0,"👩🏼🦰":0,"👩🏽🦰":0,"👩🏾🦰":0,"👩🏿🦰":0,"👩🏻🦱":0,"👩🏼🦱":0,"👩🏽🦱":0,"👩🏾🦱":0,"👩🏿🦱":0,"👩🏻🦲":0,"👩🏼🦲":0,"👩🏽🦲":0,"👩🏾🦲":0,"👩🏿🦲":0,"👩🏻🦳":0,"👩🏼🦳":0,"👩🏽🦳":0,"👩🏾🦳":0,"👩🏿🦳":0,"👩🏻🦼":0,"👩🏼🦼":0,"👩🏽🦼":0,"👩🏾🦼":0,"👩🏿🦼":0,"👩🏻🦽":0,"👩🏼🦽":0,"👩🏽🦽":0,"👩🏾🦽":0,"👩🏿🦽":0,"👩🏻⚕":0,"👩🏼⚕":0,"👩🏽⚕":0,"👩🏾⚕":0,"👩🏿⚕":0,"👩🏻⚖":0,"👩🏼⚖":0,"👩🏽⚖":0,"👩🏾⚖":0,"👩🏿⚖":0,"👩🏻✈":0,"👩🏼✈":0,"👩🏽✈":0,"👩🏾✈":0,"👩🏿✈":0,"👩🏻":0,"👩🏼":0,"👩🏽":0,"👩🏾":0,"👩🏿":0,"👫🏻":0,"👫🏼":0,"👫🏽":0,"👫🏾":0,"👫🏿":0,"👩🏻🤝👨🏼":0,"👩🏻🤝👨🏽":0,"👩🏻🤝👨🏾":0,"👩🏻🤝👨🏿":0,"👩🏼🤝👨🏻":0,"👩🏼🤝👨🏽":0,"👩🏼🤝👨🏾":0,"👩🏼🤝👨🏿":0,"👩🏽🤝👨🏻":0,"👩🏽🤝👨🏼":0,"👩🏽🤝👨🏾":0,"👩🏽🤝👨🏿":0,"👩🏾🤝👨🏻":0,"👩🏾🤝👨🏼":0,"👩🏾🤝👨🏽":0,"👩🏾🤝👨🏿":0,"👩🏿🤝👨🏻":0,"👩🏿🤝👨🏼":0,"👩🏿🤝👨🏽":0,"👩🏿🤝👨🏾":0,"👬🏻":0,"👬🏼":0,"👬🏽":0,"👬🏾":0,"👬🏿":0,"👨🏻🤝👨🏼":0,"👨🏻🤝👨🏽":0,"👨🏻🤝👨🏾":0,"👨🏻🤝👨🏿":0,"👨🏼🤝👨🏻":0,"👨🏼🤝👨🏽":0,"👨🏼🤝👨🏾":0,"👨🏼🤝👨🏿":0,"👨🏽🤝👨🏻":0,"👨🏽🤝👨🏼":0,"👨🏽🤝👨🏾":0,"👨🏽🤝👨🏿":0,"👨🏾🤝👨🏻":0,"👨🏾🤝👨🏼":0,"👨🏾🤝👨🏽":0,"👨🏾🤝👨🏿":0,"👨🏿🤝👨🏻":0,"👨🏿🤝👨🏼":0,"👨🏿🤝👨🏽":0,"👨🏿🤝👨🏾":0,"👭🏻":0,"👭🏼":0,"👭🏽":0,"👭🏾":0,"👭🏿":0,"👩🏻🤝👩🏼":0,"👩🏻🤝👩🏽":0,"👩🏻🤝👩🏾":0,"👩🏻🤝👩🏿":0,"👩🏼🤝👩🏻":0,"👩🏼🤝👩🏽":0,"👩🏼🤝👩🏾":0,"👩🏼🤝👩🏿":0,"👩🏽🤝👩🏻":0,"👩🏽🤝👩🏼":0,"👩🏽🤝👩🏾":0,"👩🏽🤝👩🏿":0,"👩🏾🤝👩🏻":0,"👩🏾🤝👩🏼":0,"👩🏾🤝👩🏽":0,"👩🏾🤝👩🏿":0,"👩🏿🤝👩🏻":0,"👩🏿🤝👩🏼":0,"👩🏿🤝👩🏽":0,"👩🏿🤝👩🏾":0,"👮🏻♀":0,"👮🏼♀":0,"👮🏽♀":0,"👮🏾♀":0,"👮🏿♀":0,"👮🏻♂":0,"👮🏼♂":0,"👮🏽♂":0,"👮🏾♂":0,"👮🏿♂":0,"👮🏻":0,"👮🏼":0,"👮🏽":0,"👮🏾":0,"👮🏿":0,"👰🏻":0,"👰🏼":0,"👰🏽":0,"👰🏾":0,"👰🏿":0,"👱🏻♀":0,"👱🏼♀":0,"👱🏽♀":0,"👱🏾♀":0,"👱🏿♀":0,"👱🏻♂":0,"👱🏼♂":0,"👱🏽♂":0,"👱🏾♂":0,"👱🏿♂":0,"👱🏻":0,"👱🏼":0,"👱🏽":0,"👱🏾":0,"👱🏿":0,"👲🏻":0,"👲🏼":0,"👲🏽":0,"👲🏾":0,"👲🏿":0,"👳🏻♀":0,"👳🏼♀":0,"👳🏽♀":0,"👳🏾♀":0,"👳🏿♀":0,"👳🏻♂":0,"👳🏼♂":0,"👳🏽♂":0,"👳🏾♂":0,"👳🏿♂":0,"👳🏻":0,"👳🏼":0,"👳🏽":0,"👳🏾":0,"👳🏿":0,"👴🏻":0,"👴🏼":0,"👴🏽":0,"👴🏾":0,"👴🏿":0,"👵🏻":0,"👵🏼":0,"👵🏽":0,"👵🏾":0,"👵🏿":0,"👶🏻":0,"👶🏼":0,"👶🏽":0,"👶🏾":0,"👶🏿":0,"👷🏻♀":0,"👷🏼♀":0,"👷🏽♀":0,"👷🏾♀":0,"👷🏿♀":0,"👷🏻♂":0,"👷🏼♂":0,"👷🏽♂":0,"👷🏾♂":0,"👷🏿♂":0,"👷🏻":0,"👷🏼":0,"👷🏽":0,"👷🏾":0,"👷🏿":0,"👸🏻":0,"👸🏼":0,"👸🏽":0,"👸🏾":0,"👸🏿":0,"👼🏻":0,"👼🏼":0,"👼🏽":0,"👼🏾":0,"👼🏿":0,"💁🏻♀":0,"💁🏼♀":0,"💁🏽♀":0,"💁🏾♀":0,"💁🏿♀":0,"💁🏻♂":0,"💁🏼♂":0,"💁🏽♂":0,"💁🏾♂":0,"💁🏿♂":0,"💁🏻":0,"💁🏼":0,"💁🏽":0,"💁🏾":0,"💁🏿":0,"💂🏻♀":0,"💂🏼♀":0,"💂🏽♀":0,"💂🏾♀":0,"💂🏿♀":0,"💂🏻♂":0,"💂🏼♂":0,"💂🏽♂":0,"💂🏾♂":0,"💂🏿♂":0,"💂🏻":0,"💂🏼":0,"💂🏽":0,"💂🏾":0,"💂🏿":0,"💃🏻":0,"💃🏼":0,"💃🏽":0,"💃🏾":0,"💃🏿":0,"💅🏻":0,"💅🏼":0,"💅🏽":0,"💅🏾":0,"💅🏿":0,"💆🏻♀":0,"💆🏼♀":0,"💆🏽♀":0,"💆🏾♀":0,"💆🏿♀":0,"💆🏻♂":0,"💆🏼♂":0,"💆🏽♂":0,"💆🏾♂":0,"💆🏿♂":0,"💆🏻":0,"💆🏼":0,"💆🏽":0,"💆🏾":0,"💆🏿":0,"💇🏻♀":0,"💇🏼♀":0,"💇🏽♀":0,"💇🏾♀":0,"💇🏿♀":0,"💇🏻♂":0,"💇🏼♂":0,"💇🏽♂":0,"💇🏾♂":0,"💇🏿♂":0,"💇🏻":0,"💇🏼":0,"💇🏽":0,"💇🏾":0,"💇🏿":0,"💪🏻":0,"💪🏼":0,"💪🏽":0,"💪🏾":0,"💪🏿":0,"🕴🏻":0,"🕴🏼":0,"🕴🏽":0,"🕴🏾":0,"🕴🏿":0,"🕵🏻♀":0,"🕵🏼♀":0,"🕵🏽♀":0,"🕵🏾♀":0,"🕵🏿♀":0,"🕵🏻♂":0,"🕵🏼♂":0,"🕵🏽♂":0,"🕵🏾♂":0,"🕵🏿♂":0,"🕵🏻":0,"🕵🏼":0,"🕵🏽":0,"🕵🏾":0,"🕵🏿":0,"🕺🏻":0,"🕺🏼":0,"🕺🏽":0,"🕺🏾":0,"🕺🏿":0,"🖐🏻":0,"🖐🏼":0,"🖐🏽":0,"🖐🏾":0,"🖐🏿":0,"🖕🏻":0,"🖕🏼":0,"🖕🏽":0,"🖕🏾":0,"🖕🏿":0,"🖖🏻":0,"🖖🏼":0,"🖖🏽":0,"🖖🏾":0,"🖖🏿":0,"🙅🏻♀":0,"🙅🏼♀":0,"🙅🏽♀":0,"🙅🏾♀":0,"🙅🏿♀":0,"🙅🏻♂":0,"🙅🏼♂":0,"🙅🏽♂":0,"🙅🏾♂":0,"🙅🏿♂":0,"🙅🏻":0,"🙅🏼":0,"🙅🏽":0,"🙅🏾":0,"🙅🏿":0,"🙆🏻♀":0,"🙆🏼♀":0,"🙆🏽♀":0,"🙆🏾♀":0,"🙆🏿♀":0,"🙆🏻♂":0,"🙆🏼♂":0,"🙆🏽♂":0,"🙆🏾♂":0,"🙆🏿♂":0,"🙆🏻":0,"🙆🏼":0,"🙆🏽":0,"🙆🏾":0,"🙆🏿":0,"🙇🏻♀":0,"🙇🏼♀":0,"🙇🏽♀":0,"🙇🏾♀":0,"🙇🏿♀":0,"🙇🏻♂":0,"🙇🏼♂":0,"🙇🏽♂":0,"🙇🏾♂":0,"🙇🏿♂":0,"🙇🏻":0,"🙇🏼":0,"🙇🏽":0,"🙇🏾":0,"🙇🏿":0,"🙋🏻♀":0,"🙋🏼♀":0,"🙋🏽♀":0,"🙋🏾♀":0,"🙋🏿♀":0,"🙋🏻♂":0,"🙋🏼♂":0,"🙋🏽♂":0,"🙋🏾♂":0,"🙋🏿♂":0,"🙋🏻":0,"🙋🏼":0,"🙋🏽":0,"🙋🏾":0,"🙋🏿":0,"🙌🏻":0,"🙌🏼":0,"🙌🏽":0,"🙌🏾":0,"🙌🏿":0,"🙍🏻♀":0,"🙍🏼♀":0,"🙍🏽♀":0,"🙍🏾♀":0,"🙍🏿♀":0,"🙍🏻♂":0,"🙍🏼♂":0,"🙍🏽♂":0,"🙍🏾♂":0,"🙍🏿♂":0,"🙍🏻":0,"🙍🏼":0,"🙍🏽":0,"🙍🏾":0,"🙍🏿":0,"🙎🏻♀":0,"🙎🏼♀":0,"🙎🏽♀":0,"🙎🏾♀":0,"🙎🏿♀":0,"🙎🏻♂":0,"🙎🏼♂":0,"🙎🏽♂":0,"🙎🏾♂":0,"🙎🏿♂":0,"🙎🏻":0,"🙎🏼":0,"🙎🏽":0,"🙎🏾":0,"🙎🏿":0,"🙏🏻":0,"🙏🏼":0,"🙏🏽":0,"🙏🏾":0,"🙏🏿":0,"🚣🏻♀":0,"🚣🏼♀":0,"🚣🏽♀":0,"🚣🏾♀":0,"🚣🏿♀":0,"🚣🏻♂":0,"🚣🏼♂":0,"🚣🏽♂":0,"🚣🏾♂":0,"🚣🏿♂":0,"🚣🏻":0,"🚣🏼":0,"🚣🏽":0,"🚣🏾":0,"🚣🏿":0,"🚴🏻♀":0,"🚴🏼♀":0,"🚴🏽♀":0,"🚴🏾♀":0,"🚴🏿♀":0,"🚴🏻♂":0,"🚴🏼♂":0,"🚴🏽♂":0,"🚴🏾♂":0,"🚴🏿♂":0,"🚴🏻":0,"🚴🏼":0,"🚴🏽":0,"🚴🏾":0,"🚴🏿":0,"🚵🏻♀":0,"🚵🏼♀":0,"🚵🏽♀":0,"🚵🏾♀":0,"🚵🏿♀":0,"🚵🏻♂":0,"🚵🏼♂":0,"🚵🏽♂":0,"🚵🏾♂":0,"🚵🏿♂":0,"🚵🏻":0,"🚵🏼":0,"🚵🏽":0,"🚵🏾":0,"🚵🏿":0,"🚶🏻♀":0,"🚶🏼♀":0,"🚶🏽♀":0,"🚶🏾♀":0,"🚶🏿♀":0,"🚶🏻♂":0,"🚶🏼♂":0,"🚶🏽♂":0,"🚶🏾♂":0,"🚶🏿♂":0,"🚶🏻":0,"🚶🏼":0,"🚶🏽":0,"🚶🏾":0,"🚶🏿":0,"🛀🏻":0,"🛀🏼":0,"🛀🏽":0,"🛀🏾":0,"🛀🏿":0,"🛌🏻":0,"🛌🏼":0,"🛌🏽":0,"🛌🏾":0,"🛌🏿":0,"🤏🏻":0,"🤏🏼":0,"🤏🏽":0,"🤏🏾":0,"🤏🏿":0,"🤘🏻":0,"🤘🏼":0,"🤘🏽":0,"🤘🏾":0,"🤘🏿":0,"🤙🏻":0,"🤙🏼":0,"🤙🏽":0,"🤙🏾":0,"🤙🏿":0,"🤚🏻":0,"🤚🏼":0,"🤚🏽":0,"🤚🏾":0,"🤚🏿":0,"🤛🏻":0,"🤛🏼":0,"🤛🏽":0,"🤛🏾":0,"🤛🏿":0,"🤜🏻":0,"🤜🏼":0,"🤜🏽":0,"🤜🏾":0,"🤜🏿":0,"🤞🏻":0,"🤞🏼":0,"🤞🏽":0,"🤞🏾":0,"🤞🏿":0,"🤟🏻":0,"🤟🏼":0,"🤟🏽":0,"🤟🏾":0,"🤟🏿":0,"🤦🏻♀":0,"🤦🏼♀":0,"🤦🏽♀":0,"🤦🏾♀":0,"🤦🏿♀":0,"🤦🏻♂":0,"🤦🏼♂":0,"🤦🏽♂":0,"🤦🏾♂":0,"🤦🏿♂":0,"🤦🏻":0,"🤦🏼":0,"🤦🏽":0,"🤦🏾":0,"🤦🏿":0,"🤰🏻":0,"🤰🏼":0,"🤰🏽":0,"🤰🏾":0,"🤰🏿":0,"🤱🏻":0,"🤱🏼":0,"🤱🏽":0,"🤱🏾":0,"🤱🏿":0,"🤲🏻":0,"🤲🏼":0,"🤲🏽":0,"🤲🏾":0,"🤲🏿":0,"🤳🏻":0,"🤳🏼":0,"🤳🏽":0,"🤳🏾":0,"🤳🏿":0,"🤴🏻":0,"🤴🏼":0,"🤴🏽":0,"🤴🏾":0,"🤴🏿":0,"🤵🏻":0,"🤵🏼":0,"🤵🏽":0,"🤵🏾":0,"🤵🏿":0,"🤶🏻":0,"🤶🏼":0,"🤶🏽":0,"🤶🏾":0,"🤶🏿":0,"🤷🏻♀":0,"🤷🏼♀":0,"🤷🏽♀":0,"🤷🏾♀":0,"🤷🏿♀":0,"🤷🏻♂":0,"🤷🏼♂":0,"🤷🏽♂":0,"🤷🏾♂":0,"🤷🏿♂":0,"🤷🏻":0,"🤷🏼":0,"🤷🏽":0,"🤷🏾":0,"🤷🏿":0,"🤸🏻♀":0,"🤸🏼♀":0,"🤸🏽♀":0,"🤸🏾♀":0,"🤸🏿♀":0,"🤸🏻♂":0,"🤸🏼♂":0,"🤸🏽♂":0,"🤸🏾♂":0,"🤸🏿♂":0,"🤸🏻":0,"🤸🏼":0,"🤸🏽":0,"🤸🏾":0,"🤸🏿":0,"🤹🏻♀":0,"🤹🏼♀":0,"🤹🏽♀":0,"🤹🏾♀":0,"🤹🏿♀":0,"🤹🏻♂":0,"🤹🏼♂":0,"🤹🏽♂":0,"🤹🏾♂":0,"🤹🏿♂":0,"🤹🏻":0,"🤹🏼":0,"🤹🏽":0,"🤹🏾":0,"🤹🏿":0,"🤽🏻♀":0,"🤽🏼♀":0,"🤽🏽♀":0,"🤽🏾♀":0,"🤽🏿♀":0,"🤽🏻♂":0,"🤽🏼♂":0,"🤽🏽♂":0,"🤽🏾♂":0,"🤽🏿♂":0,"🤽🏻":0,"🤽🏼":0,"🤽🏽":0,"🤽🏾":0,"🤽🏿":0,"🤾🏻♀":0,"🤾🏼♀":0,"🤾🏽♀":0,"🤾🏾♀":0,"🤾🏿♀":0,"🤾🏻♂":0,"🤾🏼♂":0,"🤾🏽♂":0,"🤾🏾♂":0,"🤾🏿♂":0,"🤾🏻":0,"🤾🏼":0,"🤾🏽":0,"🤾🏾":0,"🤾🏿":0,"🦵🏻":0,"🦵🏼":0,"🦵🏽":0,"🦵🏾":0,"🦵🏿":0,"🦶🏻":0,"🦶🏼":0,"🦶🏽":0,"🦶🏾":0,"🦶🏿":0,"🦸🏻♀":0,"🦸🏼♀":0,"🦸🏽♀":0,"🦸🏾♀":0,"🦸🏿♀":0,"🦸🏻♂":0,"🦸🏼♂":0,"🦸🏽♂":0,"🦸🏾♂":0,"🦸🏿♂":0,"🦸🏻":0,"🦸🏼":0,"🦸🏽":0,"🦸🏾":0,"🦸🏿":0,"🦹🏻♀":0,"🦹🏼♀":0,"🦹🏽♀":0,"🦹🏾♀":0,"🦹🏿♀":0,"🦹🏻♂":0,"🦹🏼♂":0,"🦹🏽♂":0,"🦹🏾♂":0,"🦹🏿♂":0,"🦹🏻":0,"🦹🏼":0,"🦹🏽":0,"🦹🏾":0,"🦹🏿":0,"🦻🏻":0,"🦻🏼":0,"🦻🏽":0,"🦻🏾":0,"🦻🏿":0,"🧍🏻♀":0,"🧍🏼♀":0,"🧍🏽♀":0,"🧍🏾♀":0,"🧍🏿♀":0,"🧍🏻♂":0,"🧍🏼♂":0,"🧍🏽♂":0,"🧍🏾♂":0,"🧍🏿♂":0,"🧍🏻":0,"🧍🏼":0,"🧍🏽":0,"🧍🏾":0,"🧍🏿":0,"🧎🏻♀":0,"🧎🏼♀":0,"🧎🏽♀":0,"🧎🏾♀":0,"🧎🏿♀":0,"🧎🏻♂":0,"🧎🏼♂":0,"🧎🏽♂":0,"🧎🏾♂":0,"🧎🏿♂":0,"🧎🏻":0,"🧎🏼":0,"🧎🏽":0,"🧎🏾":0,"🧎🏿":0,"🧏🏻♀":0,"🧏🏼♀":0,"🧏🏽♀":0,"🧏🏾♀":0,"🧏🏿♀":0,"🧏🏻♂":0,"🧏🏼♂":0,"🧏🏽♂":0,"🧏🏾♂":0,"🧏🏿♂":0,"🧏🏻":0,"🧏🏼":0,"🧏🏽":0,"🧏🏾":0,"🧏🏿":0,"🧑🏻🌾":0,"🧑🏼🌾":0,"🧑🏽🌾":0,"🧑🏾🌾":0,"🧑🏿🌾":0,"🧑🏻🍳":0,"🧑🏼🍳":0,"🧑🏽🍳":0,"🧑🏾🍳":0,"🧑🏿🍳":0,"🧑🏻🎓":0,"🧑🏼🎓":0,"🧑🏽🎓":0,"🧑🏾🎓":0,"🧑🏿🎓":0,"🧑🏻🎤":0,"🧑🏼🎤":0,"🧑🏽🎤":0,"🧑🏾🎤":0,"🧑🏿🎤":0,"🧑🏻🎨":0,"🧑🏼🎨":0,"🧑🏽🎨":0,"🧑🏾🎨":0,"🧑🏿🎨":0,"🧑🏻🏫":0,"🧑🏼🏫":0,"🧑🏽🏫":0,"🧑🏾🏫":0,"🧑🏿🏫":0,"🧑🏻🏭":0,"🧑🏼🏭":0,"🧑🏽🏭":0,"🧑🏾🏭":0,"🧑🏿🏭":0,"🧑🏻💻":0,"🧑🏼💻":0,"🧑🏽💻":0,"🧑🏾💻":0,"🧑🏿💻":0,"🧑🏻💼":0,"🧑🏼💼":0,"🧑🏽💼":0,"🧑🏾💼":0,"🧑🏿💼":0,"🧑🏻🔧":0,"🧑🏼🔧":0,"🧑🏽🔧":0,"🧑🏾🔧":0,"🧑🏿🔧":0,"🧑🏻🔬":0,"🧑🏼🔬":0,"🧑🏽🔬":0,"🧑🏾🔬":0,"🧑🏿🔬":0,"🧑🏻🚀":0,"🧑🏼🚀":0,"🧑🏽🚀":0,"🧑🏾🚀":0,"🧑🏿🚀":0,"🧑🏻🚒":0,"🧑🏼🚒":0,"🧑🏽🚒":0,"🧑🏾🚒":0,"🧑🏿🚒":0,"🧑🏻🤝🧑🏻":0,"🧑🏻🤝🧑🏼":0,"🧑🏻🤝🧑🏽":0,"🧑🏻🤝🧑🏾":0,"🧑🏻🤝🧑🏿":0,"🧑🏼🤝🧑🏻":0,"🧑🏼🤝🧑🏼":0,"🧑🏼🤝🧑🏽":0,"🧑🏼🤝🧑🏾":0,"🧑🏼🤝🧑🏿":0,"🧑🏽🤝🧑🏻":0,"🧑🏽🤝🧑🏼":0,"🧑🏽🤝🧑🏽":0,"🧑🏽🤝🧑🏾":0,"🧑🏽🤝🧑🏿":0,"🧑🏾🤝🧑🏻":0,"🧑🏾🤝🧑🏼":0,"🧑🏾🤝🧑🏽":0,"🧑🏾🤝🧑🏾":0,"🧑🏾🤝🧑🏿":0,"🧑🏿🤝🧑🏻":0,"🧑🏿🤝🧑🏼":0,"🧑🏿🤝🧑🏽":0,"🧑🏿🤝🧑🏾":0,"🧑🏿🤝🧑🏿":0,"🧑🏻🦯":0,"🧑🏼🦯":0,"🧑🏽🦯":0,"🧑🏾🦯":0,"🧑🏿🦯":0,"🧑🏻🦰":0,"🧑🏼🦰":0,"🧑🏽🦰":0,"🧑🏾🦰":0,"🧑🏿🦰":0,"🧑🏻🦱":0,"🧑🏼🦱":0,"🧑🏽🦱":0,"🧑🏾🦱":0,"🧑🏿🦱":0,"🧑🏻🦲":0,"🧑🏼🦲":0,"🧑🏽🦲":0,"🧑🏾🦲":0,"🧑🏿🦲":0,"🧑🏻🦳":0,"🧑🏼🦳":0,"🧑🏽🦳":0,"🧑🏾🦳":0,"🧑🏿🦳":0,"🧑🏻🦼":0,"🧑🏼🦼":0,"🧑🏽🦼":0,"🧑🏾🦼":0,"🧑🏿🦼":0,"🧑🏻🦽":0,"🧑🏼🦽":0,"🧑🏽🦽":0,"🧑🏾🦽":0,"🧑🏿🦽":0,"🧑🏻⚕":0,"🧑🏼⚕":0,"🧑🏽⚕":0,"🧑🏾⚕":0,"🧑🏿⚕":0,"🧑🏻⚖":0,"🧑🏼⚖":0,"🧑🏽⚖":0,"🧑🏾⚖":0,"🧑🏿⚖":0,"🧑🏻✈":0,"🧑🏼✈":0,"🧑🏽✈":0,"🧑🏾✈":0,"🧑🏿✈":0,"🧑🏻":0,"🧑🏼":0,"🧑🏽":0,"🧑🏾":0,"🧑🏿":0,"🧒🏻":0,"🧒🏼":0,"🧒🏽":0,"🧒🏾":0,"🧒🏿":0,"🧓🏻":0,"🧓🏼":0,"🧓🏽":0,"🧓🏾":0,"🧓🏿":0,"🧔🏻":0,"🧔🏼":0,"🧔🏽":0,"🧔🏾":0,"🧔🏿":0,"🧕🏻":0,"🧕🏼":0,"🧕🏽":0,"🧕🏾":0,"🧕🏿":0,"🧖🏻♀":0,"🧖🏼♀":0,"🧖🏽♀":0,"🧖🏾♀":0,"🧖🏿♀":0,"🧖🏻♂":0,"🧖🏼♂":0,"🧖🏽♂":0,"🧖🏾♂":0,"🧖🏿♂":0,"🧖🏻":0,"🧖🏼":0,"🧖🏽":0,"🧖🏾":0,"🧖🏿":0,"🧗🏻♀":0,"🧗🏼♀":0,"🧗🏽♀":0,"🧗🏾♀":0,"🧗🏿♀":0,"🧗🏻♂":0,"🧗🏼♂":0,"🧗🏽♂":0,"🧗🏾♂":0,"🧗🏿♂":0,"🧗🏻":0,"🧗🏼":0,"🧗🏽":0,"🧗🏾":0,"🧗🏿":0,"🧘🏻♀":0,"🧘🏼♀":0,"🧘🏽♀":0,"🧘🏾♀":0,"🧘🏿♀":0,"🧘🏻♂":0,"🧘🏼♂":0,"🧘🏽♂":0,"🧘🏾♂":0,"🧘🏿♂":0,"🧘🏻":0,"🧘🏼":0,"🧘🏽":0,"🧘🏾":0,"🧘🏿":0,"🧙🏻♀":0,"🧙🏼♀":0,"🧙🏽♀":0,"🧙🏾♀":0,"🧙🏿♀":0,"🧙🏻♂":0,"🧙🏼♂":0,"🧙🏽♂":0,"🧙🏾♂":0,"🧙🏿♂":0,"🧙🏻":0,"🧙🏼":0,"🧙🏽":0,"🧙🏾":0,"🧙🏿":0,"🧚🏻♀":0,"🧚🏼♀":0,"🧚🏽♀":0,"🧚🏾♀":0,"🧚🏿♀":0,"🧚🏻♂":0,"🧚🏼♂":0,"🧚🏽♂":0,"🧚🏾♂":0,"🧚🏿♂":0,"🧚🏻":0,"🧚🏼":0,"🧚🏽":0,"🧚🏾":0,"🧚🏿":0,"🧛🏻♀":0,"🧛🏼♀":0,"🧛🏽♀":0,"🧛🏾♀":0,"🧛🏿♀":0,"🧛🏻♂":0,"🧛🏼♂":0,"🧛🏽♂":0,"🧛🏾♂":0,"🧛🏿♂":0,"🧛🏻":0,"🧛🏼":0,"🧛🏽":0,"🧛🏾":0,"🧛🏿":0,"🧜🏻♀":0,"🧜🏼♀":0,"🧜🏽♀":0,"🧜🏾♀":0,"🧜🏿♀":0,"🧜🏻♂":0,"🧜🏼♂":0,"🧜🏽♂":0,"🧜🏾♂":0,"🧜🏿♂":0,"🧜🏻":0,"🧜🏼":0,"🧜🏽":0,"🧜🏾":0,"🧜🏿":0,"🧝🏻♀":0,"🧝🏼♀":0,"🧝🏽♀":0,"🧝🏾♀":0,"🧝🏿♀":0,"🧝🏻♂":0,"🧝🏼♂":0,"🧝🏽♂":0,"🧝🏾♂":0,"🧝🏿♂":0,"🧝🏻":0,"🧝🏼":0,"🧝🏽":0,"🧝🏾":0,"🧝🏿":0,"☝🏻":0,"☝🏼":0,"☝🏽":0,"☝🏾":0,"☝🏿":0,"⛹🏻♀":0,"⛹🏼♀":0,"⛹🏽♀":0,"⛹🏾♀":0,"⛹🏿♀":0,"⛹🏻♂":0,"⛹🏼♂":0,"⛹🏽♂":0,"⛹🏾♂":0,"⛹🏿♂":0,"⛹🏻":0,"⛹🏼":0,"⛹🏽":0,"⛹🏾":0,"⛹🏿":0,"✊🏻":0,"✊🏼":0,"✊🏽":0,"✊🏾":0,"✊🏿":0,"✋🏻":0,"✋🏼":0,"✋🏽":0,"✋🏾":0,"✋🏿":0,"✌🏻":0,"✌🏼":0,"✌🏽":0,"✌🏾":0,"✌🏿":0,"✍🏻":0,"✍🏼":0,"✍🏽":0,"✍🏾":0,"✍🏿":0}
\ No newline at end of file
+{"#⃣":6365,"*⃣":6366,"0⃣":6367,"1⃣":6368,"2⃣":6369,"3⃣":6370,"4⃣":6371,"5⃣":6372,"6⃣":6373,"7⃣":6374,"8⃣":6375,"9⃣":6376,"©":6362,"®":6363,"🀄":573,"🃏":572,"🅰":6383,"🅱":6385,"🅾":6394,"🅿":6396,"🆎":6384,"🆑":6386,"🆒":6387,"🆓":6388,"🆔":6390,"🆕":6392,"🆖":6393,"🆗":6395,"🆘":6397,"🆙":6398,"🆚":6399,"🇦🇨":78,"🇦🇩":79,"🇦🇪":710,"🇦🇫":711,"🇦🇬":712,"🇦🇮":713,"🇦🇱":714,"🇦🇲":715,"🇦🇴":716,"🇦🇶":717,"🇦🇷":718,"🇦🇸":719,"🇦🇹":720,"🇦🇺":721,"🇦🇼":722,"🇦🇽":723,"🇦🇿":724,"🇧🇦":725,"🇧🇧":726,"🇧🇩":727,"🇧🇪":728,"🇧🇫":729,"🇧🇬":730,"🇧🇭":731,"🇧🇮":732,"🇧🇯":733,"🇧🇱":734,"🇧🇲":735,"🇧🇳":736,"🇧🇴":737,"🇧🇶":738,"🇧🇷":739,"🇧🇸":740,"🇧🇹":741,"🇧🇻":742,"🇧🇼":743,"🇧🇾":744,"🇧🇿":745,"🇨🇦":746,"🇨🇨":747,"🇨🇩":748,"🇨🇫":749,"🇨🇬":750,"🇨🇭":751,"🇨🇮":752,"🇨🇰":753,"🇨🇱":754,"🇨🇲":755,"🇨🇳":756,"🇨🇴":757,"🇨🇵":758,"🇨🇷":759,"🇨🇺":760,"🇨🇻":761,"🇨🇼":762,"🇨🇽":763,"🇨🇾":764,"🇨🇿":765,"🇩🇪":766,"🇩🇬":767,"🇩🇯":768,"🇩🇰":769,"🇩🇲":770,"🇩🇴":771,"🇩🇿":772,"🇪🇦":773,"🇪🇨":774,"🇪🇪":775,"🇪🇬":776,"🇪🇭":777,"🇪🇷":778,"🇪🇸":779,"🇪🇹":780,"🇪🇺":781,"🇫🇮":782,"🇫🇯":783,"🇫🇰":784,"🇫🇲":785,"🇫🇴":786,"🇫🇷":787,"🇬🇦":788,"🇬🇧":789,"🇬🇩":790,"🇬🇪":791,"🇬🇫":792,"🇬🇬":793,"🇬🇭":794,"🇬🇮":795,"🇬🇱":796,"🇬🇲":797,"🇬🇳":798,"🇬🇵":799,"🇬🇶":7100,"🇬🇷":7101,"🇬🇸":7102,"🇬🇹":7103,"🇬🇺":7104,"🇬🇼":7105,"🇬🇾":7106,"🇭🇰":7107,"🇭🇲":7108,"🇭🇳":7109,"🇭🇷":7110,"🇭🇹":7111,"🇭🇺":7112,"🇮🇨":7113,"🇮🇩":7114,"🇮🇪":7115,"🇮🇱":7116,"🇮🇲":7117,"🇮🇳":7118,"🇮🇴":7119,"🇮🇶":7120,"🇮🇷":7121,"🇮🇸":7122,"🇮🇹":7123,"🇯🇪":7124,"🇯🇲":7125,"🇯🇴":7126,"🇯🇵":7127,"🇰🇪":7128,"🇰🇬":7129,"🇰🇭":7130,"🇰🇮":7131,"🇰🇲":7132,"🇰🇳":7133,"🇰🇵":7134,"🇰🇷":7135,"🇰🇼":7136,"🇰🇾":7137,"🇰🇿":7138,"🇱🇦":7139,"🇱🇧":7140,"🇱🇨":7141,"🇱🇮":7142,"🇱🇰":7143,"🇱🇷":7144,"🇱🇸":7145,"🇱🇹":7146,"🇱🇺":7147,"🇱🇻":7148,"🇱🇾":7149,"🇲🇦":7150,"🇲🇨":7151,"🇲🇩":7152,"🇲🇪":7153,"🇲🇫":7154,"🇲🇬":7155,"🇲🇭":7156,"🇲🇰":7157,"🇲🇱":7158,"🇲🇲":7159,"🇲🇳":7160,"🇲🇴":7161,"🇲🇵":7162,"🇲🇶":7163,"🇲🇷":7164,"🇲🇸":7165,"🇲🇹":7166,"🇲🇺":7167,"🇲🇻":7168,"🇲🇼":7169,"🇲🇽":7170,"🇲🇾":7171,"🇲🇿":7172,"🇳🇦":7173,"🇳🇨":7174,"🇳🇪":7175,"🇳🇫":7176,"🇳🇬":7177,"🇳🇮":7178,"🇳🇱":7179,"🇳🇴":7180,"🇳🇵":7181,"🇳🇷":7182,"🇳🇺":7183,"🇳🇿":7184,"🇴🇲":7185,"🇵🇦":7186,"🇵🇪":7187,"🇵🇫":7188,"🇵🇬":7189,"🇵🇭":7190,"🇵🇰":7191,"🇵🇱":7192,"🇵🇲":7193,"🇵🇳":7194,"🇵🇷":7195,"🇵🇸":7196,"🇵🇹":7197,"🇵🇼":7198,"🇵🇾":7199,"🇶🇦":7200,"🇷🇪":7201,"🇷🇴":7202,"🇷🇸":7203,"🇷🇺":7204,"🇷🇼":7205,"🇸🇦":7206,"🇸🇧":7207,"🇸🇨":7208,"🇸🇩":7209,"🇸🇪":7210,"🇸🇬":7211,"🇸🇭":7212,"🇸🇮":7213,"🇸🇯":7214,"🇸🇰":7215,"🇸🇱":7216,"🇸🇲":7217,"🇸🇳":7218,"🇸🇴":7219,"🇸🇷":7220,"🇸🇸":7221,"🇸🇹":7222,"🇸🇻":7223,"🇸🇽":7224,"🇸🇾":7225,"🇸🇿":7226,"🇹🇦":7227,"🇹🇨":7228,"🇹🇩":7229,"🇹🇫":7230,"🇹🇬":7231,"🇹🇭":7232,"🇹🇯":7233,"🇹🇰":7234,"🇹🇱":7235,"🇹🇲":7236,"🇹🇳":7237,"🇹🇴":7238,"🇹🇷":7239,"🇹🇹":7240,"🇹🇻":7241,"🇹🇼":7242,"🇹🇿":7243,"🇺🇦":7244,"🇺🇬":7245,"🇺🇲":7246,"🇺🇳":7247,"🇺🇸":7248,"🇺🇾":7249,"🇺🇿":7250,"🇻🇦":7251,"🇻🇨":7252,"🇻🇪":7253,"🇻🇬":7254,"🇻🇮":7255,"🇻🇳":7256,"🇻🇺":7257,"🇼🇫":7258,"🇼🇸":7259,"🇽🇰":7260,"🇾🇪":7261,"🇾🇹":7262,"🇿🇦":7263,"🇿🇲":7264,"🇿🇼":7265,"🈁":6400,"🈂":6401,"🈚":6407,"🈯":6404,"🈲":6408,"🈳":6412,"🈴":6411,"🈵":6416,"🈶":6403,"🈷":6402,"🈸":6410,"🈹":6406,"🈺":6415,"🉐":6405,"🉑":6409,"🌀":4197,"🌁":449,"🌂":4199,"🌃":450,"🌄":452,"🌅":453,"🌆":454,"🌇":455,"🌈":4198,"🌉":456,"🌊":4210,"🌋":410,"🌌":4184,"🌍":41,"🌎":42,"🌏":43,"🌐":44,"🌑":4164,"🌒":4165,"🌓":4166,"🌔":4167,"🌕":4168,"🌖":4169,"🌗":4170,"🌘":4171,"🌙":4172,"🌚":4173,"🌛":4174,"🌜":4175,"🌝":4178,"🌞":4179,"🌟":4182,"🌠":4183,"🌡":4176,"🌤":4188,"🌥":4189,"🌦":4190,"🌧":4191,"🌨":4192,"🌩":4193,"🌪":4194,"🌫":4195,"🌬":4196,"🌭":347,"🌮":349,"🌯":350,"🌰":331,"🌱":2116,"🌲":2117,"🌳":2118,"🌴":2119,"🌵":2120,"🌶":323,"🌷":2115,"🌸":2107,"🌹":2110,"🌺":2112,"🌻":2113,"🌼":2114,"🌽":322,"🌾":2121,"🌿":2122,"🍀":2124,"🍁":2125,"🍂":2126,"🍃":2127,"🍄":329,"🍅":316,"🍆":319,"🍇":31,"🍈":32,"🍉":33,"🍊":34,"🍋":35,"🍌":36,"🍍":37,"🍎":39,"🍏":310,"🍐":311,"🍑":312,"🍒":313,"🍓":314,"🍔":344,"🍕":346,"🍖":340,"🍗":341,"🍘":364,"🍙":365,"🍚":366,"🍛":367,"🍜":368,"🍝":369,"🍞":332,"🍟":345,"🍠":370,"🍡":376,"🍢":371,"🍣":372,"🍤":373,"🍥":374,"🍦":385,"🍧":386,"🍨":387,"🍩":388,"🍪":389,"🍫":394,"🍬":395,"🍭":396,"🍮":397,"🍯":398,"🍰":391,"🍱":363,"🍲":356,"🍳":354,"🍴":3118,"🍵":3102,"🍶":3103,"🍷":3105,"🍸":3106,"🍹":3107,"🍺":3108,"🍻":3109,"🍼":399,"🍽":3117,"🍾":3104,"🍿":359,"🎀":517,"🎁":518,"🎂":390,"🎃":51,"🎄":52,"🎅":1326,"🎆":53,"🎇":54,"🎈":57,"🎉":58,"🎊":59,"🎋":510,"🎌":73,"🎍":511,"🎎":512,"🎏":513,"🎐":514,"🎑":515,"🎒":625,"🎓":637,"🎖":522,"🎗":519,"🎙":656,"🎚":657,"🎛":658,"🎞":689,"🎟":520,"🎠":458,"🎡":459,"🎢":460,"🎣":549,"🎤":659,"🎥":688,"🎦":6324,"🎧":660,"🎨":577,"🎩":636,"🎪":462,"🎫":521,"🎬":691,"🎭":575,"🎮":561,"🎯":555,"🎰":563,"🎱":558,"🎲":564,"🎳":537,"🎴":574,"🎵":654,"🎶":655,"🎷":662,"🎸":663,"🎹":664,"🎺":665,"🎻":666,"🎼":653,"🎽":551,"🎾":535,"🎿":552,"🏀":531,"🏁":71,"🏂":1397,"🏃♀":1381,"🏃♂":1380,"🏃":1379,"🏄♀":1403,"🏄♂":1402,"🏄":1401,"🏅":524,"🏆":523,"🏇":1395,"🏈":533,"🏉":534,"🏊♀":1409,"🏊♂":1408,"🏊":1407,"🏋♀":1415,"🏋♂":1414,"🏋":1413,"🏌♀":1400,"🏌♂":1399,"🏌":1398,"🏍":492,"🏎":491,"🏏":538,"🏐":532,"🏑":539,"🏒":540,"🏓":542,"🏔":48,"🏕":412,"🏖":413,"🏗":419,"🏘":421,"🏙":451,"🏚":422,"🏛":418,"🏜":414,"🏝":415,"🏞":416,"🏟":417,"🏠":423,"🏡":424,"🏢":425,"🏣":426,"🏤":427,"🏥":428,"🏦":429,"🏧":6234,"🏨":430,"🏩":431,"🏪":432,"🏫":433,"🏬":434,"🏭":435,"🏮":6102,"🏯":436,"🏰":437,"🏳🌈":76,"🏳":75,"🏴☠":77,"🏴":7266,"🏴":7267,"🏴":7268,"🏴":74,"🏵":2109,"🏷":6120,"🏸":543,"🏹":6189,"🏺":3121,"🏻":81,"🏼":82,"🏽":83,"🏾":84,"🏿":85,"🐀":244,"🐁":243,"🐂":225,"🐃":226,"🐄":227,"🐅":217,"🐆":218,"🐇":247,"🐈":214,"🐉":282,"🐊":277,"🐋":286,"🐌":294,"🐍":280,"🐎":220,"🐏":232,"🐐":234,"🐑":233,"🐒":22,"🐓":262,"🐔":261,"🐕🦺":28,"🐕":26,"🐖":229,"🐗":230,"🐘":239,"🐙":292,"🐚":293,"🐛":296,"🐜":297,"🐝":298,"🐞":299,"🐟":288,"🐠":289,"🐡":290,"🐢":278,"🐣":263,"🐤":264,"🐥":265,"🐦":266,"🐧":267,"🐨":252,"🐩":29,"🐪":235,"🐫":236,"🐬":287,"🐭":242,"🐮":224,"🐯":216,"🐰":246,"🐱":213,"🐲":281,"🐳":285,"🐴":219,"🐵":21,"🐶":25,"🐷":228,"🐸":276,"🐹":245,"🐺":210,"🐻":251,"🐼":253,"🐽":231,"🐾":259,"🐿":248,"👀":1194,"👁🗨":1145,"👁":1195,"👂":1188,"👃":1190,"👄":1197,"👅":1196,"👆":1164,"👇":1166,"👈":1162,"👉":1163,"👊":1171,"👋":1150,"👌":1155,"👍":1168,"👎":1169,"👏":1174,"👐":1176,"👑":634,"👒":635,"👓":61,"👔":66,"👕":67,"👖":68,"👗":613,"👘":614,"👙":619,"👚":620,"👛":621,"👜":622,"👝":623,"👞":626,"👟":627,"👠":630,"👡":631,"👢":633,"👣":1483,"👤":1481,"👥":1482,"👦":1200,"👧":1201,"👨🌾":1267,"👨🍳":1270,"👨🎓":1258,"👨🎤":1288,"👨🎨":1291,"👨🏫":1261,"👨🏭":1276,"👨👦👦":1471,"👨👦":1470,"👨👧👦":1473,"👨👧👧":1474,"👨👧":1472,"👨👨👦":1460,"👨👨👦👦":1463,"👨👨👧":1461,"👨👨👧👦":1462,"👨👨👧👧":1464,"👨👩👦":1455,"👨👩👦👦":1458,"👨👩👧":1456,"👨👩👧👦":1457,"👨👩👧👧":1459,"👨💻":1285,"👨💼":1279,"👨🔧":1273,"👨🔬":1282,"👨🚀":1297,"👨🚒":1300,"👨🦯":1371,"👨🦰":1206,"👨🦱":1207,"👨🦲":1209,"👨🦳":1208,"👨🦼":1374,"👨🦽":1377,"👨⚕":1255,"👨⚖":1264,"👨✈":1294,"👨❤👨":1452,"👨❤💋👨":1448,"👨":1204,"👩🌾":1268,"👩🍳":1271,"👩🎓":1259,"👩🎤":1289,"👩🎨":1292,"👩🏫":1262,"👩🏭":1277,"👩👦👦":1476,"👩👦":1475,"👩👧👦":1478,"👩👧👧":1479,"👩👧":1477,"👩👩👦":1465,"👩👩👦👦":1468,"👩👩👧":1466,"👩👩👧👦":1467,"👩👩👧👧":1469,"👩💻":1286,"👩💼":1280,"👩🔧":1274,"👩🔬":1283,"👩🚀":1298,"👩🚒":1301,"👩🦯":1372,"👩🦰":1211,"👩🦱":1213,"👩🦲":1217,"👩🦳":1215,"👩🦼":1375,"👩🦽":1378,"👩⚕":1256,"👩⚖":1265,"👩✈":1295,"👩❤👨":1451,"👩❤👩":1453,"👩❤💋👨":1447,"👩❤💋👩":1449,"👩":1210,"👪":1454,"👫":1444,"👬":1445,"👭":1443,"👮♀":1304,"👮♂":1303,"👮":1302,"👯♀":1387,"👯♂":1386,"👯":1385,"👰":1322,"👱♀":1219,"👱♂":1220,"👱":1203,"👲":1319,"👳♀":1318,"👳♂":1317,"👳":1316,"👴":1222,"👵":1223,"👶":1198,"👷♀":1313,"👷♂":1312,"👷":1311,"👸":1315,"👹":197,"👺":198,"👻":199,"👼":1325,"👽":1100,"👾":1101,"👿":192,"💀":193,"💁♀":1238,"💁♂":1237,"💁":1236,"💂♀":1310,"💂♂":1309,"💂":1308,"💃":1382,"💄":641,"💅":1181,"💆♀":1357,"💆♂":1356,"💆":1355,"💇♀":1360,"💇♂":1359,"💇":1358,"💈":461,"💉":6208,"💊":6210,"💋":1115,"💌":1116,"💍":642,"💎":643,"💏":1446,"💐":2106,"💑":1450,"💒":438,"💓":1121,"💔":1126,"💕":1123,"💖":1119,"💗":1120,"💘":1117,"💙":1131,"💚":1130,"💛":1129,"💜":1132,"💝":1118,"💞":1122,"💟":1124,"💠":6447,"💡":6100,"💢":1137,"💣":1143,"💤":1149,"💥":1138,"💦":1140,"💧":4209,"💨":1141,"💩":195,"💪":1183,"💫":1139,"💬":1144,"💭":1148,"💮":2108,"💯":1136,"💰":6121,"💱":6130,"💲":6131,"💳":6127,"💴":6122,"💵":6123,"💶":6124,"💷":6125,"💸":6126,"💹":6129,"💺":4123,"💻":677,"💼":6152,"💽":683,"💾":684,"💿":685,"📀":686,"📁":6153,"📂":6154,"📃":6113,"📄":6115,"📅":6156,"📆":6157,"📇":6160,"📈":6161,"📉":6162,"📊":6163,"📋":6164,"📌":6165,"📍":6166,"📎":6167,"📏":6169,"📐":6170,"📑":6118,"📒":6112,"📓":6111,"📔":6104,"📕":6105,"📖":6106,"📗":6107,"📘":6108,"📙":6109,"📚":6110,"📛":6337,"📜":6114,"📝":6151,"📞":672,"📟":673,"📠":674,"📡":6207,"📢":648,"📣":649,"📤":6136,"📥":6137,"📦":6138,"📧":6133,"📨":6134,"📩":6135,"📪":6140,"📫":6139,"📬":6141,"📭":6142,"📮":6143,"📯":650,"📰":6116,"📱":669,"📲":670,"📳":6328,"📴":6329,"📵":6256,"📶":6327,"📷":693,"📸":694,"📹":695,"📺":692,"📻":661,"📼":696,"📽":690,"📿":640,"🔀":6306,"🔁":6307,"🔂":6308,"🔃":6274,"🔄":6275,"🔅":6325,"🔆":6326,"🔇":644,"🔈":645,"🔉":646,"🔊":647,"🔋":675,"🔌":676,"🔍":697,"🔎":698,"🔏":6177,"🔐":6178,"🔑":6179,"🔒":6175,"🔓":6176,"🔔":651,"🔕":652,"🔖":6119,"🔗":6197,"🔘":6448,"🔙":6276,"🔚":6277,"🔛":6278,"🔜":6279,"🔝":6280,"🔞":6257,"🔟":6377,"🔠":6378,"🔡":6379,"🔢":6380,"🔣":6381,"🔤":6382,"🔥":4208,"🔦":6101,"🔧":6191,"🔨":6181,"🔩":6192,"🔪":3120,"🔫":6188,"🔬":6205,"🔭":6206,"🔮":559,"🔯":6292,"🔰":6338,"🔱":6336,"🔲":6450,"🔳":6449,"🔴":6417,"🔵":6421,"🔶":6441,"🔷":6442,"🔸":6443,"🔹":6444,"🔺":6445,"🔻":6446,"🔼":6316,"🔽":6318,"🕉":6283,"🕊":268,"🕋":446,"🕌":442,"🕍":444,"🕎":6291,"🕐":4142,"🕑":4144,"🕒":4146,"🕓":4148,"🕔":4150,"🕕":4152,"🕖":4154,"🕗":4156,"🕘":4158,"🕙":4160,"🕚":4162,"🕛":4140,"🕜":4143,"🕝":4145,"🕞":4147,"🕟":4149,"🕠":4151,"🕡":4153,"🕢":4155,"🕣":4157,"🕤":4159,"🕥":4161,"🕦":4163,"🕧":4141,"🕯":699,"🕰":4139,"🕳":1142,"🕴":1384,"🕵♀":1307,"🕵♂":1306,"🕵":1305,"🕶":62,"🕷":2101,"🕸":2102,"🕹":562,"🕺":1383,"🖇":6168,"🖊":6148,"🖋":6147,"🖌":6149,"🖍":6150,"🖐":1152,"🖕":1165,"🖖":1154,"🖤":1134,"🖥":678,"🖨":679,"🖱":681,"🖲":682,"🖼":576,"🗂":6155,"🗃":6172,"🗄":6173,"🗑":6174,"🗒":6158,"🗓":6159,"🗜":6194,"🗝":6180,"🗞":6117,"🗡":6186,"🗣":1480,"🗨":1146,"🗯":1147,"🗳":6144,"🗺":45,"🗻":411,"🗼":439,"🗽":440,"🗾":46,"🗿":6233,"😀":11,"😁":14,"😂":18,"😃":12,"😄":13,"😅":16,"😆":15,"😇":113,"😈":191,"😉":111,"😊":112,"😋":122,"😌":142,"😍":115,"😎":160,"😏":137,"😐":134,"😑":135,"😒":138,"😓":183,"😔":143,"😕":163,"😖":180,"😗":118,"😘":117,"😙":121,"😚":120,"😛":123,"😜":124,"😝":126,"😞":182,"😟":164,"😠":189,"😡":188,"😢":177,"😣":181,"😤":187,"😥":176,"😦":172,"😧":173,"😨":174,"😩":184,"😪":144,"😫":185,"😬":140,"😭":178,"😮":167,"😯":168,"😰":175,"😱":179,"😲":169,"😳":170,"😴":146,"😵":156,"😶":136,"😷":147,"😸":1104,"😹":1105,"😺":1103,"😻":1106,"😼":1107,"😽":1108,"😾":1111,"😿":1110,"🙀":1109,"🙁":165,"🙂":19,"🙃":110,"🙄":139,"🙅♀":1232,"🙅♂":1231,"🙅":1230,"🙆♀":1235,"🙆♂":1234,"🙆":1233,"🙇♀":1247,"🙇♂":1246,"🙇":1245,"🙈":1112,"🙉":1113,"🙊":1114,"🙋♀":1241,"🙋♂":1240,"🙋":1239,"🙌":1175,"🙍♀":1226,"🙍♂":1225,"🙍":1224,"🙎♀":1229,"🙎♂":1228,"🙎":1227,"🙏":1179,"🚀":4129,"🚁":4124,"🚂":463,"🚃":464,"🚄":465,"🚅":466,"🚆":467,"🚇":468,"🚈":469,"🚉":470,"🚊":471,"🚋":474,"🚌":475,"🚍":476,"🚎":477,"🚏":4100,"🚐":478,"🚑":479,"🚒":480,"🚓":481,"🚔":482,"🚕":483,"🚖":484,"🚗":485,"🚘":486,"🚙":487,"🚚":488,"🚛":489,"🚜":490,"🚝":472,"🚞":473,"🚟":4125,"🚠":4126,"🚡":4127,"🚢":4117,"🚣♀":1406,"🚣♂":1405,"🚣":1404,"🚤":4113,"🚥":4106,"🚦":4107,"🚧":4109,"🚨":4105,"🚩":72,"🚪":6213,"🚫":6250,"🚬":6230,"🚭":6252,"🚮":6235,"🚯":6253,"🚰":6236,"🚱":6254,"🚲":497,"🚳":6251,"🚴♀":1418,"🚴♂":1417,"🚴":1416,"🚵♀":1421,"🚵♂":1420,"🚵":1419,"🚶♀":1363,"🚶♂":1362,"🚶":1361,"🚷":6255,"🚸":6248,"🚹":6238,"🚺":6239,"🚻":6240,"🚼":6241,"🚽":6217,"🚾":6242,"🚿":6218,"🛀":1440,"🛁":6219,"🛂":6243,"🛃":6244,"🛄":6245,"🛅":6246,"🛋":6215,"🛌":1441,"🛍":624,"🛎":4131,"🛏":6214,"🛐":6281,"🛑":4108,"🛒":6229,"🛕":443,"🛠":6185,"🛡":6190,"🛢":4103,"🛣":4101,"🛤":4102,"🛥":4116,"🛩":4119,"🛫":4120,"🛬":4121,"🛰":4128,"🛳":4114,"🛴":498,"🛵":493,"🛶":4112,"🛷":553,"🛸":4130,"🛹":499,"🛺":496,"🟠":6418,"🟡":6419,"🟢":6420,"🟣":6422,"🟤":6423,"🟥":6426,"🟦":6430,"🟧":6427,"🟨":6428,"🟩":6429,"🟪":6431,"🟫":6432,"🤍":1135,"🤎":1133,"🤏":1156,"🤐":132,"🤑":127,"🤒":148,"🤓":161,"🤔":131,"🤕":149,"🤖":1102,"🤗":128,"🤘":1160,"🤙":1161,"🤚":1151,"🤛":1172,"🤜":1173,"🤝":1178,"🤞":1158,"🤟":1159,"🤠":158,"🤡":196,"🤢":150,"🤣":17,"🤤":145,"🤥":141,"🤦♀":1250,"🤦♂":1249,"🤦":1248,"🤧":152,"🤨":133,"🤩":116,"🤪":125,"🤫":130,"🤬":190,"🤭":129,"🤮":151,"🤯":157,"🤰":1323,"🤱":1324,"🤲":1177,"🤳":1182,"🤴":1314,"🤵":1321,"🤶":1327,"🤷♀":1253,"🤷♂":1252,"🤷":1251,"🤸♀":1424,"🤸♂":1423,"🤸":1422,"🤹♀":1436,"🤹♂":1435,"🤹":1434,"🤺":1394,"🤼♀":1427,"🤼♂":1426,"🤼":1425,"🤽♀":1430,"🤽♂":1429,"🤽":1428,"🤾♀":1433,"🤾♂":1432,"🤾":1431,"🤿":550,"🥀":2111,"🥁":668,"🥂":3110,"🥃":3111,"🥄":3119,"🥅":546,"🥇":525,"🥈":526,"🥉":527,"🥊":544,"🥋":545,"🥌":554,"🥍":541,"🥎":530,"🥏":536,"🥐":333,"🥑":318,"🥒":324,"🥓":343,"🥔":320,"🥕":321,"🥖":334,"🥗":358,"🥘":355,"🥙":351,"🥚":353,"🥛":3100,"🥜":330,"🥝":315,"🥞":337,"🥟":377,"🥠":378,"🥡":379,"🥢":3116,"🥣":357,"🥤":3112,"🥥":317,"🥦":326,"🥧":393,"🥨":335,"🥩":342,"🥪":348,"🥫":362,"🥬":325,"🥭":38,"🥮":375,"🥯":336,"🥰":114,"🥱":186,"🥳":159,"🥴":155,"🥵":153,"🥶":154,"🥺":171,"🥻":615,"🥼":64,"🥽":63,"🥾":628,"🥿":629,"🦀":380,"🦁":215,"🦂":2103,"🦃":260,"🦄":221,"🦅":269,"🦆":270,"🦇":250,"🦈":291,"🦉":272,"🦊":211,"🦋":295,"🦌":223,"🦍":23,"🦎":279,"🦏":240,"🦐":382,"🦑":383,"🦒":238,"🦓":222,"🦔":249,"🦕":283,"🦖":284,"🦗":2100,"🦘":257,"🦙":237,"🦚":274,"🦛":241,"🦜":275,"🦝":212,"🦞":381,"🦟":2104,"🦠":2105,"🦡":258,"🦢":271,"🦥":254,"🦦":255,"🦧":24,"🦨":256,"🦩":273,"🦪":384,"🦮":27,"🦯":6196,"🦴":1193,"🦵":1186,"🦶":1187,"🦷":1192,"🦸♀":1330,"🦸♂":1329,"🦸":1328,"🦹♀":1333,"🦹♂":1332,"🦹":1331,"🦺":65,"🦻":1189,"🦼":495,"🦽":494,"🦾":1184,"🦿":1185,"🧀":339,"🧁":392,"🧂":361,"🧃":3113,"🧄":327,"🧅":328,"🧆":352,"🧇":338,"🧈":360,"🧉":3114,"🧊":3115,"🧍♀":1366,"🧍♂":1365,"🧍":1364,"🧎♀":1369,"🧎♂":1368,"🧎":1367,"🧏♀":1244,"🧏♂":1243,"🧏":1242,"🧐":162,"🧑🌾":1266,"🧑🍳":1269,"🧑🎓":1257,"🧑🎤":1287,"🧑🎨":1290,"🧑🏫":1260,"🧑🏭":1275,"🧑💻":1284,"🧑💼":1278,"🧑🔧":1272,"🧑🔬":1281,"🧑🚀":1296,"🧑🚒":1299,"🧑🤝🧑":1442,"🧑🦯":1370,"🧑🦰":1212,"🧑🦱":1214,"🧑🦲":1218,"🧑🦳":1216,"🧑🦼":1373,"🧑🦽":1376,"🧑⚕":1254,"🧑⚖":1263,"🧑✈":1293,"🧑":1202,"🧒":1199,"🧓":1221,"🧔":1205,"🧕":1320,"🧖♀":1390,"🧖♂":1389,"🧖":1388,"🧗♀":1393,"🧗♂":1392,"🧗":1391,"🧘♀":1439,"🧘♂":1438,"🧘":1437,"🧙♀":1336,"🧙♂":1335,"🧙":1334,"🧚♀":1339,"🧚♂":1338,"🧚":1337,"🧛♀":1342,"🧛♂":1341,"🧛":1340,"🧜♀":1345,"🧜♂":1344,"🧜":1343,"🧝♀":1348,"🧝♂":1347,"🧝":1346,"🧞♀":1351,"🧞♂":1350,"🧞":1349,"🧟♀":1354,"🧟♂":1353,"🧟":1352,"🧠":1191,"🧡":1128,"🧢":638,"🧣":69,"🧤":610,"🧥":611,"🧦":612,"🧧":516,"🧨":55,"🧩":565,"🧪":6202,"🧫":6203,"🧬":6204,"🧭":47,"🧮":687,"🧯":6228,"🧰":6199,"🧱":420,"🧲":6200,"🧳":4132,"🧴":6221,"🧵":578,"🧶":579,"🧷":6222,"🧸":566,"🧹":6223,"🧺":6224,"🧻":6225,"🧼":6226,"🧽":6227,"🧾":6128,"🧿":560,"🩰":632,"🩱":616,"🩲":617,"🩳":618,"🩸":6209,"🩹":6211,"🩺":6212,"🪀":556,"🪁":557,"🪂":4122,"🪐":4180,"🪑":6216,"🪒":6220,"🪓":6182,"🪔":6103,"🪕":667,"‼":6355,"⁉":6356,"™":6364,"ℹ":6389,"↔":6269,"↕":6268,"↖":6267,"↗":6261,"↘":6263,"↙":6265,"↩":6270,"↪":6271,"⌚":4135,"⌛":4133,"⌨":680,"⏏":6323,"⏩":6310,"⏪":6314,"⏫":6317,"⏬":6319,"⏭":6311,"⏮":6315,"⏯":6312,"⏰":4136,"⏱":4137,"⏲":4138,"⏳":4134,"⏸":6320,"⏹":6321,"⏺":6322,"Ⓜ":6391,"▪":6439,"▫":6440,"▶":6309,"◀":6313,"◻":6436,"◼":6435,"◽":6438,"◾":6437,"☀":4177,"☁":4185,"☂":4200,"☃":4205,"☄":4207,"☎":671,"☑":6341,"☔":4201,"☕":3101,"☘":2123,"☝":1167,"☠":194,"☢":6258,"☣":6259,"☦":6288,"☪":6289,"☮":6290,"☯":6286,"☸":6285,"☹":166,"☺":119,"♈":6293,"♉":6294,"♊":6295,"♋":6296,"♌":6297,"♍":6298,"♎":6299,"♏":6300,"♐":6301,"♑":6302,"♒":6303,"♓":6304,"♟":571,"♠":567,"♣":570,"♥":568,"♦":569,"♨":457,"♻":6334,"♾":6333,"♿":6237,"⚒":6184,"⚓":4110,"⚔":6187,"⚖":6195,"⚗":6201,"⚙":6193,"⚛":6282,"⚜":6335,"⚠":6247,"⚡":4203,"⚪":6425,"⚫":6424,"⚰":6231,"⚱":6232,"⚽":528,"⚾":529,"⛄":4206,"⛅":4186,"⛈":4187,"⛎":6305,"⛏":6183,"⛑":639,"⛓":6198,"⛔":6249,"⛩":445,"⛪":441,"⛰":49,"⛱":4202,"⛲":447,"⛳":547,"⛴":4115,"⛵":4111,"⛷":1396,"⛸":548,"⛹♀":1412,"⛹♂":1411,"⛹":1410,"⛺":448,"⛽":4104,"✂":6171,"✅":6340,"✈":4118,"✉":6132,"✊":1170,"✋":1153,"✌":1157,"✍":1180,"✏":6145,"✒":6146,"✔":6342,"✖":6343,"✝":6287,"✡":6284,"✨":56,"✳":6352,"✴":6353,"❄":4204,"❇":6354,"❌":6344,"❎":6345,"❓":6357,"❔":6358,"❕":6359,"❗":6360,"❣":1125,"❤":1127,"➕":6346,"➖":6347,"➗":6348,"➡":6262,"➰":6349,"➿":6350,"⤴":6272,"⤵":6273,"⬅":6266,"⬆":6260,"⬇":6264,"⬛":6433,"⬜":6434,"⭐":4181,"⭕":6339,"〰":6361,"〽":6351,"㊗":6413,"㊙":6414,"🎅🏻":0,"🎅🏼":0,"🎅🏽":0,"🎅🏾":0,"🎅🏿":0,"🏂🏻":0,"🏂🏼":0,"🏂🏽":0,"🏂🏾":0,"🏂🏿":0,"🏃🏻♀":0,"🏃🏼♀":0,"🏃🏽♀":0,"🏃🏾♀":0,"🏃🏿♀":0,"🏃🏻♂":0,"🏃🏼♂":0,"🏃🏽♂":0,"🏃🏾♂":0,"🏃🏿♂":0,"🏃🏻":0,"🏃🏼":0,"🏃🏽":0,"🏃🏾":0,"🏃🏿":0,"🏄🏻♀":0,"🏄🏼♀":0,"🏄🏽♀":0,"🏄🏾♀":0,"🏄🏿♀":0,"🏄🏻♂":0,"🏄🏼♂":0,"🏄🏽♂":0,"🏄🏾♂":0,"🏄🏿♂":0,"🏄🏻":0,"🏄🏼":0,"🏄🏽":0,"🏄🏾":0,"🏄🏿":0,"🏇🏻":0,"🏇🏼":0,"🏇🏽":0,"🏇🏾":0,"🏇🏿":0,"🏊🏻♀":0,"🏊🏼♀":0,"🏊🏽♀":0,"🏊🏾♀":0,"🏊🏿♀":0,"🏊🏻♂":0,"🏊🏼♂":0,"🏊🏽♂":0,"🏊🏾♂":0,"🏊🏿♂":0,"🏊🏻":0,"🏊🏼":0,"🏊🏽":0,"🏊🏾":0,"🏊🏿":0,"🏋🏻♀":0,"🏋🏼♀":0,"🏋🏽♀":0,"🏋🏾♀":0,"🏋🏿♀":0,"🏋🏻♂":0,"🏋🏼♂":0,"🏋🏽♂":0,"🏋🏾♂":0,"🏋🏿♂":0,"🏋🏻":0,"🏋🏼":0,"🏋🏽":0,"🏋🏾":0,"🏋🏿":0,"🏌🏻♀":0,"🏌🏼♀":0,"🏌🏽♀":0,"🏌🏾♀":0,"🏌🏿♀":0,"🏌🏻♂":0,"🏌🏼♂":0,"🏌🏽♂":0,"🏌🏾♂":0,"🏌🏿♂":0,"🏌🏻":0,"🏌🏼":0,"🏌🏽":0,"🏌🏾":0,"🏌🏿":0,"👂🏻":0,"👂🏼":0,"👂🏽":0,"👂🏾":0,"👂🏿":0,"👃🏻":0,"👃🏼":0,"👃🏽":0,"👃🏾":0,"👃🏿":0,"👆🏻":0,"👆🏼":0,"👆🏽":0,"👆🏾":0,"👆🏿":0,"👇🏻":0,"👇🏼":0,"👇🏽":0,"👇🏾":0,"👇🏿":0,"👈🏻":0,"👈🏼":0,"👈🏽":0,"👈🏾":0,"👈🏿":0,"👉🏻":0,"👉🏼":0,"👉🏽":0,"👉🏾":0,"👉🏿":0,"👊🏻":0,"👊🏼":0,"👊🏽":0,"👊🏾":0,"👊🏿":0,"👋🏻":0,"👋🏼":0,"👋🏽":0,"👋🏾":0,"👋🏿":0,"👌🏻":0,"👌🏼":0,"👌🏽":0,"👌🏾":0,"👌🏿":0,"👍🏻":0,"👍🏼":0,"👍🏽":0,"👍🏾":0,"👍🏿":0,"👎🏻":0,"👎🏼":0,"👎🏽":0,"👎🏾":0,"👎🏿":0,"👏🏻":0,"👏🏼":0,"👏🏽":0,"👏🏾":0,"👏🏿":0,"👐🏻":0,"👐🏼":0,"👐🏽":0,"👐🏾":0,"👐🏿":0,"👦🏻":0,"👦🏼":0,"👦🏽":0,"👦🏾":0,"👦🏿":0,"👧🏻":0,"👧🏼":0,"👧🏽":0,"👧🏾":0,"👧🏿":0,"👨🏻🌾":0,"👨🏼🌾":0,"👨🏽🌾":0,"👨🏾🌾":0,"👨🏿🌾":0,"👨🏻🍳":0,"👨🏼🍳":0,"👨🏽🍳":0,"👨🏾🍳":0,"👨🏿🍳":0,"👨🏻🎓":0,"👨🏼🎓":0,"👨🏽🎓":0,"👨🏾🎓":0,"👨🏿🎓":0,"👨🏻🎤":0,"👨🏼🎤":0,"👨🏽🎤":0,"👨🏾🎤":0,"👨🏿🎤":0,"👨🏻🎨":0,"👨🏼🎨":0,"👨🏽🎨":0,"👨🏾🎨":0,"👨🏿🎨":0,"👨🏻🏫":0,"👨🏼🏫":0,"👨🏽🏫":0,"👨🏾🏫":0,"👨🏿🏫":0,"👨🏻🏭":0,"👨🏼🏭":0,"👨🏽🏭":0,"👨🏾🏭":0,"👨🏿🏭":0,"👨🏻💻":0,"👨🏼💻":0,"👨🏽💻":0,"👨🏾💻":0,"👨🏿💻":0,"👨🏻💼":0,"👨🏼💼":0,"👨🏽💼":0,"👨🏾💼":0,"👨🏿💼":0,"👨🏻🔧":0,"👨🏼🔧":0,"👨🏽🔧":0,"👨🏾🔧":0,"👨🏿🔧":0,"👨🏻🔬":0,"👨🏼🔬":0,"👨🏽🔬":0,"👨🏾🔬":0,"👨🏿🔬":0,"👨🏻🚀":0,"👨🏼🚀":0,"👨🏽🚀":0,"👨🏾🚀":0,"👨🏿🚀":0,"👨🏻🚒":0,"👨🏼🚒":0,"👨🏽🚒":0,"👨🏾🚒":0,"👨🏿🚒":0,"👨🏻🦯":0,"👨🏼🦯":0,"👨🏽🦯":0,"👨🏾🦯":0,"👨🏿🦯":0,"👨🏻🦰":0,"👨🏼🦰":0,"👨🏽🦰":0,"👨🏾🦰":0,"👨🏿🦰":0,"👨🏻🦱":0,"👨🏼🦱":0,"👨🏽🦱":0,"👨🏾🦱":0,"👨🏿🦱":0,"👨🏻🦲":0,"👨🏼🦲":0,"👨🏽🦲":0,"👨🏾🦲":0,"👨🏿🦲":0,"👨🏻🦳":0,"👨🏼🦳":0,"👨🏽🦳":0,"👨🏾🦳":0,"👨🏿🦳":0,"👨🏻🦼":0,"👨🏼🦼":0,"👨🏽🦼":0,"👨🏾🦼":0,"👨🏿🦼":0,"👨🏻🦽":0,"👨🏼🦽":0,"👨🏽🦽":0,"👨🏾🦽":0,"👨🏿🦽":0,"👨🏻⚕":0,"👨🏼⚕":0,"👨🏽⚕":0,"👨🏾⚕":0,"👨🏿⚕":0,"👨🏻⚖":0,"👨🏼⚖":0,"👨🏽⚖":0,"👨🏾⚖":0,"👨🏿⚖":0,"👨🏻✈":0,"👨🏼✈":0,"👨🏽✈":0,"👨🏾✈":0,"👨🏿✈":0,"👨🏻":0,"👨🏼":0,"👨🏽":0,"👨🏾":0,"👨🏿":0,"👩🏻🌾":0,"👩🏼🌾":0,"👩🏽🌾":0,"👩🏾🌾":0,"👩🏿🌾":0,"👩🏻🍳":0,"👩🏼🍳":0,"👩🏽🍳":0,"👩🏾🍳":0,"👩🏿🍳":0,"👩🏻🎓":0,"👩🏼🎓":0,"👩🏽🎓":0,"👩🏾🎓":0,"👩🏿🎓":0,"👩🏻🎤":0,"👩🏼🎤":0,"👩🏽🎤":0,"👩🏾🎤":0,"👩🏿🎤":0,"👩🏻🎨":0,"👩🏼🎨":0,"👩🏽🎨":0,"👩🏾🎨":0,"👩🏿🎨":0,"👩🏻🏫":0,"👩🏼🏫":0,"👩🏽🏫":0,"👩🏾🏫":0,"👩🏿🏫":0,"👩🏻🏭":0,"👩🏼🏭":0,"👩🏽🏭":0,"👩🏾🏭":0,"👩🏿🏭":0,"👩🏻💻":0,"👩🏼💻":0,"👩🏽💻":0,"👩🏾💻":0,"👩🏿💻":0,"👩🏻💼":0,"👩🏼💼":0,"👩🏽💼":0,"👩🏾💼":0,"👩🏿💼":0,"👩🏻🔧":0,"👩🏼🔧":0,"👩🏽🔧":0,"👩🏾🔧":0,"👩🏿🔧":0,"👩🏻🔬":0,"👩🏼🔬":0,"👩🏽🔬":0,"👩🏾🔬":0,"👩🏿🔬":0,"👩🏻🚀":0,"👩🏼🚀":0,"👩🏽🚀":0,"👩🏾🚀":0,"👩🏿🚀":0,"👩🏻🚒":0,"👩🏼🚒":0,"👩🏽🚒":0,"👩🏾🚒":0,"👩🏿🚒":0,"👩🏻🦯":0,"👩🏼🦯":0,"👩🏽🦯":0,"👩🏾🦯":0,"👩🏿🦯":0,"👩🏻🦰":0,"👩🏼🦰":0,"👩🏽🦰":0,"👩🏾🦰":0,"👩🏿🦰":0,"👩🏻🦱":0,"👩🏼🦱":0,"👩🏽🦱":0,"👩🏾🦱":0,"👩🏿🦱":0,"👩🏻🦲":0,"👩🏼🦲":0,"👩🏽🦲":0,"👩🏾🦲":0,"👩🏿🦲":0,"👩🏻🦳":0,"👩🏼🦳":0,"👩🏽🦳":0,"👩🏾🦳":0,"👩🏿🦳":0,"👩🏻🦼":0,"👩🏼🦼":0,"👩🏽🦼":0,"👩🏾🦼":0,"👩🏿🦼":0,"👩🏻🦽":0,"👩🏼🦽":0,"👩🏽🦽":0,"👩🏾🦽":0,"👩🏿🦽":0,"👩🏻⚕":0,"👩🏼⚕":0,"👩🏽⚕":0,"👩🏾⚕":0,"👩🏿⚕":0,"👩🏻⚖":0,"👩🏼⚖":0,"👩🏽⚖":0,"👩🏾⚖":0,"👩🏿⚖":0,"👩🏻✈":0,"👩🏼✈":0,"👩🏽✈":0,"👩🏾✈":0,"👩🏿✈":0,"👩🏻":0,"👩🏼":0,"👩🏽":0,"👩🏾":0,"👩🏿":0,"👫🏻":0,"👫🏼":0,"👫🏽":0,"👫🏾":0,"👫🏿":0,"👩🏻🤝👨🏼":0,"👩🏻🤝👨🏽":0,"👩🏻🤝👨🏾":0,"👩🏻🤝👨🏿":0,"👩🏼🤝👨🏻":0,"👩🏼🤝👨🏽":0,"👩🏼🤝👨🏾":0,"👩🏼🤝👨🏿":0,"👩🏽🤝👨🏻":0,"👩🏽🤝👨🏼":0,"👩🏽🤝👨🏾":0,"👩🏽🤝👨🏿":0,"👩🏾🤝👨🏻":0,"👩🏾🤝👨🏼":0,"👩🏾🤝👨🏽":0,"👩🏾🤝👨🏿":0,"👩🏿🤝👨🏻":0,"👩🏿🤝👨🏼":0,"👩🏿🤝👨🏽":0,"👩🏿🤝👨🏾":0,"👬🏻":0,"👬🏼":0,"👬🏽":0,"👬🏾":0,"👬🏿":0,"👨🏻🤝👨🏼":0,"👨🏻🤝👨🏽":0,"👨🏻🤝👨🏾":0,"👨🏻🤝👨🏿":0,"👨🏼🤝👨🏻":0,"👨🏼🤝👨🏽":0,"👨🏼🤝👨🏾":0,"👨🏼🤝👨🏿":0,"👨🏽🤝👨🏻":0,"👨🏽🤝👨🏼":0,"👨🏽🤝👨🏾":0,"👨🏽🤝👨🏿":0,"👨🏾🤝👨🏻":0,"👨🏾🤝👨🏼":0,"👨🏾🤝👨🏽":0,"👨🏾🤝👨🏿":0,"👨🏿🤝👨🏻":0,"👨🏿🤝👨🏼":0,"👨🏿🤝👨🏽":0,"👨🏿🤝👨🏾":0,"👭🏻":0,"👭🏼":0,"👭🏽":0,"👭🏾":0,"👭🏿":0,"👩🏻🤝👩🏼":0,"👩🏻🤝👩🏽":0,"👩🏻🤝👩🏾":0,"👩🏻🤝👩🏿":0,"👩🏼🤝👩🏻":0,"👩🏼🤝👩🏽":0,"👩🏼🤝👩🏾":0,"👩🏼🤝👩🏿":0,"👩🏽🤝👩🏻":0,"👩🏽🤝👩🏼":0,"👩🏽🤝👩🏾":0,"👩🏽🤝👩🏿":0,"👩🏾🤝👩🏻":0,"👩🏾🤝👩🏼":0,"👩🏾🤝👩🏽":0,"👩🏾🤝👩🏿":0,"👩🏿🤝👩🏻":0,"👩🏿🤝👩🏼":0,"👩🏿🤝👩🏽":0,"👩🏿🤝👩🏾":0,"👮🏻♀":0,"👮🏼♀":0,"👮🏽♀":0,"👮🏾♀":0,"👮🏿♀":0,"👮🏻♂":0,"👮🏼♂":0,"👮🏽♂":0,"👮🏾♂":0,"👮🏿♂":0,"👮🏻":0,"👮🏼":0,"👮🏽":0,"👮🏾":0,"👮🏿":0,"👰🏻":0,"👰🏼":0,"👰🏽":0,"👰🏾":0,"👰🏿":0,"👱🏻♀":0,"👱🏼♀":0,"👱🏽♀":0,"👱🏾♀":0,"👱🏿♀":0,"👱🏻♂":0,"👱🏼♂":0,"👱🏽♂":0,"👱🏾♂":0,"👱🏿♂":0,"👱🏻":0,"👱🏼":0,"👱🏽":0,"👱🏾":0,"👱🏿":0,"👲🏻":0,"👲🏼":0,"👲🏽":0,"👲🏾":0,"👲🏿":0,"👳🏻♀":0,"👳🏼♀":0,"👳🏽♀":0,"👳🏾♀":0,"👳🏿♀":0,"👳🏻♂":0,"👳🏼♂":0,"👳🏽♂":0,"👳🏾♂":0,"👳🏿♂":0,"👳🏻":0,"👳🏼":0,"👳🏽":0,"👳🏾":0,"👳🏿":0,"👴🏻":0,"👴🏼":0,"👴🏽":0,"👴🏾":0,"👴🏿":0,"👵🏻":0,"👵🏼":0,"👵🏽":0,"👵🏾":0,"👵🏿":0,"👶🏻":0,"👶🏼":0,"👶🏽":0,"👶🏾":0,"👶🏿":0,"👷🏻♀":0,"👷🏼♀":0,"👷🏽♀":0,"👷🏾♀":0,"👷🏿♀":0,"👷🏻♂":0,"👷🏼♂":0,"👷🏽♂":0,"👷🏾♂":0,"👷🏿♂":0,"👷🏻":0,"👷🏼":0,"👷🏽":0,"👷🏾":0,"👷🏿":0,"👸🏻":0,"👸🏼":0,"👸🏽":0,"👸🏾":0,"👸🏿":0,"👼🏻":0,"👼🏼":0,"👼🏽":0,"👼🏾":0,"👼🏿":0,"💁🏻♀":0,"💁🏼♀":0,"💁🏽♀":0,"💁🏾♀":0,"💁🏿♀":0,"💁🏻♂":0,"💁🏼♂":0,"💁🏽♂":0,"💁🏾♂":0,"💁🏿♂":0,"💁🏻":0,"💁🏼":0,"💁🏽":0,"💁🏾":0,"💁🏿":0,"💂🏻♀":0,"💂🏼♀":0,"💂🏽♀":0,"💂🏾♀":0,"💂🏿♀":0,"💂🏻♂":0,"💂🏼♂":0,"💂🏽♂":0,"💂🏾♂":0,"💂🏿♂":0,"💂🏻":0,"💂🏼":0,"💂🏽":0,"💂🏾":0,"💂🏿":0,"💃🏻":0,"💃🏼":0,"💃🏽":0,"💃🏾":0,"💃🏿":0,"💅🏻":0,"💅🏼":0,"💅🏽":0,"💅🏾":0,"💅🏿":0,"💆🏻♀":0,"💆🏼♀":0,"💆🏽♀":0,"💆🏾♀":0,"💆🏿♀":0,"💆🏻♂":0,"💆🏼♂":0,"💆🏽♂":0,"💆🏾♂":0,"💆🏿♂":0,"💆🏻":0,"💆🏼":0,"💆🏽":0,"💆🏾":0,"💆🏿":0,"💇🏻♀":0,"💇🏼♀":0,"💇🏽♀":0,"💇🏾♀":0,"💇🏿♀":0,"💇🏻♂":0,"💇🏼♂":0,"💇🏽♂":0,"💇🏾♂":0,"💇🏿♂":0,"💇🏻":0,"💇🏼":0,"💇🏽":0,"💇🏾":0,"💇🏿":0,"💪🏻":0,"💪🏼":0,"💪🏽":0,"💪🏾":0,"💪🏿":0,"🕴🏻":0,"🕴🏼":0,"🕴🏽":0,"🕴🏾":0,"🕴🏿":0,"🕵🏻♀":0,"🕵🏼♀":0,"🕵🏽♀":0,"🕵🏾♀":0,"🕵🏿♀":0,"🕵🏻♂":0,"🕵🏼♂":0,"🕵🏽♂":0,"🕵🏾♂":0,"🕵🏿♂":0,"🕵🏻":0,"🕵🏼":0,"🕵🏽":0,"🕵🏾":0,"🕵🏿":0,"🕺🏻":0,"🕺🏼":0,"🕺🏽":0,"🕺🏾":0,"🕺🏿":0,"🖐🏻":0,"🖐🏼":0,"🖐🏽":0,"🖐🏾":0,"🖐🏿":0,"🖕🏻":0,"🖕🏼":0,"🖕🏽":0,"🖕🏾":0,"🖕🏿":0,"🖖🏻":0,"🖖🏼":0,"🖖🏽":0,"🖖🏾":0,"🖖🏿":0,"🙅🏻♀":0,"🙅🏼♀":0,"🙅🏽♀":0,"🙅🏾♀":0,"🙅🏿♀":0,"🙅🏻♂":0,"🙅🏼♂":0,"🙅🏽♂":0,"🙅🏾♂":0,"🙅🏿♂":0,"🙅🏻":0,"🙅🏼":0,"🙅🏽":0,"🙅🏾":0,"🙅🏿":0,"🙆🏻♀":0,"🙆🏼♀":0,"🙆🏽♀":0,"🙆🏾♀":0,"🙆🏿♀":0,"🙆🏻♂":0,"🙆🏼♂":0,"🙆🏽♂":0,"🙆🏾♂":0,"🙆🏿♂":0,"🙆🏻":0,"🙆🏼":0,"🙆🏽":0,"🙆🏾":0,"🙆🏿":0,"🙇🏻♀":0,"🙇🏼♀":0,"🙇🏽♀":0,"🙇🏾♀":0,"🙇🏿♀":0,"🙇🏻♂":0,"🙇🏼♂":0,"🙇🏽♂":0,"🙇🏾♂":0,"🙇🏿♂":0,"🙇🏻":0,"🙇🏼":0,"🙇🏽":0,"🙇🏾":0,"🙇🏿":0,"🙋🏻♀":0,"🙋🏼♀":0,"🙋🏽♀":0,"🙋🏾♀":0,"🙋🏿♀":0,"🙋🏻♂":0,"🙋🏼♂":0,"🙋🏽♂":0,"🙋🏾♂":0,"🙋🏿♂":0,"🙋🏻":0,"🙋🏼":0,"🙋🏽":0,"🙋🏾":0,"🙋🏿":0,"🙌🏻":0,"🙌🏼":0,"🙌🏽":0,"🙌🏾":0,"🙌🏿":0,"🙍🏻♀":0,"🙍🏼♀":0,"🙍🏽♀":0,"🙍🏾♀":0,"🙍🏿♀":0,"🙍🏻♂":0,"🙍🏼♂":0,"🙍🏽♂":0,"🙍🏾♂":0,"🙍🏿♂":0,"🙍🏻":0,"🙍🏼":0,"🙍🏽":0,"🙍🏾":0,"🙍🏿":0,"🙎🏻♀":0,"🙎🏼♀":0,"🙎🏽♀":0,"🙎🏾♀":0,"🙎🏿♀":0,"🙎🏻♂":0,"🙎🏼♂":0,"🙎🏽♂":0,"🙎🏾♂":0,"🙎🏿♂":0,"🙎🏻":0,"🙎🏼":0,"🙎🏽":0,"🙎🏾":0,"🙎🏿":0,"🙏🏻":0,"🙏🏼":0,"🙏🏽":0,"🙏🏾":0,"🙏🏿":0,"🚣🏻♀":0,"🚣🏼♀":0,"🚣🏽♀":0,"🚣🏾♀":0,"🚣🏿♀":0,"🚣🏻♂":0,"🚣🏼♂":0,"🚣🏽♂":0,"🚣🏾♂":0,"🚣🏿♂":0,"🚣🏻":0,"🚣🏼":0,"🚣🏽":0,"🚣🏾":0,"🚣🏿":0,"🚴🏻♀":0,"🚴🏼♀":0,"🚴🏽♀":0,"🚴🏾♀":0,"🚴🏿♀":0,"🚴🏻♂":0,"🚴🏼♂":0,"🚴🏽♂":0,"🚴🏾♂":0,"🚴🏿♂":0,"🚴🏻":0,"🚴🏼":0,"🚴🏽":0,"🚴🏾":0,"🚴🏿":0,"🚵🏻♀":0,"🚵🏼♀":0,"🚵🏽♀":0,"🚵🏾♀":0,"🚵🏿♀":0,"🚵🏻♂":0,"🚵🏼♂":0,"🚵🏽♂":0,"🚵🏾♂":0,"🚵🏿♂":0,"🚵🏻":0,"🚵🏼":0,"🚵🏽":0,"🚵🏾":0,"🚵🏿":0,"🚶🏻♀":0,"🚶🏼♀":0,"🚶🏽♀":0,"🚶🏾♀":0,"🚶🏿♀":0,"🚶🏻♂":0,"🚶🏼♂":0,"🚶🏽♂":0,"🚶🏾♂":0,"🚶🏿♂":0,"🚶🏻":0,"🚶🏼":0,"🚶🏽":0,"🚶🏾":0,"🚶🏿":0,"🛀🏻":0,"🛀🏼":0,"🛀🏽":0,"🛀🏾":0,"🛀🏿":0,"🛌🏻":0,"🛌🏼":0,"🛌🏽":0,"🛌🏾":0,"🛌🏿":0,"🤏🏻":0,"🤏🏼":0,"🤏🏽":0,"🤏🏾":0,"🤏🏿":0,"🤘🏻":0,"🤘🏼":0,"🤘🏽":0,"🤘🏾":0,"🤘🏿":0,"🤙🏻":0,"🤙🏼":0,"🤙🏽":0,"🤙🏾":0,"🤙🏿":0,"🤚🏻":0,"🤚🏼":0,"🤚🏽":0,"🤚🏾":0,"🤚🏿":0,"🤛🏻":0,"🤛🏼":0,"🤛🏽":0,"🤛🏾":0,"🤛🏿":0,"🤜🏻":0,"🤜🏼":0,"🤜🏽":0,"🤜🏾":0,"🤜🏿":0,"🤞🏻":0,"🤞🏼":0,"🤞🏽":0,"🤞🏾":0,"🤞🏿":0,"🤟🏻":0,"🤟🏼":0,"🤟🏽":0,"🤟🏾":0,"🤟🏿":0,"🤦🏻♀":0,"🤦🏼♀":0,"🤦🏽♀":0,"🤦🏾♀":0,"🤦🏿♀":0,"🤦🏻♂":0,"🤦🏼♂":0,"🤦🏽♂":0,"🤦🏾♂":0,"🤦🏿♂":0,"🤦🏻":0,"🤦🏼":0,"🤦🏽":0,"🤦🏾":0,"🤦🏿":0,"🤰🏻":0,"🤰🏼":0,"🤰🏽":0,"🤰🏾":0,"🤰🏿":0,"🤱🏻":0,"🤱🏼":0,"🤱🏽":0,"🤱🏾":0,"🤱🏿":0,"🤲🏻":0,"🤲🏼":0,"🤲🏽":0,"🤲🏾":0,"🤲🏿":0,"🤳🏻":0,"🤳🏼":0,"🤳🏽":0,"🤳🏾":0,"🤳🏿":0,"🤴🏻":0,"🤴🏼":0,"🤴🏽":0,"🤴🏾":0,"🤴🏿":0,"🤵🏻":0,"🤵🏼":0,"🤵🏽":0,"🤵🏾":0,"🤵🏿":0,"🤶🏻":0,"🤶🏼":0,"🤶🏽":0,"🤶🏾":0,"🤶🏿":0,"🤷🏻♀":0,"🤷🏼♀":0,"🤷🏽♀":0,"🤷🏾♀":0,"🤷🏿♀":0,"🤷🏻♂":0,"🤷🏼♂":0,"🤷🏽♂":0,"🤷🏾♂":0,"🤷🏿♂":0,"🤷🏻":0,"🤷🏼":0,"🤷🏽":0,"🤷🏾":0,"🤷🏿":0,"🤸🏻♀":0,"🤸🏼♀":0,"🤸🏽♀":0,"🤸🏾♀":0,"🤸🏿♀":0,"🤸🏻♂":0,"🤸🏼♂":0,"🤸🏽♂":0,"🤸🏾♂":0,"🤸🏿♂":0,"🤸🏻":0,"🤸🏼":0,"🤸🏽":0,"🤸🏾":0,"🤸🏿":0,"🤹🏻♀":0,"🤹🏼♀":0,"🤹🏽♀":0,"🤹🏾♀":0,"🤹🏿♀":0,"🤹🏻♂":0,"🤹🏼♂":0,"🤹🏽♂":0,"🤹🏾♂":0,"🤹🏿♂":0,"🤹🏻":0,"🤹🏼":0,"🤹🏽":0,"🤹🏾":0,"🤹🏿":0,"🤽🏻♀":0,"🤽🏼♀":0,"🤽🏽♀":0,"🤽🏾♀":0,"🤽🏿♀":0,"🤽🏻♂":0,"🤽🏼♂":0,"🤽🏽♂":0,"🤽🏾♂":0,"🤽🏿♂":0,"🤽🏻":0,"🤽🏼":0,"🤽🏽":0,"🤽🏾":0,"🤽🏿":0,"🤾🏻♀":0,"🤾🏼♀":0,"🤾🏽♀":0,"🤾🏾♀":0,"🤾🏿♀":0,"🤾🏻♂":0,"🤾🏼♂":0,"🤾🏽♂":0,"🤾🏾♂":0,"🤾🏿♂":0,"🤾🏻":0,"🤾🏼":0,"🤾🏽":0,"🤾🏾":0,"🤾🏿":0,"🦵🏻":0,"🦵🏼":0,"🦵🏽":0,"🦵🏾":0,"🦵🏿":0,"🦶🏻":0,"🦶🏼":0,"🦶🏽":0,"🦶🏾":0,"🦶🏿":0,"🦸🏻♀":0,"🦸🏼♀":0,"🦸🏽♀":0,"🦸🏾♀":0,"🦸🏿♀":0,"🦸🏻♂":0,"🦸🏼♂":0,"🦸🏽♂":0,"🦸🏾♂":0,"🦸🏿♂":0,"🦸🏻":0,"🦸🏼":0,"🦸🏽":0,"🦸🏾":0,"🦸🏿":0,"🦹🏻♀":0,"🦹🏼♀":0,"🦹🏽♀":0,"🦹🏾♀":0,"🦹🏿♀":0,"🦹🏻♂":0,"🦹🏼♂":0,"🦹🏽♂":0,"🦹🏾♂":0,"🦹🏿♂":0,"🦹🏻":0,"🦹🏼":0,"🦹🏽":0,"🦹🏾":0,"🦹🏿":0,"🦻🏻":0,"🦻🏼":0,"🦻🏽":0,"🦻🏾":0,"🦻🏿":0,"🧍🏻♀":0,"🧍🏼♀":0,"🧍🏽♀":0,"🧍🏾♀":0,"🧍🏿♀":0,"🧍🏻♂":0,"🧍🏼♂":0,"🧍🏽♂":0,"🧍🏾♂":0,"🧍🏿♂":0,"🧍🏻":0,"🧍🏼":0,"🧍🏽":0,"🧍🏾":0,"🧍🏿":0,"🧎🏻♀":0,"🧎🏼♀":0,"🧎🏽♀":0,"🧎🏾♀":0,"🧎🏿♀":0,"🧎🏻♂":0,"🧎🏼♂":0,"🧎🏽♂":0,"🧎🏾♂":0,"🧎🏿♂":0,"🧎🏻":0,"🧎🏼":0,"🧎🏽":0,"🧎🏾":0,"🧎🏿":0,"🧏🏻♀":0,"🧏🏼♀":0,"🧏🏽♀":0,"🧏🏾♀":0,"🧏🏿♀":0,"🧏🏻♂":0,"🧏🏼♂":0,"🧏🏽♂":0,"🧏🏾♂":0,"🧏🏿♂":0,"🧏🏻":0,"🧏🏼":0,"🧏🏽":0,"🧏🏾":0,"🧏🏿":0,"🧑🏻🌾":0,"🧑🏼🌾":0,"🧑🏽🌾":0,"🧑🏾🌾":0,"🧑🏿🌾":0,"🧑🏻🍳":0,"🧑🏼🍳":0,"🧑🏽🍳":0,"🧑🏾🍳":0,"🧑🏿🍳":0,"🧑🏻🎓":0,"🧑🏼🎓":0,"🧑🏽🎓":0,"🧑🏾🎓":0,"🧑🏿🎓":0,"🧑🏻🎤":0,"🧑🏼🎤":0,"🧑🏽🎤":0,"🧑🏾🎤":0,"🧑🏿🎤":0,"🧑🏻🎨":0,"🧑🏼🎨":0,"🧑🏽🎨":0,"🧑🏾🎨":0,"🧑🏿🎨":0,"🧑🏻🏫":0,"🧑🏼🏫":0,"🧑🏽🏫":0,"🧑🏾🏫":0,"🧑🏿🏫":0,"🧑🏻🏭":0,"🧑🏼🏭":0,"🧑🏽🏭":0,"🧑🏾🏭":0,"🧑🏿🏭":0,"🧑🏻💻":0,"🧑🏼💻":0,"🧑🏽💻":0,"🧑🏾💻":0,"🧑🏿💻":0,"🧑🏻💼":0,"🧑🏼💼":0,"🧑🏽💼":0,"🧑🏾💼":0,"🧑🏿💼":0,"🧑🏻🔧":0,"🧑🏼🔧":0,"🧑🏽🔧":0,"🧑🏾🔧":0,"🧑🏿🔧":0,"🧑🏻🔬":0,"🧑🏼🔬":0,"🧑🏽🔬":0,"🧑🏾🔬":0,"🧑🏿🔬":0,"🧑🏻🚀":0,"🧑🏼🚀":0,"🧑🏽🚀":0,"🧑🏾🚀":0,"🧑🏿🚀":0,"🧑🏻🚒":0,"🧑🏼🚒":0,"🧑🏽🚒":0,"🧑🏾🚒":0,"🧑🏿🚒":0,"🧑🏻🤝🧑🏻":0,"🧑🏻🤝🧑🏼":0,"🧑🏻🤝🧑🏽":0,"🧑🏻🤝🧑🏾":0,"🧑🏻🤝🧑🏿":0,"🧑🏼🤝🧑🏻":0,"🧑🏼🤝🧑🏼":0,"🧑🏼🤝🧑🏽":0,"🧑🏼🤝🧑🏾":0,"🧑🏼🤝🧑🏿":0,"🧑🏽🤝🧑🏻":0,"🧑🏽🤝🧑🏼":0,"🧑🏽🤝🧑🏽":0,"🧑🏽🤝🧑🏾":0,"🧑🏽🤝🧑🏿":0,"🧑🏾🤝🧑🏻":0,"🧑🏾🤝🧑🏼":0,"🧑🏾🤝🧑🏽":0,"🧑🏾🤝🧑🏾":0,"🧑🏾🤝🧑🏿":0,"🧑🏿🤝🧑🏻":0,"🧑🏿🤝🧑🏼":0,"🧑🏿🤝🧑🏽":0,"🧑🏿🤝🧑🏾":0,"🧑🏿🤝🧑🏿":0,"🧑🏻🦯":0,"🧑🏼🦯":0,"🧑🏽🦯":0,"🧑🏾🦯":0,"🧑🏿🦯":0,"🧑🏻🦰":0,"🧑🏼🦰":0,"🧑🏽🦰":0,"🧑🏾🦰":0,"🧑🏿🦰":0,"🧑🏻🦱":0,"🧑🏼🦱":0,"🧑🏽🦱":0,"🧑🏾🦱":0,"🧑🏿🦱":0,"🧑🏻🦲":0,"🧑🏼🦲":0,"🧑🏽🦲":0,"🧑🏾🦲":0,"🧑🏿🦲":0,"🧑🏻🦳":0,"🧑🏼🦳":0,"🧑🏽🦳":0,"🧑🏾🦳":0,"🧑🏿🦳":0,"🧑🏻🦼":0,"🧑🏼🦼":0,"🧑🏽🦼":0,"🧑🏾🦼":0,"🧑🏿🦼":0,"🧑🏻🦽":0,"🧑🏼🦽":0,"🧑🏽🦽":0,"🧑🏾🦽":0,"🧑🏿🦽":0,"🧑🏻⚕":0,"🧑🏼⚕":0,"🧑🏽⚕":0,"🧑🏾⚕":0,"🧑🏿⚕":0,"🧑🏻⚖":0,"🧑🏼⚖":0,"🧑🏽⚖":0,"🧑🏾⚖":0,"🧑🏿⚖":0,"🧑🏻✈":0,"🧑🏼✈":0,"🧑🏽✈":0,"🧑🏾✈":0,"🧑🏿✈":0,"🧑🏻":0,"🧑🏼":0,"🧑🏽":0,"🧑🏾":0,"🧑🏿":0,"🧒🏻":0,"🧒🏼":0,"🧒🏽":0,"🧒🏾":0,"🧒🏿":0,"🧓🏻":0,"🧓🏼":0,"🧓🏽":0,"🧓🏾":0,"🧓🏿":0,"🧔🏻":0,"🧔🏼":0,"🧔🏽":0,"🧔🏾":0,"🧔🏿":0,"🧕🏻":0,"🧕🏼":0,"🧕🏽":0,"🧕🏾":0,"🧕🏿":0,"🧖🏻♀":0,"🧖🏼♀":0,"🧖🏽♀":0,"🧖🏾♀":0,"🧖🏿♀":0,"🧖🏻♂":0,"🧖🏼♂":0,"🧖🏽♂":0,"🧖🏾♂":0,"🧖🏿♂":0,"🧖🏻":0,"🧖🏼":0,"🧖🏽":0,"🧖🏾":0,"🧖🏿":0,"🧗🏻♀":0,"🧗🏼♀":0,"🧗🏽♀":0,"🧗🏾♀":0,"🧗🏿♀":0,"🧗🏻♂":0,"🧗🏼♂":0,"🧗🏽♂":0,"🧗🏾♂":0,"🧗🏿♂":0,"🧗🏻":0,"🧗🏼":0,"🧗🏽":0,"🧗🏾":0,"🧗🏿":0,"🧘🏻♀":0,"🧘🏼♀":0,"🧘🏽♀":0,"🧘🏾♀":0,"🧘🏿♀":0,"🧘🏻♂":0,"🧘🏼♂":0,"🧘🏽♂":0,"🧘🏾♂":0,"🧘🏿♂":0,"🧘🏻":0,"🧘🏼":0,"🧘🏽":0,"🧘🏾":0,"🧘🏿":0,"🧙🏻♀":0,"🧙🏼♀":0,"🧙🏽♀":0,"🧙🏾♀":0,"🧙🏿♀":0,"🧙🏻♂":0,"🧙🏼♂":0,"🧙🏽♂":0,"🧙🏾♂":0,"🧙🏿♂":0,"🧙🏻":0,"🧙🏼":0,"🧙🏽":0,"🧙🏾":0,"🧙🏿":0,"🧚🏻♀":0,"🧚🏼♀":0,"🧚🏽♀":0,"🧚🏾♀":0,"🧚🏿♀":0,"🧚🏻♂":0,"🧚🏼♂":0,"🧚🏽♂":0,"🧚🏾♂":0,"🧚🏿♂":0,"🧚🏻":0,"🧚🏼":0,"🧚🏽":0,"🧚🏾":0,"🧚🏿":0,"🧛🏻♀":0,"🧛🏼♀":0,"🧛🏽♀":0,"🧛🏾♀":0,"🧛🏿♀":0,"🧛🏻♂":0,"🧛🏼♂":0,"🧛🏽♂":0,"🧛🏾♂":0,"🧛🏿♂":0,"🧛🏻":0,"🧛🏼":0,"🧛🏽":0,"🧛🏾":0,"🧛🏿":0,"🧜🏻♀":0,"🧜🏼♀":0,"🧜🏽♀":0,"🧜🏾♀":0,"🧜🏿♀":0,"🧜🏻♂":0,"🧜🏼♂":0,"🧜🏽♂":0,"🧜🏾♂":0,"🧜🏿♂":0,"🧜🏻":0,"🧜🏼":0,"🧜🏽":0,"🧜🏾":0,"🧜🏿":0,"🧝🏻♀":0,"🧝🏼♀":0,"🧝🏽♀":0,"🧝🏾♀":0,"🧝🏿♀":0,"🧝🏻♂":0,"🧝🏼♂":0,"🧝🏽♂":0,"🧝🏾♂":0,"🧝🏿♂":0,"🧝🏻":0,"🧝🏼":0,"🧝🏽":0,"🧝🏾":0,"🧝🏿":0,"☝🏻":0,"☝🏼":0,"☝🏽":0,"☝🏾":0,"☝🏿":0,"⛹🏻♀":0,"⛹🏼♀":0,"⛹🏽♀":0,"⛹🏾♀":0,"⛹🏿♀":0,"⛹🏻♂":0,"⛹🏼♂":0,"⛹🏽♂":0,"⛹🏾♂":0,"⛹🏿♂":0,"⛹🏻":0,"⛹🏼":0,"⛹🏽":0,"⛹🏾":0,"⛹🏿":0,"✊🏻":0,"✊🏼":0,"✊🏽":0,"✊🏾":0,"✊🏿":0,"✋🏻":0,"✋🏼":0,"✋🏽":0,"✋🏾":0,"✋🏿":0,"✌🏻":0,"✌🏼":0,"✌🏽":0,"✌🏾":0,"✌🏿":0,"✍🏻":0,"✍🏼":0,"✍🏽":0,"✍🏾":0,"✍🏿":0}
\ No newline at end of file
diff --git a/src/format_jsons.js b/src/format_jsons.js
index e28a4844..19249557 100644
--- a/src/format_jsons.js
+++ b/src/format_jsons.js
@@ -48,6 +48,7 @@ if(false) {
{
let categories = {
"Smileys & Emotion": 1
+ , "People & Body": 1
, "Animals & Nature": 2
, "Food & Drink": 3
, "Travel & Places": 4
@@ -58,18 +59,23 @@ if(false) {
, "Skin Tones": 8
};
+ let concatCategories = [['Objects', 'Symbols'], ['Smileys & Emotion', 'People & Body']];
+ let maxIndexes = {};
+
let maxObjectsIndex = -1;
formatted.forEach(e => {
- if(e.category == 'Objects') {
- if(e.sort_order > maxObjectsIndex) {
- maxObjectsIndex = e.sort_order;
- }
+ if(concatCategories.findIndex(c => c[0] == e.category) === -1) return;
+
+ if(!maxIndexes.hasOwnProperty(e.category)) maxIndexes[e.category] = 0;
+ if(e.sort_order > maxIndexes[e.category]) {
+ maxIndexes[e.category] = e.sort_order;
}
});
formatted.forEach(e => {
- if(e.category == 'Symbols') {
- e.sort_order += maxObjectsIndex;
- }
+ let concatDetails = concatCategories.find(c => c[1] == e.category);
+ if(!concatDetails) return;
+
+ e.sort_order += maxIndexes[concatDetails[0]];
});
formatted.forEach(e => {
diff --git a/src/lib/appManagers/appDialogsManager.ts b/src/lib/appManagers/appDialogsManager.ts
index e2747874..93c5282e 100644
--- a/src/lib/appManagers/appDialogsManager.ts
+++ b/src/lib/appManagers/appDialogsManager.ts
@@ -649,7 +649,7 @@ export class AppDialogsManager {
if(onFound) onFound();
let peerID = +elem.getAttribute('data-peerID');
- let lastMsgID = +elem.dataset.mid || 0;
+ let lastMsgID = +elem.dataset.mid || undefined;
if(!samePeer) {
elem.classList.add('active');
diff --git a/src/lib/appManagers/appImManager.ts b/src/lib/appManagers/appImManager.ts
index 3935e501..4c79fa6e 100644
--- a/src/lib/appManagers/appImManager.ts
+++ b/src/lib/appManagers/appImManager.ts
@@ -2,7 +2,7 @@
import apiManager from '../mtproto/mtprotoworker';
import { $rootScope, numberWithCommas, findUpClassName, formatNumber, placeCaretAtEnd, findUpTag, langPack, whichChild } from "../utils";
import appUsersManager from "./appUsersManager";
-import appMessagesManager from "./appMessagesManager";
+import appMessagesManager, { Dialog } from "./appMessagesManager";
import appPeersManager from "./appPeersManager";
import appProfileManager from "./appProfileManager";
import appDialogsManager from "./appDialogsManager";
@@ -30,6 +30,7 @@ import appForward from '../../components/appForward';
import appStickersManager from './appStickersManager';
import AvatarElement from '../../components/avatar';
import appInlineBotsManager from './AppInlineBotsManager';
+import StickyIntersector from '../../components/stickyIntersector';
console.log('appImManager included!');
@@ -37,6 +38,8 @@ appSidebarLeft; // just to include
let testScroll = false;
+const IGNOREACTIONS = ['messageActionChannelMigrateFrom'];
+
export class AppImManager {
public pageEl = document.getElementById('page-chats') as HTMLDivElement;
public btnMute = this.pageEl.querySelector('.tool-mute') as HTMLButtonElement;
@@ -111,10 +114,8 @@ export class AppImManager {
private onScrollRAF = 0;
private isScrollingTimeout = 0;
- private datesIntersectionObserver: IntersectionObserver = null;
- private lastDateMessageDiv: HTMLDivElement = null;
-
private unreadedObserver: IntersectionObserver = null;
+ private unreaded: number[] = [];
private loadedTopTimes = 0;
private loadedBottomTimes = 0;
@@ -126,6 +127,8 @@ export class AppImManager {
private peerChanged: boolean;
private firstUnreadBubble: HTMLDivElement = null;
+ private stickyIntersector: StickyIntersector = null;
+
constructor() {
/* if(!lottieLoader.loaded) {
lottieLoader.loadLottie();
@@ -156,10 +159,7 @@ export class AppImManager {
let details = e.detail;
if(!this.scrolledAllDown) {
- let dialog = appMessagesManager.getDialogByPeerID(this.peerID)[0];
- if(dialog) {
- this.setPeer(this.peerID, dialog.top_message);
- }
+ this.setPeer(this.peerID, 0);
} else {
this.renderNewMessagesByIDs([details.messageID], true);
}
@@ -393,9 +393,7 @@ export class AppImManager {
}).sort((a, b) => a - b);
ids.forEach(id => {
- let bubble = this.bubbles[id];
-
- let elements = this.bubbles[id].querySelectorAll('.attachment img, .preview img, video, .bubble__media-container') as NodeListOf;
+ let elements = this.bubbles[id].querySelectorAll('.album-item img, .album-item video, .preview img, .preview video, .bubble__media-container') as NodeListOf;
Array.from(elements).forEach((element: HTMLElement) => {
let albumItem = findUpClassName(element, 'album-item');
targets.push({
@@ -424,7 +422,7 @@ export class AppImManager {
let peerID = +splitted[0];
let msgID = +splitted[1];
////this.log('savedFrom', peerID, msgID);
- this.setPeer(peerID, msgID/* , true */);
+ this.setPeer(peerID, msgID);
return;
} else if(target.tagName == "AVATAR-ELEMENT" || target.classList.contains('name')) {
let peerID = +target.dataset.peerID;
@@ -650,25 +648,15 @@ export class AppImManager {
this.setScroll();
//apiUpdatesManager.attach();
- this.datesIntersectionObserver = new IntersectionObserver((entries) => {
- //this.log('intersection', entries);
-
- let entry = entries.filter(entry => entry.boundingClientRect.top < 0).sort((a, b) => b.boundingClientRect.top - a.boundingClientRect.top)[0];
- if(!entry) return;
- let container = entry.isIntersecting ? entry.target : entry.target.nextElementSibling;
+ this.stickyIntersector = new StickyIntersector(this.scrollable.container, (stuck, target) => {
for(let timestamp in this.dateMessages) {
let dateMessage = this.dateMessages[timestamp];
- if(dateMessage.container == container) {
- if(this.lastDateMessageDiv) {
- this.lastDateMessageDiv.classList.remove('is-sticky');
- }
-
- dateMessage.div.classList.add('is-sticky');
- this.lastDateMessageDiv = dateMessage.div;
+ if(dateMessage.container == target) {
+ dateMessage.div.classList.toggle('is-sticky', stuck);
break;
}
}
- }/* , {root: this.chatInner} */);
+ });
this.unreadedObserver = new IntersectionObserver((entries) => {
let readed: number[] = [];
@@ -679,22 +667,32 @@ export class AppImManager {
let mid = +target.dataset.mid;
readed.push(mid);
this.unreadedObserver.unobserve(target);
+ this.unreaded.findAndSplice(id => id == mid);
}
});
if(readed.length) {
let max = Math.max(...readed);
- let min = Math.min(...readed);
-
- if(this.peerID < 0) {
- max = appMessagesIDsManager.getMessageIDInfo(max)[0];
- min = appMessagesIDsManager.getMessageIDInfo(min)[0];
+
+ let length = readed.length;
+ for(let i = this.unreaded.length - 1; i >= 0; --i) {
+ let mid = this.unreaded[i];
+ if(mid < max) {
+ length++;
+ this.unreaded.splice(i, 1);
+ }
}
+
+ this.log('will readHistory by ids:', max, length);
+ /* if(this.peerID < 0) {
+ max = appMessagesIDsManager.getMessageIDInfo(max)[0];
+ } */
+
//appMessagesManager.readMessages(readed);
- false && appMessagesManager.readHistory(this.peerID, max, min).catch((err: any) => {
+ /* false && */appMessagesManager.readHistory(this.peerID, max, length).catch((err: any) => {
this.log.error('readHistory err:', err);
- appMessagesManager.readHistory(this.peerID, max, min);
+ appMessagesManager.readHistory(this.peerID, max, length);
});
}
});
@@ -788,7 +786,7 @@ export class AppImManager {
if(this.isScrollingTimeout) {
clearTimeout(this.isScrollingTimeout);
- } else if(this.chatInner.classList.contains('is-scrolling')) {
+ } else if(!this.chatInner.classList.contains('is-scrolling')) {
this.chatInner.classList.add('is-scrolling');
}
@@ -927,19 +925,19 @@ export class AppImManager {
this.getHistoryTopPromise = this.getHistoryBottomPromise = undefined;
- this.datesIntersectionObserver.disconnect();
- this.lastDateMessageDiv = null;
+ this.stickyIntersector.disconnect();
this.unreadedObserver.disconnect();
+ this.unreaded.length = 0;
this.loadedTopTimes = this.loadedBottomTimes = 0;
////console.timeEnd('appImManager cleanup');
}
- public setPeer(peerID: number, lastMsgID = 0) {
- console.time('appImManager setPeer');
- console.time('appImManager setPeer pre promise');
+ public setPeer(peerID: number, lastMsgID?: number) {
+ //console.time('appImManager setPeer');
+ //console.time('appImManager setPeer pre promise');
////console.time('appImManager: pre render start');
if(peerID == 0) {
appSidebarRight.toggleSidebar(false);
@@ -950,23 +948,27 @@ export class AppImManager {
return false;
}
- let samePeer = this.peerID == peerID;
+ const samePeer = this.peerID == peerID;
if(this.setPeerPromise && samePeer) return this.setPeerPromise;
/* if(lastMsgID) {
appMessagesManager.readHistory(peerID, lastMsgID); // lol
} */
+
+ const dialog = appMessagesManager.getDialogByPeerID(peerID)[0] || null;
+ const topMessage = lastMsgID <= 0 ? lastMsgID : dialog?.top_message ?? 0;
+ if(lastMsgID === undefined && dialog) {
+ if(dialog.unread_count) {
+ lastMsgID = dialog.read_inbox_max_id;
+ } else {
+ lastMsgID = dialog.top_message;
+ }
+ }
if(samePeer) {
- if(!testScroll && !lastMsgID) {
- return true;
- }
-
if(this.bubbles[lastMsgID]) {
- let dialog = appMessagesManager.getDialogByPeerID(peerID)[0];
-
- if(dialog && lastMsgID == dialog.top_message) {
+ if(dialog && lastMsgID == topMessage) {
this.log('will scroll down', this.scroll.scrollTop, this.scroll.scrollHeight);
this.scroll.scrollTop = this.scroll.scrollHeight;
} else {
@@ -983,19 +985,12 @@ export class AppImManager {
// set new
this.peerID = $rootScope.selectedPeerID = peerID;
- let dialog = appMessagesManager.getDialogByPeerID(this.peerID)[0] || null;
- if(!lastMsgID && dialog) {
- if(dialog.unread_count) {
- lastMsgID = dialog.read_inbox_max_id;
- } else {
- lastMsgID = dialog.top_message;
- }
- }
- //////this.log('setPeer peerID:', this.peerID, dialog, lastMsgID);
+
+ this.log('setPeer peerID:', this.peerID, dialog, lastMsgID, topMessage);
- const isJump = lastMsgID != dialog?.top_message;
+ const isJump = lastMsgID != topMessage;
// add last message, bc in getHistory will load < max_id
- const additionMsgID = isJump ? 0 : dialog.top_message;
+ const additionMsgID = isJump ? 0 : topMessage;
/* this.setPeerPromise = null;
this.preloader.detach();
@@ -1005,28 +1000,33 @@ export class AppImManager {
const maxBubbleID = samePeer && Math.max(...Object.keys(this.bubbles).map(mid => +mid));
- //let oldChatInner = this.chatInner;
+ const oldChatInner = this.chatInner;
this.cleanup();
this.chatInner = document.createElement('div');
this.chatInner.id = 'bubbles-inner';
this.scrollable.appendTo = this.chatInner;
+ this.chatInner.className = oldChatInner.className;
this.chatInner.classList.add('disable-hover', 'is-scrolling');
this.lazyLoadQueue.lock();
- let {promise, cached} = this.getHistory(lastMsgID, true, isJump, additionMsgID);
+ const {promise, cached} = this.getHistory(lastMsgID, true, isJump, additionMsgID);
- appSidebarRight.setPeer(this.peerID);
+ if(!samePeer) {
+ appSidebarRight.setPeer(this.peerID);
+ } else {
+ this.peerChanged = true;
+ }
// clear
if(!cached) {
this.scrollable.container.innerHTML = '';
//oldChatInner.remove();
- this.finishPeerChange();
+ !samePeer && this.finishPeerChange();
this.preloader.attach(this.bubblesContainer);
}
- console.timeEnd('appImManager setPeer pre promise');
+ //console.timeEnd('appImManager setPeer pre promise');
this.setPeerPromise = Promise.all([
promise.then(() => {
@@ -1035,7 +1035,7 @@ export class AppImManager {
if(cached) {
this.scrollable.container.innerHTML = '';
//oldChatInner.remove();
- this.finishPeerChange();
+ !samePeer && this.finishPeerChange();
} else {
this.preloader.detach();
}
@@ -1046,19 +1046,19 @@ export class AppImManager {
this.lazyLoadQueue.unlock();
- if(dialog && lastMsgID && lastMsgID != dialog.top_message && (this.bubbles[lastMsgID] || this.firstUnreadBubble)) {
+ if(dialog && lastMsgID && lastMsgID != topMessage && (this.bubbles[lastMsgID] || this.firstUnreadBubble)) {
if(this.scrollable.scrollLocked) {
clearTimeout(this.scrollable.scrollLocked);
this.scrollable.scrollLocked = 0;
}
- let fromUp = maxBubbleID > 0 && maxBubbleID < lastMsgID;
+ const fromUp = maxBubbleID > 0 && (maxBubbleID < lastMsgID || lastMsgID < 0);
if(!fromUp && samePeer) {
this.scrollable.scrollTop = this.scrollable.scrollHeight;
}
- let forwardingUnread = dialog.read_inbox_max_id == lastMsgID;
- let bubble = forwardingUnread ? (this.firstUnreadBubble || this.bubbles[lastMsgID]) : this.bubbles[lastMsgID];
+ const forwardingUnread = dialog.read_inbox_max_id == lastMsgID;
+ const bubble = forwardingUnread ? (this.firstUnreadBubble || this.bubbles[lastMsgID]) : this.bubbles[lastMsgID];
this.scrollable.scrollIntoView(bubble, samePeer/* , fromUp */);
if(!forwardingUnread) {
@@ -1069,13 +1069,13 @@ export class AppImManager {
}
// warning
- if(!lastMsgID || (dialog && (this.bubbles[dialog.top_message] || lastMsgID == dialog.top_message))) {
+ if(!lastMsgID || this.bubbles[topMessage] || lastMsgID == topMessage) {
this.scrolledAllDown = true;
}
this.log('scrolledAllDown:', this.scrolledAllDown);
- console.timeEnd('appImManager setPeer');
+ //console.timeEnd('appImManager setPeer');
return true;
}).catch(err => {
@@ -1115,17 +1115,14 @@ export class AppImManager {
const isChannel = appPeersManager.isChannel(peerID);
const hasRights = isChannel && appChatsManager.hasRights(-peerID, 'send');
- if(hasRights) this.chatInner.classList.add('has-rights');
- else this.chatInner.classList.remove('has-rights');
+ this.chatInner.classList.toggle('has-rights', hasRights);
this.chatInput.style.display = !isChannel || hasRights ? '' : 'none';
this.topbar.style.display = '';
- if(appPeersManager.isAnyGroup(peerID) || peerID == this.myID) this.chatInner.classList.add('is-chat');
- else this.chatInner.classList.remove('is-chat');
- if(isChannel) this.chatInner.classList.add('is-channel');
- else this.chatInner.classList.remove('is-channel');
+ this.chatInner.classList.toggle('is-chat', appPeersManager.isAnyGroup(peerID) || peerID == this.myID);
+ this.chatInner.classList.toggle('is-channel', isChannel);
this.pinnedMessageContainer.style.display = 'none';
@@ -1159,7 +1156,7 @@ export class AppImManager {
}) as Promise;
}
- public updateUnreadByDialog(dialog: any) {
+ public updateUnreadByDialog(dialog: Dialog) {
let maxID = this.peerID == this.myID ? dialog.read_inbox_max_id : dialog.read_outbox_max_id;
///////this.log('updateUnreadByDialog', maxID, dialog, this.unreadOut);
@@ -1190,6 +1187,7 @@ export class AppImManager {
this.bubbleGroups.removeBubble(bubble, id);
this.unreadedObserver.unobserve(bubble);
+ //this.unreaded.findAndSplice(mid => mid == id);
this.scrollable.removeElement(bubble);
//bubble.remove();
});
@@ -1290,7 +1288,7 @@ export class AppImManager {
this.scrollable.append(container, false);
}
- this.datesIntersectionObserver.observe(container);
+ this.stickyIntersector.observeStickyHeaderChanges(container);
}
return this.dateMessages[dateTimestamp];
@@ -1423,28 +1421,37 @@ export class AppImManager {
bubble.dataset.mid = message.mid;
if(message._ == 'messageService') {
- bubble.className = 'bubble service';
-
let action = message.action;
-
+ let _ = action._;
+ if(IGNOREACTIONS.indexOf(_) !== -1) {
+ return bubble;
+ }
+
+ bubble.className = 'bubble service';
+
let title = appPeersManager.getPeerTitle(message.fromID);
let name = document.createElement('div');
name.classList.add('name');
name.dataset.peerID = message.fromID;
name.innerHTML = title;
-
- let _ = action._;
- if(_ == "messageActionPhoneCall") {
- _ += '.' + action.type;
- }
- // @ts-ignore
- let l = langPack[_];
- if(!l) {
- l = '[' + _ + ']';
+ let str = '';
+ if(action.message) {
+ str = RichTextProcessor.wrapRichText(action.message, {noLinebreaks: true});
+ } else {
+ if(_ == "messageActionPhoneCall") {
+ _ += '.' + action.type;
+ }
+
+ // @ts-ignore
+ let l = langPack[_];
+ if(!l) {
+ l = '[' + _ + ']';
+ }
+
+ str = l[0].toUpperCase() == l[0] ? l : (name.innerText ? name.outerHTML + ' ' : '') + l;
}
- let str = l[0].toUpperCase() == l[0] ? l : (name.innerText ? name.outerHTML + ' ' : '') + l;
bubbleContainer.innerHTML = `${str}
`;
if(updatePosition) {
@@ -1630,6 +1637,9 @@ export class AppImManager {
//this.log('not our message', message, message.pFlags.unread);
if(message.pFlags.unread) {
this.unreadedObserver.observe(bubble);
+ if(!this.unreaded.indexOf(message.mid)) {
+ this.unreaded.push(message.mid);
+ }
}
}
@@ -1845,19 +1855,28 @@ export class AppImManager {
bubble.classList.add('sticker-animated');
}
- appPhotosManager.setAttachmentSize(doc, attachmentDiv, undefined, undefined, true);
+ let size = bubble.classList.contains('emoji-big') ? 140 : 200;
+ appPhotosManager.setAttachmentSize(doc, attachmentDiv, size, size, true);
//let preloader = new ProgressivePreloader(attachmentDiv, false);
bubbleContainer.style.height = attachmentDiv.style.height;
bubbleContainer.style.width = attachmentDiv.style.width;
//appPhotosManager.setAttachmentSize(doc, bubble);
- wrapSticker(doc, attachmentDiv, () => {
- if(this.peerID != peerID) {
- this.log.warn('peer changed, canceling sticker attach');
- return false;
- }
-
- return true;
- }, this.lazyLoadQueue, 'chat', false, !!message.pending || !multipleRender);
+ wrapSticker({
+ doc,
+ div: attachmentDiv,
+ middleware: () => {
+ if(this.peerID != peerID) {
+ this.log.warn('peer changed, canceling sticker attach');
+ return false;
+ }
+
+ return true;
+ },
+ lazyLoadQueue: this.lazyLoadQueue,
+ group: 'chat',
+ play: !!message.pending || !multipleRender,
+ emoji: bubble.classList.contains('emoji-big') ? messageMessage : undefined
+ });
break;
} else if(doc.type == 'video' || doc.type == 'gif' || doc.type == 'round'/* && doc.size <= 20e6 */) {
@@ -2215,6 +2234,7 @@ export class AppImManager {
return false;
});
} else {
+ this.log('getHistory result by maxID:', maxID, reverse, isBackLimit, result);
cached = true;
promise = this.performHistoryResult(result.history || [], reverse, isBackLimit, additionMsgID);
//return (reverse ? this.getHistoryTopPromise = promise : this.getHistoryBottomPromise = promise);
@@ -2295,7 +2315,7 @@ export class AppImManager {
if(dateMessage.container.childElementCount == 1) { // only date div
dateMessage.container.remove();
- this.datesIntersectionObserver.unobserve(dateMessage.container);
+ this.stickyIntersector.unobserve(dateMessage.container, dateMessage.div);
delete this.dateMessages[i];
}
}
diff --git a/src/lib/appManagers/appMediaViewer.ts b/src/lib/appManagers/appMediaViewer.ts
index 980af485..9cc9087c 100644
--- a/src/lib/appManagers/appMediaViewer.ts
+++ b/src/lib/appManagers/appMediaViewer.ts
@@ -582,10 +582,10 @@ export class AppMediaViewer {
public openMedia(message: any, target?: HTMLElement, reverse = false, targetContainer?: HTMLElement,
prevTargets: AppMediaViewer['prevTargets'] = [], nextTargets: AppMediaViewer['prevTargets'] = [], needLoadMore = true) {
////////this.log('openMedia doc:', message, prevTarget, nextTarget);
- let media = message.media.photo || message.media.document || message.media.webpage.document || message.media.webpage.photo;
+ const media = message.media.photo || message.media.document || message.media.webpage.document || message.media.webpage.photo;
- let isVideo = media.mime_type == 'video/mp4';
- let isFirstOpen = !this.peerID;
+ const isVideo = media.mime_type == 'video/mp4';
+ const isFirstOpen = !this.peerID;
if(isFirstOpen) {
this.peerID = $rootScope.selectedPeerID;
@@ -614,8 +614,8 @@ export class AppMediaViewer {
this.buttons.prev.style.display = this.prevTargets.length ? '' : 'none';
this.buttons.next.style.display = this.nextTargets.length ? '' : 'none';
- let container = this.content.container;
- let useContainerAsTarget = !target;
+ const container = this.content.container;
+ const useContainerAsTarget = !target;
if(useContainerAsTarget) target = container;
this.currentMessageID = message.mid;
@@ -635,13 +635,13 @@ export class AppMediaViewer {
container.innerHTML = '';
}
- let date = new Date(media.date * 1000);
- let months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
+ const date = new Date(media.date * 1000);
+ const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
- let dateStr = months[date.getMonth()] + ' ' + date.getDate() + ' at '+ date.getHours() + ':' + ('0' + date.getMinutes()).slice(-2);
+ const dateStr = months[date.getMonth()] + ' ' + date.getDate() + ' at '+ date.getHours() + ':' + ('0' + date.getMinutes()).slice(-2);
this.author.date.innerText = dateStr;
- let name = appPeersManager.getPeerTitle(message.fromID);
+ const name = appPeersManager.getPeerTitle(message.fromID);
this.author.nameEl.innerHTML = name;
if(message.message) {
@@ -656,7 +656,7 @@ export class AppMediaViewer {
// ok set
- let wasActive = fromRight !== 0;
+ const wasActive = fromRight !== 0;
if(wasActive) {
this.moveTheMover(this.content.mover, fromRight === 1);
this.setNewMover();
@@ -667,18 +667,19 @@ export class AppMediaViewer {
////////this.log('wasActive:', wasActive);
+ const mover = this.content.mover;
+
+ //const maxWidth = appPhotosManager.windowW - 16;
+ const maxWidth = this.pageEl.scrollWidth - 16;
+ const maxHeight = appPhotosManager.windowH - 100;
+ const size = appPhotosManager.setAttachmentSize(isVideo ? media : media.id, container, maxWidth, maxHeight);
+
+ // need after setAttachmentSize
if(useContainerAsTarget) {
target = target.querySelector('img, video') || target;
}
- let mover = this.content.mover;
-
- //let maxWidth = appPhotosManager.windowW - 16;
- let maxWidth = this.pageEl.scrollWidth - 16;
- let maxHeight = appPhotosManager.windowH - 100;
if(isVideo) {
- appPhotosManager.setAttachmentSize(media, container, maxWidth, maxHeight);
-
////////this.log('will wrap video', media, size);
let afterTimeout = this.setMoverToTarget(target, false, fromRight);
@@ -721,10 +722,10 @@ export class AppMediaViewer {
this.updateMediaSource(mover, url, 'source');
this.updateMediaSource(target, url, 'source');
} else {
- let aspecter = mover.firstElementChild;
- let img = aspecter.firstElementChild;
- if(img instanceof HTMLImageElement) {
- img.remove();
+ let div = mover.firstElementChild.classList.contains('media-viewer-aspecter') ? mover.firstElementChild : mover;
+ let image = div.firstElementChild as HTMLImageElement;
+ if(image instanceof HTMLImageElement) {
+ image.remove();
}
renderImageFromUrl(source, url);
@@ -735,11 +736,7 @@ export class AppMediaViewer {
}
if(!video.parentElement) {
- if(aspecter.classList.contains('media-viewer-aspecter')) {
- aspecter.prepend(video);
- } else {
- mover.prepend(video);
- }
+ div.prepend(video);
}
}
@@ -748,8 +745,6 @@ export class AppMediaViewer {
} else createPlayer();
}, 0);
} else {
- let size = appPhotosManager.setAttachmentSize(media.id, container, maxWidth, maxHeight);
-
let afterTimeout = this.setMoverToTarget(target, false, fromRight);
//return; // set and don't move
//if(wasActive) return;
@@ -772,14 +767,17 @@ export class AppMediaViewer {
this.updateMediaSource(target, url, 'img');
this.updateMediaSource(mover, url, 'img');
} else {
- let aspecter = mover.firstElementChild;
- let image = aspecter.firstElementChild as HTMLImageElement;
- if(!image) {
+ let div = mover.firstElementChild.classList.contains('media-viewer-aspecter') ? mover.firstElementChild : mover;
+ let image = div.firstElementChild as HTMLImageElement;
+ if(!image || image.tagName != 'IMG') {
image = new Image();
- aspecter.append(image);
}
- renderImageFromUrl(image, url);
+ //this.log('will renderImageFromUrl:', image, div, target);
+
+ renderImageFromUrl(image, url).then(() => {
+ div.append(image);
+ });
}
this.preloader.detach();
diff --git a/src/lib/appManagers/appMessagesManager.ts b/src/lib/appManagers/appMessagesManager.ts
index dd6f0489..de3b7885 100644
--- a/src/lib/appManagers/appMessagesManager.ts
+++ b/src/lib/appManagers/appMessagesManager.ts
@@ -30,7 +30,7 @@ export type HistoryStorage = {
history: number[],
pending: number[],
- readPromise?: any,
+ readPromise?: Promise,
maxOutID?: number,
reply_markup?: any
};
@@ -1425,18 +1425,19 @@ export class AppMessagesManager {
}
public generateIndexForDialog(dialog: Dialog) {
- let channelID = appPeersManager.isChannel(dialog.peerID) ? -dialog.peerID : 0;
- let mid = appMessagesIDsManager.getFullMessageID(dialog.top_message, channelID);
- let message = this.getMessage(mid);
+ const channelID = appPeersManager.isChannel(dialog.peerID) ? -dialog.peerID : 0;
+ const mid = appMessagesIDsManager.getFullMessageID(dialog.top_message, channelID);
+ const message = this.getMessage(mid);
let topDate = message.date;
if(channelID) {
- let channel = appChatsManager.getChat(channelID);
+ const channel = appChatsManager.getChat(channelID);
if(!topDate || channel.date && channel.date > topDate) {
topDate = channel.date;
}
}
- let savedDraft: any = {};// DraftsManager.saveDraft(peerID, dialog.draft); // warning
+
+ const savedDraft: any = {};// DraftsManager.saveDraft(peerID, dialog.draft); // warning
if(savedDraft && savedDraft.date > topDate) {
topDate = savedDraft.date;
}
@@ -1619,20 +1620,20 @@ export class AppMessagesManager {
return;
}
- var peerID = this.getMessagePeer(apiMessage);
- var isChannel = apiMessage.to_id._ == 'peerChannel';
- var channelID = isChannel ? -peerID : 0;
- var isBroadcast = isChannel && appChatsManager.isBroadcast(channelID);
+ const peerID = this.getMessagePeer(apiMessage);
+ const isChannel = apiMessage.to_id._ == 'peerChannel';
+ const channelID = isChannel ? -peerID : 0;
+ const isBroadcast = isChannel && appChatsManager.isBroadcast(channelID);
- var mid = appMessagesIDsManager.getFullMessageID(apiMessage.id, channelID);
+ const mid = appMessagesIDsManager.getFullMessageID(apiMessage.id, channelID);
apiMessage.mid = mid;
if(apiMessage.grouped_id) {
- let storage = this.groupedMessagesStorage[apiMessage.grouped_id] ?? (this.groupedMessagesStorage[apiMessage.grouped_id] = {});
+ const storage = this.groupedMessagesStorage[apiMessage.grouped_id] ?? (this.groupedMessagesStorage[apiMessage.grouped_id] = {});
storage[mid] = apiMessage;
}
- var dialog = this.getDialogByPeerID(peerID)[0];
+ const dialog = this.getDialogByPeerID(peerID)[0];
if(dialog && mid > 0) {
apiMessage.pFlags.unread = mid > dialog[apiMessage.pFlags.out
? 'read_outbox_max_id'
@@ -1651,12 +1652,12 @@ export class AppMessagesManager {
apiMessage.peerID = peerID;
apiMessage.fromID = apiMessage.pFlags.post ? peerID : apiMessage.from_id;
- var fwdHeader = apiMessage.fwd_from;
+ const fwdHeader = apiMessage.fwd_from;
if(fwdHeader) {
if(peerID == appUsersManager.getSelf().id) {
if(fwdHeader.saved_from_peer && fwdHeader.saved_from_msg_id) {
- var savedFromPeerID = appPeersManager.getPeerID(fwdHeader.saved_from_peer);
- var savedFromMid = appMessagesIDsManager.getFullMessageID(fwdHeader.saved_from_msg_id,
+ const savedFromPeerID = appPeersManager.getPeerID(fwdHeader.saved_from_peer);
+ const savedFromMid = appMessagesIDsManager.getFullMessageID(fwdHeader.saved_from_msg_id,
appPeersManager.isChannel(savedFromPeerID) ? -savedFromPeerID : 0);
apiMessage.savedFrom = savedFromPeerID + '_' + savedFromMid;
}
@@ -1675,7 +1676,7 @@ export class AppMessagesManager {
apiMessage.viaBotID = apiMessage.via_bot_id;
}
- var mediaContext = {
+ const mediaContext = {
user_id: apiMessage.fromID,
date: apiMessage.date
};
@@ -1725,8 +1726,8 @@ export class AppMessagesManager {
}
if(apiMessage.action) {
- var migrateFrom;
- var migrateTo;
+ let migrateFrom;
+ let migrateTo;
switch(apiMessage.action._) {
case 'messageActionChatEditPhoto':
apiMessage.action.photo = appPhotosManager.savePhoto(apiMessage.action.photo, mediaContext);
@@ -1810,8 +1811,8 @@ export class AppMessagesManager {
apiMessage.rReply = this.getRichReplyText(apiMessage);
if(apiMessage.message && apiMessage.message.length) {
- var myEntities = RichTextProcessor.parseEntities(apiMessage.message);
- var apiEntities = apiMessage.entities || [];
+ const myEntities = RichTextProcessor.parseEntities(apiMessage.message);
+ const apiEntities = apiMessage.entities || [];
apiMessage.totalEntities = RichTextProcessor.mergeEntities(myEntities, apiEntities, !apiMessage.pending);
}
@@ -2037,22 +2038,24 @@ export class AppMessagesManager {
}
public canEditMessage(messageID: number) {
- if (!this.messagesStorage[messageID]) {
- return false
+ if(!this.messagesStorage[messageID]) {
+ return false;
}
- var message = this.messagesStorage[messageID]
- if (!message ||
- !message.canBeEdited) {
- return false
+
+ const message = this.messagesStorage[messageID];
+ if(!message || !message.canBeEdited) {
+ return false;
}
- if (this.getMessagePeer(message) == appUsersManager.getSelf().id) {
- return true
+
+ if(this.getMessagePeer(message) == appUsersManager.getSelf().id) {
+ return true;
}
- if (message.date < tsNow(true) - 2 * 86400 ||
- !message.pFlags.out) {
- return false
+
+ if(message.date < tsNow(true) - 2 * 86400 || !message.pFlags.out) {
+ return false;
}
- return true
+
+ return true;
}
public applyConversations(dialogsResult: any) {
@@ -2062,12 +2065,12 @@ export class AppMessagesManager {
//console.log('applyConversation', dialogsResult);
- var updatedDialogs: {[peerID: number]: Dialog} = {};
- var hasUpdated = false;
+ const updatedDialogs: {[peerID: number]: Dialog} = {};
+ let hasUpdated = false;
dialogsResult.dialogs.forEach((dialog: any) => {
- var peerID = appPeersManager.getPeerID(dialog.peer);
- var topMessage = dialog.top_message;
- var topPendingMesage = this.pendingTopMsgs[peerID];
+ const peerID = appPeersManager.getPeerID(dialog.peer);
+ let topMessage = dialog.top_message;
+ const topPendingMesage = this.pendingTopMsgs[peerID];
if(topPendingMesage) {
if(!topMessage || this.getMessage(topPendingMesage).date > this.getMessage(topMessage).date) {
dialog.top_message = topMessage = topPendingMesage;
@@ -2075,7 +2078,7 @@ export class AppMessagesManager {
}
if(topMessage) {
- let wasDialogBefore = this.getDialogByPeerID(peerID)[0];
+ const wasDialogBefore = this.getDialogByPeerID(peerID)[0];
// here need to just replace, not FULL replace dialog! WARNING
if(wasDialogBefore && wasDialogBefore.pFlags && wasDialogBefore.pFlags.pinned) {
@@ -2093,7 +2096,7 @@ export class AppMessagesManager {
hasUpdated = true;
}
} else {
- var foundDialog = this.getDialogByPeerID(peerID);
+ const foundDialog = this.getDialogByPeerID(peerID);
if(foundDialog.length) {
this.dialogsStorage[foundDialog[0].folder_id].splice(foundDialog[1], 1);
$rootScope.$broadcast('dialog_drop', {peerID: peerID, dialog: foundDialog[0]});
@@ -2101,8 +2104,8 @@ export class AppMessagesManager {
}
if(this.newUpdatesAfterReloadToHandle[peerID] !== undefined) {
- for(let i in this.newUpdatesAfterReloadToHandle[peerID]) {
- let update = this.newUpdatesAfterReloadToHandle[peerID][i];
+ for(const i in this.newUpdatesAfterReloadToHandle[peerID]) {
+ const update = this.newUpdatesAfterReloadToHandle[peerID][i];
this.handleUpdate(update);
}
@@ -2534,27 +2537,21 @@ export class AppMessagesManager {
}
}
- public readHistory(peerID: number, maxID = 0, minID = 0): Promise {
+ public readHistory(peerID: number, maxID = 0, readLength = 0): Promise {
// console.trace('start read')
- var isChannel = appPeersManager.isChannel(peerID);
- var historyStorage = this.historiesStorage[peerID];
- var foundDialog = this.getDialogByPeerID(peerID)[0];
+ const isChannel = appPeersManager.isChannel(peerID);
+ const historyStorage = this.historiesStorage[peerID];
+ const foundDialog = this.getDialogByPeerID(peerID)[0];
if(!foundDialog || !foundDialog.unread_count) {
if(!historyStorage || !historyStorage.history.length) {
return Promise.resolve(false);
}
- let messageID, message;
- let foundUnread = false;
- for(let i = historyStorage.history.length; i >= 0; i--) {
- messageID = historyStorage.history[i];
- message = this.messagesStorage[messageID];
- if(message && !message.pFlags.out && message.pFlags.unread) {
- foundUnread = true;
- break;
- }
- }
+ let foundUnread = !!historyStorage.history.find(messageID => {
+ const message = this.messagesStorage[messageID];
+ return message && !message.pFlags.out && message.pFlags.unread;
+ });
if(!foundUnread) {
return Promise.resolve(false);
@@ -2562,10 +2559,10 @@ export class AppMessagesManager {
}
if(historyStorage.readPromise) {
- return historyStorage.readPromise as Promise;
+ return historyStorage.readPromise;
}
- var apiPromise: any;
+ let apiPromise: any;
if(isChannel) {
apiPromise = apiManager.invokeApi('channels.readHistory', {
channel: appChatsManager.getChannelInput(-peerID),
@@ -2588,22 +2585,46 @@ export class AppMessagesManager {
}
historyStorage.readPromise = apiPromise.then(() => {
+ let index = -1;
+ if(maxID != 0 && historyStorage.history.length) {
+ index = historyStorage.history.indexOf(maxID);
+ }
+
+ let readedLength = 0;
+
+ if(historyStorage.history.length && maxID) {
+ for(let i = index == -1 ? 0 : index, length = historyStorage.history.length; i < length; i++) {
+ const messageID = historyStorage.history[i];
+
+ if(messageID > maxID) continue;
+
+ const message = this.messagesStorage[messageID];
+ if(message && !message.pFlags.out) {
+ message.pFlags.unread = false;
+ readedLength++;
+ //NotificationsManager.cancel('msg' + messageID); // warning
+ }
+ }
+ }
+
if(foundDialog) {
// console.log('done read history', peerID)
- let index = -1;
- if(maxID != 0 && historyStorage && historyStorage.history.length) {
- index = historyStorage.history.findIndex((mid: number) => mid == maxID);
+ if(historyStorage.history.length) {
+ ////////console.warn('readPromise:', index, historyStorage.history[index != -1 ? index : 0]);
+ foundDialog.read_inbox_max_id = maxID;
}
- foundDialog.unread_count = index == -1 ? 0 : index;
- ////////console.log('readHistory set unread_count to:', foundDialog.unread_count, foundDialog);
+ if(foundDialog.read_inbox_max_id == foundDialog.top_message || foundDialog.read_inbox_max_id == foundDialog.read_outbox_max_id) {
+ foundDialog.unread_count = 0;
+ } else {
+ foundDialog.unread_count = Math.max(foundDialog.unread_count - (readLength || readedLength), 0);
+ }
+
+
+ console.log('readHistory set unread_count to:', foundDialog.unread_count, foundDialog);
$rootScope.$broadcast('dialog_unread', {peerID: peerID, count: foundDialog.unread_count});
$rootScope.$broadcast('messages_read');
- if(historyStorage && historyStorage.history.length) {
- ////////console.warn('readPromise:', index, historyStorage.history[index != -1 ? index : 0]);
- foundDialog.read_inbox_max_id = historyStorage.history[index != -1 ? index : 0];
- }
return true;
}
@@ -2613,23 +2634,6 @@ export class AppMessagesManager {
delete historyStorage.readPromise;
});
- if(historyStorage && historyStorage.history.length) {
- let messageID: number;
- let message, i;
- for(i = 0; i < historyStorage.history.length; i++) {
- messageID = historyStorage.history[i];
-
- message = this.messagesStorage[messageID];
- if(message && !message.pFlags.out) {
- message.pFlags.unread = false;
-
- //NotificationsManager.cancel('msg' + messageID); // warning
- }
-
- if(messageID == minID) break;
- }
- }
-
// NotificationsManager.soundReset(appPeersManager.getPeerString(peerID)) // warning
return historyStorage.readPromise;
@@ -3346,14 +3350,16 @@ export class AppMessagesManager {
if(this.migratedFromTo[peerID]) {
peerID = this.migratedFromTo[peerID];
}
- var historyStorage = this.historiesStorage[peerID] ?? (this.historiesStorage[peerID] = {count: null, history: [], pending: []});
- var offset = 0;
- var offsetNotFound = false;
- var unreadOffset = 0;
- var unreadSkip = false;
- var isMigrated = false;
- var reqPeerID = peerID;
+ const historyStorage = this.historiesStorage[peerID] ?? (this.historiesStorage[peerID] = {count: null, history: [], pending: []});
+ const unreadOffset = 0;
+ const unreadSkip = false;
+
+ let offset = 0;
+ let offsetNotFound = false;
+
+ let isMigrated = false;
+ let reqPeerID = peerID;
if(this.migratedToFrom[peerID]) {
isMigrated = true;
if(maxID && maxID < appMessagesIDsManager.fullMsgIDModulus) {
@@ -3363,7 +3369,7 @@ export class AppMessagesManager {
if(maxID > 0) {
offsetNotFound = true;
- for(offset = 0; offset < historyStorage.history.length; offset++) {
+ for(; offset < historyStorage.history.length; offset++) {
if(maxID > historyStorage.history[offset]) {
offsetNotFound = false;
break;
@@ -3383,7 +3389,7 @@ export class AppMessagesManager {
limit = limit;
}
- var history = historyStorage.history.slice(offset, offset + limit);
+ let history = historyStorage.history.slice(offset, offset + limit);
if(!maxID && historyStorage.pending.length) {
history = historyStorage.pending.slice().concat(history);
}
@@ -3411,10 +3417,10 @@ export class AppMessagesManager {
historyStorage.count++;
}
- var history: number[] = [];
+ let history: number[] = [];
historyResult.messages.forEach((message: any) => {
history.push(message.mid);
- })
+ });
if(!maxID && historyStorage.pending.length) {
history = historyStorage.pending.slice().concat(history);
@@ -3455,25 +3461,26 @@ export class AppMessagesManager {
public fillHistoryStorage(peerID: number, maxID: number, fullLimit: number, historyStorage: HistoryStorage): Promise {
// console.log('fill history storage', peerID, maxID, fullLimit, angular.copy(historyStorage))
- var offset = (this.migratedFromTo[peerID] && !maxID) ? 1 : 0;
+ const offset = (this.migratedFromTo[peerID] && !maxID) ? 1 : 0;
return this.requestHistory(peerID, maxID, fullLimit, offset).then((historyResult: any) => {
historyStorage.count = historyResult.count || historyResult.messages.length;
- var offset = 0;
if(!maxID && historyResult.messages.length) {
maxID = historyResult.messages[0].mid + 1;
}
+
+ let offset = 0;
if(maxID > 0) {
- for(offset = 0; offset < historyStorage.history.length; offset++) {
+ for(; offset < historyStorage.history.length; offset++) {
if(maxID > historyStorage.history[offset]) {
break;
}
}
}
- var wasTotalCount = historyStorage.history.length;
+ const wasTotalCount = historyStorage.history.length;
- historyStorage.history.splice(offset, historyStorage.history.length - offset)
+ historyStorage.history.splice(offset, historyStorage.history.length - offset);
historyResult.messages.forEach((message: any) => {
if(this.mergeReplyKeyboard(historyStorage, message)) {
$rootScope.$broadcast('history_reply_markup', {peerID: peerID});
@@ -3482,12 +3489,12 @@ export class AppMessagesManager {
historyStorage.history.push(message.mid);
});
- var totalCount = historyStorage.history.length;
+ const totalCount = historyStorage.history.length;
fullLimit -= (totalCount - wasTotalCount);
- var migratedNextPeer = this.migratedFromTo[peerID];
- var migratedPrevPeer = this.migratedToFrom[peerID]
- var isMigrated = migratedNextPeer !== undefined || migratedPrevPeer !== undefined;
+ const migratedNextPeer = this.migratedFromTo[peerID];
+ const migratedPrevPeer = this.migratedToFrom[peerID]
+ const isMigrated = migratedNextPeer !== undefined || migratedPrevPeer !== undefined;
if(isMigrated) {
historyStorage.count = Math.max(historyStorage.count, totalCount) + 1;
@@ -3517,12 +3524,9 @@ export class AppMessagesManager {
}
public wrapHistoryResult(result: HistoryResult) {
- var unreadOffset = result.unreadOffset;
- if(unreadOffset) {
- var i;
- var message;
- for(i = result.history.length - 1; i >= 0; i--) {
- message = this.messagesStorage[result.history[i]];
+ if(result.unreadOffset) {
+ for(let i = result.history.length - 1; i >= 0; i--) {
+ const message = this.messagesStorage[result.history[i]];
if(message && !message.pFlags.out && message.pFlags.unread) {
result.unreadOffset = i + 1;
break;
@@ -3533,7 +3537,7 @@ export class AppMessagesManager {
}
public requestHistory(peerID: number, maxID: number, limit: number, offset = 0): Promise {
- var isChannel = appPeersManager.isChannel(peerID);
+ const isChannel = appPeersManager.isChannel(peerID);
//console.trace('requestHistory', peerID, maxID, limit, offset);
@@ -3562,7 +3566,7 @@ export class AppMessagesManager {
apiUpdatesManager.addChannelState(-peerID, historyResult.pts);
}
- var length = historyResult.messages.length;
+ let length = historyResult.messages.length;
if(length && historyResult.messages[length - 1].deleted) {
historyResult.messages.splice(length - 1, 1);
length--;
@@ -3570,7 +3574,7 @@ export class AppMessagesManager {
}
// will load more history if last message is album grouped (because it can be not last item)
- let historyStorage = this.historiesStorage[peerID];
+ const historyStorage = this.historiesStorage[peerID];
// historyResult.messages: desc sorted
if(length && historyResult.messages[length - 1].grouped_id && (historyStorage.history.length + historyResult.messages.length) < historyResult.count) {
return this.requestHistory(peerID, historyResult.messages[length - 1].mid, 10, 0).then((_historyResult: any) => {
@@ -3614,7 +3618,7 @@ export class AppMessagesManager {
}, (error) => {
switch (error.type) {
case 'CHANNEL_PRIVATE':
- var channel = appChatsManager.getChat(-peerID);
+ let channel = appChatsManager.getChat(-peerID);
channel = {_: 'channelForbidden', access_hash: channel.access_hash, title: channel.title};
apiUpdatesManager.processUpdateMessage({
_: 'updates',
@@ -3628,7 +3632,7 @@ export class AppMessagesManager {
break;
}
- return Promise.reject(error);
+ throw error;
});
}
diff --git a/src/lib/appManagers/appSidebarRight.ts b/src/lib/appManagers/appSidebarRight.ts
index 5a81d7ed..8091e4ae 100644
--- a/src/lib/appManagers/appSidebarRight.ts
+++ b/src/lib/appManagers/appSidebarRight.ts
@@ -219,12 +219,7 @@ class AppSidebarRight {
if(!willChange) return Promise.resolve();
let set = () => {
- if(enable !== undefined) {
- if(enable) this.sidebarEl.classList.add('active');
- else this.sidebarEl.classList.remove('active');
- } else {
- this.sidebarEl.classList.toggle('active');
- }
+ this.sidebarEl.classList.toggle('active', enable);
};
return new Promise((resolve, reject) => {
diff --git a/src/lib/appManagers/appStickersManager.ts b/src/lib/appManagers/appStickersManager.ts
index 5a31eaf2..9051d5e0 100644
--- a/src/lib/appManagers/appStickersManager.ts
+++ b/src/lib/appManagers/appStickersManager.ts
@@ -138,7 +138,7 @@ class AppStickersManager {
public getAnimatedEmojiSticker(emoji: string) {
let stickerSet = this.stickerSets.emoji;
- emoji = emoji.replace(/\ufe0f/g, '');
+ emoji = emoji.replace(/\ufe0f/g, '').replace(/🏻|🏼|🏽|🏾|🏿/g, '');
return stickerSet.documents.find(doc => doc.stickerEmojiRaw == emoji);
}
diff --git a/src/lib/config.ts b/src/lib/config.ts
index fc1da829..5b635fc9 100644
--- a/src/lib/config.ts
+++ b/src/lib/config.ts
@@ -15,7 +15,7 @@
*/
-const Emoji: {[emoji: string]: number} = {"#⃣":6365,"*⃣":6366,"0⃣":6367,"1⃣":6368,"2⃣":6369,"3⃣":6370,"4⃣":6371,"5⃣":6372,"6⃣":6373,"7⃣":6374,"8⃣":6375,"9⃣":6376,"©":6362,"®":6363,"🀄":573,"🃏":572,"🅰":6383,"🅱":6385,"🅾":6394,"🅿":6396,"🆎":6384,"🆑":6386,"🆒":6387,"🆓":6388,"🆔":6390,"🆕":6392,"🆖":6393,"🆗":6395,"🆘":6397,"🆙":6398,"🆚":6399,"🇦🇨":78,"🇦🇩":79,"🇦🇪":710,"🇦🇫":711,"🇦🇬":712,"🇦🇮":713,"🇦🇱":714,"🇦🇲":715,"🇦🇴":716,"🇦🇶":717,"🇦🇷":718,"🇦🇸":719,"🇦🇹":720,"🇦🇺":721,"🇦🇼":722,"🇦🇽":723,"🇦🇿":724,"🇧🇦":725,"🇧🇧":726,"🇧🇩":727,"🇧🇪":728,"🇧🇫":729,"🇧🇬":730,"🇧🇭":731,"🇧🇮":732,"🇧🇯":733,"🇧🇱":734,"🇧🇲":735,"🇧🇳":736,"🇧🇴":737,"🇧🇶":738,"🇧🇷":739,"🇧🇸":740,"🇧🇹":741,"🇧🇻":742,"🇧🇼":743,"🇧🇾":744,"🇧🇿":745,"🇨🇦":746,"🇨🇨":747,"🇨🇩":748,"🇨🇫":749,"🇨🇬":750,"🇨🇭":751,"🇨🇮":752,"🇨🇰":753,"🇨🇱":754,"🇨🇲":755,"🇨🇳":756,"🇨🇴":757,"🇨🇵":758,"🇨🇷":759,"🇨🇺":760,"🇨🇻":761,"🇨🇼":762,"🇨🇽":763,"🇨🇾":764,"🇨🇿":765,"🇩🇪":766,"🇩🇬":767,"🇩🇯":768,"🇩🇰":769,"🇩🇲":770,"🇩🇴":771,"🇩🇿":772,"🇪🇦":773,"🇪🇨":774,"🇪🇪":775,"🇪🇬":776,"🇪🇭":777,"🇪🇷":778,"🇪🇸":779,"🇪🇹":780,"🇪🇺":781,"🇫🇮":782,"🇫🇯":783,"🇫🇰":784,"🇫🇲":785,"🇫🇴":786,"🇫🇷":787,"🇬🇦":788,"🇬🇧":789,"🇬🇩":790,"🇬🇪":791,"🇬🇫":792,"🇬🇬":793,"🇬🇭":794,"🇬🇮":795,"🇬🇱":796,"🇬🇲":797,"🇬🇳":798,"🇬🇵":799,"🇬🇶":7100,"🇬🇷":7101,"🇬🇸":7102,"🇬🇹":7103,"🇬🇺":7104,"🇬🇼":7105,"🇬🇾":7106,"🇭🇰":7107,"🇭🇲":7108,"🇭🇳":7109,"🇭🇷":7110,"🇭🇹":7111,"🇭🇺":7112,"🇮🇨":7113,"🇮🇩":7114,"🇮🇪":7115,"🇮🇱":7116,"🇮🇲":7117,"🇮🇳":7118,"🇮🇴":7119,"🇮🇶":7120,"🇮🇷":7121,"🇮🇸":7122,"🇮🇹":7123,"🇯🇪":7124,"🇯🇲":7125,"🇯🇴":7126,"🇯🇵":7127,"🇰🇪":7128,"🇰🇬":7129,"🇰🇭":7130,"🇰🇮":7131,"🇰🇲":7132,"🇰🇳":7133,"🇰🇵":7134,"🇰🇷":7135,"🇰🇼":7136,"🇰🇾":7137,"🇰🇿":7138,"🇱🇦":7139,"🇱🇧":7140,"🇱🇨":7141,"🇱🇮":7142,"🇱🇰":7143,"🇱🇷":7144,"🇱🇸":7145,"🇱🇹":7146,"🇱🇺":7147,"🇱🇻":7148,"🇱🇾":7149,"🇲🇦":7150,"🇲🇨":7151,"🇲🇩":7152,"🇲🇪":7153,"🇲🇫":7154,"🇲🇬":7155,"🇲🇭":7156,"🇲🇰":7157,"🇲🇱":7158,"🇲🇲":7159,"🇲🇳":7160,"🇲🇴":7161,"🇲🇵":7162,"🇲🇶":7163,"🇲🇷":7164,"🇲🇸":7165,"🇲🇹":7166,"🇲🇺":7167,"🇲🇻":7168,"🇲🇼":7169,"🇲🇽":7170,"🇲🇾":7171,"🇲🇿":7172,"🇳🇦":7173,"🇳🇨":7174,"🇳🇪":7175,"🇳🇫":7176,"🇳🇬":7177,"🇳🇮":7178,"🇳🇱":7179,"🇳🇴":7180,"🇳🇵":7181,"🇳🇷":7182,"🇳🇺":7183,"🇳🇿":7184,"🇴🇲":7185,"🇵🇦":7186,"🇵🇪":7187,"🇵🇫":7188,"🇵🇬":7189,"🇵🇭":7190,"🇵🇰":7191,"🇵🇱":7192,"🇵🇲":7193,"🇵🇳":7194,"🇵🇷":7195,"🇵🇸":7196,"🇵🇹":7197,"🇵🇼":7198,"🇵🇾":7199,"🇶🇦":7200,"🇷🇪":7201,"🇷🇴":7202,"🇷🇸":7203,"🇷🇺":7204,"🇷🇼":7205,"🇸🇦":7206,"🇸🇧":7207,"🇸🇨":7208,"🇸🇩":7209,"🇸🇪":7210,"🇸🇬":7211,"🇸🇭":7212,"🇸🇮":7213,"🇸🇯":7214,"🇸🇰":7215,"🇸🇱":7216,"🇸🇲":7217,"🇸🇳":7218,"🇸🇴":7219,"🇸🇷":7220,"🇸🇸":7221,"🇸🇹":7222,"🇸🇻":7223,"🇸🇽":7224,"🇸🇾":7225,"🇸🇿":7226,"🇹🇦":7227,"🇹🇨":7228,"🇹🇩":7229,"🇹🇫":7230,"🇹🇬":7231,"🇹🇭":7232,"🇹🇯":7233,"🇹🇰":7234,"🇹🇱":7235,"🇹🇲":7236,"🇹🇳":7237,"🇹🇴":7238,"🇹🇷":7239,"🇹🇹":7240,"🇹🇻":7241,"🇹🇼":7242,"🇹🇿":7243,"🇺🇦":7244,"🇺🇬":7245,"🇺🇲":7246,"🇺🇳":7247,"🇺🇸":7248,"🇺🇾":7249,"🇺🇿":7250,"🇻🇦":7251,"🇻🇨":7252,"🇻🇪":7253,"🇻🇬":7254,"🇻🇮":7255,"🇻🇳":7256,"🇻🇺":7257,"🇼🇫":7258,"🇼🇸":7259,"🇽🇰":7260,"🇾🇪":7261,"🇾🇹":7262,"🇿🇦":7263,"🇿🇲":7264,"🇿🇼":7265,"🈁":6400,"🈂":6401,"🈚":6407,"🈯":6404,"🈲":6408,"🈳":6412,"🈴":6411,"🈵":6416,"🈶":6403,"🈷":6402,"🈸":6410,"🈹":6406,"🈺":6415,"🉐":6405,"🉑":6409,"🌀":4197,"🌁":449,"🌂":4199,"🌃":450,"🌄":452,"🌅":453,"🌆":454,"🌇":455,"🌈":4198,"🌉":456,"🌊":4210,"🌋":410,"🌌":4184,"🌍":41,"🌎":42,"🌏":43,"🌐":44,"🌑":4164,"🌒":4165,"🌓":4166,"🌔":4167,"🌕":4168,"🌖":4169,"🌗":4170,"🌘":4171,"🌙":4172,"🌚":4173,"🌛":4174,"🌜":4175,"🌝":4178,"🌞":4179,"🌟":4182,"🌠":4183,"🌡":4176,"🌤":4188,"🌥":4189,"🌦":4190,"🌧":4191,"🌨":4192,"🌩":4193,"🌪":4194,"🌫":4195,"🌬":4196,"🌭":347,"🌮":349,"🌯":350,"🌰":331,"🌱":2116,"🌲":2117,"🌳":2118,"🌴":2119,"🌵":2120,"🌶":323,"🌷":2115,"🌸":2107,"🌹":2110,"🌺":2112,"🌻":2113,"🌼":2114,"🌽":322,"🌾":2121,"🌿":2122,"🍀":2124,"🍁":2125,"🍂":2126,"🍃":2127,"🍄":329,"🍅":316,"🍆":319,"🍇":31,"🍈":32,"🍉":33,"🍊":34,"🍋":35,"🍌":36,"🍍":37,"🍎":39,"🍏":310,"🍐":311,"🍑":312,"🍒":313,"🍓":314,"🍔":344,"🍕":346,"🍖":340,"🍗":341,"🍘":364,"🍙":365,"🍚":366,"🍛":367,"🍜":368,"🍝":369,"🍞":332,"🍟":345,"🍠":370,"🍡":376,"🍢":371,"🍣":372,"🍤":373,"🍥":374,"🍦":385,"🍧":386,"🍨":387,"🍩":388,"🍪":389,"🍫":394,"🍬":395,"🍭":396,"🍮":397,"🍯":398,"🍰":391,"🍱":363,"🍲":356,"🍳":354,"🍴":3118,"🍵":3102,"🍶":3103,"🍷":3105,"🍸":3106,"🍹":3107,"🍺":3108,"🍻":3109,"🍼":399,"🍽":3117,"🍾":3104,"🍿":359,"🎀":517,"🎁":518,"🎂":390,"🎃":51,"🎄":52,"🎅":9177,"🎆":53,"🎇":54,"🎈":57,"🎉":58,"🎊":59,"🎋":510,"🎌":73,"🎍":511,"🎎":512,"🎏":513,"🎐":514,"🎑":515,"🎒":625,"🎓":637,"🎖":522,"🎗":519,"🎙":656,"🎚":657,"🎛":658,"🎞":689,"🎟":520,"🎠":458,"🎡":459,"🎢":460,"🎣":549,"🎤":659,"🎥":688,"🎦":6324,"🎧":660,"🎨":577,"🎩":636,"🎪":462,"🎫":521,"🎬":691,"🎭":575,"🎮":561,"🎯":555,"🎰":563,"🎱":558,"🎲":564,"🎳":537,"🎴":574,"🎵":654,"🎶":655,"🎷":662,"🎸":663,"🎹":664,"🎺":665,"🎻":666,"🎼":653,"🎽":551,"🎾":535,"🎿":552,"🏀":531,"🏁":71,"🏂":9248,"🏃♀":9232,"🏃♂":9231,"🏃":9230,"🏄♀":9254,"🏄♂":9253,"🏄":9252,"🏅":524,"🏆":523,"🏇":9246,"🏈":533,"🏉":534,"🏊♀":9260,"🏊♂":9259,"🏊":9258,"🏋♀":9266,"🏋♂":9265,"🏋":9264,"🏌♀":9251,"🏌♂":9250,"🏌":9249,"🏍":492,"🏎":491,"🏏":538,"🏐":532,"🏑":539,"🏒":540,"🏓":542,"🏔":48,"🏕":412,"🏖":413,"🏗":419,"🏘":421,"🏙":451,"🏚":422,"🏛":418,"🏜":414,"🏝":415,"🏞":416,"🏟":417,"🏠":423,"🏡":424,"🏢":425,"🏣":426,"🏤":427,"🏥":428,"🏦":429,"🏧":6234,"🏨":430,"🏩":431,"🏪":432,"🏫":433,"🏬":434,"🏭":435,"🏮":6102,"🏯":436,"🏰":437,"🏳🌈":76,"🏳":75,"🏴☠":77,"🏴":7266,"🏴":7267,"🏴":7268,"🏴":74,"🏵":2109,"🏷":6120,"🏸":543,"🏹":6189,"🏺":3121,"🏻":81,"🏼":82,"🏽":83,"🏾":84,"🏿":85,"🐀":244,"🐁":243,"🐂":225,"🐃":226,"🐄":227,"🐅":217,"🐆":218,"🐇":247,"🐈":214,"🐉":282,"🐊":277,"🐋":286,"🐌":294,"🐍":280,"🐎":220,"🐏":232,"🐐":234,"🐑":233,"🐒":22,"🐓":262,"🐔":261,"🐕🦺":28,"🐕":26,"🐖":229,"🐗":230,"🐘":239,"🐙":292,"🐚":293,"🐛":296,"🐜":297,"🐝":298,"🐞":299,"🐟":288,"🐠":289,"🐡":290,"🐢":278,"🐣":263,"🐤":264,"🐥":265,"🐦":266,"🐧":267,"🐨":252,"🐩":29,"🐪":235,"🐫":236,"🐬":287,"🐭":242,"🐮":224,"🐯":216,"🐰":246,"🐱":213,"🐲":281,"🐳":285,"🐴":219,"🐵":21,"🐶":25,"🐷":228,"🐸":276,"🐹":245,"🐺":210,"🐻":251,"🐼":253,"🐽":231,"🐾":259,"🐿":248,"👀":945,"👁🗨":1145,"👁":946,"👂":939,"👃":941,"👄":948,"👅":947,"👆":915,"👇":917,"👈":913,"👉":914,"👊":922,"👋":91,"👌":96,"👍":919,"👎":920,"👏":925,"👐":927,"👑":634,"👒":635,"👓":61,"👔":66,"👕":67,"👖":68,"👗":613,"👘":614,"👙":619,"👚":620,"👛":621,"👜":622,"👝":623,"👞":626,"👟":627,"👠":630,"👡":631,"👢":633,"👣":9334,"👤":9332,"👥":9333,"👦":951,"👧":952,"👨🌾":9118,"👨🍳":9121,"👨🎓":9109,"👨🎤":9139,"👨🎨":9142,"👨🏫":9112,"👨🏭":9127,"👨👦👦":9322,"👨👦":9321,"👨👧👦":9324,"👨👧👧":9325,"👨👧":9323,"👨👨👦":9311,"👨👨👦👦":9314,"👨👨👧":9312,"👨👨👧👦":9313,"👨👨👧👧":9315,"👨👩👦":9306,"👨👩👦👦":9309,"👨👩👧":9307,"👨👩👧👦":9308,"👨👩👧👧":9310,"👨💻":9136,"👨💼":9130,"👨🔧":9124,"👨🔬":9133,"👨🚀":9148,"👨🚒":9151,"👨🦯":9222,"👨🦰":957,"👨🦱":958,"👨🦲":960,"👨🦳":959,"👨🦼":9225,"👨🦽":9228,"👨⚕":9106,"👨⚖":9115,"👨✈":9145,"👨❤👨":9303,"👨❤💋👨":9299,"👨":955,"👩🌾":9119,"👩🍳":9122,"👩🎓":9110,"👩🎤":9140,"👩🎨":9143,"👩🏫":9113,"👩🏭":9128,"👩👦👦":9327,"👩👦":9326,"👩👧👦":9329,"👩👧👧":9330,"👩👧":9328,"👩👩👦":9316,"👩👩👦👦":9319,"👩👩👧":9317,"👩👩👧👦":9318,"👩👩👧👧":9320,"👩💻":9137,"👩💼":9131,"👩🔧":9125,"👩🔬":9134,"👩🚀":9149,"👩🚒":9152,"👩🦯":9223,"👩🦰":962,"👩🦱":964,"👩🦲":968,"👩🦳":966,"👩🦼":9226,"👩🦽":9229,"👩⚕":9107,"👩⚖":9116,"👩✈":9146,"👩❤👨":9302,"👩❤👩":9304,"👩❤💋👨":9298,"👩❤💋👩":9300,"👩":961,"👪":9305,"👫":9295,"👬":9296,"👭":9294,"👮♀":9155,"👮♂":9154,"👮":9153,"👯♀":9238,"👯♂":9237,"👯":9236,"👰":9173,"👱♀":970,"👱♂":971,"👱":954,"👲":9170,"👳♀":9169,"👳♂":9168,"👳":9167,"👴":973,"👵":974,"👶":949,"👷♀":9164,"👷♂":9163,"👷":9162,"👸":9166,"👹":197,"👺":198,"👻":199,"👼":9176,"👽":1100,"👾":1101,"👿":192,"💀":193,"💁♀":989,"💁♂":988,"💁":987,"💂♀":9161,"💂♂":9160,"💂":9159,"💃":9233,"💄":641,"💅":932,"💆♀":9208,"💆♂":9207,"💆":9206,"💇♀":9211,"💇♂":9210,"💇":9209,"💈":461,"💉":6208,"💊":6210,"💋":1115,"💌":1116,"💍":642,"💎":643,"💏":9297,"💐":2106,"💑":9301,"💒":438,"💓":1121,"💔":1126,"💕":1123,"💖":1119,"💗":1120,"💘":1117,"💙":1131,"💚":1130,"💛":1129,"💜":1132,"💝":1118,"💞":1122,"💟":1124,"💠":6447,"💡":6100,"💢":1137,"💣":1143,"💤":1149,"💥":1138,"💦":1140,"💧":4209,"💨":1141,"💩":195,"💪":934,"💫":1139,"💬":1144,"💭":1148,"💮":2108,"💯":1136,"💰":6121,"💱":6130,"💲":6131,"💳":6127,"💴":6122,"💵":6123,"💶":6124,"💷":6125,"💸":6126,"💹":6129,"💺":4123,"💻":677,"💼":6152,"💽":683,"💾":684,"💿":685,"📀":686,"📁":6153,"📂":6154,"📃":6113,"📄":6115,"📅":6156,"📆":6157,"📇":6160,"📈":6161,"📉":6162,"📊":6163,"📋":6164,"📌":6165,"📍":6166,"📎":6167,"📏":6169,"📐":6170,"📑":6118,"📒":6112,"📓":6111,"📔":6104,"📕":6105,"📖":6106,"📗":6107,"📘":6108,"📙":6109,"📚":6110,"📛":6337,"📜":6114,"📝":6151,"📞":672,"📟":673,"📠":674,"📡":6207,"📢":648,"📣":649,"📤":6136,"📥":6137,"📦":6138,"📧":6133,"📨":6134,"📩":6135,"📪":6140,"📫":6139,"📬":6141,"📭":6142,"📮":6143,"📯":650,"📰":6116,"📱":669,"📲":670,"📳":6328,"📴":6329,"📵":6256,"📶":6327,"📷":693,"📸":694,"📹":695,"📺":692,"📻":661,"📼":696,"📽":690,"📿":640,"🔀":6306,"🔁":6307,"🔂":6308,"🔃":6274,"🔄":6275,"🔅":6325,"🔆":6326,"🔇":644,"🔈":645,"🔉":646,"🔊":647,"🔋":675,"🔌":676,"🔍":697,"🔎":698,"🔏":6177,"🔐":6178,"🔑":6179,"🔒":6175,"🔓":6176,"🔔":651,"🔕":652,"🔖":6119,"🔗":6197,"🔘":6448,"🔙":6276,"🔚":6277,"🔛":6278,"🔜":6279,"🔝":6280,"🔞":6257,"🔟":6377,"🔠":6378,"🔡":6379,"🔢":6380,"🔣":6381,"🔤":6382,"🔥":4208,"🔦":6101,"🔧":6191,"🔨":6181,"🔩":6192,"🔪":3120,"🔫":6188,"🔬":6205,"🔭":6206,"🔮":559,"🔯":6292,"🔰":6338,"🔱":6336,"🔲":6450,"🔳":6449,"🔴":6417,"🔵":6421,"🔶":6441,"🔷":6442,"🔸":6443,"🔹":6444,"🔺":6445,"🔻":6446,"🔼":6316,"🔽":6318,"🕉":6283,"🕊":268,"🕋":446,"🕌":442,"🕍":444,"🕎":6291,"🕐":4142,"🕑":4144,"🕒":4146,"🕓":4148,"🕔":4150,"🕕":4152,"🕖":4154,"🕗":4156,"🕘":4158,"🕙":4160,"🕚":4162,"🕛":4140,"🕜":4143,"🕝":4145,"🕞":4147,"🕟":4149,"🕠":4151,"🕡":4153,"🕢":4155,"🕣":4157,"🕤":4159,"🕥":4161,"🕦":4163,"🕧":4141,"🕯":699,"🕰":4139,"🕳":1142,"🕴":9235,"🕵♀":9158,"🕵♂":9157,"🕵":9156,"🕶":62,"🕷":2101,"🕸":2102,"🕹":562,"🕺":9234,"🖇":6168,"🖊":6148,"🖋":6147,"🖌":6149,"🖍":6150,"🖐":93,"🖕":916,"🖖":95,"🖤":1134,"🖥":678,"🖨":679,"🖱":681,"🖲":682,"🖼":576,"🗂":6155,"🗃":6172,"🗄":6173,"🗑":6174,"🗒":6158,"🗓":6159,"🗜":6194,"🗝":6180,"🗞":6117,"🗡":6186,"🗣":9331,"🗨":1146,"🗯":1147,"🗳":6144,"🗺":45,"🗻":411,"🗼":439,"🗽":440,"🗾":46,"🗿":6233,"😀":11,"😁":14,"😂":18,"😃":12,"😄":13,"😅":16,"😆":15,"😇":113,"😈":191,"😉":111,"😊":112,"😋":122,"😌":142,"😍":115,"😎":160,"😏":137,"😐":134,"😑":135,"😒":138,"😓":183,"😔":143,"😕":163,"😖":180,"😗":118,"😘":117,"😙":121,"😚":120,"😛":123,"😜":124,"😝":126,"😞":182,"😟":164,"😠":189,"😡":188,"😢":177,"😣":181,"😤":187,"😥":176,"😦":172,"😧":173,"😨":174,"😩":184,"😪":144,"😫":185,"😬":140,"😭":178,"😮":167,"😯":168,"😰":175,"😱":179,"😲":169,"😳":170,"😴":146,"😵":156,"😶":136,"😷":147,"😸":1104,"😹":1105,"😺":1103,"😻":1106,"😼":1107,"😽":1108,"😾":1111,"😿":1110,"🙀":1109,"🙁":165,"🙂":19,"🙃":110,"🙄":139,"🙅♀":983,"🙅♂":982,"🙅":981,"🙆♀":986,"🙆♂":985,"🙆":984,"🙇♀":998,"🙇♂":997,"🙇":996,"🙈":1112,"🙉":1113,"🙊":1114,"🙋♀":992,"🙋♂":991,"🙋":990,"🙌":926,"🙍♀":977,"🙍♂":976,"🙍":975,"🙎♀":980,"🙎♂":979,"🙎":978,"🙏":930,"🚀":4129,"🚁":4124,"🚂":463,"🚃":464,"🚄":465,"🚅":466,"🚆":467,"🚇":468,"🚈":469,"🚉":470,"🚊":471,"🚋":474,"🚌":475,"🚍":476,"🚎":477,"🚏":4100,"🚐":478,"🚑":479,"🚒":480,"🚓":481,"🚔":482,"🚕":483,"🚖":484,"🚗":485,"🚘":486,"🚙":487,"🚚":488,"🚛":489,"🚜":490,"🚝":472,"🚞":473,"🚟":4125,"🚠":4126,"🚡":4127,"🚢":4117,"🚣♀":9257,"🚣♂":9256,"🚣":9255,"🚤":4113,"🚥":4106,"🚦":4107,"🚧":4109,"🚨":4105,"🚩":72,"🚪":6213,"🚫":6250,"🚬":6230,"🚭":6252,"🚮":6235,"🚯":6253,"🚰":6236,"🚱":6254,"🚲":497,"🚳":6251,"🚴♀":9269,"🚴♂":9268,"🚴":9267,"🚵♀":9272,"🚵♂":9271,"🚵":9270,"🚶♀":9214,"🚶♂":9213,"🚶":9212,"🚷":6255,"🚸":6248,"🚹":6238,"🚺":6239,"🚻":6240,"🚼":6241,"🚽":6217,"🚾":6242,"🚿":6218,"🛀":9291,"🛁":6219,"🛂":6243,"🛃":6244,"🛄":6245,"🛅":6246,"🛋":6215,"🛌":9292,"🛍":624,"🛎":4131,"🛏":6214,"🛐":6281,"🛑":4108,"🛒":6229,"🛕":443,"🛠":6185,"🛡":6190,"🛢":4103,"🛣":4101,"🛤":4102,"🛥":4116,"🛩":4119,"🛫":4120,"🛬":4121,"🛰":4128,"🛳":4114,"🛴":498,"🛵":493,"🛶":4112,"🛷":553,"🛸":4130,"🛹":499,"🛺":496,"🟠":6418,"🟡":6419,"🟢":6420,"🟣":6422,"🟤":6423,"🟥":6426,"🟦":6430,"🟧":6427,"🟨":6428,"🟩":6429,"🟪":6431,"🟫":6432,"🤍":1135,"🤎":1133,"🤏":97,"🤐":132,"🤑":127,"🤒":148,"🤓":161,"🤔":131,"🤕":149,"🤖":1102,"🤗":128,"🤘":911,"🤙":912,"🤚":92,"🤛":923,"🤜":924,"🤝":929,"🤞":99,"🤟":910,"🤠":158,"🤡":196,"🤢":150,"🤣":17,"🤤":145,"🤥":141,"🤦♀":9101,"🤦♂":9100,"🤦":999,"🤧":152,"🤨":133,"🤩":116,"🤪":125,"🤫":130,"🤬":190,"🤭":129,"🤮":151,"🤯":157,"🤰":9174,"🤱":9175,"🤲":928,"🤳":933,"🤴":9165,"🤵":9172,"🤶":9178,"🤷♀":9104,"🤷♂":9103,"🤷":9102,"🤸♀":9275,"🤸♂":9274,"🤸":9273,"🤹♀":9287,"🤹♂":9286,"🤹":9285,"🤺":9245,"🤼♀":9278,"🤼♂":9277,"🤼":9276,"🤽♀":9281,"🤽♂":9280,"🤽":9279,"🤾♀":9284,"🤾♂":9283,"🤾":9282,"🤿":550,"🥀":2111,"🥁":668,"🥂":3110,"🥃":3111,"🥄":3119,"🥅":546,"🥇":525,"🥈":526,"🥉":527,"🥊":544,"🥋":545,"🥌":554,"🥍":541,"🥎":530,"🥏":536,"🥐":333,"🥑":318,"🥒":324,"🥓":343,"🥔":320,"🥕":321,"🥖":334,"🥗":358,"🥘":355,"🥙":351,"🥚":353,"🥛":3100,"🥜":330,"🥝":315,"🥞":337,"🥟":377,"🥠":378,"🥡":379,"🥢":3116,"🥣":357,"🥤":3112,"🥥":317,"🥦":326,"🥧":393,"🥨":335,"🥩":342,"🥪":348,"🥫":362,"🥬":325,"🥭":38,"🥮":375,"🥯":336,"🥰":114,"🥱":186,"🥳":159,"🥴":155,"🥵":153,"🥶":154,"🥺":171,"🥻":615,"🥼":64,"🥽":63,"🥾":628,"🥿":629,"🦀":380,"🦁":215,"🦂":2103,"🦃":260,"🦄":221,"🦅":269,"🦆":270,"🦇":250,"🦈":291,"🦉":272,"🦊":211,"🦋":295,"🦌":223,"🦍":23,"🦎":279,"🦏":240,"🦐":382,"🦑":383,"🦒":238,"🦓":222,"🦔":249,"🦕":283,"🦖":284,"🦗":2100,"🦘":257,"🦙":237,"🦚":274,"🦛":241,"🦜":275,"🦝":212,"🦞":381,"🦟":2104,"🦠":2105,"🦡":258,"🦢":271,"🦥":254,"🦦":255,"🦧":24,"🦨":256,"🦩":273,"🦪":384,"🦮":27,"🦯":6196,"🦴":944,"🦵":937,"🦶":938,"🦷":943,"🦸♀":9181,"🦸♂":9180,"🦸":9179,"🦹♀":9184,"🦹♂":9183,"🦹":9182,"🦺":65,"🦻":940,"🦼":495,"🦽":494,"🦾":935,"🦿":936,"🧀":339,"🧁":392,"🧂":361,"🧃":3113,"🧄":327,"🧅":328,"🧆":352,"🧇":338,"🧈":360,"🧉":3114,"🧊":3115,"🧍♀":9217,"🧍♂":9216,"🧍":9215,"🧎♀":9220,"🧎♂":9219,"🧎":9218,"🧏♀":995,"🧏♂":994,"🧏":993,"🧐":162,"🧑🌾":9117,"🧑🍳":9120,"🧑🎓":9108,"🧑🎤":9138,"🧑🎨":9141,"🧑🏫":9111,"🧑🏭":9126,"🧑💻":9135,"🧑💼":9129,"🧑🔧":9123,"🧑🔬":9132,"🧑🚀":9147,"🧑🚒":9150,"🧑🤝🧑":9293,"🧑🦯":9221,"🧑🦰":963,"🧑🦱":965,"🧑🦲":969,"🧑🦳":967,"🧑🦼":9224,"🧑🦽":9227,"🧑⚕":9105,"🧑⚖":9114,"🧑✈":9144,"🧑":953,"🧒":950,"🧓":972,"🧔":956,"🧕":9171,"🧖♀":9241,"🧖♂":9240,"🧖":9239,"🧗♀":9244,"🧗♂":9243,"🧗":9242,"🧘♀":9290,"🧘♂":9289,"🧘":9288,"🧙♀":9187,"🧙♂":9186,"🧙":9185,"🧚♀":9190,"🧚♂":9189,"🧚":9188,"🧛♀":9193,"🧛♂":9192,"🧛":9191,"🧜♀":9196,"🧜♂":9195,"🧜":9194,"🧝♀":9199,"🧝♂":9198,"🧝":9197,"🧞♀":9202,"🧞♂":9201,"🧞":9200,"🧟♀":9205,"🧟♂":9204,"🧟":9203,"🧠":942,"🧡":1128,"🧢":638,"🧣":69,"🧤":610,"🧥":611,"🧦":612,"🧧":516,"🧨":55,"🧩":565,"🧪":6202,"🧫":6203,"🧬":6204,"🧭":47,"🧮":687,"🧯":6228,"🧰":6199,"🧱":420,"🧲":6200,"🧳":4132,"🧴":6221,"🧵":578,"🧶":579,"🧷":6222,"🧸":566,"🧹":6223,"🧺":6224,"🧻":6225,"🧼":6226,"🧽":6227,"🧾":6128,"🧿":560,"🩰":632,"🩱":616,"🩲":617,"🩳":618,"🩸":6209,"🩹":6211,"🩺":6212,"🪀":556,"🪁":557,"🪂":4122,"🪐":4180,"🪑":6216,"🪒":6220,"🪓":6182,"🪔":6103,"🪕":667,"‼":6355,"⁉":6356,"™":6364,"ℹ":6389,"↔":6269,"↕":6268,"↖":6267,"↗":6261,"↘":6263,"↙":6265,"↩":6270,"↪":6271,"⌚":4135,"⌛":4133,"⌨":680,"⏏":6323,"⏩":6310,"⏪":6314,"⏫":6317,"⏬":6319,"⏭":6311,"⏮":6315,"⏯":6312,"⏰":4136,"⏱":4137,"⏲":4138,"⏳":4134,"⏸":6320,"⏹":6321,"⏺":6322,"Ⓜ":6391,"▪":6439,"▫":6440,"▶":6309,"◀":6313,"◻":6436,"◼":6435,"◽":6438,"◾":6437,"☀":4177,"☁":4185,"☂":4200,"☃":4205,"☄":4207,"☎":671,"☑":6341,"☔":4201,"☕":3101,"☘":2123,"☝":918,"☠":194,"☢":6258,"☣":6259,"☦":6288,"☪":6289,"☮":6290,"☯":6286,"☸":6285,"☹":166,"☺":119,"♈":6293,"♉":6294,"♊":6295,"♋":6296,"♌":6297,"♍":6298,"♎":6299,"♏":6300,"♐":6301,"♑":6302,"♒":6303,"♓":6304,"♟":571,"♠":567,"♣":570,"♥":568,"♦":569,"♨":457,"♻":6334,"♾":6333,"♿":6237,"⚒":6184,"⚓":4110,"⚔":6187,"⚖":6195,"⚗":6201,"⚙":6193,"⚛":6282,"⚜":6335,"⚠":6247,"⚡":4203,"⚪":6425,"⚫":6424,"⚰":6231,"⚱":6232,"⚽":528,"⚾":529,"⛄":4206,"⛅":4186,"⛈":4187,"⛎":6305,"⛏":6183,"⛑":639,"⛓":6198,"⛔":6249,"⛩":445,"⛪":441,"⛰":49,"⛱":4202,"⛲":447,"⛳":547,"⛴":4115,"⛵":4111,"⛷":9247,"⛸":548,"⛹♀":9263,"⛹♂":9262,"⛹":9261,"⛺":448,"⛽":4104,"✂":6171,"✅":6340,"✈":4118,"✉":6132,"✊":921,"✋":94,"✌":98,"✍":931,"✏":6145,"✒":6146,"✔":6342,"✖":6343,"✝":6287,"✡":6284,"✨":56,"✳":6352,"✴":6353,"❄":4204,"❇":6354,"❌":6344,"❎":6345,"❓":6357,"❔":6358,"❕":6359,"❗":6360,"❣":1125,"❤":1127,"➕":6346,"➖":6347,"➗":6348,"➡":6262,"➰":6349,"➿":6350,"⤴":6272,"⤵":6273,"⬅":6266,"⬆":6260,"⬇":6264,"⬛":6433,"⬜":6434,"⭐":4181,"⭕":6339,"〰":6361,"〽":6351,"㊗":6413,"㊙":6414,"🎅🏻":0,"🎅🏼":0,"🎅🏽":0,"🎅🏾":0,"🎅🏿":0,"🏂🏻":0,"🏂🏼":0,"🏂🏽":0,"🏂🏾":0,"🏂🏿":0,"🏃🏻♀":0,"🏃🏼♀":0,"🏃🏽♀":0,"🏃🏾♀":0,"🏃🏿♀":0,"🏃🏻♂":0,"🏃🏼♂":0,"🏃🏽♂":0,"🏃🏾♂":0,"🏃🏿♂":0,"🏃🏻":0,"🏃🏼":0,"🏃🏽":0,"🏃🏾":0,"🏃🏿":0,"🏄🏻♀":0,"🏄🏼♀":0,"🏄🏽♀":0,"🏄🏾♀":0,"🏄🏿♀":0,"🏄🏻♂":0,"🏄🏼♂":0,"🏄🏽♂":0,"🏄🏾♂":0,"🏄🏿♂":0,"🏄🏻":0,"🏄🏼":0,"🏄🏽":0,"🏄🏾":0,"🏄🏿":0,"🏇🏻":0,"🏇🏼":0,"🏇🏽":0,"🏇🏾":0,"🏇🏿":0,"🏊🏻♀":0,"🏊🏼♀":0,"🏊🏽♀":0,"🏊🏾♀":0,"🏊🏿♀":0,"🏊🏻♂":0,"🏊🏼♂":0,"🏊🏽♂":0,"🏊🏾♂":0,"🏊🏿♂":0,"🏊🏻":0,"🏊🏼":0,"🏊🏽":0,"🏊🏾":0,"🏊🏿":0,"🏋🏻♀":0,"🏋🏼♀":0,"🏋🏽♀":0,"🏋🏾♀":0,"🏋🏿♀":0,"🏋🏻♂":0,"🏋🏼♂":0,"🏋🏽♂":0,"🏋🏾♂":0,"🏋🏿♂":0,"🏋🏻":0,"🏋🏼":0,"🏋🏽":0,"🏋🏾":0,"🏋🏿":0,"🏌🏻♀":0,"🏌🏼♀":0,"🏌🏽♀":0,"🏌🏾♀":0,"🏌🏿♀":0,"🏌🏻♂":0,"🏌🏼♂":0,"🏌🏽♂":0,"🏌🏾♂":0,"🏌🏿♂":0,"🏌🏻":0,"🏌🏼":0,"🏌🏽":0,"🏌🏾":0,"🏌🏿":0,"👂🏻":0,"👂🏼":0,"👂🏽":0,"👂🏾":0,"👂🏿":0,"👃🏻":0,"👃🏼":0,"👃🏽":0,"👃🏾":0,"👃🏿":0,"👆🏻":0,"👆🏼":0,"👆🏽":0,"👆🏾":0,"👆🏿":0,"👇🏻":0,"👇🏼":0,"👇🏽":0,"👇🏾":0,"👇🏿":0,"👈🏻":0,"👈🏼":0,"👈🏽":0,"👈🏾":0,"👈🏿":0,"👉🏻":0,"👉🏼":0,"👉🏽":0,"👉🏾":0,"👉🏿":0,"👊🏻":0,"👊🏼":0,"👊🏽":0,"👊🏾":0,"👊🏿":0,"👋🏻":0,"👋🏼":0,"👋🏽":0,"👋🏾":0,"👋🏿":0,"👌🏻":0,"👌🏼":0,"👌🏽":0,"👌🏾":0,"👌🏿":0,"👍🏻":0,"👍🏼":0,"👍🏽":0,"👍🏾":0,"👍🏿":0,"👎🏻":0,"👎🏼":0,"👎🏽":0,"👎🏾":0,"👎🏿":0,"👏🏻":0,"👏🏼":0,"👏🏽":0,"👏🏾":0,"👏🏿":0,"👐🏻":0,"👐🏼":0,"👐🏽":0,"👐🏾":0,"👐🏿":0,"👦🏻":0,"👦🏼":0,"👦🏽":0,"👦🏾":0,"👦🏿":0,"👧🏻":0,"👧🏼":0,"👧🏽":0,"👧🏾":0,"👧🏿":0,"👨🏻🌾":0,"👨🏼🌾":0,"👨🏽🌾":0,"👨🏾🌾":0,"👨🏿🌾":0,"👨🏻🍳":0,"👨🏼🍳":0,"👨🏽🍳":0,"👨🏾🍳":0,"👨🏿🍳":0,"👨🏻🎓":0,"👨🏼🎓":0,"👨🏽🎓":0,"👨🏾🎓":0,"👨🏿🎓":0,"👨🏻🎤":0,"👨🏼🎤":0,"👨🏽🎤":0,"👨🏾🎤":0,"👨🏿🎤":0,"👨🏻🎨":0,"👨🏼🎨":0,"👨🏽🎨":0,"👨🏾🎨":0,"👨🏿🎨":0,"👨🏻🏫":0,"👨🏼🏫":0,"👨🏽🏫":0,"👨🏾🏫":0,"👨🏿🏫":0,"👨🏻🏭":0,"👨🏼🏭":0,"👨🏽🏭":0,"👨🏾🏭":0,"👨🏿🏭":0,"👨🏻💻":0,"👨🏼💻":0,"👨🏽💻":0,"👨🏾💻":0,"👨🏿💻":0,"👨🏻💼":0,"👨🏼💼":0,"👨🏽💼":0,"👨🏾💼":0,"👨🏿💼":0,"👨🏻🔧":0,"👨🏼🔧":0,"👨🏽🔧":0,"👨🏾🔧":0,"👨🏿🔧":0,"👨🏻🔬":0,"👨🏼🔬":0,"👨🏽🔬":0,"👨🏾🔬":0,"👨🏿🔬":0,"👨🏻🚀":0,"👨🏼🚀":0,"👨🏽🚀":0,"👨🏾🚀":0,"👨🏿🚀":0,"👨🏻🚒":0,"👨🏼🚒":0,"👨🏽🚒":0,"👨🏾🚒":0,"👨🏿🚒":0,"👨🏻🦯":0,"👨🏼🦯":0,"👨🏽🦯":0,"👨🏾🦯":0,"👨🏿🦯":0,"👨🏻🦰":0,"👨🏼🦰":0,"👨🏽🦰":0,"👨🏾🦰":0,"👨🏿🦰":0,"👨🏻🦱":0,"👨🏼🦱":0,"👨🏽🦱":0,"👨🏾🦱":0,"👨🏿🦱":0,"👨🏻🦲":0,"👨🏼🦲":0,"👨🏽🦲":0,"👨🏾🦲":0,"👨🏿🦲":0,"👨🏻🦳":0,"👨🏼🦳":0,"👨🏽🦳":0,"👨🏾🦳":0,"👨🏿🦳":0,"👨🏻🦼":0,"👨🏼🦼":0,"👨🏽🦼":0,"👨🏾🦼":0,"👨🏿🦼":0,"👨🏻🦽":0,"👨🏼🦽":0,"👨🏽🦽":0,"👨🏾🦽":0,"👨🏿🦽":0,"👨🏻⚕":0,"👨🏼⚕":0,"👨🏽⚕":0,"👨🏾⚕":0,"👨🏿⚕":0,"👨🏻⚖":0,"👨🏼⚖":0,"👨🏽⚖":0,"👨🏾⚖":0,"👨🏿⚖":0,"👨🏻✈":0,"👨🏼✈":0,"👨🏽✈":0,"👨🏾✈":0,"👨🏿✈":0,"👨🏻":0,"👨🏼":0,"👨🏽":0,"👨🏾":0,"👨🏿":0,"👩🏻🌾":0,"👩🏼🌾":0,"👩🏽🌾":0,"👩🏾🌾":0,"👩🏿🌾":0,"👩🏻🍳":0,"👩🏼🍳":0,"👩🏽🍳":0,"👩🏾🍳":0,"👩🏿🍳":0,"👩🏻🎓":0,"👩🏼🎓":0,"👩🏽🎓":0,"👩🏾🎓":0,"👩🏿🎓":0,"👩🏻🎤":0,"👩🏼🎤":0,"👩🏽🎤":0,"👩🏾🎤":0,"👩🏿🎤":0,"👩🏻🎨":0,"👩🏼🎨":0,"👩🏽🎨":0,"👩🏾🎨":0,"👩🏿🎨":0,"👩🏻🏫":0,"👩🏼🏫":0,"👩🏽🏫":0,"👩🏾🏫":0,"👩🏿🏫":0,"👩🏻🏭":0,"👩🏼🏭":0,"👩🏽🏭":0,"👩🏾🏭":0,"👩🏿🏭":0,"👩🏻💻":0,"👩🏼💻":0,"👩🏽💻":0,"👩🏾💻":0,"👩🏿💻":0,"👩🏻💼":0,"👩🏼💼":0,"👩🏽💼":0,"👩🏾💼":0,"👩🏿💼":0,"👩🏻🔧":0,"👩🏼🔧":0,"👩🏽🔧":0,"👩🏾🔧":0,"👩🏿🔧":0,"👩🏻🔬":0,"👩🏼🔬":0,"👩🏽🔬":0,"👩🏾🔬":0,"👩🏿🔬":0,"👩🏻🚀":0,"👩🏼🚀":0,"👩🏽🚀":0,"👩🏾🚀":0,"👩🏿🚀":0,"👩🏻🚒":0,"👩🏼🚒":0,"👩🏽🚒":0,"👩🏾🚒":0,"👩🏿🚒":0,"👩🏻🦯":0,"👩🏼🦯":0,"👩🏽🦯":0,"👩🏾🦯":0,"👩🏿🦯":0,"👩🏻🦰":0,"👩🏼🦰":0,"👩🏽🦰":0,"👩🏾🦰":0,"👩🏿🦰":0,"👩🏻🦱":0,"👩🏼🦱":0,"👩🏽🦱":0,"👩🏾🦱":0,"👩🏿🦱":0,"👩🏻🦲":0,"👩🏼🦲":0,"👩🏽🦲":0,"👩🏾🦲":0,"👩🏿🦲":0,"👩🏻🦳":0,"👩🏼🦳":0,"👩🏽🦳":0,"👩🏾🦳":0,"👩🏿🦳":0,"👩🏻🦼":0,"👩🏼🦼":0,"👩🏽🦼":0,"👩🏾🦼":0,"👩🏿🦼":0,"👩🏻🦽":0,"👩🏼🦽":0,"👩🏽🦽":0,"👩🏾🦽":0,"👩🏿🦽":0,"👩🏻⚕":0,"👩🏼⚕":0,"👩🏽⚕":0,"👩🏾⚕":0,"👩🏿⚕":0,"👩🏻⚖":0,"👩🏼⚖":0,"👩🏽⚖":0,"👩🏾⚖":0,"👩🏿⚖":0,"👩🏻✈":0,"👩🏼✈":0,"👩🏽✈":0,"👩🏾✈":0,"👩🏿✈":0,"👩🏻":0,"👩🏼":0,"👩🏽":0,"👩🏾":0,"👩🏿":0,"👫🏻":0,"👫🏼":0,"👫🏽":0,"👫🏾":0,"👫🏿":0,"👩🏻🤝👨🏼":0,"👩🏻🤝👨🏽":0,"👩🏻🤝👨🏾":0,"👩🏻🤝👨🏿":0,"👩🏼🤝👨🏻":0,"👩🏼🤝👨🏽":0,"👩🏼🤝👨🏾":0,"👩🏼🤝👨🏿":0,"👩🏽🤝👨🏻":0,"👩🏽🤝👨🏼":0,"👩🏽🤝👨🏾":0,"👩🏽🤝👨🏿":0,"👩🏾🤝👨🏻":0,"👩🏾🤝👨🏼":0,"👩🏾🤝👨🏽":0,"👩🏾🤝👨🏿":0,"👩🏿🤝👨🏻":0,"👩🏿🤝👨🏼":0,"👩🏿🤝👨🏽":0,"👩🏿🤝👨🏾":0,"👬🏻":0,"👬🏼":0,"👬🏽":0,"👬🏾":0,"👬🏿":0,"👨🏻🤝👨🏼":0,"👨🏻🤝👨🏽":0,"👨🏻🤝👨🏾":0,"👨🏻🤝👨🏿":0,"👨🏼🤝👨🏻":0,"👨🏼🤝👨🏽":0,"👨🏼🤝👨🏾":0,"👨🏼🤝👨🏿":0,"👨🏽🤝👨🏻":0,"👨🏽🤝👨🏼":0,"👨🏽🤝👨🏾":0,"👨🏽🤝👨🏿":0,"👨🏾🤝👨🏻":0,"👨🏾🤝👨🏼":0,"👨🏾🤝👨🏽":0,"👨🏾🤝👨🏿":0,"👨🏿🤝👨🏻":0,"👨🏿🤝👨🏼":0,"👨🏿🤝👨🏽":0,"👨🏿🤝👨🏾":0,"👭🏻":0,"👭🏼":0,"👭🏽":0,"👭🏾":0,"👭🏿":0,"👩🏻🤝👩🏼":0,"👩🏻🤝👩🏽":0,"👩🏻🤝👩🏾":0,"👩🏻🤝👩🏿":0,"👩🏼🤝👩🏻":0,"👩🏼🤝👩🏽":0,"👩🏼🤝👩🏾":0,"👩🏼🤝👩🏿":0,"👩🏽🤝👩🏻":0,"👩🏽🤝👩🏼":0,"👩🏽🤝👩🏾":0,"👩🏽🤝👩🏿":0,"👩🏾🤝👩🏻":0,"👩🏾🤝👩🏼":0,"👩🏾🤝👩🏽":0,"👩🏾🤝👩🏿":0,"👩🏿🤝👩🏻":0,"👩🏿🤝👩🏼":0,"👩🏿🤝👩🏽":0,"👩🏿🤝👩🏾":0,"👮🏻♀":0,"👮🏼♀":0,"👮🏽♀":0,"👮🏾♀":0,"👮🏿♀":0,"👮🏻♂":0,"👮🏼♂":0,"👮🏽♂":0,"👮🏾♂":0,"👮🏿♂":0,"👮🏻":0,"👮🏼":0,"👮🏽":0,"👮🏾":0,"👮🏿":0,"👰🏻":0,"👰🏼":0,"👰🏽":0,"👰🏾":0,"👰🏿":0,"👱🏻♀":0,"👱🏼♀":0,"👱🏽♀":0,"👱🏾♀":0,"👱🏿♀":0,"👱🏻♂":0,"👱🏼♂":0,"👱🏽♂":0,"👱🏾♂":0,"👱🏿♂":0,"👱🏻":0,"👱🏼":0,"👱🏽":0,"👱🏾":0,"👱🏿":0,"👲🏻":0,"👲🏼":0,"👲🏽":0,"👲🏾":0,"👲🏿":0,"👳🏻♀":0,"👳🏼♀":0,"👳🏽♀":0,"👳🏾♀":0,"👳🏿♀":0,"👳🏻♂":0,"👳🏼♂":0,"👳🏽♂":0,"👳🏾♂":0,"👳🏿♂":0,"👳🏻":0,"👳🏼":0,"👳🏽":0,"👳🏾":0,"👳🏿":0,"👴🏻":0,"👴🏼":0,"👴🏽":0,"👴🏾":0,"👴🏿":0,"👵🏻":0,"👵🏼":0,"👵🏽":0,"👵🏾":0,"👵🏿":0,"👶🏻":0,"👶🏼":0,"👶🏽":0,"👶🏾":0,"👶🏿":0,"👷🏻♀":0,"👷🏼♀":0,"👷🏽♀":0,"👷🏾♀":0,"👷🏿♀":0,"👷🏻♂":0,"👷🏼♂":0,"👷🏽♂":0,"👷🏾♂":0,"👷🏿♂":0,"👷🏻":0,"👷🏼":0,"👷🏽":0,"👷🏾":0,"👷🏿":0,"👸🏻":0,"👸🏼":0,"👸🏽":0,"👸🏾":0,"👸🏿":0,"👼🏻":0,"👼🏼":0,"👼🏽":0,"👼🏾":0,"👼🏿":0,"💁🏻♀":0,"💁🏼♀":0,"💁🏽♀":0,"💁🏾♀":0,"💁🏿♀":0,"💁🏻♂":0,"💁🏼♂":0,"💁🏽♂":0,"💁🏾♂":0,"💁🏿♂":0,"💁🏻":0,"💁🏼":0,"💁🏽":0,"💁🏾":0,"💁🏿":0,"💂🏻♀":0,"💂🏼♀":0,"💂🏽♀":0,"💂🏾♀":0,"💂🏿♀":0,"💂🏻♂":0,"💂🏼♂":0,"💂🏽♂":0,"💂🏾♂":0,"💂🏿♂":0,"💂🏻":0,"💂🏼":0,"💂🏽":0,"💂🏾":0,"💂🏿":0,"💃🏻":0,"💃🏼":0,"💃🏽":0,"💃🏾":0,"💃🏿":0,"💅🏻":0,"💅🏼":0,"💅🏽":0,"💅🏾":0,"💅🏿":0,"💆🏻♀":0,"💆🏼♀":0,"💆🏽♀":0,"💆🏾♀":0,"💆🏿♀":0,"💆🏻♂":0,"💆🏼♂":0,"💆🏽♂":0,"💆🏾♂":0,"💆🏿♂":0,"💆🏻":0,"💆🏼":0,"💆🏽":0,"💆🏾":0,"💆🏿":0,"💇🏻♀":0,"💇🏼♀":0,"💇🏽♀":0,"💇🏾♀":0,"💇🏿♀":0,"💇🏻♂":0,"💇🏼♂":0,"💇🏽♂":0,"💇🏾♂":0,"💇🏿♂":0,"💇🏻":0,"💇🏼":0,"💇🏽":0,"💇🏾":0,"💇🏿":0,"💪🏻":0,"💪🏼":0,"💪🏽":0,"💪🏾":0,"💪🏿":0,"🕴🏻":0,"🕴🏼":0,"🕴🏽":0,"🕴🏾":0,"🕴🏿":0,"🕵🏻♀":0,"🕵🏼♀":0,"🕵🏽♀":0,"🕵🏾♀":0,"🕵🏿♀":0,"🕵🏻♂":0,"🕵🏼♂":0,"🕵🏽♂":0,"🕵🏾♂":0,"🕵🏿♂":0,"🕵🏻":0,"🕵🏼":0,"🕵🏽":0,"🕵🏾":0,"🕵🏿":0,"🕺🏻":0,"🕺🏼":0,"🕺🏽":0,"🕺🏾":0,"🕺🏿":0,"🖐🏻":0,"🖐🏼":0,"🖐🏽":0,"🖐🏾":0,"🖐🏿":0,"🖕🏻":0,"🖕🏼":0,"🖕🏽":0,"🖕🏾":0,"🖕🏿":0,"🖖🏻":0,"🖖🏼":0,"🖖🏽":0,"🖖🏾":0,"🖖🏿":0,"🙅🏻♀":0,"🙅🏼♀":0,"🙅🏽♀":0,"🙅🏾♀":0,"🙅🏿♀":0,"🙅🏻♂":0,"🙅🏼♂":0,"🙅🏽♂":0,"🙅🏾♂":0,"🙅🏿♂":0,"🙅🏻":0,"🙅🏼":0,"🙅🏽":0,"🙅🏾":0,"🙅🏿":0,"🙆🏻♀":0,"🙆🏼♀":0,"🙆🏽♀":0,"🙆🏾♀":0,"🙆🏿♀":0,"🙆🏻♂":0,"🙆🏼♂":0,"🙆🏽♂":0,"🙆🏾♂":0,"🙆🏿♂":0,"🙆🏻":0,"🙆🏼":0,"🙆🏽":0,"🙆🏾":0,"🙆🏿":0,"🙇🏻♀":0,"🙇🏼♀":0,"🙇🏽♀":0,"🙇🏾♀":0,"🙇🏿♀":0,"🙇🏻♂":0,"🙇🏼♂":0,"🙇🏽♂":0,"🙇🏾♂":0,"🙇🏿♂":0,"🙇🏻":0,"🙇🏼":0,"🙇🏽":0,"🙇🏾":0,"🙇🏿":0,"🙋🏻♀":0,"🙋🏼♀":0,"🙋🏽♀":0,"🙋🏾♀":0,"🙋🏿♀":0,"🙋🏻♂":0,"🙋🏼♂":0,"🙋🏽♂":0,"🙋🏾♂":0,"🙋🏿♂":0,"🙋🏻":0,"🙋🏼":0,"🙋🏽":0,"🙋🏾":0,"🙋🏿":0,"🙌🏻":0,"🙌🏼":0,"🙌🏽":0,"🙌🏾":0,"🙌🏿":0,"🙍🏻♀":0,"🙍🏼♀":0,"🙍🏽♀":0,"🙍🏾♀":0,"🙍🏿♀":0,"🙍🏻♂":0,"🙍🏼♂":0,"🙍🏽♂":0,"🙍🏾♂":0,"🙍🏿♂":0,"🙍🏻":0,"🙍🏼":0,"🙍🏽":0,"🙍🏾":0,"🙍🏿":0,"🙎🏻♀":0,"🙎🏼♀":0,"🙎🏽♀":0,"🙎🏾♀":0,"🙎🏿♀":0,"🙎🏻♂":0,"🙎🏼♂":0,"🙎🏽♂":0,"🙎🏾♂":0,"🙎🏿♂":0,"🙎🏻":0,"🙎🏼":0,"🙎🏽":0,"🙎🏾":0,"🙎🏿":0,"🙏🏻":0,"🙏🏼":0,"🙏🏽":0,"🙏🏾":0,"🙏🏿":0,"🚣🏻♀":0,"🚣🏼♀":0,"🚣🏽♀":0,"🚣🏾♀":0,"🚣🏿♀":0,"🚣🏻♂":0,"🚣🏼♂":0,"🚣🏽♂":0,"🚣🏾♂":0,"🚣🏿♂":0,"🚣🏻":0,"🚣🏼":0,"🚣🏽":0,"🚣🏾":0,"🚣🏿":0,"🚴🏻♀":0,"🚴🏼♀":0,"🚴🏽♀":0,"🚴🏾♀":0,"🚴🏿♀":0,"🚴🏻♂":0,"🚴🏼♂":0,"🚴🏽♂":0,"🚴🏾♂":0,"🚴🏿♂":0,"🚴🏻":0,"🚴🏼":0,"🚴🏽":0,"🚴🏾":0,"🚴🏿":0,"🚵🏻♀":0,"🚵🏼♀":0,"🚵🏽♀":0,"🚵🏾♀":0,"🚵🏿♀":0,"🚵🏻♂":0,"🚵🏼♂":0,"🚵🏽♂":0,"🚵🏾♂":0,"🚵🏿♂":0,"🚵🏻":0,"🚵🏼":0,"🚵🏽":0,"🚵🏾":0,"🚵🏿":0,"🚶🏻♀":0,"🚶🏼♀":0,"🚶🏽♀":0,"🚶🏾♀":0,"🚶🏿♀":0,"🚶🏻♂":0,"🚶🏼♂":0,"🚶🏽♂":0,"🚶🏾♂":0,"🚶🏿♂":0,"🚶🏻":0,"🚶🏼":0,"🚶🏽":0,"🚶🏾":0,"🚶🏿":0,"🛀🏻":0,"🛀🏼":0,"🛀🏽":0,"🛀🏾":0,"🛀🏿":0,"🛌🏻":0,"🛌🏼":0,"🛌🏽":0,"🛌🏾":0,"🛌🏿":0,"🤏🏻":0,"🤏🏼":0,"🤏🏽":0,"🤏🏾":0,"🤏🏿":0,"🤘🏻":0,"🤘🏼":0,"🤘🏽":0,"🤘🏾":0,"🤘🏿":0,"🤙🏻":0,"🤙🏼":0,"🤙🏽":0,"🤙🏾":0,"🤙🏿":0,"🤚🏻":0,"🤚🏼":0,"🤚🏽":0,"🤚🏾":0,"🤚🏿":0,"🤛🏻":0,"🤛🏼":0,"🤛🏽":0,"🤛🏾":0,"🤛🏿":0,"🤜🏻":0,"🤜🏼":0,"🤜🏽":0,"🤜🏾":0,"🤜🏿":0,"🤞🏻":0,"🤞🏼":0,"🤞🏽":0,"🤞🏾":0,"🤞🏿":0,"🤟🏻":0,"🤟🏼":0,"🤟🏽":0,"🤟🏾":0,"🤟🏿":0,"🤦🏻♀":0,"🤦🏼♀":0,"🤦🏽♀":0,"🤦🏾♀":0,"🤦🏿♀":0,"🤦🏻♂":0,"🤦🏼♂":0,"🤦🏽♂":0,"🤦🏾♂":0,"🤦🏿♂":0,"🤦🏻":0,"🤦🏼":0,"🤦🏽":0,"🤦🏾":0,"🤦🏿":0,"🤰🏻":0,"🤰🏼":0,"🤰🏽":0,"🤰🏾":0,"🤰🏿":0,"🤱🏻":0,"🤱🏼":0,"🤱🏽":0,"🤱🏾":0,"🤱🏿":0,"🤲🏻":0,"🤲🏼":0,"🤲🏽":0,"🤲🏾":0,"🤲🏿":0,"🤳🏻":0,"🤳🏼":0,"🤳🏽":0,"🤳🏾":0,"🤳🏿":0,"🤴🏻":0,"🤴🏼":0,"🤴🏽":0,"🤴🏾":0,"🤴🏿":0,"🤵🏻":0,"🤵🏼":0,"🤵🏽":0,"🤵🏾":0,"🤵🏿":0,"🤶🏻":0,"🤶🏼":0,"🤶🏽":0,"🤶🏾":0,"🤶🏿":0,"🤷🏻♀":0,"🤷🏼♀":0,"🤷🏽♀":0,"🤷🏾♀":0,"🤷🏿♀":0,"🤷🏻♂":0,"🤷🏼♂":0,"🤷🏽♂":0,"🤷🏾♂":0,"🤷🏿♂":0,"🤷🏻":0,"🤷🏼":0,"🤷🏽":0,"🤷🏾":0,"🤷🏿":0,"🤸🏻♀":0,"🤸🏼♀":0,"🤸🏽♀":0,"🤸🏾♀":0,"🤸🏿♀":0,"🤸🏻♂":0,"🤸🏼♂":0,"🤸🏽♂":0,"🤸🏾♂":0,"🤸🏿♂":0,"🤸🏻":0,"🤸🏼":0,"🤸🏽":0,"🤸🏾":0,"🤸🏿":0,"🤹🏻♀":0,"🤹🏼♀":0,"🤹🏽♀":0,"🤹🏾♀":0,"🤹🏿♀":0,"🤹🏻♂":0,"🤹🏼♂":0,"🤹🏽♂":0,"🤹🏾♂":0,"🤹🏿♂":0,"🤹🏻":0,"🤹🏼":0,"🤹🏽":0,"🤹🏾":0,"🤹🏿":0,"🤽🏻♀":0,"🤽🏼♀":0,"🤽🏽♀":0,"🤽🏾♀":0,"🤽🏿♀":0,"🤽🏻♂":0,"🤽🏼♂":0,"🤽🏽♂":0,"🤽🏾♂":0,"🤽🏿♂":0,"🤽🏻":0,"🤽🏼":0,"🤽🏽":0,"🤽🏾":0,"🤽🏿":0,"🤾🏻♀":0,"🤾🏼♀":0,"🤾🏽♀":0,"🤾🏾♀":0,"🤾🏿♀":0,"🤾🏻♂":0,"🤾🏼♂":0,"🤾🏽♂":0,"🤾🏾♂":0,"🤾🏿♂":0,"🤾🏻":0,"🤾🏼":0,"🤾🏽":0,"🤾🏾":0,"🤾🏿":0,"🦵🏻":0,"🦵🏼":0,"🦵🏽":0,"🦵🏾":0,"🦵🏿":0,"🦶🏻":0,"🦶🏼":0,"🦶🏽":0,"🦶🏾":0,"🦶🏿":0,"🦸🏻♀":0,"🦸🏼♀":0,"🦸🏽♀":0,"🦸🏾♀":0,"🦸🏿♀":0,"🦸🏻♂":0,"🦸🏼♂":0,"🦸🏽♂":0,"🦸🏾♂":0,"🦸🏿♂":0,"🦸🏻":0,"🦸🏼":0,"🦸🏽":0,"🦸🏾":0,"🦸🏿":0,"🦹🏻♀":0,"🦹🏼♀":0,"🦹🏽♀":0,"🦹🏾♀":0,"🦹🏿♀":0,"🦹🏻♂":0,"🦹🏼♂":0,"🦹🏽♂":0,"🦹🏾♂":0,"🦹🏿♂":0,"🦹🏻":0,"🦹🏼":0,"🦹🏽":0,"🦹🏾":0,"🦹🏿":0,"🦻🏻":0,"🦻🏼":0,"🦻🏽":0,"🦻🏾":0,"🦻🏿":0,"🧍🏻♀":0,"🧍🏼♀":0,"🧍🏽♀":0,"🧍🏾♀":0,"🧍🏿♀":0,"🧍🏻♂":0,"🧍🏼♂":0,"🧍🏽♂":0,"🧍🏾♂":0,"🧍🏿♂":0,"🧍🏻":0,"🧍🏼":0,"🧍🏽":0,"🧍🏾":0,"🧍🏿":0,"🧎🏻♀":0,"🧎🏼♀":0,"🧎🏽♀":0,"🧎🏾♀":0,"🧎🏿♀":0,"🧎🏻♂":0,"🧎🏼♂":0,"🧎🏽♂":0,"🧎🏾♂":0,"🧎🏿♂":0,"🧎🏻":0,"🧎🏼":0,"🧎🏽":0,"🧎🏾":0,"🧎🏿":0,"🧏🏻♀":0,"🧏🏼♀":0,"🧏🏽♀":0,"🧏🏾♀":0,"🧏🏿♀":0,"🧏🏻♂":0,"🧏🏼♂":0,"🧏🏽♂":0,"🧏🏾♂":0,"🧏🏿♂":0,"🧏🏻":0,"🧏🏼":0,"🧏🏽":0,"🧏🏾":0,"🧏🏿":0,"🧑🏻🌾":0,"🧑🏼🌾":0,"🧑🏽🌾":0,"🧑🏾🌾":0,"🧑🏿🌾":0,"🧑🏻🍳":0,"🧑🏼🍳":0,"🧑🏽🍳":0,"🧑🏾🍳":0,"🧑🏿🍳":0,"🧑🏻🎓":0,"🧑🏼🎓":0,"🧑🏽🎓":0,"🧑🏾🎓":0,"🧑🏿🎓":0,"🧑🏻🎤":0,"🧑🏼🎤":0,"🧑🏽🎤":0,"🧑🏾🎤":0,"🧑🏿🎤":0,"🧑🏻🎨":0,"🧑🏼🎨":0,"🧑🏽🎨":0,"🧑🏾🎨":0,"🧑🏿🎨":0,"🧑🏻🏫":0,"🧑🏼🏫":0,"🧑🏽🏫":0,"🧑🏾🏫":0,"🧑🏿🏫":0,"🧑🏻🏭":0,"🧑🏼🏭":0,"🧑🏽🏭":0,"🧑🏾🏭":0,"🧑🏿🏭":0,"🧑🏻💻":0,"🧑🏼💻":0,"🧑🏽💻":0,"🧑🏾💻":0,"🧑🏿💻":0,"🧑🏻💼":0,"🧑🏼💼":0,"🧑🏽💼":0,"🧑🏾💼":0,"🧑🏿💼":0,"🧑🏻🔧":0,"🧑🏼🔧":0,"🧑🏽🔧":0,"🧑🏾🔧":0,"🧑🏿🔧":0,"🧑🏻🔬":0,"🧑🏼🔬":0,"🧑🏽🔬":0,"🧑🏾🔬":0,"🧑🏿🔬":0,"🧑🏻🚀":0,"🧑🏼🚀":0,"🧑🏽🚀":0,"🧑🏾🚀":0,"🧑🏿🚀":0,"🧑🏻🚒":0,"🧑🏼🚒":0,"🧑🏽🚒":0,"🧑🏾🚒":0,"🧑🏿🚒":0,"🧑🏻🤝🧑🏻":0,"🧑🏻🤝🧑🏼":0,"🧑🏻🤝🧑🏽":0,"🧑🏻🤝🧑🏾":0,"🧑🏻🤝🧑🏿":0,"🧑🏼🤝🧑🏻":0,"🧑🏼🤝🧑🏼":0,"🧑🏼🤝🧑🏽":0,"🧑🏼🤝🧑🏾":0,"🧑🏼🤝🧑🏿":0,"🧑🏽🤝🧑🏻":0,"🧑🏽🤝🧑🏼":0,"🧑🏽🤝🧑🏽":0,"🧑🏽🤝🧑🏾":0,"🧑🏽🤝🧑🏿":0,"🧑🏾🤝🧑🏻":0,"🧑🏾🤝🧑🏼":0,"🧑🏾🤝🧑🏽":0,"🧑🏾🤝🧑🏾":0,"🧑🏾🤝🧑🏿":0,"🧑🏿🤝🧑🏻":0,"🧑🏿🤝🧑🏼":0,"🧑🏿🤝🧑🏽":0,"🧑🏿🤝🧑🏾":0,"🧑🏿🤝🧑🏿":0,"🧑🏻🦯":0,"🧑🏼🦯":0,"🧑🏽🦯":0,"🧑🏾🦯":0,"🧑🏿🦯":0,"🧑🏻🦰":0,"🧑🏼🦰":0,"🧑🏽🦰":0,"🧑🏾🦰":0,"🧑🏿🦰":0,"🧑🏻🦱":0,"🧑🏼🦱":0,"🧑🏽🦱":0,"🧑🏾🦱":0,"🧑🏿🦱":0,"🧑🏻🦲":0,"🧑🏼🦲":0,"🧑🏽🦲":0,"🧑🏾🦲":0,"🧑🏿🦲":0,"🧑🏻🦳":0,"🧑🏼🦳":0,"🧑🏽🦳":0,"🧑🏾🦳":0,"🧑🏿🦳":0,"🧑🏻🦼":0,"🧑🏼🦼":0,"🧑🏽🦼":0,"🧑🏾🦼":0,"🧑🏿🦼":0,"🧑🏻🦽":0,"🧑🏼🦽":0,"🧑🏽🦽":0,"🧑🏾🦽":0,"🧑🏿🦽":0,"🧑🏻⚕":0,"🧑🏼⚕":0,"🧑🏽⚕":0,"🧑🏾⚕":0,"🧑🏿⚕":0,"🧑🏻⚖":0,"🧑🏼⚖":0,"🧑🏽⚖":0,"🧑🏾⚖":0,"🧑🏿⚖":0,"🧑🏻✈":0,"🧑🏼✈":0,"🧑🏽✈":0,"🧑🏾✈":0,"🧑🏿✈":0,"🧑🏻":0,"🧑🏼":0,"🧑🏽":0,"🧑🏾":0,"🧑🏿":0,"🧒🏻":0,"🧒🏼":0,"🧒🏽":0,"🧒🏾":0,"🧒🏿":0,"🧓🏻":0,"🧓🏼":0,"🧓🏽":0,"🧓🏾":0,"🧓🏿":0,"🧔🏻":0,"🧔🏼":0,"🧔🏽":0,"🧔🏾":0,"🧔🏿":0,"🧕🏻":0,"🧕🏼":0,"🧕🏽":0,"🧕🏾":0,"🧕🏿":0,"🧖🏻♀":0,"🧖🏼♀":0,"🧖🏽♀":0,"🧖🏾♀":0,"🧖🏿♀":0,"🧖🏻♂":0,"🧖🏼♂":0,"🧖🏽♂":0,"🧖🏾♂":0,"🧖🏿♂":0,"🧖🏻":0,"🧖🏼":0,"🧖🏽":0,"🧖🏾":0,"🧖🏿":0,"🧗🏻♀":0,"🧗🏼♀":0,"🧗🏽♀":0,"🧗🏾♀":0,"🧗🏿♀":0,"🧗🏻♂":0,"🧗🏼♂":0,"🧗🏽♂":0,"🧗🏾♂":0,"🧗🏿♂":0,"🧗🏻":0,"🧗🏼":0,"🧗🏽":0,"🧗🏾":0,"🧗🏿":0,"🧘🏻♀":0,"🧘🏼♀":0,"🧘🏽♀":0,"🧘🏾♀":0,"🧘🏿♀":0,"🧘🏻♂":0,"🧘🏼♂":0,"🧘🏽♂":0,"🧘🏾♂":0,"🧘🏿♂":0,"🧘🏻":0,"🧘🏼":0,"🧘🏽":0,"🧘🏾":0,"🧘🏿":0,"🧙🏻♀":0,"🧙🏼♀":0,"🧙🏽♀":0,"🧙🏾♀":0,"🧙🏿♀":0,"🧙🏻♂":0,"🧙🏼♂":0,"🧙🏽♂":0,"🧙🏾♂":0,"🧙🏿♂":0,"🧙🏻":0,"🧙🏼":0,"🧙🏽":0,"🧙🏾":0,"🧙🏿":0,"🧚🏻♀":0,"🧚🏼♀":0,"🧚🏽♀":0,"🧚🏾♀":0,"🧚🏿♀":0,"🧚🏻♂":0,"🧚🏼♂":0,"🧚🏽♂":0,"🧚🏾♂":0,"🧚🏿♂":0,"🧚🏻":0,"🧚🏼":0,"🧚🏽":0,"🧚🏾":0,"🧚🏿":0,"🧛🏻♀":0,"🧛🏼♀":0,"🧛🏽♀":0,"🧛🏾♀":0,"🧛🏿♀":0,"🧛🏻♂":0,"🧛🏼♂":0,"🧛🏽♂":0,"🧛🏾♂":0,"🧛🏿♂":0,"🧛🏻":0,"🧛🏼":0,"🧛🏽":0,"🧛🏾":0,"🧛🏿":0,"🧜🏻♀":0,"🧜🏼♀":0,"🧜🏽♀":0,"🧜🏾♀":0,"🧜🏿♀":0,"🧜🏻♂":0,"🧜🏼♂":0,"🧜🏽♂":0,"🧜🏾♂":0,"🧜🏿♂":0,"🧜🏻":0,"🧜🏼":0,"🧜🏽":0,"🧜🏾":0,"🧜🏿":0,"🧝🏻♀":0,"🧝🏼♀":0,"🧝🏽♀":0,"🧝🏾♀":0,"🧝🏿♀":0,"🧝🏻♂":0,"🧝🏼♂":0,"🧝🏽♂":0,"🧝🏾♂":0,"🧝🏿♂":0,"🧝🏻":0,"🧝🏼":0,"🧝🏽":0,"🧝🏾":0,"🧝🏿":0,"☝🏻":0,"☝🏼":0,"☝🏽":0,"☝🏾":0,"☝🏿":0,"⛹🏻♀":0,"⛹🏼♀":0,"⛹🏽♀":0,"⛹🏾♀":0,"⛹🏿♀":0,"⛹🏻♂":0,"⛹🏼♂":0,"⛹🏽♂":0,"⛹🏾♂":0,"⛹🏿♂":0,"⛹🏻":0,"⛹🏼":0,"⛹🏽":0,"⛹🏾":0,"⛹🏿":0,"✊🏻":0,"✊🏼":0,"✊🏽":0,"✊🏾":0,"✊🏿":0,"✋🏻":0,"✋🏼":0,"✋🏽":0,"✋🏾":0,"✋🏿":0,"✌🏻":0,"✌🏼":0,"✌🏽":0,"✌🏾":0,"✌🏿":0,"✍🏻":0,"✍🏼":0,"✍🏽":0,"✍🏾":0,"✍🏿":0};
+const Emoji: {[emoji: string]: number} = {"#⃣":6365,"*⃣":6366,"0⃣":6367,"1⃣":6368,"2⃣":6369,"3⃣":6370,"4⃣":6371,"5⃣":6372,"6⃣":6373,"7⃣":6374,"8⃣":6375,"9⃣":6376,"©":6362,"®":6363,"🀄":573,"🃏":572,"🅰":6383,"🅱":6385,"🅾":6394,"🅿":6396,"🆎":6384,"🆑":6386,"🆒":6387,"🆓":6388,"🆔":6390,"🆕":6392,"🆖":6393,"🆗":6395,"🆘":6397,"🆙":6398,"🆚":6399,"🇦🇨":78,"🇦🇩":79,"🇦🇪":710,"🇦🇫":711,"🇦🇬":712,"🇦🇮":713,"🇦🇱":714,"🇦🇲":715,"🇦🇴":716,"🇦🇶":717,"🇦🇷":718,"🇦🇸":719,"🇦🇹":720,"🇦🇺":721,"🇦🇼":722,"🇦🇽":723,"🇦🇿":724,"🇧🇦":725,"🇧🇧":726,"🇧🇩":727,"🇧🇪":728,"🇧🇫":729,"🇧🇬":730,"🇧🇭":731,"🇧🇮":732,"🇧🇯":733,"🇧🇱":734,"🇧🇲":735,"🇧🇳":736,"🇧🇴":737,"🇧🇶":738,"🇧🇷":739,"🇧🇸":740,"🇧🇹":741,"🇧🇻":742,"🇧🇼":743,"🇧🇾":744,"🇧🇿":745,"🇨🇦":746,"🇨🇨":747,"🇨🇩":748,"🇨🇫":749,"🇨🇬":750,"🇨🇭":751,"🇨🇮":752,"🇨🇰":753,"🇨🇱":754,"🇨🇲":755,"🇨🇳":756,"🇨🇴":757,"🇨🇵":758,"🇨🇷":759,"🇨🇺":760,"🇨🇻":761,"🇨🇼":762,"🇨🇽":763,"🇨🇾":764,"🇨🇿":765,"🇩🇪":766,"🇩🇬":767,"🇩🇯":768,"🇩🇰":769,"🇩🇲":770,"🇩🇴":771,"🇩🇿":772,"🇪🇦":773,"🇪🇨":774,"🇪🇪":775,"🇪🇬":776,"🇪🇭":777,"🇪🇷":778,"🇪🇸":779,"🇪🇹":780,"🇪🇺":781,"🇫🇮":782,"🇫🇯":783,"🇫🇰":784,"🇫🇲":785,"🇫🇴":786,"🇫🇷":787,"🇬🇦":788,"🇬🇧":789,"🇬🇩":790,"🇬🇪":791,"🇬🇫":792,"🇬🇬":793,"🇬🇭":794,"🇬🇮":795,"🇬🇱":796,"🇬🇲":797,"🇬🇳":798,"🇬🇵":799,"🇬🇶":7100,"🇬🇷":7101,"🇬🇸":7102,"🇬🇹":7103,"🇬🇺":7104,"🇬🇼":7105,"🇬🇾":7106,"🇭🇰":7107,"🇭🇲":7108,"🇭🇳":7109,"🇭🇷":7110,"🇭🇹":7111,"🇭🇺":7112,"🇮🇨":7113,"🇮🇩":7114,"🇮🇪":7115,"🇮🇱":7116,"🇮🇲":7117,"🇮🇳":7118,"🇮🇴":7119,"🇮🇶":7120,"🇮🇷":7121,"🇮🇸":7122,"🇮🇹":7123,"🇯🇪":7124,"🇯🇲":7125,"🇯🇴":7126,"🇯🇵":7127,"🇰🇪":7128,"🇰🇬":7129,"🇰🇭":7130,"🇰🇮":7131,"🇰🇲":7132,"🇰🇳":7133,"🇰🇵":7134,"🇰🇷":7135,"🇰🇼":7136,"🇰🇾":7137,"🇰🇿":7138,"🇱🇦":7139,"🇱🇧":7140,"🇱🇨":7141,"🇱🇮":7142,"🇱🇰":7143,"🇱🇷":7144,"🇱🇸":7145,"🇱🇹":7146,"🇱🇺":7147,"🇱🇻":7148,"🇱🇾":7149,"🇲🇦":7150,"🇲🇨":7151,"🇲🇩":7152,"🇲🇪":7153,"🇲🇫":7154,"🇲🇬":7155,"🇲🇭":7156,"🇲🇰":7157,"🇲🇱":7158,"🇲🇲":7159,"🇲🇳":7160,"🇲🇴":7161,"🇲🇵":7162,"🇲🇶":7163,"🇲🇷":7164,"🇲🇸":7165,"🇲🇹":7166,"🇲🇺":7167,"🇲🇻":7168,"🇲🇼":7169,"🇲🇽":7170,"🇲🇾":7171,"🇲🇿":7172,"🇳🇦":7173,"🇳🇨":7174,"🇳🇪":7175,"🇳🇫":7176,"🇳🇬":7177,"🇳🇮":7178,"🇳🇱":7179,"🇳🇴":7180,"🇳🇵":7181,"🇳🇷":7182,"🇳🇺":7183,"🇳🇿":7184,"🇴🇲":7185,"🇵🇦":7186,"🇵🇪":7187,"🇵🇫":7188,"🇵🇬":7189,"🇵🇭":7190,"🇵🇰":7191,"🇵🇱":7192,"🇵🇲":7193,"🇵🇳":7194,"🇵🇷":7195,"🇵🇸":7196,"🇵🇹":7197,"🇵🇼":7198,"🇵🇾":7199,"🇶🇦":7200,"🇷🇪":7201,"🇷🇴":7202,"🇷🇸":7203,"🇷🇺":7204,"🇷🇼":7205,"🇸🇦":7206,"🇸🇧":7207,"🇸🇨":7208,"🇸🇩":7209,"🇸🇪":7210,"🇸🇬":7211,"🇸🇭":7212,"🇸🇮":7213,"🇸🇯":7214,"🇸🇰":7215,"🇸🇱":7216,"🇸🇲":7217,"🇸🇳":7218,"🇸🇴":7219,"🇸🇷":7220,"🇸🇸":7221,"🇸🇹":7222,"🇸🇻":7223,"🇸🇽":7224,"🇸🇾":7225,"🇸🇿":7226,"🇹🇦":7227,"🇹🇨":7228,"🇹🇩":7229,"🇹🇫":7230,"🇹🇬":7231,"🇹🇭":7232,"🇹🇯":7233,"🇹🇰":7234,"🇹🇱":7235,"🇹🇲":7236,"🇹🇳":7237,"🇹🇴":7238,"🇹🇷":7239,"🇹🇹":7240,"🇹🇻":7241,"🇹🇼":7242,"🇹🇿":7243,"🇺🇦":7244,"🇺🇬":7245,"🇺🇲":7246,"🇺🇳":7247,"🇺🇸":7248,"🇺🇾":7249,"🇺🇿":7250,"🇻🇦":7251,"🇻🇨":7252,"🇻🇪":7253,"🇻🇬":7254,"🇻🇮":7255,"🇻🇳":7256,"🇻🇺":7257,"🇼🇫":7258,"🇼🇸":7259,"🇽🇰":7260,"🇾🇪":7261,"🇾🇹":7262,"🇿🇦":7263,"🇿🇲":7264,"🇿🇼":7265,"🈁":6400,"🈂":6401,"🈚":6407,"🈯":6404,"🈲":6408,"🈳":6412,"🈴":6411,"🈵":6416,"🈶":6403,"🈷":6402,"🈸":6410,"🈹":6406,"🈺":6415,"🉐":6405,"🉑":6409,"🌀":4197,"🌁":449,"🌂":4199,"🌃":450,"🌄":452,"🌅":453,"🌆":454,"🌇":455,"🌈":4198,"🌉":456,"🌊":4210,"🌋":410,"🌌":4184,"🌍":41,"🌎":42,"🌏":43,"🌐":44,"🌑":4164,"🌒":4165,"🌓":4166,"🌔":4167,"🌕":4168,"🌖":4169,"🌗":4170,"🌘":4171,"🌙":4172,"🌚":4173,"🌛":4174,"🌜":4175,"🌝":4178,"🌞":4179,"🌟":4182,"🌠":4183,"🌡":4176,"🌤":4188,"🌥":4189,"🌦":4190,"🌧":4191,"🌨":4192,"🌩":4193,"🌪":4194,"🌫":4195,"🌬":4196,"🌭":347,"🌮":349,"🌯":350,"🌰":331,"🌱":2116,"🌲":2117,"🌳":2118,"🌴":2119,"🌵":2120,"🌶":323,"🌷":2115,"🌸":2107,"🌹":2110,"🌺":2112,"🌻":2113,"🌼":2114,"🌽":322,"🌾":2121,"🌿":2122,"🍀":2124,"🍁":2125,"🍂":2126,"🍃":2127,"🍄":329,"🍅":316,"🍆":319,"🍇":31,"🍈":32,"🍉":33,"🍊":34,"🍋":35,"🍌":36,"🍍":37,"🍎":39,"🍏":310,"🍐":311,"🍑":312,"🍒":313,"🍓":314,"🍔":344,"🍕":346,"🍖":340,"🍗":341,"🍘":364,"🍙":365,"🍚":366,"🍛":367,"🍜":368,"🍝":369,"🍞":332,"🍟":345,"🍠":370,"🍡":376,"🍢":371,"🍣":372,"🍤":373,"🍥":374,"🍦":385,"🍧":386,"🍨":387,"🍩":388,"🍪":389,"🍫":394,"🍬":395,"🍭":396,"🍮":397,"🍯":398,"🍰":391,"🍱":363,"🍲":356,"🍳":354,"🍴":3118,"🍵":3102,"🍶":3103,"🍷":3105,"🍸":3106,"🍹":3107,"🍺":3108,"🍻":3109,"🍼":399,"🍽":3117,"🍾":3104,"🍿":359,"🎀":517,"🎁":518,"🎂":390,"🎃":51,"🎄":52,"🎅":1326,"🎆":53,"🎇":54,"🎈":57,"🎉":58,"🎊":59,"🎋":510,"🎌":73,"🎍":511,"🎎":512,"🎏":513,"🎐":514,"🎑":515,"🎒":625,"🎓":637,"🎖":522,"🎗":519,"🎙":656,"🎚":657,"🎛":658,"🎞":689,"🎟":520,"🎠":458,"🎡":459,"🎢":460,"🎣":549,"🎤":659,"🎥":688,"🎦":6324,"🎧":660,"🎨":577,"🎩":636,"🎪":462,"🎫":521,"🎬":691,"🎭":575,"🎮":561,"🎯":555,"🎰":563,"🎱":558,"🎲":564,"🎳":537,"🎴":574,"🎵":654,"🎶":655,"🎷":662,"🎸":663,"🎹":664,"🎺":665,"🎻":666,"🎼":653,"🎽":551,"🎾":535,"🎿":552,"🏀":531,"🏁":71,"🏂":1397,"🏃♀":1381,"🏃♂":1380,"🏃":1379,"🏄♀":1403,"🏄♂":1402,"🏄":1401,"🏅":524,"🏆":523,"🏇":1395,"🏈":533,"🏉":534,"🏊♀":1409,"🏊♂":1408,"🏊":1407,"🏋♀":1415,"🏋♂":1414,"🏋":1413,"🏌♀":1400,"🏌♂":1399,"🏌":1398,"🏍":492,"🏎":491,"🏏":538,"🏐":532,"🏑":539,"🏒":540,"🏓":542,"🏔":48,"🏕":412,"🏖":413,"🏗":419,"🏘":421,"🏙":451,"🏚":422,"🏛":418,"🏜":414,"🏝":415,"🏞":416,"🏟":417,"🏠":423,"🏡":424,"🏢":425,"🏣":426,"🏤":427,"🏥":428,"🏦":429,"🏧":6234,"🏨":430,"🏩":431,"🏪":432,"🏫":433,"🏬":434,"🏭":435,"🏮":6102,"🏯":436,"🏰":437,"🏳🌈":76,"🏳":75,"🏴☠":77,"🏴":7266,"🏴":7267,"🏴":7268,"🏴":74,"🏵":2109,"🏷":6120,"🏸":543,"🏹":6189,"🏺":3121,"🏻":81,"🏼":82,"🏽":83,"🏾":84,"🏿":85,"🐀":244,"🐁":243,"🐂":225,"🐃":226,"🐄":227,"🐅":217,"🐆":218,"🐇":247,"🐈":214,"🐉":282,"🐊":277,"🐋":286,"🐌":294,"🐍":280,"🐎":220,"🐏":232,"🐐":234,"🐑":233,"🐒":22,"🐓":262,"🐔":261,"🐕🦺":28,"🐕":26,"🐖":229,"🐗":230,"🐘":239,"🐙":292,"🐚":293,"🐛":296,"🐜":297,"🐝":298,"🐞":299,"🐟":288,"🐠":289,"🐡":290,"🐢":278,"🐣":263,"🐤":264,"🐥":265,"🐦":266,"🐧":267,"🐨":252,"🐩":29,"🐪":235,"🐫":236,"🐬":287,"🐭":242,"🐮":224,"🐯":216,"🐰":246,"🐱":213,"🐲":281,"🐳":285,"🐴":219,"🐵":21,"🐶":25,"🐷":228,"🐸":276,"🐹":245,"🐺":210,"🐻":251,"🐼":253,"🐽":231,"🐾":259,"🐿":248,"👀":1194,"👁🗨":1145,"👁":1195,"👂":1188,"👃":1190,"👄":1197,"👅":1196,"👆":1164,"👇":1166,"👈":1162,"👉":1163,"👊":1171,"👋":1150,"👌":1155,"👍":1168,"👎":1169,"👏":1174,"👐":1176,"👑":634,"👒":635,"👓":61,"👔":66,"👕":67,"👖":68,"👗":613,"👘":614,"👙":619,"👚":620,"👛":621,"👜":622,"👝":623,"👞":626,"👟":627,"👠":630,"👡":631,"👢":633,"👣":1483,"👤":1481,"👥":1482,"👦":1200,"👧":1201,"👨🌾":1267,"👨🍳":1270,"👨🎓":1258,"👨🎤":1288,"👨🎨":1291,"👨🏫":1261,"👨🏭":1276,"👨👦👦":1471,"👨👦":1470,"👨👧👦":1473,"👨👧👧":1474,"👨👧":1472,"👨👨👦":1460,"👨👨👦👦":1463,"👨👨👧":1461,"👨👨👧👦":1462,"👨👨👧👧":1464,"👨👩👦":1455,"👨👩👦👦":1458,"👨👩👧":1456,"👨👩👧👦":1457,"👨👩👧👧":1459,"👨💻":1285,"👨💼":1279,"👨🔧":1273,"👨🔬":1282,"👨🚀":1297,"👨🚒":1300,"👨🦯":1371,"👨🦰":1206,"👨🦱":1207,"👨🦲":1209,"👨🦳":1208,"👨🦼":1374,"👨🦽":1377,"👨⚕":1255,"👨⚖":1264,"👨✈":1294,"👨❤👨":1452,"👨❤💋👨":1448,"👨":1204,"👩🌾":1268,"👩🍳":1271,"👩🎓":1259,"👩🎤":1289,"👩🎨":1292,"👩🏫":1262,"👩🏭":1277,"👩👦👦":1476,"👩👦":1475,"👩👧👦":1478,"👩👧👧":1479,"👩👧":1477,"👩👩👦":1465,"👩👩👦👦":1468,"👩👩👧":1466,"👩👩👧👦":1467,"👩👩👧👧":1469,"👩💻":1286,"👩💼":1280,"👩🔧":1274,"👩🔬":1283,"👩🚀":1298,"👩🚒":1301,"👩🦯":1372,"👩🦰":1211,"👩🦱":1213,"👩🦲":1217,"👩🦳":1215,"👩🦼":1375,"👩🦽":1378,"👩⚕":1256,"👩⚖":1265,"👩✈":1295,"👩❤👨":1451,"👩❤👩":1453,"👩❤💋👨":1447,"👩❤💋👩":1449,"👩":1210,"👪":1454,"👫":1444,"👬":1445,"👭":1443,"👮♀":1304,"👮♂":1303,"👮":1302,"👯♀":1387,"👯♂":1386,"👯":1385,"👰":1322,"👱♀":1219,"👱♂":1220,"👱":1203,"👲":1319,"👳♀":1318,"👳♂":1317,"👳":1316,"👴":1222,"👵":1223,"👶":1198,"👷♀":1313,"👷♂":1312,"👷":1311,"👸":1315,"👹":197,"👺":198,"👻":199,"👼":1325,"👽":1100,"👾":1101,"👿":192,"💀":193,"💁♀":1238,"💁♂":1237,"💁":1236,"💂♀":1310,"💂♂":1309,"💂":1308,"💃":1382,"💄":641,"💅":1181,"💆♀":1357,"💆♂":1356,"💆":1355,"💇♀":1360,"💇♂":1359,"💇":1358,"💈":461,"💉":6208,"💊":6210,"💋":1115,"💌":1116,"💍":642,"💎":643,"💏":1446,"💐":2106,"💑":1450,"💒":438,"💓":1121,"💔":1126,"💕":1123,"💖":1119,"💗":1120,"💘":1117,"💙":1131,"💚":1130,"💛":1129,"💜":1132,"💝":1118,"💞":1122,"💟":1124,"💠":6447,"💡":6100,"💢":1137,"💣":1143,"💤":1149,"💥":1138,"💦":1140,"💧":4209,"💨":1141,"💩":195,"💪":1183,"💫":1139,"💬":1144,"💭":1148,"💮":2108,"💯":1136,"💰":6121,"💱":6130,"💲":6131,"💳":6127,"💴":6122,"💵":6123,"💶":6124,"💷":6125,"💸":6126,"💹":6129,"💺":4123,"💻":677,"💼":6152,"💽":683,"💾":684,"💿":685,"📀":686,"📁":6153,"📂":6154,"📃":6113,"📄":6115,"📅":6156,"📆":6157,"📇":6160,"📈":6161,"📉":6162,"📊":6163,"📋":6164,"📌":6165,"📍":6166,"📎":6167,"📏":6169,"📐":6170,"📑":6118,"📒":6112,"📓":6111,"📔":6104,"📕":6105,"📖":6106,"📗":6107,"📘":6108,"📙":6109,"📚":6110,"📛":6337,"📜":6114,"📝":6151,"📞":672,"📟":673,"📠":674,"📡":6207,"📢":648,"📣":649,"📤":6136,"📥":6137,"📦":6138,"📧":6133,"📨":6134,"📩":6135,"📪":6140,"📫":6139,"📬":6141,"📭":6142,"📮":6143,"📯":650,"📰":6116,"📱":669,"📲":670,"📳":6328,"📴":6329,"📵":6256,"📶":6327,"📷":693,"📸":694,"📹":695,"📺":692,"📻":661,"📼":696,"📽":690,"📿":640,"🔀":6306,"🔁":6307,"🔂":6308,"🔃":6274,"🔄":6275,"🔅":6325,"🔆":6326,"🔇":644,"🔈":645,"🔉":646,"🔊":647,"🔋":675,"🔌":676,"🔍":697,"🔎":698,"🔏":6177,"🔐":6178,"🔑":6179,"🔒":6175,"🔓":6176,"🔔":651,"🔕":652,"🔖":6119,"🔗":6197,"🔘":6448,"🔙":6276,"🔚":6277,"🔛":6278,"🔜":6279,"🔝":6280,"🔞":6257,"🔟":6377,"🔠":6378,"🔡":6379,"🔢":6380,"🔣":6381,"🔤":6382,"🔥":4208,"🔦":6101,"🔧":6191,"🔨":6181,"🔩":6192,"🔪":3120,"🔫":6188,"🔬":6205,"🔭":6206,"🔮":559,"🔯":6292,"🔰":6338,"🔱":6336,"🔲":6450,"🔳":6449,"🔴":6417,"🔵":6421,"🔶":6441,"🔷":6442,"🔸":6443,"🔹":6444,"🔺":6445,"🔻":6446,"🔼":6316,"🔽":6318,"🕉":6283,"🕊":268,"🕋":446,"🕌":442,"🕍":444,"🕎":6291,"🕐":4142,"🕑":4144,"🕒":4146,"🕓":4148,"🕔":4150,"🕕":4152,"🕖":4154,"🕗":4156,"🕘":4158,"🕙":4160,"🕚":4162,"🕛":4140,"🕜":4143,"🕝":4145,"🕞":4147,"🕟":4149,"🕠":4151,"🕡":4153,"🕢":4155,"🕣":4157,"🕤":4159,"🕥":4161,"🕦":4163,"🕧":4141,"🕯":699,"🕰":4139,"🕳":1142,"🕴":1384,"🕵♀":1307,"🕵♂":1306,"🕵":1305,"🕶":62,"🕷":2101,"🕸":2102,"🕹":562,"🕺":1383,"🖇":6168,"🖊":6148,"🖋":6147,"🖌":6149,"🖍":6150,"🖐":1152,"🖕":1165,"🖖":1154,"🖤":1134,"🖥":678,"🖨":679,"🖱":681,"🖲":682,"🖼":576,"🗂":6155,"🗃":6172,"🗄":6173,"🗑":6174,"🗒":6158,"🗓":6159,"🗜":6194,"🗝":6180,"🗞":6117,"🗡":6186,"🗣":1480,"🗨":1146,"🗯":1147,"🗳":6144,"🗺":45,"🗻":411,"🗼":439,"🗽":440,"🗾":46,"🗿":6233,"😀":11,"😁":14,"😂":18,"😃":12,"😄":13,"😅":16,"😆":15,"😇":113,"😈":191,"😉":111,"😊":112,"😋":122,"😌":142,"😍":115,"😎":160,"😏":137,"😐":134,"😑":135,"😒":138,"😓":183,"😔":143,"😕":163,"😖":180,"😗":118,"😘":117,"😙":121,"😚":120,"😛":123,"😜":124,"😝":126,"😞":182,"😟":164,"😠":189,"😡":188,"😢":177,"😣":181,"😤":187,"😥":176,"😦":172,"😧":173,"😨":174,"😩":184,"😪":144,"😫":185,"😬":140,"😭":178,"😮":167,"😯":168,"😰":175,"😱":179,"😲":169,"😳":170,"😴":146,"😵":156,"😶":136,"😷":147,"😸":1104,"😹":1105,"😺":1103,"😻":1106,"😼":1107,"😽":1108,"😾":1111,"😿":1110,"🙀":1109,"🙁":165,"🙂":19,"🙃":110,"🙄":139,"🙅♀":1232,"🙅♂":1231,"🙅":1230,"🙆♀":1235,"🙆♂":1234,"🙆":1233,"🙇♀":1247,"🙇♂":1246,"🙇":1245,"🙈":1112,"🙉":1113,"🙊":1114,"🙋♀":1241,"🙋♂":1240,"🙋":1239,"🙌":1175,"🙍♀":1226,"🙍♂":1225,"🙍":1224,"🙎♀":1229,"🙎♂":1228,"🙎":1227,"🙏":1179,"🚀":4129,"🚁":4124,"🚂":463,"🚃":464,"🚄":465,"🚅":466,"🚆":467,"🚇":468,"🚈":469,"🚉":470,"🚊":471,"🚋":474,"🚌":475,"🚍":476,"🚎":477,"🚏":4100,"🚐":478,"🚑":479,"🚒":480,"🚓":481,"🚔":482,"🚕":483,"🚖":484,"🚗":485,"🚘":486,"🚙":487,"🚚":488,"🚛":489,"🚜":490,"🚝":472,"🚞":473,"🚟":4125,"🚠":4126,"🚡":4127,"🚢":4117,"🚣♀":1406,"🚣♂":1405,"🚣":1404,"🚤":4113,"🚥":4106,"🚦":4107,"🚧":4109,"🚨":4105,"🚩":72,"🚪":6213,"🚫":6250,"🚬":6230,"🚭":6252,"🚮":6235,"🚯":6253,"🚰":6236,"🚱":6254,"🚲":497,"🚳":6251,"🚴♀":1418,"🚴♂":1417,"🚴":1416,"🚵♀":1421,"🚵♂":1420,"🚵":1419,"🚶♀":1363,"🚶♂":1362,"🚶":1361,"🚷":6255,"🚸":6248,"🚹":6238,"🚺":6239,"🚻":6240,"🚼":6241,"🚽":6217,"🚾":6242,"🚿":6218,"🛀":1440,"🛁":6219,"🛂":6243,"🛃":6244,"🛄":6245,"🛅":6246,"🛋":6215,"🛌":1441,"🛍":624,"🛎":4131,"🛏":6214,"🛐":6281,"🛑":4108,"🛒":6229,"🛕":443,"🛠":6185,"🛡":6190,"🛢":4103,"🛣":4101,"🛤":4102,"🛥":4116,"🛩":4119,"🛫":4120,"🛬":4121,"🛰":4128,"🛳":4114,"🛴":498,"🛵":493,"🛶":4112,"🛷":553,"🛸":4130,"🛹":499,"🛺":496,"🟠":6418,"🟡":6419,"🟢":6420,"🟣":6422,"🟤":6423,"🟥":6426,"🟦":6430,"🟧":6427,"🟨":6428,"🟩":6429,"🟪":6431,"🟫":6432,"🤍":1135,"🤎":1133,"🤏":1156,"🤐":132,"🤑":127,"🤒":148,"🤓":161,"🤔":131,"🤕":149,"🤖":1102,"🤗":128,"🤘":1160,"🤙":1161,"🤚":1151,"🤛":1172,"🤜":1173,"🤝":1178,"🤞":1158,"🤟":1159,"🤠":158,"🤡":196,"🤢":150,"🤣":17,"🤤":145,"🤥":141,"🤦♀":1250,"🤦♂":1249,"🤦":1248,"🤧":152,"🤨":133,"🤩":116,"🤪":125,"🤫":130,"🤬":190,"🤭":129,"🤮":151,"🤯":157,"🤰":1323,"🤱":1324,"🤲":1177,"🤳":1182,"🤴":1314,"🤵":1321,"🤶":1327,"🤷♀":1253,"🤷♂":1252,"🤷":1251,"🤸♀":1424,"🤸♂":1423,"🤸":1422,"🤹♀":1436,"🤹♂":1435,"🤹":1434,"🤺":1394,"🤼♀":1427,"🤼♂":1426,"🤼":1425,"🤽♀":1430,"🤽♂":1429,"🤽":1428,"🤾♀":1433,"🤾♂":1432,"🤾":1431,"🤿":550,"🥀":2111,"🥁":668,"🥂":3110,"🥃":3111,"🥄":3119,"🥅":546,"🥇":525,"🥈":526,"🥉":527,"🥊":544,"🥋":545,"🥌":554,"🥍":541,"🥎":530,"🥏":536,"🥐":333,"🥑":318,"🥒":324,"🥓":343,"🥔":320,"🥕":321,"🥖":334,"🥗":358,"🥘":355,"🥙":351,"🥚":353,"🥛":3100,"🥜":330,"🥝":315,"🥞":337,"🥟":377,"🥠":378,"🥡":379,"🥢":3116,"🥣":357,"🥤":3112,"🥥":317,"🥦":326,"🥧":393,"🥨":335,"🥩":342,"🥪":348,"🥫":362,"🥬":325,"🥭":38,"🥮":375,"🥯":336,"🥰":114,"🥱":186,"🥳":159,"🥴":155,"🥵":153,"🥶":154,"🥺":171,"🥻":615,"🥼":64,"🥽":63,"🥾":628,"🥿":629,"🦀":380,"🦁":215,"🦂":2103,"🦃":260,"🦄":221,"🦅":269,"🦆":270,"🦇":250,"🦈":291,"🦉":272,"🦊":211,"🦋":295,"🦌":223,"🦍":23,"🦎":279,"🦏":240,"🦐":382,"🦑":383,"🦒":238,"🦓":222,"🦔":249,"🦕":283,"🦖":284,"🦗":2100,"🦘":257,"🦙":237,"🦚":274,"🦛":241,"🦜":275,"🦝":212,"🦞":381,"🦟":2104,"🦠":2105,"🦡":258,"🦢":271,"🦥":254,"🦦":255,"🦧":24,"🦨":256,"🦩":273,"🦪":384,"🦮":27,"🦯":6196,"🦴":1193,"🦵":1186,"🦶":1187,"🦷":1192,"🦸♀":1330,"🦸♂":1329,"🦸":1328,"🦹♀":1333,"🦹♂":1332,"🦹":1331,"🦺":65,"🦻":1189,"🦼":495,"🦽":494,"🦾":1184,"🦿":1185,"🧀":339,"🧁":392,"🧂":361,"🧃":3113,"🧄":327,"🧅":328,"🧆":352,"🧇":338,"🧈":360,"🧉":3114,"🧊":3115,"🧍♀":1366,"🧍♂":1365,"🧍":1364,"🧎♀":1369,"🧎♂":1368,"🧎":1367,"🧏♀":1244,"🧏♂":1243,"🧏":1242,"🧐":162,"🧑🌾":1266,"🧑🍳":1269,"🧑🎓":1257,"🧑🎤":1287,"🧑🎨":1290,"🧑🏫":1260,"🧑🏭":1275,"🧑💻":1284,"🧑💼":1278,"🧑🔧":1272,"🧑🔬":1281,"🧑🚀":1296,"🧑🚒":1299,"🧑🤝🧑":1442,"🧑🦯":1370,"🧑🦰":1212,"🧑🦱":1214,"🧑🦲":1218,"🧑🦳":1216,"🧑🦼":1373,"🧑🦽":1376,"🧑⚕":1254,"🧑⚖":1263,"🧑✈":1293,"🧑":1202,"🧒":1199,"🧓":1221,"🧔":1205,"🧕":1320,"🧖♀":1390,"🧖♂":1389,"🧖":1388,"🧗♀":1393,"🧗♂":1392,"🧗":1391,"🧘♀":1439,"🧘♂":1438,"🧘":1437,"🧙♀":1336,"🧙♂":1335,"🧙":1334,"🧚♀":1339,"🧚♂":1338,"🧚":1337,"🧛♀":1342,"🧛♂":1341,"🧛":1340,"🧜♀":1345,"🧜♂":1344,"🧜":1343,"🧝♀":1348,"🧝♂":1347,"🧝":1346,"🧞♀":1351,"🧞♂":1350,"🧞":1349,"🧟♀":1354,"🧟♂":1353,"🧟":1352,"🧠":1191,"🧡":1128,"🧢":638,"🧣":69,"🧤":610,"🧥":611,"🧦":612,"🧧":516,"🧨":55,"🧩":565,"🧪":6202,"🧫":6203,"🧬":6204,"🧭":47,"🧮":687,"🧯":6228,"🧰":6199,"🧱":420,"🧲":6200,"🧳":4132,"🧴":6221,"🧵":578,"🧶":579,"🧷":6222,"🧸":566,"🧹":6223,"🧺":6224,"🧻":6225,"🧼":6226,"🧽":6227,"🧾":6128,"🧿":560,"🩰":632,"🩱":616,"🩲":617,"🩳":618,"🩸":6209,"🩹":6211,"🩺":6212,"🪀":556,"🪁":557,"🪂":4122,"🪐":4180,"🪑":6216,"🪒":6220,"🪓":6182,"🪔":6103,"🪕":667,"‼":6355,"⁉":6356,"™":6364,"ℹ":6389,"↔":6269,"↕":6268,"↖":6267,"↗":6261,"↘":6263,"↙":6265,"↩":6270,"↪":6271,"⌚":4135,"⌛":4133,"⌨":680,"⏏":6323,"⏩":6310,"⏪":6314,"⏫":6317,"⏬":6319,"⏭":6311,"⏮":6315,"⏯":6312,"⏰":4136,"⏱":4137,"⏲":4138,"⏳":4134,"⏸":6320,"⏹":6321,"⏺":6322,"Ⓜ":6391,"▪":6439,"▫":6440,"▶":6309,"◀":6313,"◻":6436,"◼":6435,"◽":6438,"◾":6437,"☀":4177,"☁":4185,"☂":4200,"☃":4205,"☄":4207,"☎":671,"☑":6341,"☔":4201,"☕":3101,"☘":2123,"☝":1167,"☠":194,"☢":6258,"☣":6259,"☦":6288,"☪":6289,"☮":6290,"☯":6286,"☸":6285,"☹":166,"☺":119,"♈":6293,"♉":6294,"♊":6295,"♋":6296,"♌":6297,"♍":6298,"♎":6299,"♏":6300,"♐":6301,"♑":6302,"♒":6303,"♓":6304,"♟":571,"♠":567,"♣":570,"♥":568,"♦":569,"♨":457,"♻":6334,"♾":6333,"♿":6237,"⚒":6184,"⚓":4110,"⚔":6187,"⚖":6195,"⚗":6201,"⚙":6193,"⚛":6282,"⚜":6335,"⚠":6247,"⚡":4203,"⚪":6425,"⚫":6424,"⚰":6231,"⚱":6232,"⚽":528,"⚾":529,"⛄":4206,"⛅":4186,"⛈":4187,"⛎":6305,"⛏":6183,"⛑":639,"⛓":6198,"⛔":6249,"⛩":445,"⛪":441,"⛰":49,"⛱":4202,"⛲":447,"⛳":547,"⛴":4115,"⛵":4111,"⛷":1396,"⛸":548,"⛹♀":1412,"⛹♂":1411,"⛹":1410,"⛺":448,"⛽":4104,"✂":6171,"✅":6340,"✈":4118,"✉":6132,"✊":1170,"✋":1153,"✌":1157,"✍":1180,"✏":6145,"✒":6146,"✔":6342,"✖":6343,"✝":6287,"✡":6284,"✨":56,"✳":6352,"✴":6353,"❄":4204,"❇":6354,"❌":6344,"❎":6345,"❓":6357,"❔":6358,"❕":6359,"❗":6360,"❣":1125,"❤":1127,"➕":6346,"➖":6347,"➗":6348,"➡":6262,"➰":6349,"➿":6350,"⤴":6272,"⤵":6273,"⬅":6266,"⬆":6260,"⬇":6264,"⬛":6433,"⬜":6434,"⭐":4181,"⭕":6339,"〰":6361,"〽":6351,"㊗":6413,"㊙":6414,"🎅🏻":0,"🎅🏼":0,"🎅🏽":0,"🎅🏾":0,"🎅🏿":0,"🏂🏻":0,"🏂🏼":0,"🏂🏽":0,"🏂🏾":0,"🏂🏿":0,"🏃🏻♀":0,"🏃🏼♀":0,"🏃🏽♀":0,"🏃🏾♀":0,"🏃🏿♀":0,"🏃🏻♂":0,"🏃🏼♂":0,"🏃🏽♂":0,"🏃🏾♂":0,"🏃🏿♂":0,"🏃🏻":0,"🏃🏼":0,"🏃🏽":0,"🏃🏾":0,"🏃🏿":0,"🏄🏻♀":0,"🏄🏼♀":0,"🏄🏽♀":0,"🏄🏾♀":0,"🏄🏿♀":0,"🏄🏻♂":0,"🏄🏼♂":0,"🏄🏽♂":0,"🏄🏾♂":0,"🏄🏿♂":0,"🏄🏻":0,"🏄🏼":0,"🏄🏽":0,"🏄🏾":0,"🏄🏿":0,"🏇🏻":0,"🏇🏼":0,"🏇🏽":0,"🏇🏾":0,"🏇🏿":0,"🏊🏻♀":0,"🏊🏼♀":0,"🏊🏽♀":0,"🏊🏾♀":0,"🏊🏿♀":0,"🏊🏻♂":0,"🏊🏼♂":0,"🏊🏽♂":0,"🏊🏾♂":0,"🏊🏿♂":0,"🏊🏻":0,"🏊🏼":0,"🏊🏽":0,"🏊🏾":0,"🏊🏿":0,"🏋🏻♀":0,"🏋🏼♀":0,"🏋🏽♀":0,"🏋🏾♀":0,"🏋🏿♀":0,"🏋🏻♂":0,"🏋🏼♂":0,"🏋🏽♂":0,"🏋🏾♂":0,"🏋🏿♂":0,"🏋🏻":0,"🏋🏼":0,"🏋🏽":0,"🏋🏾":0,"🏋🏿":0,"🏌🏻♀":0,"🏌🏼♀":0,"🏌🏽♀":0,"🏌🏾♀":0,"🏌🏿♀":0,"🏌🏻♂":0,"🏌🏼♂":0,"🏌🏽♂":0,"🏌🏾♂":0,"🏌🏿♂":0,"🏌🏻":0,"🏌🏼":0,"🏌🏽":0,"🏌🏾":0,"🏌🏿":0,"👂🏻":0,"👂🏼":0,"👂🏽":0,"👂🏾":0,"👂🏿":0,"👃🏻":0,"👃🏼":0,"👃🏽":0,"👃🏾":0,"👃🏿":0,"👆🏻":0,"👆🏼":0,"👆🏽":0,"👆🏾":0,"👆🏿":0,"👇🏻":0,"👇🏼":0,"👇🏽":0,"👇🏾":0,"👇🏿":0,"👈🏻":0,"👈🏼":0,"👈🏽":0,"👈🏾":0,"👈🏿":0,"👉🏻":0,"👉🏼":0,"👉🏽":0,"👉🏾":0,"👉🏿":0,"👊🏻":0,"👊🏼":0,"👊🏽":0,"👊🏾":0,"👊🏿":0,"👋🏻":0,"👋🏼":0,"👋🏽":0,"👋🏾":0,"👋🏿":0,"👌🏻":0,"👌🏼":0,"👌🏽":0,"👌🏾":0,"👌🏿":0,"👍🏻":0,"👍🏼":0,"👍🏽":0,"👍🏾":0,"👍🏿":0,"👎🏻":0,"👎🏼":0,"👎🏽":0,"👎🏾":0,"👎🏿":0,"👏🏻":0,"👏🏼":0,"👏🏽":0,"👏🏾":0,"👏🏿":0,"👐🏻":0,"👐🏼":0,"👐🏽":0,"👐🏾":0,"👐🏿":0,"👦🏻":0,"👦🏼":0,"👦🏽":0,"👦🏾":0,"👦🏿":0,"👧🏻":0,"👧🏼":0,"👧🏽":0,"👧🏾":0,"👧🏿":0,"👨🏻🌾":0,"👨🏼🌾":0,"👨🏽🌾":0,"👨🏾🌾":0,"👨🏿🌾":0,"👨🏻🍳":0,"👨🏼🍳":0,"👨🏽🍳":0,"👨🏾🍳":0,"👨🏿🍳":0,"👨🏻🎓":0,"👨🏼🎓":0,"👨🏽🎓":0,"👨🏾🎓":0,"👨🏿🎓":0,"👨🏻🎤":0,"👨🏼🎤":0,"👨🏽🎤":0,"👨🏾🎤":0,"👨🏿🎤":0,"👨🏻🎨":0,"👨🏼🎨":0,"👨🏽🎨":0,"👨🏾🎨":0,"👨🏿🎨":0,"👨🏻🏫":0,"👨🏼🏫":0,"👨🏽🏫":0,"👨🏾🏫":0,"👨🏿🏫":0,"👨🏻🏭":0,"👨🏼🏭":0,"👨🏽🏭":0,"👨🏾🏭":0,"👨🏿🏭":0,"👨🏻💻":0,"👨🏼💻":0,"👨🏽💻":0,"👨🏾💻":0,"👨🏿💻":0,"👨🏻💼":0,"👨🏼💼":0,"👨🏽💼":0,"👨🏾💼":0,"👨🏿💼":0,"👨🏻🔧":0,"👨🏼🔧":0,"👨🏽🔧":0,"👨🏾🔧":0,"👨🏿🔧":0,"👨🏻🔬":0,"👨🏼🔬":0,"👨🏽🔬":0,"👨🏾🔬":0,"👨🏿🔬":0,"👨🏻🚀":0,"👨🏼🚀":0,"👨🏽🚀":0,"👨🏾🚀":0,"👨🏿🚀":0,"👨🏻🚒":0,"👨🏼🚒":0,"👨🏽🚒":0,"👨🏾🚒":0,"👨🏿🚒":0,"👨🏻🦯":0,"👨🏼🦯":0,"👨🏽🦯":0,"👨🏾🦯":0,"👨🏿🦯":0,"👨🏻🦰":0,"👨🏼🦰":0,"👨🏽🦰":0,"👨🏾🦰":0,"👨🏿🦰":0,"👨🏻🦱":0,"👨🏼🦱":0,"👨🏽🦱":0,"👨🏾🦱":0,"👨🏿🦱":0,"👨🏻🦲":0,"👨🏼🦲":0,"👨🏽🦲":0,"👨🏾🦲":0,"👨🏿🦲":0,"👨🏻🦳":0,"👨🏼🦳":0,"👨🏽🦳":0,"👨🏾🦳":0,"👨🏿🦳":0,"👨🏻🦼":0,"👨🏼🦼":0,"👨🏽🦼":0,"👨🏾🦼":0,"👨🏿🦼":0,"👨🏻🦽":0,"👨🏼🦽":0,"👨🏽🦽":0,"👨🏾🦽":0,"👨🏿🦽":0,"👨🏻⚕":0,"👨🏼⚕":0,"👨🏽⚕":0,"👨🏾⚕":0,"👨🏿⚕":0,"👨🏻⚖":0,"👨🏼⚖":0,"👨🏽⚖":0,"👨🏾⚖":0,"👨🏿⚖":0,"👨🏻✈":0,"👨🏼✈":0,"👨🏽✈":0,"👨🏾✈":0,"👨🏿✈":0,"👨🏻":0,"👨🏼":0,"👨🏽":0,"👨🏾":0,"👨🏿":0,"👩🏻🌾":0,"👩🏼🌾":0,"👩🏽🌾":0,"👩🏾🌾":0,"👩🏿🌾":0,"👩🏻🍳":0,"👩🏼🍳":0,"👩🏽🍳":0,"👩🏾🍳":0,"👩🏿🍳":0,"👩🏻🎓":0,"👩🏼🎓":0,"👩🏽🎓":0,"👩🏾🎓":0,"👩🏿🎓":0,"👩🏻🎤":0,"👩🏼🎤":0,"👩🏽🎤":0,"👩🏾🎤":0,"👩🏿🎤":0,"👩🏻🎨":0,"👩🏼🎨":0,"👩🏽🎨":0,"👩🏾🎨":0,"👩🏿🎨":0,"👩🏻🏫":0,"👩🏼🏫":0,"👩🏽🏫":0,"👩🏾🏫":0,"👩🏿🏫":0,"👩🏻🏭":0,"👩🏼🏭":0,"👩🏽🏭":0,"👩🏾🏭":0,"👩🏿🏭":0,"👩🏻💻":0,"👩🏼💻":0,"👩🏽💻":0,"👩🏾💻":0,"👩🏿💻":0,"👩🏻💼":0,"👩🏼💼":0,"👩🏽💼":0,"👩🏾💼":0,"👩🏿💼":0,"👩🏻🔧":0,"👩🏼🔧":0,"👩🏽🔧":0,"👩🏾🔧":0,"👩🏿🔧":0,"👩🏻🔬":0,"👩🏼🔬":0,"👩🏽🔬":0,"👩🏾🔬":0,"👩🏿🔬":0,"👩🏻🚀":0,"👩🏼🚀":0,"👩🏽🚀":0,"👩🏾🚀":0,"👩🏿🚀":0,"👩🏻🚒":0,"👩🏼🚒":0,"👩🏽🚒":0,"👩🏾🚒":0,"👩🏿🚒":0,"👩🏻🦯":0,"👩🏼🦯":0,"👩🏽🦯":0,"👩🏾🦯":0,"👩🏿🦯":0,"👩🏻🦰":0,"👩🏼🦰":0,"👩🏽🦰":0,"👩🏾🦰":0,"👩🏿🦰":0,"👩🏻🦱":0,"👩🏼🦱":0,"👩🏽🦱":0,"👩🏾🦱":0,"👩🏿🦱":0,"👩🏻🦲":0,"👩🏼🦲":0,"👩🏽🦲":0,"👩🏾🦲":0,"👩🏿🦲":0,"👩🏻🦳":0,"👩🏼🦳":0,"👩🏽🦳":0,"👩🏾🦳":0,"👩🏿🦳":0,"👩🏻🦼":0,"👩🏼🦼":0,"👩🏽🦼":0,"👩🏾🦼":0,"👩🏿🦼":0,"👩🏻🦽":0,"👩🏼🦽":0,"👩🏽🦽":0,"👩🏾🦽":0,"👩🏿🦽":0,"👩🏻⚕":0,"👩🏼⚕":0,"👩🏽⚕":0,"👩🏾⚕":0,"👩🏿⚕":0,"👩🏻⚖":0,"👩🏼⚖":0,"👩🏽⚖":0,"👩🏾⚖":0,"👩🏿⚖":0,"👩🏻✈":0,"👩🏼✈":0,"👩🏽✈":0,"👩🏾✈":0,"👩🏿✈":0,"👩🏻":0,"👩🏼":0,"👩🏽":0,"👩🏾":0,"👩🏿":0,"👫🏻":0,"👫🏼":0,"👫🏽":0,"👫🏾":0,"👫🏿":0,"👩🏻🤝👨🏼":0,"👩🏻🤝👨🏽":0,"👩🏻🤝👨🏾":0,"👩🏻🤝👨🏿":0,"👩🏼🤝👨🏻":0,"👩🏼🤝👨🏽":0,"👩🏼🤝👨🏾":0,"👩🏼🤝👨🏿":0,"👩🏽🤝👨🏻":0,"👩🏽🤝👨🏼":0,"👩🏽🤝👨🏾":0,"👩🏽🤝👨🏿":0,"👩🏾🤝👨🏻":0,"👩🏾🤝👨🏼":0,"👩🏾🤝👨🏽":0,"👩🏾🤝👨🏿":0,"👩🏿🤝👨🏻":0,"👩🏿🤝👨🏼":0,"👩🏿🤝👨🏽":0,"👩🏿🤝👨🏾":0,"👬🏻":0,"👬🏼":0,"👬🏽":0,"👬🏾":0,"👬🏿":0,"👨🏻🤝👨🏼":0,"👨🏻🤝👨🏽":0,"👨🏻🤝👨🏾":0,"👨🏻🤝👨🏿":0,"👨🏼🤝👨🏻":0,"👨🏼🤝👨🏽":0,"👨🏼🤝👨🏾":0,"👨🏼🤝👨🏿":0,"👨🏽🤝👨🏻":0,"👨🏽🤝👨🏼":0,"👨🏽🤝👨🏾":0,"👨🏽🤝👨🏿":0,"👨🏾🤝👨🏻":0,"👨🏾🤝👨🏼":0,"👨🏾🤝👨🏽":0,"👨🏾🤝👨🏿":0,"👨🏿🤝👨🏻":0,"👨🏿🤝👨🏼":0,"👨🏿🤝👨🏽":0,"👨🏿🤝👨🏾":0,"👭🏻":0,"👭🏼":0,"👭🏽":0,"👭🏾":0,"👭🏿":0,"👩🏻🤝👩🏼":0,"👩🏻🤝👩🏽":0,"👩🏻🤝👩🏾":0,"👩🏻🤝👩🏿":0,"👩🏼🤝👩🏻":0,"👩🏼🤝👩🏽":0,"👩🏼🤝👩🏾":0,"👩🏼🤝👩🏿":0,"👩🏽🤝👩🏻":0,"👩🏽🤝👩🏼":0,"👩🏽🤝👩🏾":0,"👩🏽🤝👩🏿":0,"👩🏾🤝👩🏻":0,"👩🏾🤝👩🏼":0,"👩🏾🤝👩🏽":0,"👩🏾🤝👩🏿":0,"👩🏿🤝👩🏻":0,"👩🏿🤝👩🏼":0,"👩🏿🤝👩🏽":0,"👩🏿🤝👩🏾":0,"👮🏻♀":0,"👮🏼♀":0,"👮🏽♀":0,"👮🏾♀":0,"👮🏿♀":0,"👮🏻♂":0,"👮🏼♂":0,"👮🏽♂":0,"👮🏾♂":0,"👮🏿♂":0,"👮🏻":0,"👮🏼":0,"👮🏽":0,"👮🏾":0,"👮🏿":0,"👰🏻":0,"👰🏼":0,"👰🏽":0,"👰🏾":0,"👰🏿":0,"👱🏻♀":0,"👱🏼♀":0,"👱🏽♀":0,"👱🏾♀":0,"👱🏿♀":0,"👱🏻♂":0,"👱🏼♂":0,"👱🏽♂":0,"👱🏾♂":0,"👱🏿♂":0,"👱🏻":0,"👱🏼":0,"👱🏽":0,"👱🏾":0,"👱🏿":0,"👲🏻":0,"👲🏼":0,"👲🏽":0,"👲🏾":0,"👲🏿":0,"👳🏻♀":0,"👳🏼♀":0,"👳🏽♀":0,"👳🏾♀":0,"👳🏿♀":0,"👳🏻♂":0,"👳🏼♂":0,"👳🏽♂":0,"👳🏾♂":0,"👳🏿♂":0,"👳🏻":0,"👳🏼":0,"👳🏽":0,"👳🏾":0,"👳🏿":0,"👴🏻":0,"👴🏼":0,"👴🏽":0,"👴🏾":0,"👴🏿":0,"👵🏻":0,"👵🏼":0,"👵🏽":0,"👵🏾":0,"👵🏿":0,"👶🏻":0,"👶🏼":0,"👶🏽":0,"👶🏾":0,"👶🏿":0,"👷🏻♀":0,"👷🏼♀":0,"👷🏽♀":0,"👷🏾♀":0,"👷🏿♀":0,"👷🏻♂":0,"👷🏼♂":0,"👷🏽♂":0,"👷🏾♂":0,"👷🏿♂":0,"👷🏻":0,"👷🏼":0,"👷🏽":0,"👷🏾":0,"👷🏿":0,"👸🏻":0,"👸🏼":0,"👸🏽":0,"👸🏾":0,"👸🏿":0,"👼🏻":0,"👼🏼":0,"👼🏽":0,"👼🏾":0,"👼🏿":0,"💁🏻♀":0,"💁🏼♀":0,"💁🏽♀":0,"💁🏾♀":0,"💁🏿♀":0,"💁🏻♂":0,"💁🏼♂":0,"💁🏽♂":0,"💁🏾♂":0,"💁🏿♂":0,"💁🏻":0,"💁🏼":0,"💁🏽":0,"💁🏾":0,"💁🏿":0,"💂🏻♀":0,"💂🏼♀":0,"💂🏽♀":0,"💂🏾♀":0,"💂🏿♀":0,"💂🏻♂":0,"💂🏼♂":0,"💂🏽♂":0,"💂🏾♂":0,"💂🏿♂":0,"💂🏻":0,"💂🏼":0,"💂🏽":0,"💂🏾":0,"💂🏿":0,"💃🏻":0,"💃🏼":0,"💃🏽":0,"💃🏾":0,"💃🏿":0,"💅🏻":0,"💅🏼":0,"💅🏽":0,"💅🏾":0,"💅🏿":0,"💆🏻♀":0,"💆🏼♀":0,"💆🏽♀":0,"💆🏾♀":0,"💆🏿♀":0,"💆🏻♂":0,"💆🏼♂":0,"💆🏽♂":0,"💆🏾♂":0,"💆🏿♂":0,"💆🏻":0,"💆🏼":0,"💆🏽":0,"💆🏾":0,"💆🏿":0,"💇🏻♀":0,"💇🏼♀":0,"💇🏽♀":0,"💇🏾♀":0,"💇🏿♀":0,"💇🏻♂":0,"💇🏼♂":0,"💇🏽♂":0,"💇🏾♂":0,"💇🏿♂":0,"💇🏻":0,"💇🏼":0,"💇🏽":0,"💇🏾":0,"💇🏿":0,"💪🏻":0,"💪🏼":0,"💪🏽":0,"💪🏾":0,"💪🏿":0,"🕴🏻":0,"🕴🏼":0,"🕴🏽":0,"🕴🏾":0,"🕴🏿":0,"🕵🏻♀":0,"🕵🏼♀":0,"🕵🏽♀":0,"🕵🏾♀":0,"🕵🏿♀":0,"🕵🏻♂":0,"🕵🏼♂":0,"🕵🏽♂":0,"🕵🏾♂":0,"🕵🏿♂":0,"🕵🏻":0,"🕵🏼":0,"🕵🏽":0,"🕵🏾":0,"🕵🏿":0,"🕺🏻":0,"🕺🏼":0,"🕺🏽":0,"🕺🏾":0,"🕺🏿":0,"🖐🏻":0,"🖐🏼":0,"🖐🏽":0,"🖐🏾":0,"🖐🏿":0,"🖕🏻":0,"🖕🏼":0,"🖕🏽":0,"🖕🏾":0,"🖕🏿":0,"🖖🏻":0,"🖖🏼":0,"🖖🏽":0,"🖖🏾":0,"🖖🏿":0,"🙅🏻♀":0,"🙅🏼♀":0,"🙅🏽♀":0,"🙅🏾♀":0,"🙅🏿♀":0,"🙅🏻♂":0,"🙅🏼♂":0,"🙅🏽♂":0,"🙅🏾♂":0,"🙅🏿♂":0,"🙅🏻":0,"🙅🏼":0,"🙅🏽":0,"🙅🏾":0,"🙅🏿":0,"🙆🏻♀":0,"🙆🏼♀":0,"🙆🏽♀":0,"🙆🏾♀":0,"🙆🏿♀":0,"🙆🏻♂":0,"🙆🏼♂":0,"🙆🏽♂":0,"🙆🏾♂":0,"🙆🏿♂":0,"🙆🏻":0,"🙆🏼":0,"🙆🏽":0,"🙆🏾":0,"🙆🏿":0,"🙇🏻♀":0,"🙇🏼♀":0,"🙇🏽♀":0,"🙇🏾♀":0,"🙇🏿♀":0,"🙇🏻♂":0,"🙇🏼♂":0,"🙇🏽♂":0,"🙇🏾♂":0,"🙇🏿♂":0,"🙇🏻":0,"🙇🏼":0,"🙇🏽":0,"🙇🏾":0,"🙇🏿":0,"🙋🏻♀":0,"🙋🏼♀":0,"🙋🏽♀":0,"🙋🏾♀":0,"🙋🏿♀":0,"🙋🏻♂":0,"🙋🏼♂":0,"🙋🏽♂":0,"🙋🏾♂":0,"🙋🏿♂":0,"🙋🏻":0,"🙋🏼":0,"🙋🏽":0,"🙋🏾":0,"🙋🏿":0,"🙌🏻":0,"🙌🏼":0,"🙌🏽":0,"🙌🏾":0,"🙌🏿":0,"🙍🏻♀":0,"🙍🏼♀":0,"🙍🏽♀":0,"🙍🏾♀":0,"🙍🏿♀":0,"🙍🏻♂":0,"🙍🏼♂":0,"🙍🏽♂":0,"🙍🏾♂":0,"🙍🏿♂":0,"🙍🏻":0,"🙍🏼":0,"🙍🏽":0,"🙍🏾":0,"🙍🏿":0,"🙎🏻♀":0,"🙎🏼♀":0,"🙎🏽♀":0,"🙎🏾♀":0,"🙎🏿♀":0,"🙎🏻♂":0,"🙎🏼♂":0,"🙎🏽♂":0,"🙎🏾♂":0,"🙎🏿♂":0,"🙎🏻":0,"🙎🏼":0,"🙎🏽":0,"🙎🏾":0,"🙎🏿":0,"🙏🏻":0,"🙏🏼":0,"🙏🏽":0,"🙏🏾":0,"🙏🏿":0,"🚣🏻♀":0,"🚣🏼♀":0,"🚣🏽♀":0,"🚣🏾♀":0,"🚣🏿♀":0,"🚣🏻♂":0,"🚣🏼♂":0,"🚣🏽♂":0,"🚣🏾♂":0,"🚣🏿♂":0,"🚣🏻":0,"🚣🏼":0,"🚣🏽":0,"🚣🏾":0,"🚣🏿":0,"🚴🏻♀":0,"🚴🏼♀":0,"🚴🏽♀":0,"🚴🏾♀":0,"🚴🏿♀":0,"🚴🏻♂":0,"🚴🏼♂":0,"🚴🏽♂":0,"🚴🏾♂":0,"🚴🏿♂":0,"🚴🏻":0,"🚴🏼":0,"🚴🏽":0,"🚴🏾":0,"🚴🏿":0,"🚵🏻♀":0,"🚵🏼♀":0,"🚵🏽♀":0,"🚵🏾♀":0,"🚵🏿♀":0,"🚵🏻♂":0,"🚵🏼♂":0,"🚵🏽♂":0,"🚵🏾♂":0,"🚵🏿♂":0,"🚵🏻":0,"🚵🏼":0,"🚵🏽":0,"🚵🏾":0,"🚵🏿":0,"🚶🏻♀":0,"🚶🏼♀":0,"🚶🏽♀":0,"🚶🏾♀":0,"🚶🏿♀":0,"🚶🏻♂":0,"🚶🏼♂":0,"🚶🏽♂":0,"🚶🏾♂":0,"🚶🏿♂":0,"🚶🏻":0,"🚶🏼":0,"🚶🏽":0,"🚶🏾":0,"🚶🏿":0,"🛀🏻":0,"🛀🏼":0,"🛀🏽":0,"🛀🏾":0,"🛀🏿":0,"🛌🏻":0,"🛌🏼":0,"🛌🏽":0,"🛌🏾":0,"🛌🏿":0,"🤏🏻":0,"🤏🏼":0,"🤏🏽":0,"🤏🏾":0,"🤏🏿":0,"🤘🏻":0,"🤘🏼":0,"🤘🏽":0,"🤘🏾":0,"🤘🏿":0,"🤙🏻":0,"🤙🏼":0,"🤙🏽":0,"🤙🏾":0,"🤙🏿":0,"🤚🏻":0,"🤚🏼":0,"🤚🏽":0,"🤚🏾":0,"🤚🏿":0,"🤛🏻":0,"🤛🏼":0,"🤛🏽":0,"🤛🏾":0,"🤛🏿":0,"🤜🏻":0,"🤜🏼":0,"🤜🏽":0,"🤜🏾":0,"🤜🏿":0,"🤞🏻":0,"🤞🏼":0,"🤞🏽":0,"🤞🏾":0,"🤞🏿":0,"🤟🏻":0,"🤟🏼":0,"🤟🏽":0,"🤟🏾":0,"🤟🏿":0,"🤦🏻♀":0,"🤦🏼♀":0,"🤦🏽♀":0,"🤦🏾♀":0,"🤦🏿♀":0,"🤦🏻♂":0,"🤦🏼♂":0,"🤦🏽♂":0,"🤦🏾♂":0,"🤦🏿♂":0,"🤦🏻":0,"🤦🏼":0,"🤦🏽":0,"🤦🏾":0,"🤦🏿":0,"🤰🏻":0,"🤰🏼":0,"🤰🏽":0,"🤰🏾":0,"🤰🏿":0,"🤱🏻":0,"🤱🏼":0,"🤱🏽":0,"🤱🏾":0,"🤱🏿":0,"🤲🏻":0,"🤲🏼":0,"🤲🏽":0,"🤲🏾":0,"🤲🏿":0,"🤳🏻":0,"🤳🏼":0,"🤳🏽":0,"🤳🏾":0,"🤳🏿":0,"🤴🏻":0,"🤴🏼":0,"🤴🏽":0,"🤴🏾":0,"🤴🏿":0,"🤵🏻":0,"🤵🏼":0,"🤵🏽":0,"🤵🏾":0,"🤵🏿":0,"🤶🏻":0,"🤶🏼":0,"🤶🏽":0,"🤶🏾":0,"🤶🏿":0,"🤷🏻♀":0,"🤷🏼♀":0,"🤷🏽♀":0,"🤷🏾♀":0,"🤷🏿♀":0,"🤷🏻♂":0,"🤷🏼♂":0,"🤷🏽♂":0,"🤷🏾♂":0,"🤷🏿♂":0,"🤷🏻":0,"🤷🏼":0,"🤷🏽":0,"🤷🏾":0,"🤷🏿":0,"🤸🏻♀":0,"🤸🏼♀":0,"🤸🏽♀":0,"🤸🏾♀":0,"🤸🏿♀":0,"🤸🏻♂":0,"🤸🏼♂":0,"🤸🏽♂":0,"🤸🏾♂":0,"🤸🏿♂":0,"🤸🏻":0,"🤸🏼":0,"🤸🏽":0,"🤸🏾":0,"🤸🏿":0,"🤹🏻♀":0,"🤹🏼♀":0,"🤹🏽♀":0,"🤹🏾♀":0,"🤹🏿♀":0,"🤹🏻♂":0,"🤹🏼♂":0,"🤹🏽♂":0,"🤹🏾♂":0,"🤹🏿♂":0,"🤹🏻":0,"🤹🏼":0,"🤹🏽":0,"🤹🏾":0,"🤹🏿":0,"🤽🏻♀":0,"🤽🏼♀":0,"🤽🏽♀":0,"🤽🏾♀":0,"🤽🏿♀":0,"🤽🏻♂":0,"🤽🏼♂":0,"🤽🏽♂":0,"🤽🏾♂":0,"🤽🏿♂":0,"🤽🏻":0,"🤽🏼":0,"🤽🏽":0,"🤽🏾":0,"🤽🏿":0,"🤾🏻♀":0,"🤾🏼♀":0,"🤾🏽♀":0,"🤾🏾♀":0,"🤾🏿♀":0,"🤾🏻♂":0,"🤾🏼♂":0,"🤾🏽♂":0,"🤾🏾♂":0,"🤾🏿♂":0,"🤾🏻":0,"🤾🏼":0,"🤾🏽":0,"🤾🏾":0,"🤾🏿":0,"🦵🏻":0,"🦵🏼":0,"🦵🏽":0,"🦵🏾":0,"🦵🏿":0,"🦶🏻":0,"🦶🏼":0,"🦶🏽":0,"🦶🏾":0,"🦶🏿":0,"🦸🏻♀":0,"🦸🏼♀":0,"🦸🏽♀":0,"🦸🏾♀":0,"🦸🏿♀":0,"🦸🏻♂":0,"🦸🏼♂":0,"🦸🏽♂":0,"🦸🏾♂":0,"🦸🏿♂":0,"🦸🏻":0,"🦸🏼":0,"🦸🏽":0,"🦸🏾":0,"🦸🏿":0,"🦹🏻♀":0,"🦹🏼♀":0,"🦹🏽♀":0,"🦹🏾♀":0,"🦹🏿♀":0,"🦹🏻♂":0,"🦹🏼♂":0,"🦹🏽♂":0,"🦹🏾♂":0,"🦹🏿♂":0,"🦹🏻":0,"🦹🏼":0,"🦹🏽":0,"🦹🏾":0,"🦹🏿":0,"🦻🏻":0,"🦻🏼":0,"🦻🏽":0,"🦻🏾":0,"🦻🏿":0,"🧍🏻♀":0,"🧍🏼♀":0,"🧍🏽♀":0,"🧍🏾♀":0,"🧍🏿♀":0,"🧍🏻♂":0,"🧍🏼♂":0,"🧍🏽♂":0,"🧍🏾♂":0,"🧍🏿♂":0,"🧍🏻":0,"🧍🏼":0,"🧍🏽":0,"🧍🏾":0,"🧍🏿":0,"🧎🏻♀":0,"🧎🏼♀":0,"🧎🏽♀":0,"🧎🏾♀":0,"🧎🏿♀":0,"🧎🏻♂":0,"🧎🏼♂":0,"🧎🏽♂":0,"🧎🏾♂":0,"🧎🏿♂":0,"🧎🏻":0,"🧎🏼":0,"🧎🏽":0,"🧎🏾":0,"🧎🏿":0,"🧏🏻♀":0,"🧏🏼♀":0,"🧏🏽♀":0,"🧏🏾♀":0,"🧏🏿♀":0,"🧏🏻♂":0,"🧏🏼♂":0,"🧏🏽♂":0,"🧏🏾♂":0,"🧏🏿♂":0,"🧏🏻":0,"🧏🏼":0,"🧏🏽":0,"🧏🏾":0,"🧏🏿":0,"🧑🏻🌾":0,"🧑🏼🌾":0,"🧑🏽🌾":0,"🧑🏾🌾":0,"🧑🏿🌾":0,"🧑🏻🍳":0,"🧑🏼🍳":0,"🧑🏽🍳":0,"🧑🏾🍳":0,"🧑🏿🍳":0,"🧑🏻🎓":0,"🧑🏼🎓":0,"🧑🏽🎓":0,"🧑🏾🎓":0,"🧑🏿🎓":0,"🧑🏻🎤":0,"🧑🏼🎤":0,"🧑🏽🎤":0,"🧑🏾🎤":0,"🧑🏿🎤":0,"🧑🏻🎨":0,"🧑🏼🎨":0,"🧑🏽🎨":0,"🧑🏾🎨":0,"🧑🏿🎨":0,"🧑🏻🏫":0,"🧑🏼🏫":0,"🧑🏽🏫":0,"🧑🏾🏫":0,"🧑🏿🏫":0,"🧑🏻🏭":0,"🧑🏼🏭":0,"🧑🏽🏭":0,"🧑🏾🏭":0,"🧑🏿🏭":0,"🧑🏻💻":0,"🧑🏼💻":0,"🧑🏽💻":0,"🧑🏾💻":0,"🧑🏿💻":0,"🧑🏻💼":0,"🧑🏼💼":0,"🧑🏽💼":0,"🧑🏾💼":0,"🧑🏿💼":0,"🧑🏻🔧":0,"🧑🏼🔧":0,"🧑🏽🔧":0,"🧑🏾🔧":0,"🧑🏿🔧":0,"🧑🏻🔬":0,"🧑🏼🔬":0,"🧑🏽🔬":0,"🧑🏾🔬":0,"🧑🏿🔬":0,"🧑🏻🚀":0,"🧑🏼🚀":0,"🧑🏽🚀":0,"🧑🏾🚀":0,"🧑🏿🚀":0,"🧑🏻🚒":0,"🧑🏼🚒":0,"🧑🏽🚒":0,"🧑🏾🚒":0,"🧑🏿🚒":0,"🧑🏻🤝🧑🏻":0,"🧑🏻🤝🧑🏼":0,"🧑🏻🤝🧑🏽":0,"🧑🏻🤝🧑🏾":0,"🧑🏻🤝🧑🏿":0,"🧑🏼🤝🧑🏻":0,"🧑🏼🤝🧑🏼":0,"🧑🏼🤝🧑🏽":0,"🧑🏼🤝🧑🏾":0,"🧑🏼🤝🧑🏿":0,"🧑🏽🤝🧑🏻":0,"🧑🏽🤝🧑🏼":0,"🧑🏽🤝🧑🏽":0,"🧑🏽🤝🧑🏾":0,"🧑🏽🤝🧑🏿":0,"🧑🏾🤝🧑🏻":0,"🧑🏾🤝🧑🏼":0,"🧑🏾🤝🧑🏽":0,"🧑🏾🤝🧑🏾":0,"🧑🏾🤝🧑🏿":0,"🧑🏿🤝🧑🏻":0,"🧑🏿🤝🧑🏼":0,"🧑🏿🤝🧑🏽":0,"🧑🏿🤝🧑🏾":0,"🧑🏿🤝🧑🏿":0,"🧑🏻🦯":0,"🧑🏼🦯":0,"🧑🏽🦯":0,"🧑🏾🦯":0,"🧑🏿🦯":0,"🧑🏻🦰":0,"🧑🏼🦰":0,"🧑🏽🦰":0,"🧑🏾🦰":0,"🧑🏿🦰":0,"🧑🏻🦱":0,"🧑🏼🦱":0,"🧑🏽🦱":0,"🧑🏾🦱":0,"🧑🏿🦱":0,"🧑🏻🦲":0,"🧑🏼🦲":0,"🧑🏽🦲":0,"🧑🏾🦲":0,"🧑🏿🦲":0,"🧑🏻🦳":0,"🧑🏼🦳":0,"🧑🏽🦳":0,"🧑🏾🦳":0,"🧑🏿🦳":0,"🧑🏻🦼":0,"🧑🏼🦼":0,"🧑🏽🦼":0,"🧑🏾🦼":0,"🧑🏿🦼":0,"🧑🏻🦽":0,"🧑🏼🦽":0,"🧑🏽🦽":0,"🧑🏾🦽":0,"🧑🏿🦽":0,"🧑🏻⚕":0,"🧑🏼⚕":0,"🧑🏽⚕":0,"🧑🏾⚕":0,"🧑🏿⚕":0,"🧑🏻⚖":0,"🧑🏼⚖":0,"🧑🏽⚖":0,"🧑🏾⚖":0,"🧑🏿⚖":0,"🧑🏻✈":0,"🧑🏼✈":0,"🧑🏽✈":0,"🧑🏾✈":0,"🧑🏿✈":0,"🧑🏻":0,"🧑🏼":0,"🧑🏽":0,"🧑🏾":0,"🧑🏿":0,"🧒🏻":0,"🧒🏼":0,"🧒🏽":0,"🧒🏾":0,"🧒🏿":0,"🧓🏻":0,"🧓🏼":0,"🧓🏽":0,"🧓🏾":0,"🧓🏿":0,"🧔🏻":0,"🧔🏼":0,"🧔🏽":0,"🧔🏾":0,"🧔🏿":0,"🧕🏻":0,"🧕🏼":0,"🧕🏽":0,"🧕🏾":0,"🧕🏿":0,"🧖🏻♀":0,"🧖🏼♀":0,"🧖🏽♀":0,"🧖🏾♀":0,"🧖🏿♀":0,"🧖🏻♂":0,"🧖🏼♂":0,"🧖🏽♂":0,"🧖🏾♂":0,"🧖🏿♂":0,"🧖🏻":0,"🧖🏼":0,"🧖🏽":0,"🧖🏾":0,"🧖🏿":0,"🧗🏻♀":0,"🧗🏼♀":0,"🧗🏽♀":0,"🧗🏾♀":0,"🧗🏿♀":0,"🧗🏻♂":0,"🧗🏼♂":0,"🧗🏽♂":0,"🧗🏾♂":0,"🧗🏿♂":0,"🧗🏻":0,"🧗🏼":0,"🧗🏽":0,"🧗🏾":0,"🧗🏿":0,"🧘🏻♀":0,"🧘🏼♀":0,"🧘🏽♀":0,"🧘🏾♀":0,"🧘🏿♀":0,"🧘🏻♂":0,"🧘🏼♂":0,"🧘🏽♂":0,"🧘🏾♂":0,"🧘🏿♂":0,"🧘🏻":0,"🧘🏼":0,"🧘🏽":0,"🧘🏾":0,"🧘🏿":0,"🧙🏻♀":0,"🧙🏼♀":0,"🧙🏽♀":0,"🧙🏾♀":0,"🧙🏿♀":0,"🧙🏻♂":0,"🧙🏼♂":0,"🧙🏽♂":0,"🧙🏾♂":0,"🧙🏿♂":0,"🧙🏻":0,"🧙🏼":0,"🧙🏽":0,"🧙🏾":0,"🧙🏿":0,"🧚🏻♀":0,"🧚🏼♀":0,"🧚🏽♀":0,"🧚🏾♀":0,"🧚🏿♀":0,"🧚🏻♂":0,"🧚🏼♂":0,"🧚🏽♂":0,"🧚🏾♂":0,"🧚🏿♂":0,"🧚🏻":0,"🧚🏼":0,"🧚🏽":0,"🧚🏾":0,"🧚🏿":0,"🧛🏻♀":0,"🧛🏼♀":0,"🧛🏽♀":0,"🧛🏾♀":0,"🧛🏿♀":0,"🧛🏻♂":0,"🧛🏼♂":0,"🧛🏽♂":0,"🧛🏾♂":0,"🧛🏿♂":0,"🧛🏻":0,"🧛🏼":0,"🧛🏽":0,"🧛🏾":0,"🧛🏿":0,"🧜🏻♀":0,"🧜🏼♀":0,"🧜🏽♀":0,"🧜🏾♀":0,"🧜🏿♀":0,"🧜🏻♂":0,"🧜🏼♂":0,"🧜🏽♂":0,"🧜🏾♂":0,"🧜🏿♂":0,"🧜🏻":0,"🧜🏼":0,"🧜🏽":0,"🧜🏾":0,"🧜🏿":0,"🧝🏻♀":0,"🧝🏼♀":0,"🧝🏽♀":0,"🧝🏾♀":0,"🧝🏿♀":0,"🧝🏻♂":0,"🧝🏼♂":0,"🧝🏽♂":0,"🧝🏾♂":0,"🧝🏿♂":0,"🧝🏻":0,"🧝🏼":0,"🧝🏽":0,"🧝🏾":0,"🧝🏿":0,"☝🏻":0,"☝🏼":0,"☝🏽":0,"☝🏾":0,"☝🏿":0,"⛹🏻♀":0,"⛹🏼♀":0,"⛹🏽♀":0,"⛹🏾♀":0,"⛹🏿♀":0,"⛹🏻♂":0,"⛹🏼♂":0,"⛹🏽♂":0,"⛹🏾♂":0,"⛹🏿♂":0,"⛹🏻":0,"⛹🏼":0,"⛹🏽":0,"⛹🏾":0,"⛹🏿":0,"✊🏻":0,"✊🏼":0,"✊🏽":0,"✊🏾":0,"✊🏿":0,"✋🏻":0,"✋🏼":0,"✋🏽":0,"✋🏾":0,"✋🏿":0,"✌🏻":0,"✌🏼":0,"✌🏽":0,"✌🏾":0,"✌🏿":0,"✍🏻":0,"✍🏼":0,"✍🏽":0,"✍🏾":0,"✍🏿":0};
var Countries = [{"phoneCode":"7 840","code":"AB","name":"Abkhazia","pattern":"","emoji":""},{"phoneCode":"93","code":"AF","name":"Afghanistan","pattern":"93 XXX XXX XXX","emoji":"🇦🇫"},{"phoneCode":"358 18","code":"AX","name":"Aland Islands","pattern":"","emoji":"🇦🇽"},{"phoneCode":"355","code":"AL","name":"Albania","pattern":"355 XX XXX XXXX","emoji":"🇦🇱"},{"phoneCode":"213","code":"DZ","name":"Algeria","pattern":"213 XXX XX XX XX","emoji":"🇩🇿"},{"phoneCode":"1 684","code":"AS","name":"American Samoa","pattern":"1684 XXX XXXX","emoji":"🇦🇸"},{"phoneCode":"376","code":"AD","name":"Andorra","pattern":"376 XX XX XX","emoji":"🇦🇩"},{"phoneCode":"244","code":"AO","name":"Angola","pattern":"244 XXX XXX XXX","emoji":"🇦🇴"},{"phoneCode":"1 264","code":"AI","name":"Anguilla","pattern":"1264 XXX XXXX","emoji":"🇦🇮"},{"phoneCode":"1 268","code":"AG","name":"Antigua & Barbuda","pattern":"1268 XXX XXXX","emoji":"🇦🇬"},{"phoneCode":"54","code":"AR","name":"Argentina","pattern":"","emoji":"🇦🇷"},{"phoneCode":"374","code":"AM","name":"Armenia","pattern":"374 XX XXX XXX","emoji":"🇦🇲"},{"phoneCode":"297","code":"AW","name":"Aruba","pattern":"297 XXX XXXX","emoji":"🇦🇼"},{"phoneCode":"247","code":"SH","name":"Ascension","pattern":"290 XX XXX","emoji":"🇸🇭"},{"phoneCode":"61","code":"AU","name":"Australia","pattern":"61 XXX XXX XXX","emoji":"🇦🇺"},{"phoneCode":"672","code":"AU","name":"Australian External Territories","pattern":"61 XXX XXX XXX","emoji":"🇦🇺"},{"phoneCode":"43","code":"AT","name":"Austria","pattern":"","emoji":"🇦🇹"},{"phoneCode":"994","code":"AZ","name":"Azerbaijan","pattern":"994 XX XXX XX XX","emoji":"🇦🇿"},{"phoneCode":"1 242","code":"BS","name":"Bahamas","pattern":"1242 XXX XXXX","emoji":"🇧🇸"},{"phoneCode":"973","code":"BH","name":"Bahrain","pattern":"973 XXXX XXXX","emoji":"🇧🇭"},{"phoneCode":"880","code":"BD","name":"Bangladesh","pattern":"","emoji":"🇧🇩"},{"phoneCode":"1 246","code":"BB","name":"Barbados","pattern":"1246 XXX XXXX","emoji":"🇧🇧"},{"phoneCode":"1 268","code":"AG","name":"Barbuda","pattern":"1268 XXX XXXX","emoji":"🇦🇬"},{"phoneCode":"375","code":"BY","name":"Belarus","pattern":"375 XX XXX XXXX","emoji":"🇧🇾"},{"phoneCode":"32","code":"BE","name":"Belgium","pattern":"32 XXX XX XX XX","emoji":"🇧🇪"},{"phoneCode":"501","code":"BZ","name":"Belize","pattern":"","emoji":"🇧🇿"},{"phoneCode":"229","code":"BJ","name":"Benin","pattern":"229 XX XXX XXX","emoji":"🇧🇯"},{"phoneCode":"1 441","code":"BM","name":"Bermuda","pattern":"1441 XXX XXXX","emoji":"🇧🇲"},{"phoneCode":"975","code":"BT","name":"Bhutan","pattern":"","emoji":"🇧🇹"},{"phoneCode":"591","code":"BO","name":"Bolivia","pattern":"591 X XXX XXXX","emoji":"🇧🇴"},{"phoneCode":"599 7","code":"BQ","name":"Caribbean Netherlands","pattern":"","emoji":"🇧🇶"},{"phoneCode":"387","code":"BA","name":"Bosnia & Herzegovina","pattern":"","emoji":"🇧🇦"},{"phoneCode":"267","code":"BW","name":"Botswana","pattern":"267 XX XXX XXX","emoji":"🇧🇼"},{"phoneCode":"55","code":"BR","name":"Brazil","pattern":"55 XX XXXXX XXXX","emoji":"🇧🇷"},{"phoneCode":"246","code":"IO","name":"British Indian Ocean Territory","pattern":"246 XXX XXXX","emoji":"🇮🇴"},{"phoneCode":"1 284","code":"VG","name":"British Virgin Islands","pattern":"1284 XXX XXXX","emoji":"🇻🇬"},{"phoneCode":"673","code":"BN","name":"Brunei","pattern":"673 XXX XXXX","emoji":"🇧🇳"},{"phoneCode":"359","code":"BG","name":"Bulgaria","pattern":"","emoji":"🇧🇬"},{"phoneCode":"226","code":"BF","name":"Burkina Faso","pattern":"226 XX XX XX XX","emoji":"🇧🇫"},{"phoneCode":"95","code":"MM","name":"Myanmar (Burma)","pattern":"","emoji":"🇲🇲"},{"phoneCode":"257","code":"BI","name":"Burundi","pattern":"257 XX XX XXXX","emoji":"🇧🇮"},{"phoneCode":"855","code":"KH","name":"Cambodia","pattern":"","emoji":"🇰🇭"},{"phoneCode":"237","code":"CM","name":"Cameroon","pattern":"237 XXXX XXXX","emoji":"🇨🇲"},{"phoneCode":"1","code":"CA","name":"Canada","pattern":"1 XXX XXX XXXX","emoji":"🇨🇦"},{"phoneCode":"238","code":"CV","name":"Cape Verde","pattern":"238 XXX XXXX","emoji":"🇨🇻"},{"phoneCode":"1 345","code":"KY","name":"Cayman Islands","pattern":"1345 XXX XXXX","emoji":"🇰🇾"},{"phoneCode":"236","code":"CF","name":"Central African Republic","pattern":"236 XX XX XX XX","emoji":"🇨🇫"},{"phoneCode":"235","code":"TD","name":"Chad","pattern":"235 XX XX XX XX","emoji":"🇹🇩"},{"phoneCode":"56","code":"CL","name":"Chile","pattern":"56 X XXXX XXXX","emoji":"🇨🇱"},{"phoneCode":"86","code":"CN","name":"China","pattern":"86 XXX XXXX XXXX","emoji":"🇨🇳"},{"phoneCode":"61","code":"CX","name":"Christmas Island","pattern":"","emoji":"🇨🇽"},{"phoneCode":"61","code":"CC","name":"Cocos (Keeling) Islands","pattern":"","emoji":"🇨🇨"},{"phoneCode":"57","code":"CO","name":"Colombia","pattern":"57 XXX XXX XXXX","emoji":"🇨🇴"},{"phoneCode":"269","code":"KM","name":"Comoros","pattern":"269 XXX XXXX","emoji":"🇰🇲"},{"phoneCode":"242","code":"CG","name":"Congo - Brazzaville","pattern":"242 XX XXX XXXX","emoji":"🇨🇬"},{"phoneCode":"243","code":"CD","name":"Congo - Kinshasa","pattern":"243 XX XXX XXXX","emoji":"🇨🇩"},{"phoneCode":"682","code":"CK","name":"Cook Islands","pattern":"","emoji":"🇨🇰"},{"phoneCode":"506","code":"CR","name":"Costa Rica","pattern":"","emoji":"🇨🇷"},{"phoneCode":"225","code":"CI","name":"Cote d’Ivoire","pattern":"225 XX XXX XXX","emoji":"🇨🇮"},{"phoneCode":"385","code":"HR","name":"Croatia","pattern":"","emoji":"🇭🇷"},{"phoneCode":"53","code":"CU","name":"Cuba","pattern":"53 XXXX XXXX","emoji":"🇨🇺"},{"phoneCode":"599 9","code":"CW","name":"Curacao","pattern":"","emoji":"🇨🇼"},{"phoneCode":"357","code":"CY","name":"Cyprus","pattern":"357 XXXX XXXX","emoji":"🇨🇾"},{"phoneCode":"420","code":"CZ","name":"Czech Republic","pattern":"","emoji":"🇨🇿"},{"phoneCode":"45","code":"DK","name":"Denmark","pattern":"45 XXXX XXXX","emoji":"🇩🇰"},{"phoneCode":"246","code":"DG","name":"Diego Garcia","pattern":"","emoji":"🇩🇬"},{"phoneCode":"253","code":"DJ","name":"Djibouti","pattern":"253 XX XX XX XX","emoji":"🇩🇯"},{"phoneCode":"1 767","code":"DM","name":"Dominica","pattern":"1767 XXX XXXX","emoji":"🇩🇲"},{"phoneCode":"1 809 and 1 829","code":"DO","name":"Dominican Republic","pattern":"1 XXX XXX XXXX","emoji":"🇩🇴"},{"phoneCode":"670","code":"TL","name":"Timor-Leste","pattern":"","emoji":"🇹🇱"},{"phoneCode":"593","code":"EC","name":"Ecuador","pattern":"","emoji":"🇪🇨"},{"phoneCode":"20","code":"EG","name":"Egypt","pattern":"20 XX XXX XXXX","emoji":"🇪🇬"},{"phoneCode":"503","code":"SV","name":"El Salvador","pattern":"503 XXXX XXXX","emoji":"🇸🇻"},{"phoneCode":"240","code":"GQ","name":"Equatorial Guinea","pattern":"240 XXX XXX XXX","emoji":"🇬🇶"},{"phoneCode":"291","code":"ER","name":"Eritrea","pattern":"291 X XXX XXX","emoji":"🇪🇷"},{"phoneCode":"372","code":"EE","name":"Estonia","pattern":"","emoji":"🇪🇪"},{"phoneCode":"251","code":"ET","name":"Ethiopia","pattern":"251 XX XXX XXXX","emoji":"🇪🇹"},{"phoneCode":"500","code":"FK","name":"Falkland Islands","pattern":"","emoji":"🇫🇰"},{"phoneCode":"298","code":"FO","name":"Faroe Islands","pattern":"298 XXX XXX","emoji":"🇫🇴"},{"phoneCode":"679","code":"FJ","name":"Fiji","pattern":"","emoji":"🇫🇯"},{"phoneCode":"358","code":"FI","name":"Finland","pattern":"","emoji":"🇫🇮"},{"phoneCode":"33","code":"FR","name":"France","pattern":"33 X XX XX XX XX","emoji":"🇫🇷"},{"phoneCode":"594","code":"GF","name":"French Guiana","pattern":"","emoji":"🇬🇫"},{"phoneCode":"689","code":"PF","name":"French Polynesia","pattern":"","emoji":"🇵🇫"},{"phoneCode":"241","code":"GA","name":"Gabon","pattern":"241 X XX XX XX","emoji":"🇬🇦"},{"phoneCode":"220","code":"GM","name":"Gambia","pattern":"220 XXX XXXX","emoji":"🇬🇲"},{"phoneCode":"995","code":"GE","name":"Georgia","pattern":"","emoji":"🇬🇪"},{"phoneCode":"49","code":"DE","name":"Germany","pattern":"49 XXX XXXXXXXX","emoji":"🇩🇪"},{"phoneCode":"233","code":"GH","name":"Ghana","pattern":"","emoji":"🇬🇭"},{"phoneCode":"350","code":"GI","name":"Gibraltar","pattern":"350 XXXX XXXX","emoji":"🇬🇮"},{"phoneCode":"30","code":"GR","name":"Greece","pattern":"30 XX XXXX XXXX","emoji":"🇬🇷"},{"phoneCode":"299","code":"GL","name":"Greenland","pattern":"299 XXX XXX","emoji":"🇬🇱"},{"phoneCode":"1 473","code":"GD","name":"Grenada","pattern":"1473 XXX XXXX","emoji":"🇬🇩"},{"phoneCode":"590","code":"GP","name":"Guadeloupe","pattern":"","emoji":"🇬🇵"},{"phoneCode":"1 671","code":"GU","name":"Guam","pattern":"1671 XXX XXXX","emoji":"🇬🇺"},{"phoneCode":"502","code":"GT","name":"Guatemala","pattern":"502 X XXX XXXX","emoji":"🇬🇹"},{"phoneCode":"44","code":"GG","name":"Guernsey","pattern":"","emoji":"🇬🇬"},{"phoneCode":"224","code":"GN","name":"Guinea","pattern":"224 XXX XXX XXX","emoji":"🇬🇳"},{"phoneCode":"245","code":"GW","name":"Guinea-Bissau","pattern":"245 XXX XXXX","emoji":"🇬🇼"},{"phoneCode":"592","code":"GY","name":"Guyana","pattern":"","emoji":"🇬🇾"},{"phoneCode":"509","code":"HT","name":"Haiti","pattern":"","emoji":"🇭🇹"},{"phoneCode":"504","code":"HN","name":"Honduras","pattern":"504 XXXX XXXX","emoji":"🇭🇳"},{"phoneCode":"852","code":"HK","name":"Hong Kong SAR China","pattern":"","emoji":"🇭🇰"},{"phoneCode":"36","code":"HU","name":"Hungary","pattern":"36 XX XXX XXXX","emoji":"🇭🇺"},{"phoneCode":"354","code":"IS","name":"Iceland","pattern":"354 XXX XXXX","emoji":"🇮🇸"},{"phoneCode":"91","code":"IN","name":"India","pattern":"91 XXXXX XXXXX","emoji":"🇮🇳"},{"phoneCode":"62","code":"ID","name":"Indonesia","pattern":"","emoji":"🇮🇩"},{"phoneCode":"98","code":"IR","name":"Iran","pattern":"98 XXX XXX XXXX","emoji":"🇮🇷"},{"phoneCode":"964","code":"IQ","name":"Iraq","pattern":"964 XXX XXX XXXX","emoji":"🇮🇶"},{"phoneCode":"353","code":"IE","name":"Ireland","pattern":"353 XX XXX XXXX","emoji":"🇮🇪"},{"phoneCode":"972","code":"IL","name":"Israel","pattern":"972 XX XXX XXXX","emoji":"🇮🇱"},{"phoneCode":"39","code":"IT","name":"Italy","pattern":"39 XXX XXX XXXX","emoji":"🇮🇹"},{"phoneCode":"1 876","code":"JM","name":"Jamaica","pattern":"1876 XXX XXXX","emoji":"🇯🇲"},{"phoneCode":"47 79","code":"SJ","name":"Svalbard & Jan Mayen","pattern":"","emoji":"🇸🇯"},{"phoneCode":"81","code":"JP","name":"Japan","pattern":"81 XX XXXX XXXX","emoji":"🇯🇵"},{"phoneCode":"44","code":"JE","name":"Jersey","pattern":"","emoji":"🇯🇪"},{"phoneCode":"962","code":"JO","name":"Jordan","pattern":"962 X XXXX XXXX","emoji":"🇯🇴"},{"phoneCode":"7 7","code":"KZ","name":"Kazakhstan","pattern":"7 XXX XXX XX XX","emoji":"🇰🇿"},{"phoneCode":"254","code":"KE","name":"Kenya","pattern":"254 XXX XXX XXX","emoji":"🇰🇪"},{"phoneCode":"686","code":"KI","name":"Kiribati","pattern":"","emoji":"🇰🇮"},{"phoneCode":"850","code":"KP","name":"North Korea","pattern":"","emoji":"🇰🇵"},{"phoneCode":"82","code":"KR","name":"South Korea","pattern":"","emoji":"🇰🇷"},{"phoneCode":"965","code":"KW","name":"Kuwait","pattern":"965 XXXX XXXX","emoji":"🇰🇼"},{"phoneCode":"996","code":"KG","name":"Kyrgyzstan","pattern":"","emoji":"🇰🇬"},{"phoneCode":"856","code":"LA","name":"Laos","pattern":"","emoji":"🇱🇦"},{"phoneCode":"371","code":"LV","name":"Latvia","pattern":"371 XXX XXXXX","emoji":"🇱🇻"},{"phoneCode":"961","code":"LB","name":"Lebanon","pattern":"","emoji":"🇱🇧"},{"phoneCode":"266","code":"LS","name":"Lesotho","pattern":"266 XX XXX XXX","emoji":"🇱🇸"},{"phoneCode":"231","code":"LR","name":"Liberia","pattern":"","emoji":"🇱🇷"},{"phoneCode":"218","code":"LY","name":"Libya","pattern":"218 XX XXX XXXX","emoji":"🇱🇾"},{"phoneCode":"423","code":"LI","name":"Liechtenstein","pattern":"","emoji":"🇱🇮"},{"phoneCode":"370","code":"LT","name":"Lithuania","pattern":"370 XXX XXXXX","emoji":"🇱🇹"},{"phoneCode":"352","code":"LU","name":"Luxembourg","pattern":"","emoji":"🇱🇺"},{"phoneCode":"853","code":"MO","name":"Macau SAR China","pattern":"","emoji":"🇲🇴"},{"phoneCode":"389","code":"MK","name":"Macedonia","pattern":"","emoji":"🇲🇰"},{"phoneCode":"261","code":"MG","name":"Madagascar","pattern":"261 XX XX XXX XX","emoji":"🇲🇬"},{"phoneCode":"265","code":"MW","name":"Malawi","pattern":"","emoji":"🇲🇼"},{"phoneCode":"60","code":"MM","name":"Malaysia","pattern":"","emoji":"🇲🇲"},{"phoneCode":"960","code":"MV","name":"Maldives","pattern":"","emoji":"🇲🇻"},{"phoneCode":"223","code":"ML","name":"Mali","pattern":"223 XXXX XXXX","emoji":"🇲🇱"},{"phoneCode":"356","code":"MT","name":"Malta","pattern":"356 XX XX XX XX","emoji":"🇲🇹"},{"phoneCode":"692","code":"MH","name":"Marshall Islands","pattern":"","emoji":"🇲🇭"},{"phoneCode":"596","code":"MQ","name":"Martinique","pattern":"","emoji":"🇲🇶"},{"phoneCode":"222","code":"MR","name":"Mauritania","pattern":"222 XXXX XXXX","emoji":"🇲🇷"},{"phoneCode":"230","code":"MU","name":"Mauritius","pattern":"","emoji":"🇲🇺"},{"phoneCode":"262","code":"YT","name":"Mayotte","pattern":"","emoji":"🇾🇹"},{"phoneCode":"52","code":"MX","name":"Mexico","pattern":"","emoji":"🇲🇽"},{"phoneCode":"691","code":"FM","name":"Micronesia","pattern":"","emoji":"🇫🇲"},{"phoneCode":"373","code":"MD","name":"Moldova","pattern":"373 XX XXX XXX","emoji":"🇲🇩"},{"phoneCode":"377","code":"MC","name":"Monaco","pattern":"377 XXXX XXXX","emoji":"🇲🇨"},{"phoneCode":"976","code":"MN","name":"Mongolia","pattern":"","emoji":"🇲🇳"},{"phoneCode":"382","code":"ME","name":"Montenegro","pattern":"","emoji":"🇲🇪"},{"phoneCode":"1 664","code":"MS","name":"Montserrat","pattern":"1664 XXX XXXX","emoji":"🇲🇸"},{"phoneCode":"212","code":"MA","name":"Morocco","pattern":"212 XX XXX XXXX","emoji":"🇲🇦"},{"phoneCode":"258","code":"MZ","name":"Mozambique","pattern":"258 XX XXX XXXX","emoji":"🇲🇿"},{"phoneCode":"264","code":"NA","name":"Namibia","pattern":"264 XX XXX XXXX","emoji":"🇳🇦"},{"phoneCode":"674","code":"NR","name":"Nauru","pattern":"","emoji":"🇳🇷"},{"phoneCode":"977","code":"NP","name":"Nepal","pattern":"","emoji":"🇳🇵"},{"phoneCode":"31","code":"NL","name":"Netherlands","pattern":"31 X XX XX XX XX","emoji":"🇳🇱"},{"phoneCode":"687","code":"NC","name":"New Caledonia","pattern":"","emoji":"🇳🇨"},{"phoneCode":"64","code":"NZ","name":"New Zealand","pattern":"","emoji":"🇳🇿"},{"phoneCode":"505","code":"NI","name":"Nicaragua","pattern":"505 XXXX XXXX","emoji":"🇳🇮"},{"phoneCode":"227","code":"NE","name":"Niger","pattern":"227 XX XX XX XX","emoji":"🇳🇪"},{"phoneCode":"234","code":"NG","name":"Nigeria","pattern":"","emoji":"🇳🇬"},{"phoneCode":"683","code":"NU","name":"Niue","pattern":"","emoji":"🇳🇺"},{"phoneCode":"672","code":"NF","name":"Norfolk Island","pattern":"","emoji":"🇳🇫"},{"phoneCode":"1 670","code":"MP","name":"Northern Mariana Islands","pattern":"1670 XXX XXXX","emoji":"🇲🇵"},{"phoneCode":"47","code":"NO","name":"Norway","pattern":"47 XXXX XXXX","emoji":"🇳🇴"},{"phoneCode":"968","code":"OM","name":"Oman","pattern":"968 XXXX XXXX","emoji":"🇴🇲"},{"phoneCode":"92","code":"PK","name":"Pakistan","pattern":"92 XXX XXX XXXX","emoji":"🇵🇰"},{"phoneCode":"680","code":"PW","name":"Palau","pattern":"","emoji":"🇵🇼"},{"phoneCode":"970","code":"PS","name":"Palestinian Territories","pattern":"970 XXX XX XXXX","emoji":"🇵🇸"},{"phoneCode":"507","code":"PA","name":"Panama","pattern":"507 XXXX XXXX","emoji":"🇵🇦"},{"phoneCode":"675","code":"PG","name":"Papua New Guinea","pattern":"","emoji":"🇵🇬"},{"phoneCode":"595","code":"PY","name":"Paraguay","pattern":"595 XXX XXX XXX","emoji":"🇵🇾"},{"phoneCode":"51","code":"PE","name":"Peru","pattern":"51 XXX XXX XXX","emoji":"🇵🇪"},{"phoneCode":"63","code":"PH","name":"Philippines","pattern":"63 XXX XXX XXXX","emoji":"🇵🇭"},{"phoneCode":"64","code":"PN","name":"Pitcairn Islands","pattern":"","emoji":"🇵🇳"},{"phoneCode":"48","code":"PL","name":"Poland","pattern":"48 XXX XXX XXX","emoji":"🇵🇱"},{"phoneCode":"351","code":"PT","name":"Portugal","pattern":"351 X XXXX XXXX","emoji":"🇵🇹"},{"phoneCode":"1 787 and 1 939","code":"PR","name":"Puerto Rico","pattern":"1 XXX XXX XXXX","emoji":"🇵🇷"},{"phoneCode":"974","code":"QA","name":"Qatar","pattern":"","emoji":"🇶🇦"},{"phoneCode":"262","code":"RE","name":"Reunion","pattern":"262 XXX XXX XXX","emoji":"🇷🇪"},{"phoneCode":"40","code":"RO","name":"Romania","pattern":"40 XXX XXX XXX","emoji":"🇷🇴"},{"phoneCode":"7","code":"RU","name":"Russia","pattern":"7 XXX XXX XX XX","emoji":"🇷🇺"},{"phoneCode":"250","code":"RW","name":"Rwanda","pattern":"250 XXX XXX XXX","emoji":"🇷🇼"},{"phoneCode":"590","code":"BL","name":"St. Barthelemy","pattern":"","emoji":"🇧🇱"},{"phoneCode":"290","code":"SH","name":"St. Helena","pattern":"290 XX XXX","emoji":"🇸🇭"},{"phoneCode":"1 869","code":"KN","name":"St. Kitts & Nevis","pattern":"1869 XXX XXXX","emoji":"🇰🇳"},{"phoneCode":"1 758","code":"LC","name":"St. Lucia","pattern":"1758 XXX XXXX","emoji":"🇱🇨"},{"phoneCode":"590","code":"MF","name":"St. Martin (France)","pattern":"","emoji":"🇲🇫"},{"phoneCode":"508","code":"PM","name":"St. Pierre and Miquelon","pattern":"","emoji":"🇵🇲"},{"phoneCode":"1 784","code":"VC","name":"St. Vincent and the Grenadines","pattern":"1784 XXX XXXX","emoji":"🇻🇨"},{"phoneCode":"685","code":"WS","name":"Samoa","pattern":"","emoji":"🇼🇸"},{"phoneCode":"378","code":"SM","name":"San Marino","pattern":"378 XXX XXX XXXX","emoji":"🇸🇲"},{"phoneCode":"239","code":"ST","name":"São Tome & Principe","pattern":"239 XX XXXXX","emoji":"🇸🇹"},{"phoneCode":"966","code":"SA","name":"Saudi Arabia","pattern":"","emoji":"🇸🇦"},{"phoneCode":"221","code":"SN","name":"Senegal","pattern":"221 XX XXX XXXX","emoji":"🇸🇳"},{"phoneCode":"381","code":"RS","name":"Serbia","pattern":"381 XX XXX XXXX","emoji":"🇷🇸"},{"phoneCode":"248","code":"SC","name":"Seychelles","pattern":"248 X XX XX XX","emoji":"🇸🇨"},{"phoneCode":"232","code":"SL","name":"Sierra Leone","pattern":"232 XX XXX XXX","emoji":"🇸🇱"},{"phoneCode":"65","code":"SG","name":"Singapore","pattern":"65 XXXX XXXX","emoji":"🇸🇬"},{"phoneCode":"599 3","code":"BQ","name":"Sint Eustatius","pattern":"","emoji":"🇧🇶"},{"phoneCode":"1 721","code":"SX","name":"Sint Maarten","pattern":"1721 XXX XXXX","emoji":"🇸🇽"},{"phoneCode":"421","code":"SK","name":"Slovakia","pattern":"","emoji":"🇸🇰"},{"phoneCode":"386","code":"SI","name":"Slovenia","pattern":"","emoji":"🇸🇮"},{"phoneCode":"677","code":"SB","name":"Solomon Islands","pattern":"","emoji":"🇸🇧"},{"phoneCode":"252","code":"SO","name":"Somalia","pattern":"252 XX XXX XXX","emoji":"🇸🇴"},{"phoneCode":"27","code":"ZA","name":"South Africa","pattern":"27 XX XXX XXXX","emoji":"🇿🇦"},{"phoneCode":"500","code":"GS","name":"South Georgia & South Sandwich Islands","pattern":"","emoji":"🇬🇸"},{"phoneCode":"995 34","code":"","name":"South Ossetia","pattern":"","emoji":""},{"phoneCode":"211","code":"SS","name":"South Sudan","pattern":"211 XX XXX XXXX","emoji":"🇸🇸"},{"phoneCode":"34","code":"ES","name":"Spain","pattern":"34 XXX XXX XXX","emoji":"🇪🇸"},{"phoneCode":"94","code":"LK","name":"Sri Lanka","pattern":"94 XX XXX XXXX","emoji":"🇱🇰"},{"phoneCode":"249","code":"SD","name":"Sudan","pattern":"249 XX XXX XXXX","emoji":"🇸🇩"},{"phoneCode":"597","code":"SR","name":"Suriname","pattern":"597 XXX XXXX","emoji":"🇸🇷"},{"phoneCode":"47 79","code":"SJ","name":"Svalbard","pattern":"","emoji":"🇸🇯"},{"phoneCode":"268","code":"SZ","name":"Swaziland","pattern":"268 XXXX XXXX","emoji":"🇸🇿"},{"phoneCode":"46","code":"SE","name":"Sweden","pattern":"46 XX XXX XXXX","emoji":"🇸🇪"},{"phoneCode":"41","code":"CH","name":"Switzerland","pattern":"41 XX XXX XXXX","emoji":"🇨🇭"},{"phoneCode":"963","code":"SY","name":"Syria","pattern":"","emoji":"🇸🇾"},{"phoneCode":"886","code":"TW","name":"Taiwan","pattern":"","emoji":"🇹🇼"},{"phoneCode":"992","code":"TJ","name":"Tajikistan","pattern":"","emoji":"🇹🇯"},{"phoneCode":"255","code":"TZ","name":"Tanzania","pattern":"255 XX XXX XXXX","emoji":"🇹🇿"},{"phoneCode":"66","code":"TH","name":"Thailand","pattern":"66 X XXXX XXXX","emoji":"🇹🇭"},{"phoneCode":"228","code":"TG","name":"Togo","pattern":"228 XX XXX XXX","emoji":"🇹🇬"},{"phoneCode":"690","code":"TK","name":"Tokelau","pattern":"","emoji":"🇹🇰"},{"phoneCode":"676","code":"TO","name":"Tonga","pattern":"","emoji":"🇹🇴"},{"phoneCode":"1 868","code":"TT","name":"Trinidad & Tobago","pattern":"1868 XXX XXXX","emoji":"🇹🇹"},{"phoneCode":"216","code":"TN","name":"Tunisia","pattern":"216 XX XXX XXX","emoji":"🇹🇳"},{"phoneCode":"90","code":"TR","name":"Turkey","pattern":"90 XXX XXX XXXX","emoji":"🇹🇷"},{"phoneCode":"993","code":"TM","name":"Turkmenistan","pattern":"993 XX XXXXXX","emoji":"🇹🇲"},{"phoneCode":"1 649","code":"TC","name":"Turks & Caicos Islands","pattern":"1649 XXX XXXX","emoji":"🇹🇨"},{"phoneCode":"688","code":"TV","name":"Tuvalu","pattern":"","emoji":"🇹🇻"},{"phoneCode":"256","code":"UG","name":"Uganda","pattern":"256 XX XXX XXXX","emoji":"🇺🇬"},{"phoneCode":"380","code":"UA","name":"Ukraine","pattern":"380 XX XXX XX XX","emoji":"🇺🇦"},{"phoneCode":"971","code":"AE","name":"United Arab Emirates","pattern":"971 XX XXX XXXX","emoji":"🇦🇪"},{"phoneCode":"44","code":"GB","name":"United Kingdom","pattern":"44 XXXX XXXXXX","emoji":"🇬🇧"},{"phoneCode":"1","code":"US","name":"United States","pattern":"1 XXX XXX XXXX","emoji":"🇺🇸"},{"phoneCode":"598","code":"UY","name":"Uruguay","pattern":"598 XXXX XXXX","emoji":"🇺🇾"},{"phoneCode":"1 340","code":"VI","name":"U.S. Virgin Islands","pattern":"1340 XXX XXXX","emoji":"🇻🇮"},{"phoneCode":"998","code":"UZ","name":"Uzbekistan","pattern":"998 XX XXXXXXX","emoji":"🇺🇿"},{"phoneCode":"678","code":"VU","name":"Vanuatu","pattern":"","emoji":"🇻🇺"},{"phoneCode":"58","code":"VE","name":"Venezuela","pattern":"58 XXX XXX XXXX","emoji":"🇻🇪"},{"phoneCode":"39 06 698","code":"VA","name":"Vatican City","pattern":"","emoji":"🇻🇦"},{"phoneCode":"84","code":"VN","name":"Vietnam","pattern":"","emoji":"🇻🇳"},{"phoneCode":"681","code":"WF","name":"Wallis & Futuna","pattern":"","emoji":"🇼🇫"},{"phoneCode":"967","code":"YE","name":"Yemen","pattern":"967 XXX XXX XXX","emoji":"🇾🇪"},{"phoneCode":"260","code":"ZM","name":"Zambia","pattern":"260 XX XXX XXXX","emoji":"🇿🇲"},{"phoneCode":"255","code":"","name":"Zanzibar","pattern":"","emoji":""},{"phoneCode":"263","code":"ZW","name":"Zimbabwe","pattern":"263 XX XXX XXXX","emoji":"🇿🇼"}];
diff --git a/src/lib/lottieLoader.ts b/src/lib/lottieLoader.ts
index 06372d1a..51d4b63b 100644
--- a/src/lib/lottieLoader.ts
+++ b/src/lib/lottieLoader.ts
@@ -1,6 +1,10 @@
import { isInDOM } from "./utils";
import LottiePlayer, { AnimationConfigWithPath, AnimationConfigWithData, AnimationItem } from "lottie-web/build/player/lottie.d";
+let convert = (value: number) => {
+ return Math.round(Math.min(Math.max(value, 0), 1) * 255);
+};
+
class LottieLoader {
public lottie: /* any */ typeof LottiePlayer = null;
private animations: {
@@ -16,6 +20,35 @@ class LottieLoader {
public loaded: Promise;
private lastTimeLoad = 0;
private waitingTimeouts = 0;
+ private static COLORREPLACEMENTS = [
+ [
+ [0xf77e41, 0xca907a],
+ [0xffb139, 0xedc5a5],
+ [0xffd140, 0xf7e3c3],
+ [0xffdf79, 0xfbefd6],
+ ],
+
+ [
+ [0xf77e41, 0xaa7c60],
+ [0xffb139, 0xc8a987],
+ [0xffd140, 0xddc89f],
+ [0xffdf79, 0xe6d6b2],
+ ],
+
+ [
+ [0xf77e41, 0x8c6148],
+ [0xffb139, 0xad8562],
+ [0xffd140, 0xc49e76],
+ [0xffdf79, 0xd4b188],
+ ],
+
+ [
+ [0xf77e41, 0x6e3c2c],
+ [0xffb139, 0x925a34],
+ [0xffd140, 0xa16e46],
+ [0xffdf79, 0xac7a52],
+ ]
+ ];
public loadLottie() {
if(this.loaded) return this.loaded;
@@ -89,12 +122,53 @@ class LottieLoader {
}
}
- public async loadAnimation(params: /* any */AnimationConfigWithPath | AnimationConfigWithData, group = '') {
+ private applyReplacements(object: any, toneIndex: number) {
+ const replacements = LottieLoader.COLORREPLACEMENTS[toneIndex - 2];
+
+ const iterateIt = (it: any) => {
+ for(let smth of it) {
+ switch(smth.ty) {
+ case 'st':
+ case 'fl':
+ let k = smth.c.k;
+ let color = convert(k[2]) | (convert(k[1]) << 8) | (convert(k[0]) << 16);
+
+ let foundReplacement = replacements.find(p => p[0] == color);
+ if(foundReplacement) {
+ k[0] = ((foundReplacement[1] >> 16) & 255) / 255;
+ k[1] = ((foundReplacement[1] >> 8) & 255) / 255;
+ k[2] = (foundReplacement[1] & 255) / 255;
+ }
+
+ console.log('foundReplacement!', foundReplacement, color.toString(16), k);
+ break;
+ }
+
+ if(smth.hasOwnProperty('it')) {
+ iterateIt(smth.it);
+ }
+ }
+ };
+
+ for(let layer of object.layers) {
+ if(!layer.shapes) continue;
+
+ for(let shape of layer.shapes) {
+ iterateIt(shape.it);
+ }
+ }
+ }
+
+ public async loadAnimation(params: /* any */AnimationConfigWithPath & AnimationConfigWithData, group = '', toneIndex = -1) {
//params.autoplay = false;
//if(group != 'auth') {
//params.renderer = 'canvas';
params.renderer = 'svg';
//}
+
+ if(toneIndex >= 1 && toneIndex <= 5) {
+ this.applyReplacements(params.animationData, toneIndex);
+ }
let rendererSettings = {
//context: context, // the canvas context
diff --git a/src/lib/utils.js b/src/lib/utils.js
index 6e09542b..91dff8e2 100644
--- a/src/lib/utils.js
+++ b/src/lib/utils.js
@@ -634,17 +634,17 @@ emojiUnicode.raw = function(input) {
for(var i = 0; i < input.length; i++) {
// high surrogate
if(input.charCodeAt(i) >= 0xd800 && input.charCodeAt(i) <= 0xdbff) {
- if(input.charCodeAt(i + 1) >= 0xdc00 && input.charCodeAt(i + 1) <= 0xdfff) {
- // low surrogate
- pairs.push(
- (input.charCodeAt(i) - 0xd800) * 0x400
- + (input.charCodeAt(i + 1) - 0xdc00) + 0x10000
- );
- }
- } else if (input.charCodeAt(i) < 0xd800 || input.charCodeAt(i) > 0xdfff) {
- // modifiers and joiners
- pairs.push(input.charCodeAt(i))
- }
+ if(input.charCodeAt(i + 1) >= 0xdc00 && input.charCodeAt(i + 1) <= 0xdfff) {
+ // low surrogate
+ pairs.push(
+ (input.charCodeAt(i) - 0xd800) * 0x400
+ + (input.charCodeAt(i + 1) - 0xdc00) + 0x10000
+ );
+ }
+ } else if(input.charCodeAt(i) < 0xd800 || input.charCodeAt(i) > 0xdfff) {
+ // modifiers and joiners
+ pairs.push(input.charCodeAt(i))
+ }
}
return pairs.join(' ');
@@ -653,6 +653,11 @@ emojiUnicode.raw = function(input) {
return '';
};
+export function getEmojiToneIndex(input) {
+ let match = input.match(/[\uDFFB-\uDFFF]/);
+ return match ? 5 - (57343 - match[0].charCodeAt(0)) : 0;
+}
+
//var badCharsRe = /[`~!@#$%^&*()\-_=+\[\]\\|{}'";:\/?.>,<\s]+/g,
var badCharsRe = /[`~!@#$%^&*()\-_=+\[\]\\|{}'";:\/?.>,<]+/g,
trimRe = /^\s+|\s$/g
diff --git a/src/scss/partials/_chatBubble.scss b/src/scss/partials/_chatBubble.scss
index 346f27f2..80795344 100644
--- a/src/scss/partials/_chatBubble.scss
+++ b/src/scss/partials/_chatBubble.scss
@@ -12,6 +12,31 @@
}
}
+.bubbles-date-group {
+ position: relative;
+
+ /* .sticky_sentinel {
+ visibility: visible;
+ background: #000;
+ } */
+
+ .sticky_sentinel--top {
+ /* Adjust the height and top values based on your on your sticky top position.
+ e.g. make the height bigger and adjust the top so observeHeaders()'s
+ IntersectionObserver fires as soon as the bottom of the sentinel crosses the
+ top of the intersection container. */
+ height: 5px;
+ top: 0;
+ }
+
+ // .sticky_sentinel--bottom {
+ // /* Height should match the top of the header when it's at the bottom of the
+ // intersection container. */
+ // height: 1px;
+ // bottom: 0;
+ // }
+}
+
.bubble {
padding-top: 5px;
max-width: $chat-max-width;
@@ -249,8 +274,8 @@
}
&.sticker .bubble__container {
- max-width: 140px;
- max-height: 140px;
+ max-width: 140px !important;
+ max-height: 140px !important;
}
}
@@ -319,15 +344,15 @@
}
.bubble__container {
- max-width: 200px;
- max-height: 200px;
+ max-width: 200px !important;
+ max-height: 200px !important;
}
}
&.round {
.attachment {
- max-width: 200px;
- max-height: 200px;
+ max-width: 200px !important;
+ max-height: 200px !important;
img {
border-radius: 50%;
@@ -378,7 +403,9 @@
color: #fff;
text-align: center;
}
+ }
+ .download, .preloader-container {
& ~ .video-play {
display: none;
}
@@ -930,6 +957,7 @@
display: flex;
align-items: center;
justify-content: center;
+ text-align: center;
.name {
cursor: pointer;
@@ -1313,7 +1341,6 @@ poll-element {
&-answer {
display: flex;
- flex-direction: row;
position: relative;
padding-bottom: 20px;
padding-left: 34px;
@@ -1339,7 +1366,7 @@ poll-element {
&-selected {
position: absolute;
- top: 33px;
+ bottom: 3px;
left: 26px;
color: #fff;
background: #50a2e9;
@@ -1379,7 +1406,7 @@ poll-element {
height: 35px;
position: absolute;
left: 17.5px;
- top: 11px;
+ bottom: 2px;
transition: stroke-dashoffset .34s linear, stroke-dasharray .34s linear;
stroke-dashoffset: 0;
stroke-dasharray: 0, 485.9;
diff --git a/src/scss/style.scss b/src/scss/style.scss
index 509b7605..b74fabc5 100644
--- a/src/scss/style.scss
+++ b/src/scss/style.scss
@@ -1376,6 +1376,14 @@ img.emoji {
transform: translate(-50%, -50%);
}
+.sticky_sentinel {
+ position: absolute;
+ left: 0;
+ right: 0; /* needs dimensions */
+ visibility: hidden;
+ pointer-events: none;
+}
+
.page-chats {
/* display: grid; */
/* grid-template-columns: 25% 50%; */