]> git.mxchange.org Git - friendica-addons.git/blob - unicode_smilies/unicode_smilies.php
3bc47e5b904dabbb2843bbbbcecdebb27d3d2ac3
[friendica-addons.git] / unicode_smilies / unicode_smilies.php
1 <?php
2 /*
3  * Name: Unicode Smilies
4  * Description: Smilies based on the unicode emojis - On Linux use https://github.com/eosrei/emojione-color-font to see them in color and http://www.unicode.org/emoji/charts/full-emoji-list.html
5  * Version: 1.1.1
6  * Author: Michael Vogel <http://pirati.ca/profile/heluecht>
7  * Author: Matthias Ebers <https://loma.ml/profile/one>
8  */
9 use Friendica\Content\Smilies;
10 use Friendica\Core\Hook;
11
12 function unicode_smilies_install() {
13         Hook::register('smilie', 'addon/unicode_smilies/unicode_smilies.php', 'unicode_smilies_smilies');
14 }
15
16 function unicode_smilies_smilies(&$a,&$b) {
17         Smilies::add($b, ':-)', '&#x1F600;');
18         Smilies::add($b, ':)', '&#x1F600;');
19         Smilies::add($b, ':-(', '&#x1F641;');
20         Smilies::add($b, ':(', '&#x1F641;');
21         Smilies::add($b, ':-[', '&#x1F633;');
22         Smilies::add($b, ':-D', '&#x1F601;');
23         Smilies::add($b, ':D', '&#x1F601;');
24         Smilies::add($b, ';-)', '&#x1F609;');
25         // Smilies::add($b, ';)', '&#x1F609;'); // Deactivated since this leads to disturbed html entities
26         Smilies::add($b, ':-P', '&#x1F61B;');
27         Smilies::add($b, ':-p', '&#x1F61B;');
28         Smilies::add($b, ':P', '&#x1F61B;');
29         Smilies::add($b, ':p', '&#x1F61B;');
30         Smilies::add($b, ':-O', '&#x1F62E;');
31         Smilies::add($b, ':O', '&#x1F62E;');
32         Smilies::add($b, ':-X', '&#x1F910;');
33         Smilies::add($b, ':-x', '&#x1F910;');
34         Smilies::add($b, ':X', '&#x1F910;');
35         Smilies::add($b, ':x', '&#x1F910;');
36         Smilies::add($b, '8-)', '&#x1F60E;');
37         Smilies::add($b, ':-/', '&#x1F615;');
38         Smilies::add($b, ':-"', '&#x1F48F;');
39         Smilies::add($b, ':-&quot;', '&#x1F48F;');
40         Smilies::add($b, ':-!', '&#x1F912;');
41         Smilies::add($b, '&lt;3', '&#x2764;');
42         Smilies::add($b, '&lt;/3', '&#x1F494;');
43         Smilies::add($b, '&lt;\\3', '&#x1F494;');
44         Smilies::add($b, '8-|', '&#x1F632;');
45         Smilies::add($b, '8-O', '&#x1F632;');
46         Smilies::add($b, '\\o/', '&#x1F44D;');
47         Smilies::add($b, ":'(", '&#x1F622;');
48         Smilies::add($b, ':coffee:', '&#x2615;');
49         Smilies::add($b, ':beer:', '&#x1F37A;');
50         Smilies::add($b, ':homebrew:', '&#x1F37A;');
51         Smilies::add($b, ':like:', '&#x1F44D;');
52         Smilies::add($b, ':dislike:', '&#x1F44E;');
53 //      Smilies::add($b, 'o.O', '&#x;');
54 //      Smilies::add($b, 'O.o', '&#x;');
55 //      Smilies::add($b, 'o_O', '&#x;');
56 //      Smilies::add($b, 'O_o', '&#x;');
57 //      Smilies::add($b, ':facepalm:', '&#x1F926;'); // Bad client support
58
59
60 // Animal smileys.
61
62 //      Smilies::add($b, ':bunnyflowers:', '&#x;');
63         Smilies::add($b, ':chick:', '&#x1F424;');
64         Smilies::add($b, ':bumblebee:', '&#x1F41D;');
65         Smilies::add($b, ':ladybird:', '&#x1F41E;');
66         Smilies::add($b, ':bigspider:', '&#x1F577;');
67         Smilies::add($b, ':cat:', '&#x1F408;');
68         Smilies::add($b, ':bunny:', '&#x1F430;');
69         Smilies::add($b, ':cow:', '&#x1F42E;');
70         Smilies::add($b, ':crab:', '&#x1F980;');
71         Smilies::add($b, ':dolphin:', '&#x1F42C;');
72 //      Smilies::add($b, ':dragonfly:', '&#x;');
73         Smilies::add($b, ':frog:', '&#x1F438;');
74         Smilies::add($b, ':hamster:', '&#x1F439;');
75         Smilies::add($b, ':monkey:', '&#x1F412;');
76         Smilies::add($b, ':horse:', '&#x1F434;');
77 //      Smilies::add($b, ':parrot:', '&#x;');
78         Smilies::add($b, ':tux:', '&#x1F427;');
79         Smilies::add($b, ':snail:', '&#x1F40C;');
80         Smilies::add($b, ':sheep:', '&#x1F411;');
81         Smilies::add($b, ':dog:', '&#x1F436;');
82         Smilies::add($b, ':elephant:', '&#x1F418;');
83         Smilies::add($b, ':fish:', '&#x1F41F;');
84 //      Smilies::add($b, ':giraffe:', '&#x1F992;'); // Bad client support
85         Smilies::add($b, ':pig:', '&#x1F416;');
86
87 // Baby Smileys
88
89         Smilies::add($b, ':baby:', '&#x1F476;');
90 //      Smilies::add($b, ':babycot:', '&#x;');
91 //      Smilies::add($b, ':pregnant:', '&#x1F930;'); // Bad client support
92 //      Smilies::add($b, ':stork:', '&#x;');
93
94 // Confused Smileys
95
96         Smilies::add($b, ':confused:', '&#x1F615;');
97         Smilies::add($b, ':shrug:', '&#x1F937;');
98 //      Smilies::add($b, ':stupid:', '&#x;');
99 //      Smilies::add($b, ':dazed:', '&#x;');
100
101 // Cool Smileys
102
103 //      Smilies::add($b, ':affro:', '&#x;');
104
105 // Devil/Angel Smileys
106
107         Smilies::add($b, ':angel:', '&#x1F47C;');
108         Smilies::add($b, ':cherub:', '&#x1F47C;');
109 //      Smilies::add($b, ':devilangel:', '&#x;');
110 //      Smilies::add($b, ':catdevil:', '&#x;');
111 //      Smilies::add($b, ':devillish:', '&#x;');
112 //      Smilies::add($b, ':daseesaw:', '&#x;');
113 //      Smilies::add($b, ':turnevil:', '&#x;');
114 //      Smilies::add($b, ':saint:', '&#x;');
115 //      Smilies::add($b, ':graveside:', '&#x;');
116
117 // Unpleasent smileys.
118
119         Smilies::add($b, ':toilet:', '&#x1F6BD;');
120 //      Smilies::add($b, ':fartinbed:', '&#x;');
121 //      Smilies::add($b, ':fartblush:', '&#x;');
122
123 // Sad smileys
124
125         Smilies::add($b, ':crying:', '&#x1F622;');
126 //      Smilies::add($b, ':prisoner:', '&#x;');
127 //      Smilies::add($b, ':sigh:', '&#x;');
128
129 // Sport smileys
130
131         Smilies::add($b, ':basketball:', '&#x1F3C0;');
132         Smilies::add($b, ':bowling:', '&#x1F3B3;');
133         Smilies::add($b, ':cycling:', '&#x1F6B4;');
134         Smilies::add($b, ':darts:', '&#x1F3AF;');
135         Smilies::add($b, ':fencing:', '&#x1F93A;');
136         Smilies::add($b, ':juggling:', '&#x1F939;');
137 //      Smilies::add($b, ':skipping:', '&#x;');
138 //      Smilies::add($b, ':archery:', '&#x;');
139         Smilies::add($b, ':surfing:', '&#x1F3C4;');
140         Smilies::add($b, ':snooker:', '&#x1F3B1;');
141         Smilies::add($b, ':horseriding:', '&#x1F3C7;');
142
143 // Love smileys
144
145 //      Smilies::add($b, ':iloveyou:', '&#x;');
146 //      Smilies::add($b, ':inlove:', '&#x;');
147 //      Smilies::add($b, '~love:', '&#x;');
148 //      Smilies::add($b, ':lovebear:', '&#x;');
149 //      Smilies::add($b, ':lovebed:', '&#x;');
150         Smilies::add($b, ':loveheart:', '&#x1F496;');
151
152 // Tired/Sleep smileys
153
154 //      Smilies::add($b, ':countsheep:', '&#x;');
155 //      Smilies::add($b, ':hammock:', '&#x;');
156 //      Smilies::add($b, ':pillow:', '&#x;');
157 //      Smilies::add($b, ':yawn:', '&#x;');
158
159 // Fight/Flame/Violent smileys
160
161 //      Smilies::add($b, ':2guns:', '&#x;');
162 //      Smilies::add($b, ':alienfight:', '&#x;');
163 //      Smilies::add($b, ':army:', '&#x;');
164 //      Smilies::add($b, ':arrowhead:', '&#x;');
165 //      Smilies::add($b, ':bfg:', '&#x;');
166 //      Smilies::add($b, ':bowman:', '&#x;');
167 //      Smilies::add($b, ':chainsaw:', '&#x;');
168 //      Smilies::add($b, ':crossbow:', '&#x;');
169 //      Smilies::add($b, ':crusader:', '&#x;');
170 //      Smilies::add($b, ':dead:', '&#x;');
171 //      Smilies::add($b, ':hammersplat:', '&#x;');
172 //      Smilies::add($b, ':lasergun:', '&#x;');
173 //      Smilies::add($b, ':machinegun:', '&#x;');
174 //      Smilies::add($b, ':acid:', '&#x;');
175
176 // Fantasy smileys - monsters and dragons fantasy.  The other type of fantasy belongs in adult smileys
177
178         Smilies::add($b, ':alienmonster:', '&#x1F47E;');
179 //      Smilies::add($b, ':barbarian:', '&#x;');
180 //      Smilies::add($b, ':dinosaur:', '&#x;');
181         Smilies::add($b, ':dragon:', '&#x1F409;');
182         Smilies::add($b, ':draco:', '&#x1F409;');
183         Smilies::add($b, ':ghost:', '&#x1F47B;');
184 //      Smilies::add($b, ':mummy:', '&#x;');
185
186 // Food smileys
187
188         Smilies::add($b, ':apple:', '&#x1F34E;');
189 //      Smilies::add($b, ':broccoli:', '&#x;');
190         Smilies::add($b, ':cake:', '&#x1F370;');
191 //      Smilies::add($b, ':carrot:', '&#x1F955;'); // Bad client support
192         Smilies::add($b, ':popcorn:', '&#x1F37F;');
193         Smilies::add($b, ':tomato:', '&#x1F345;');
194         Smilies::add($b, ':banana:', '&#x1F34C;');
195         Smilies::add($b, ':cooking:', '&#x1F373;');
196         Smilies::add($b, ':fryegg:', '&#x1F373;');
197         Smilies::add($b, ':birthday cake:', '&#x1F382;');
198
199 // Happy smileys
200
201 //      Smilies::add($b, ':cloud9:', '&#x;');
202         Smilies::add($b, ':tearsofjoy:', '&#x1F602;');
203
204 // Respect smileys
205
206         Smilies::add($b, ':bow:', '&#x1F647;');
207 //      Smilies::add($b, ':bravo:', '&#x;');
208 //      Smilies::add($b, ':hailking:', '&#x;');
209 //      Smilies::add($b, ':number1:', '&#x;');
210
211 // Laugh smileys
212
213 //      Smilies::add($b, ':hahaha:', '&#x;');
214 //      Smilies::add($b, ':loltv:', '&#x;');
215 //      Smilies::add($b, ':rofl:', '&#x1F923;'); // Bad client support
216 // Music smileys
217
218 //      Smilies::add($b, ':drums:', '&#x1F941;'); // Bad client support
219         Smilies::add($b, ':guitar:', '&#x1F3B8;');
220         Smilies::add($b, ':trumpet:', '&#x1F3BA;');
221
222 // Smileys that used to be in core
223
224 //      Smilies::add($b, ':headbang:', '&#x;');
225 //      Smilies::add($b, ':beard:', '&#x1F9D4;'); // Bad client support
226 //      Smilies::add($b, ':whitebeard:', '&#x;');
227 //      Smilies::add($b, ':shaka:', '&#x;');
228 //      Smilies::add($b, ':\\.../:', '&#x;');
229 //      Smilies::add($b, ':\\ooo/:', '&#x;');
230 //      Smilies::add($b, ':headdesk:', '&#x;');
231
232 // These two are still in core, so oldcore isn't strictly right, but we don't want too many directories
233
234 //      Smilies::add($b, ':-d:', '&#x;');
235         Smilies::add($b, ':-o:', '&#x1F62E;');
236
237 //      Regex killers - stick these at the bottom so they appear at the end of the English and
238 //      at the start of $OtherLanguage.
239
240 // Drinks
241
242         Smilies::add($b, ':tea:', '&#x2615;');
243         Smilies::add($b, ':tee:', '&#x2615;');
244 //      Smilies::add($b, ':drool:', '&#x1F924;'); // Bad client support
245
246         Smilies::add($b, ':cool:', '&#x1F192;');
247 //      Smilies::add($b, ':vomit:', '&#x1F92E;'); // Bad client support
248         Smilies::add($b, ':golf:', '&#x1F3CC;');
249         Smilies::add($b, ':football:', '&#x1F3C8;');
250         Smilies::add($b, ':tennis:', '&#x1F3BE;');
251 //      Smilies::add($b, ':alpha:', '&#x;');
252 //      Smilies::add($b, ':marine:', '&#x;');
253         Smilies::add($b, ':sabre:', '&#x1F5E1;');
254 //      Smilies::add($b, ':tank:', '&#x;');
255 //      Smilies::add($b, ':viking:', '&#x;');
256 //      Smilies::add($b, ':gangs:', '&#x;');
257 //      Smilies::add($b, ':dj:', '&#x;');
258 //      Smilies::add($b, ':elvis:', '&#x;');
259         Smilies::add($b, ':violin:', '&#x1F3BB;');
260
261
262 // Neu hinzugefügte Unicode Emoji von Matthias Ebers
263 // face-smiling
264         Smilies::add($b, ':grinning face:', '&#x1F600');
265         Smilies::add($b, ':grinning face with big eyes:', '&#x1F603');
266         Smilies::add($b, ':grinning face with smiling eyes:', '&#x1F604');
267         Smilies::add($b, ':beaming face with smiling eyes:', '&#x1F601');
268         Smilies::add($b, ':grinning squinting face:', '&#x1F606');
269         Smilies::add($b, ':laughing:', '&#x1F606');
270         Smilies::add($b, ':grinning face with sweat:', '&#x1F605');
271         Smilies::add($b, ':rolling on the floor laughing:', '&#x1F923');
272         Smilies::add($b, ':face with tears of joy:', '&#x1F602');
273         Smilies::add($b, ':slightly smiling face:', '&#x1F642');
274         Smilies::add($b, ':upside-down face:', '&#x1F643');
275         Smilies::add($b, ':winking face:', '&#x1F609');
276         Smilies::add($b, ':smiling face with smiling eyes:', '&#x1F60A');
277         Smilies::add($b, ':smiling face with halo:', '&#x1F607');
278
279 // face-affection
280         Smilies::add($b, ':smiling face with hearts:', '&#x1F970');
281         Smilies::add($b, ':smiling face with heart-eyes:', '&#x1F60D');
282         Smilies::add($b, ':star-struck:', '&#x1F929');
283         Smilies::add($b, ':face blowing a kiss:', '&#x1F618');
284         Smilies::add($b, ':kissing face:', '&#x1F617');
285         Smilies::add($b, ':smiling face:', '&#x263A');
286         Smilies::add($b, ':kissing face with closed eyes:', '&#x1F61A');
287         Smilies::add($b, ':kissing face with smiling eyes:', '&#x1F619');
288
289 // face-tongue
290         Smilies::add($b, ':face savoring food:', '&#x1F60B');
291         Smilies::add($b, ':face with tongue:', '&#x1F61B');
292         Smilies::add($b, ':winking face with tongue:', '&#x1F61C');
293         Smilies::add($b, ':zany face:', '&#x1F92A');
294         Smilies::add($b, ':squinting face with tongue:', '&#x1F61D');
295         Smilies::add($b, ':money-mouth face:', '&#x1F911');
296
297 // face-hand
298         Smilies::add($b, ':hugging face:', '&#x1F917');
299         Smilies::add($b, ':face with hand over mouth:', '&#x1F92D');
300         Smilies::add($b, ':shushing face:', '&#x1F92B');
301         Smilies::add($b, ':thinking face:', '&#x1F914');
302
303 // face-neutral-skeptical
304         Smilies::add($b, ':zipper-mouth face:', '&#x1F910');
305         Smilies::add($b, ':face with raised eyebrow:', '&#x1F928');
306         Smilies::add($b, ':neutral face:', '&#x1F610');
307         Smilies::add($b, ':expressionless face:', '&#x1F611');
308         Smilies::add($b, ':face without mouth:', '&#x1F636');
309         Smilies::add($b, ':smirking face:', '&#x1F60F');
310         Smilies::add($b, ':unamused face:', '&#x1F612');
311         Smilies::add($b, ':face with rolling eyes:', '&#x1F644');
312         Smilies::add($b, ':grimacing face:', '&#x1F62C');
313         Smilies::add($b, ':lying face:', '&#x1F925');
314
315 // face-sleepy
316         Smilies::add($b, ':relieved face:', '&#x1F60C');
317         Smilies::add($b, ':pensive face:', '&#x1F614');
318         Smilies::add($b, ':sleepy face:', '&#x1F62A');
319         Smilies::add($b, ':drooling face:', '&#x1F924');
320         Smilies::add($b, ':sleeping face:', '&#x1F634');
321
322 // face-unwell
323         Smilies::add($b, ':face with medical mask:', '&#x1F637');
324         Smilies::add($b, ':face with thermometer:', '&#x1F912');
325         Smilies::add($b, ':face with head-bandage:', '&#x1F915');
326         Smilies::add($b, ':nauseated face:', '&#x1F922');
327         Smilies::add($b, ':face vomiting:', '&#x1F92E');
328         Smilies::add($b, ':sneezing face:', '&#x1F927');
329         Smilies::add($b, ':hot face:', '&#x1F975');
330         Smilies::add($b, ':cold face:', '&#x1F976');
331         Smilies::add($b, ':woozy face:', '&#x1F974');
332         Smilies::add($b, ':dizzy face:', '&#x1F635');
333         Smilies::add($b, ':exploding head:', '&#x1F92F');
334
335 // face-hat
336         Smilies::add($b, ':cowboy hat face:', '&#x1F920');
337         Smilies::add($b, ':partying face:', '&#x1F973');
338
339 // face-glasses
340         Smilies::add($b, ':smiling face with sunglasses:', '&#x1F60E');
341         Smilies::add($b, ':nerd face:', '&#x1F913');
342         Smilies::add($b, ':face with monocle:', '&#x1F9D0');
343
344 // face-concerned
345         Smilies::add($b, ':confused face:', '&#x1F615');
346         Smilies::add($b, ':worried face:', '&#x1F61F');
347         Smilies::add($b, ':slightly frowning face:', '&#x1F641');
348         Smilies::add($b, ':frowning face:', '&#x2639');
349         Smilies::add($b, ':face with open mouth:', '&#x1F62E');
350         Smilies::add($b, ':hushed face:', '&#x1F62F');
351         Smilies::add($b, ':astonished face:', '&#x1F632');
352         Smilies::add($b, ':flushed face:', '&#x1F633');
353         Smilies::add($b, ':pleading face:', '&#x1F97A');
354         Smilies::add($b, ':frowning face with open mouth:', '&#x1F626');
355         Smilies::add($b, ':anguished face:', '&#x1F627');
356         Smilies::add($b, ':fearful face:', '&#x1F628');
357         Smilies::add($b, ':anxious face with sweat:', '&#x1F630');
358         Smilies::add($b, ':sad but relieved face:', '&#x1F625');
359         Smilies::add($b, ':crying face:', '&#x1F622');
360         Smilies::add($b, ':loudly crying face:', '&#x1F62D');
361         Smilies::add($b, ':face screaming in fear:', '&#x1F631');
362         Smilies::add($b, ':confounded face:', '&#x1F616');
363         Smilies::add($b, ':persevering face:', '&#x1F623');
364         Smilies::add($b, ':disappointed face:', '&#x1F61E');
365
366 // face-negative
367         Smilies::add($b, ':face with steam from nose:', '&#x1F624');
368         Smilies::add($b, ':pouting face:', '&#x1F621');
369         Smilies::add($b, ':angry face:', '&#x1F620');
370         Smilies::add($b, ':face with symbols on mouth:', '&#x1F92C');
371         Smilies::add($b, ':smiling face with horns:', '&#x1F608');
372         Smilies::add($b, ':angry face with horns:', '&#x1F47F');
373         Smilies::add($b, ':skull:', '&#x1F480');
374         Smilies::add($b, ':skull and crossbones:', '&#x2620');
375
376 // face-costume
377         Smilies::add($b, ':pile of poo:', '&#x1F4A9');
378         Smilies::add($b, ':clown face:', '&#x1F921');
379         Smilies::add($b, ':ogre:', '&#x1F479');
380         Smilies::add($b, ':goblin:', '&#x1F47A');
381         Smilies::add($b, ':ghost:', '&#x1F47B');
382         Smilies::add($b, ':alien:', '&#x1F47D');
383         Smilies::add($b, ':alien monster:', '&#x1F47E');
384         Smilies::add($b, ':robot:', '&#x1F916');
385
386 // cat-face
387         Smilies::add($b, ':grinning cat:', '&#x1F63A');
388         Smilies::add($b, ':grinning cat with smiling eyes:', '&#x1F638');
389         Smilies::add($b, ':cat with tears of joy:', '&#x1F639');
390         Smilies::add($b, ':smiling cat with heart-eyes:', '&#x1F63B');
391         Smilies::add($b, ':cat with wry smile:', '&#x1F63C');
392         Smilies::add($b, ':kissing cat:', '&#x1F63D');
393         Smilies::add($b, ':weary cat:', '&#x1F640');
394         Smilies::add($b, ':crying cat:', '&#x1F63F');
395         Smilies::add($b, ':pouting cat:', '&#x1F63E');
396
397 // monkey-face
398         Smilies::add($b, ':see-no-evil monkey:', '&#x1F648');
399         Smilies::add($b, ':hear-no-evil monkey:', '&#x1F649');
400         Smilies::add($b, ':speak-no-evil monkey:', '&#x1F64A');
401
402 //emotion
403         Smilies::add($b, ':kiss mark:', '&#x1F48B');
404         Smilies::add($b, ':love letter:', '&#x1F48C');
405         Smilies::add($b, ':heart with arrow:', '&#x1F498');
406         Smilies::add($b, ':heart with ribbon:', '&#x1F49D');
407         Smilies::add($b, ':sparkling heart:', '&#x1F496');
408         Smilies::add($b, ':growing heart:', '&#x1F497');
409         Smilies::add($b, ':beating heart:', '&#x1F493');
410         Smilies::add($b, ':revolving hearts:', '&#x1F49E');
411         Smilies::add($b, ':two hearts:', '&#x1F495');
412         Smilies::add($b, ':heart decoration:', '&#x1F49F');
413         Smilies::add($b, ':heart exclamation:', '&#x2763');
414         Smilies::add($b, ':broken heart:', '&#x1F494');
415         Smilies::add($b, ':red heart:', '&#x2764');
416         Smilies::add($b, ':orange heart:', '&#x1F9E1');
417         Smilies::add($b, ':yellow heart:', '&#x1F49B');
418         Smilies::add($b, ':green heart:', '&#x1F49A');
419         Smilies::add($b, ':blue heart:', '&#x1F499');
420         Smilies::add($b, ':purple heart:', '&#x1F49C');
421 //      Smilies::add($b, ':brown heart:', '&#x1F90E');
422         Smilies::add($b, ':black heart:', '&#x1F5A4');
423 //      Smilies::add($b, ':white heart:', '&#x1F90D');
424         Smilies::add($b, ':hundred points:', '&#x1F4AF');
425         Smilies::add($b, ':anger symbol:', '&#x1F4A2');
426         Smilies::add($b, ':collision:', '&#x1F4A5');
427         Smilies::add($b, ':dizzy:', '&#x1F4AB');
428         Smilies::add($b, ':sweat droplets:', '&#x1F4A6');
429         Smilies::add($b, ':dashing away:', '&#x1F4A8');
430         Smilies::add($b, ':hole:', '&#x1F573');
431         Smilies::add($b, ':bomb:', '&#x1F4A3');
432         Smilies::add($b, ':speech balloon:', '&#x1F4AC');
433         Smilies::add($b, ':left speech bubble:', '&#x1F5E8');
434         Smilies::add($b, ':right anger bubble:', '&#x1F5EF');
435         Smilies::add($b, ':thought balloon:', '&#x1F4AD');
436         Smilies::add($b, ':zzz:', '&#x1F4A4');
437
438 // People & Body
439 // hand-fingers-open
440         Smilies::add($b, ':waving hand:', '&#x1F44B');
441         Smilies::add($b, ':raised back of hand:', '&#x1F91A');
442         Smilies::add($b, ':hand with fingers splayed:', '&#x1F590');
443         Smilies::add($b, ':raised hand:', '&#x270B');
444         Smilies::add($b, ':vulcan salute:', '&#x1F596');
445
446 // hand-fingers-partial
447         Smilies::add($b, ':OK hand:', '&#x1F44C');
448 //      Smilies::add($b, ':pinching hand:', '&#x1F90F');
449         Smilies::add($b, ':victory hand:', '&#x270C');
450         Smilies::add($b, ':crossed fingers:', '&#x1F91E');
451         Smilies::add($b, ':love-you gesture:', '&#x1F91F');
452         Smilies::add($b, ':sign of the horns:', '&#x1F918');
453         Smilies::add($b, ':call me hand:', '&#x1F919');
454
455 // hand-single-finger
456         Smilies::add($b, ':backhand index pointing left:', '&#x1F448');
457         Smilies::add($b, ':backhand index pointing right:', '&#x1F449');
458         Smilies::add($b, ':backhand index pointing up:', '&#x1F446');
459         Smilies::add($b, ':middle finger:', '&#x1F595');
460         Smilies::add($b, ':backhand index pointing down:', '&#x1F447');
461         Smilies::add($b, ':index pointing up:', '&#x261D');
462
463 // hand-fingers-closed
464         Smilies::add($b, ':thumbs up:', '&#x1F44D');
465         Smilies::add($b, ':thumbs down:', '&#x1F44E');
466         Smilies::add($b, ':raised fist:', '&#x270A');
467         Smilies::add($b, ':oncoming fist:', '&#x1F44A');
468         Smilies::add($b, ':left-facing fist:', '&#x1F91B');
469         Smilies::add($b, ':right-facing fist:', '&#x1F91C');
470
471 // hands
472         Smilies::add($b, ':clapping hands:', '&#x1F44F');
473         Smilies::add($b, ':raising hands:', '&#x1F64C');
474         Smilies::add($b, ':open hands:', '&#x1F450');
475         Smilies::add($b, ':palms up together:', '&#x1F932');
476         Smilies::add($b, ':handshake:', '&#x1F91D');
477         Smilies::add($b, ':folded hands:', '&#x1F64F');
478
479 // hand-prop
480         Smilies::add($b, ':writing hand:', '&#x270D');
481         Smilies::add($b, ':nail polish:', '&#x1F485');
482         Smilies::add($b, ':selfie:', '&#x1F933');
483
484 // body-parts
485         Smilies::add($b, ':flexed biceps:', '&#x1F4AA');
486 //      Smilies::add($b, ':mechanical arm:', '&#x1F9BE');
487 //      Smilies::add($b, ':mechanical leg:', '&#x1F9BF');
488         Smilies::add($b, ':leg:', '&#x1F9B5');
489         Smilies::add($b, ':foot:', '&#x1F9B6');
490         Smilies::add($b, ':ear:', '&#x1F442');
491 //      Smilies::add($b, ':ear with hearing aid:', '&#x1F9BB');
492         Smilies::add($b, ':nose:', '&#x1F443');
493         Smilies::add($b, ':brain:', '&#x1F9E0');
494         Smilies::add($b, ':tooth:', '&#x1F9B7');
495         Smilies::add($b, ':bone:', '&#x1F9B4');
496         Smilies::add($b, ':eyes:', '&#x1F440');
497         Smilies::add($b, ':eye:', '&#x1F441');
498         Smilies::add($b, ':tongue:', '&#x1F445');
499         Smilies::add($b, ':mouth:', '&#x1F444');
500
501 // person
502         Smilies::add($b, ':baby:', '&#x1F476');
503         Smilies::add($b, ':child:', '&#x1F9D2');
504         Smilies::add($b, ':boy:', '&#x1F466');
505         Smilies::add($b, ':girl:', '&#x1F467');
506         Smilies::add($b, ':person:', '&#x1F9D1');
507         Smilies::add($b, ':person: blond hair:', '&#x1F471');
508         Smilies::add($b, ':man:', '&#x1F468');
509         Smilies::add($b, ':man: beard:', '&#x1F9D4');
510         Smilies::add($b, ':man: red hair:', '&#x1F468&#x200D&#x1F9B0');
511         Smilies::add($b, ':man: curly hair:', '&#x1F468&#x200D&#x1F9B1');
512         Smilies::add($b, ':man: white hair:', '&#x1F468&#x200D&#x1F9B3');
513         Smilies::add($b, ':man: bald:', '&#x1F468&#x200D&#x1F9B2');
514         Smilies::add($b, ':woman:', '&#x1F469');
515         Smilies::add($b, ':woman: red hair:', '&#x1F469&#x200D&#x1F9B0');
516         Smilies::add($b, ':⊛ person: red hair:', '&#x1F9D1&#x200D&#x1F9B0');
517         Smilies::add($b, ':woman: curly hair:', '&#x1F469&#x200D&#x1F9B1');
518         Smilies::add($b, ':⊛ person: curly hair:', '&#x1F9D1&#x200D&#x1F9B1');
519         Smilies::add($b, ':woman: white hair:', '&#x1F469&#x200D&#x1F9B3');
520         Smilies::add($b, ':⊛ person: white hair:', '&#x1F9D1&#x200D&#x1F9B3');
521         Smilies::add($b, ':woman: bald:', '&#x1F469&#x200D&#x1F9B2');
522         Smilies::add($b, ':bald::', '&#x1F9D1&#x200D&#x1F9B2');
523         Smilies::add($b, ':woman: blond hair:', '&#x1F471&#x200D&#x2640&#xFE0F');
524         Smilies::add($b, ':man: blond hair:', '&#x1F471&#x200D&#x2642&#xFE0F');
525         Smilies::add($b, ':older person:', '&#x1F9D3');
526         Smilies::add($b, ':old man:', '&#x1F474');
527         Smilies::add($b, ':old woman:', '&#x1F475');
528
529 // person-gesture
530         Smilies::add($b, ':person frowning:', '&#x1F64D');
531         Smilies::add($b, ':man frowning:', '&#x1F64D&#x200D&#x2642&#xFE0F');
532         Smilies::add($b, ':woman frowning:', '&#x1F64D&#x200D&#x2640&#xFE0F');
533         Smilies::add($b, ':person pouting:', '&#x1F64E');
534         Smilies::add($b, ':man pouting:', '&#x1F64E&#x200D&#x2642&#xFE0F');
535         Smilies::add($b, ':woman pouting:', '&#x1F64E&#x200D&#x2640&#xFE0F');
536         Smilies::add($b, ':person gesturing NO:', '&#x1F645');
537         Smilies::add($b, ':man gesturing NO:', '&#x1F645&#x200D&#x2642&#xFE0F');
538         Smilies::add($b, ':woman gesturing NO:', '&#x1F645&#x200D&#x2640&#xFE0F');
539         Smilies::add($b, ':person gesturing OK:', '&#x1F646');
540         Smilies::add($b, ':man gesturing OK:', '&#x1F646&#x200D&#x2642&#xFE0F');
541         Smilies::add($b, ':woman gesturing OK:', '&#x1F646&#x200D&#x2640&#xFE0F');
542         Smilies::add($b, ':person tipping hand:', '&#x1F481');
543         Smilies::add($b, ':man tipping hand:', '&#x1F481&#x200D&#x2642&#xFE0F');
544         Smilies::add($b, ':woman tipping hand:', '&#x1F481&#x200D&#x2640&#xFE0F');
545         Smilies::add($b, ':person raising hand:', '&#x1F64B');
546         Smilies::add($b, ':man raising hand:', '&#x1F64B&#x200D&#x2642&#xFE0F');
547         Smilies::add($b, ':woman raising hand', '&#x1F64B&#x200D&#x2640&#xFE0F');
548 //      Smilies::add($b, ':deaf person:', '&#x1F9CF');
549 //      Smilies::add($b, ':deaf man:', '&#x1F9CF&#x200D&#x2642&#xFE0F');
550 //      Smilies::add($b, ':deaf woman:', '&#x1F9CF&#x200D&#x2640&#xFE0F');
551         Smilies::add($b, ':person bowing:', '&#x1F647');
552         Smilies::add($b, ':man bowing:', '&#x1F647&#x200D&#x2642&#xFE0F');
553         Smilies::add($b, ':woman bowing:', '&#x1F647&#x200D&#x2640&#xFE0F');
554         Smilies::add($b, ':person facepalming:', '&#x1F926');
555         Smilies::add($b, ':man facepalming:', '&#x1F926&#x200D&#x2642&#xFE0F');
556         Smilies::add($b, ':woman facepalming:', '&#x1F926&#x200D&#x2640&#xFE0F');
557         Smilies::add($b, ':person shrugging:', '&#x1F937');
558         Smilies::add($b, ':man shrugging:', '&#x1F937&#x200D&#x2642&#xFE0F');
559         Smilies::add($b, ':woman shrugging:', '&#x1F937&#x200D&#x2640&#xFE0F');
560
561 // person-role
562
563 // person-fantasy
564         Smilies::add($b, ':baby angel:', '&#x1F47C');
565         Smilies::add($b, ':Santa Claus:', '&#x1F385');
566         Smilies::add($b, ':Mrs. Claus:', '&#x1F936');
567         Smilies::add($b, ':superhero:', '&#x1F9B8');
568         Smilies::add($b, ':man superhero:', '&#x1F9B8&#x200D&#x2642&#xFE0F');
569         Smilies::add($b, ':woman superhero:', '&#x1F9B8&#x200D&#x2640&#xFE0F');
570         Smilies::add($b, ':supervillain:', '&#x1F9B9');
571         Smilies::add($b, ':man supervillain:', '&#x1F9B9&#x200D&#x2642&#xFE0F');
572         Smilies::add($b, ':woman supervillain:', '&#x1F9B9&#x200D&#x2640&#xFE0F');
573         Smilies::add($b, ':mage:', '&#x1F9D9');
574         Smilies::add($b, ':man mage:', '&#x1F9D9&#x200D&#x2642&#xFE0F');
575         Smilies::add($b, ':woman mage:', '&#x1F9D9&#x200D&#x2640&#xFE0F');
576         Smilies::add($b, ':fairy:', '&#x1F9DA');
577         Smilies::add($b, ':man fairy:', '&#x1F9DA&#x200D&#x2642&#xFE0F');
578         Smilies::add($b, ':woman fairy:', '&#x1F9DA&#x200D&#x2640&#xFE0F');
579         Smilies::add($b, ':vampire:', '&#x1F9DB');
580         Smilies::add($b, ':man vampire:', '&#x1F9DB&#x200D&#x2642&#xFE0F');
581         Smilies::add($b, ':woman vampire:', '&#x1F9DB&#x200D&#x2640&#xFE0F');
582         Smilies::add($b, ':merperson:', '&#x1F9DC');
583         Smilies::add($b, ':merman:', '&#x1F9DC&#x200D&#x2642&#xFE0F');
584         Smilies::add($b, ':mermaid:', '&#x1F9DC&#x200D&#x2640&#xFE0F');
585         Smilies::add($b, ':elf:', '&#x1F9DD');
586         Smilies::add($b, ':man elf:', '&#x1F9DD&#x200D&#x2642&#xFE0F');
587         Smilies::add($b, ':woman elf:', '&#x1F9DD&#x200D&#x2640&#xFE0F');
588         Smilies::add($b, ':genie:', '&#x1F9DE');
589         Smilies::add($b, ':man genie:', '&#x1F9DE&#x200D&#x2642&#xFE0F');
590         Smilies::add($b, ':woman genie:', '&#x1F9DE&#x200D&#x2640&#xFE0F');
591         Smilies::add($b, ':zombie:', '&#x1F9DF');
592         Smilies::add($b, ':man zombie:', '&#x1F9DF&#x200D&#x2642&#xFE0F');
593         Smilies::add($b, ':woman zombie:', '&#x1F9DF&#x200D&#x2640&#xFE0F');
594
595 // person-activity
596
597 // person-sport
598
599 // person-resting
600
601 // family
602         Smilies::add($b, ':people holding hands:', '&#x1F9D1&#x200D&#x1F91D&#x200D&#x1F9D1');
603         Smilies::add($b, ':women holding hands:', '&#x1F46D');
604         Smilies::add($b, ':woman and man holding hands:', '&#x1F46B');
605         Smilies::add($b, ':men holding hands:', '&#x1F46C');
606         Smilies::add($b, ':kiss:', '&#x1F48F');
607         Smilies::add($b, ':couple with heart:', '&#x1F491');
608         Smilies::add($b, ':family:', '&#x1F46A');
609
610 // person-symbol
611         Smilies::add($b, ':speaking head:', '&#x1F5E3');
612         Smilies::add($b, ':bust in silhouette:', '&#x1F464');
613         Smilies::add($b, ':busts in silhouette:', '&#x1F465');
614         Smilies::add($b, ':footprints:', '&#x1F463');
615
616 // Component
617 // hair-style
618
619 // Animals & Nature
620 // animal-mammal
621         Smilies::add($b, ':monkey face:', '&#x1F435');
622         Smilies::add($b, ':monkey:', '&#x1F412');
623         Smilies::add($b, ':gorilla:', '&#x1F98D');
624 //      Smilies::add($b, ':orangutan:', '&#x1F9A7');
625         Smilies::add($b, ':dog face:', '&#x1F436');
626         Smilies::add($b, ':dog:', '&#x1F415');
627 //      Smilies::add($b, ':guide dog:', '&#x1F9AE');
628         Smilies::add($b, ':poodle:', '&#x1F429');
629         Smilies::add($b, ':wolf:', '&#x1F43A');
630         Smilies::add($b, ':fox:', '&#x1F98A');
631         Smilies::add($b, ':raccoon:', '&#x1F99D');
632         Smilies::add($b, ':cat face:', '&#x1F431');
633         Smilies::add($b, ':cat:', '&#x1F408');
634         Smilies::add($b, ':lion:', '&#x1F981');
635         Smilies::add($b, ':tiger face:', '&#x1F42F');
636         Smilies::add($b, ':tiger:', '&#x1F405');
637         Smilies::add($b, ':leopard:', '&#x1F406');
638         Smilies::add($b, ':horse face:', '&#x1F434');
639         Smilies::add($b, ':horse:', '&#x1F40E');
640         Smilies::add($b, ':unicorn:', '&#x1F984');
641         Smilies::add($b, ':zebra:', '&#x1F993');
642         Smilies::add($b, ':deer:', '&#x1F98C');
643         Smilies::add($b, ':cow face:', '&#x1F42E');
644         Smilies::add($b, ':ox:', '&#x1F402');
645         Smilies::add($b, ':water buffalo:', '&#x1F403');
646         Smilies::add($b, ':cow:', '&#x1F404');
647         Smilies::add($b, ':pig face:', '&#x1F437');
648         Smilies::add($b, ':pig:', '&#x1F416');
649         Smilies::add($b, ':boar:', '&#x1F417');
650         Smilies::add($b, ':pig nose:', '&#x1F43D');
651         Smilies::add($b, ':ram:', '&#x1F40F');
652         Smilies::add($b, ':ewe:', '&#x1F411');
653         Smilies::add($b, ':goat:', '&#x1F410');
654         Smilies::add($b, ':camel:', '&#x1F42A');
655         Smilies::add($b, ':two-hump camel:', '&#x1F42B');
656         Smilies::add($b, ':llama:', '&#x1F999');
657         Smilies::add($b, ':giraffe:', '&#x1F992');
658         Smilies::add($b, ':elephant:', '&#x1F418');
659         Smilies::add($b, ':rhinoceros:', '&#x1F98F');
660         Smilies::add($b, ':hippopotamus:', '&#x1F99B');
661         Smilies::add($b, ':mouse face:', '&#x1F42D');
662         Smilies::add($b, ':mouse:', '&#x1F401');
663         Smilies::add($b, ':rat:', '&#x1F400');
664         Smilies::add($b, ':hamster:', '&#x1F439');
665         Smilies::add($b, ':rabbit face:', '&#x1F430');
666         Smilies::add($b, ':rabbit:', '&#x1F407');
667         Smilies::add($b, ':chipmunk:', '&#x1F43F');
668         Smilies::add($b, ':hedgehog:', '&#x1F994');
669         Smilies::add($b, ':bat:', '&#x1F987');
670         Smilies::add($b, ':bear:', '&#x1F43B');
671         Smilies::add($b, ':koala:', '&#x1F428');
672         Smilies::add($b, ':panda:', '&#x1F43C');
673 //      Smilies::add($b, ':sloth:', '&#x1F9A5');
674 //      Smilies::add($b, ':otter:', '&#x1F9A6');
675 //      Smilies::add($b, ':skunk:', '&#x1F9A8');
676 //      Smilies::add($b, ':kangaroo:', '&#x1F998');
677         Smilies::add($b, ':badger:', '&#x1F9A1');
678         Smilies::add($b, ':paw prints:', '&#x1F43E');
679
680 // animal-bird
681         Smilies::add($b, ':turkey:', '&#x1F983');
682         Smilies::add($b, ':chicken:', '&#x1F414');
683         Smilies::add($b, ':rooster:', '&#x1F413');
684         Smilies::add($b, ':hatching chick:', '&#x1F423');
685         Smilies::add($b, ':baby chick:', '&#x1F424');
686         Smilies::add($b, ':front-facing baby chick:', '&#x1F425');
687         Smilies::add($b, ':bird:', '&#x1F426');
688         Smilies::add($b, ':penguin:', '&#x1F427');
689         Smilies::add($b, ':dove:', '&#x1F54A');
690         Smilies::add($b, ':eagle:', '&#x1F985');
691         Smilies::add($b, ':duck:', '&#x1F986');
692         Smilies::add($b, ':swan:', '&#x1F9A2');
693         Smilies::add($b, ':owl:', '&#x1F989');
694 //      Smilies::add($b, ':flamingo:', '&#x1F9A9');
695         Smilies::add($b, ':peacock:', '&#x1F99A');
696         Smilies::add($b, ':parrot:', '&#x1F99C');
697
698 // animal-amphibian
699         Smilies::add($b, ':frog:', '&#x1F438');
700
701 // animal-reptile
702         Smilies::add($b, ':crocodile:', '&#x1F40A');
703         Smilies::add($b, ':turtle:', '&#x1F422');
704         Smilies::add($b, ':lizard:', '&#x1F98E');
705         Smilies::add($b, ':snake:', '&#x1F40D');
706         Smilies::add($b, ':dragon face:', '&#x1F432');
707         Smilies::add($b, ':dragon:', '&#x1F409');
708         Smilies::add($b, ':sauropod:', '&#x1F995');
709         Smilies::add($b, ':T-Rex:', '&#x1F996');
710
711 // animal-marine
712         Smilies::add($b, ':spouting whale:', '&#x1F433');
713         Smilies::add($b, ':whale:', '&#x1F40B');
714         Smilies::add($b, ':dolphin:', '&#x1F42C');
715         Smilies::add($b, ':fish:', '&#x1F41F');
716         Smilies::add($b, ':tropical fish:', '&#x1F420');
717         Smilies::add($b, ':blowfish:', '&#x1F421');
718         Smilies::add($b, ':shark:', '&#x1F988');
719         Smilies::add($b, ':octopus:', '&#x1F419');
720         Smilies::add($b, ':spiral shell:', '&#x1F41A');
721
722 // animal-bug
723         Smilies::add($b, ':snail:', '&#x1F40C');
724         Smilies::add($b, ':butterfly:', '&#x1F98B');
725         Smilies::add($b, ':bug:', '&#x1F41B');
726         Smilies::add($b, ':ant:', '&#x1F41C');
727         Smilies::add($b, ':honeybee:', '&#x1F41D');
728         Smilies::add($b, ':lady beetle:', '&#x1F41E');
729         Smilies::add($b, ':cricket:', '&#x1F997');
730         Smilies::add($b, ':spider:', '&#x1F577');
731         Smilies::add($b, ':spider web:', '&#x1F578');
732         Smilies::add($b, ':scorpion:', '&#x1F982');
733         Smilies::add($b, ':mosquito:', '&#x1F99F');
734         Smilies::add($b, ':microbe:', '&#x1F9A0');
735
736 // plant-flower
737         Smilies::add($b, ':bouquet:', '&#x1F490');
738         Smilies::add($b, ':cherry blossom:', '&#x1F338');
739         Smilies::add($b, ':white flower:', '&#x1F4AE');
740         Smilies::add($b, ':rosette:', '&#x1F3F5');
741         Smilies::add($b, ':rose:', '&#x1F339');
742         Smilies::add($b, ':wilted flower:', '&#x1F940');
743         Smilies::add($b, ':hibiscus:', '&#x1F33A');
744         Smilies::add($b, ':sunflower:', '&#x1F33B');
745         Smilies::add($b, ':blossom:', '&#x1F33C');
746         Smilies::add($b, ':tulip:', '&#x1F337');
747
748 // plant-other
749         Smilies::add($b, ':seedling:', '&#x1F331');
750         Smilies::add($b, ':evergreen tree:', '&#x1F332');
751         Smilies::add($b, ':deciduous tree:', '&#x1F333');
752         Smilies::add($b, ':palm tree:', '&#x1F334');
753         Smilies::add($b, ':cactus:', '&#x1F335');
754         Smilies::add($b, ':sheaf of rice:', '&#x1F33E');
755         Smilies::add($b, ':herb:', '&#x1F33F');
756         Smilies::add($b, ':shamrock:', '&#x2618');
757         Smilies::add($b, ':four leaf clover:', '&#x1F340');
758         Smilies::add($b, ':maple leaf:', '&#x1F341');
759         Smilies::add($b, ':fallen leaf:', '&#x1F342');
760         Smilies::add($b, ':leaf fluttering in wind:', '&#x1F343');
761
762 // Food & Drink
763 // food-fruit
764         Smilies::add($b, ':grapes:', '&#x1F347');
765         Smilies::add($b, ':melon:', '&#x1F348');
766         Smilies::add($b, ':watermelon:', '&#x1F349');
767         Smilies::add($b, ':tangerine:', '&#x1F34A');
768         Smilies::add($b, ':lemon:', '&#x1F34B');
769         Smilies::add($b, ':banana:', '&#x1F34C');
770         Smilies::add($b, ':pineapple:', '&#x1F34D');
771         Smilies::add($b, ':mango:', '&#x1F96D');
772         Smilies::add($b, ':red apple:', '&#x1F34E');
773         Smilies::add($b, ':green apple:', '&#x1F34F');
774         Smilies::add($b, ':pear:', '&#x1F350');
775         Smilies::add($b, ':peach:', '&#x1F351');
776         Smilies::add($b, ':cherries:', '&#x1F352');
777         Smilies::add($b, ':strawberry:', '&#x1F353');
778         Smilies::add($b, ':kiwi fruit:', '&#x1F95D');
779         Smilies::add($b, ':tomato:', '&#x1F345');
780         Smilies::add($b, ':coconut:', '&#x1F965');
781
782 // food-vegetable
783         Smilies::add($b, ':avocado:', '&#x1F951');
784         Smilies::add($b, ':eggplant:', '&#x1F346');
785         Smilies::add($b, ':potato:', '&#x1F954');
786         Smilies::add($b, ':carrot:', '&#x1F955');
787         Smilies::add($b, ':ear of corn:', '&#x1F33D');
788         Smilies::add($b, ':hot pepper:', '&#x1F336');
789         Smilies::add($b, ':cucumber:', '&#x1F952');
790         Smilies::add($b, ':leafy green:', '&#x1F96C');
791         Smilies::add($b, ':broccoli:', '&#x1F966');
792 //      Smilies::add($b, ':garlic:', '&#x1F9C4');
793 //      Smilies::add($b, ':onion:', '&#x1F9C5');
794         Smilies::add($b, ':mushroom:', '&#x1F344');
795         Smilies::add($b, ':peanuts:', '&#x1F95C');
796         Smilies::add($b, ':chestnut:', '&#x1F330');
797
798 // food-prepared
799         Smilies::add($b, ':bread:', '&#x1F35E');
800         Smilies::add($b, ':croissant:', '&#x1F950');
801         Smilies::add($b, ':baguette bread:', '&#x1F956');
802         Smilies::add($b, ':pretzel:', '&#x1F968');
803         Smilies::add($b, ':bagel:', '&#x1F96F');
804         Smilies::add($b, ':pancakes:', '&#x1F95E');
805 //      Smilies::add($b, ':waffle:', '&#x1F9C7');
806         Smilies::add($b, ':cheese wedge:', '&#x1F9C0');
807         Smilies::add($b, ':meat on bone:', '&#x1F356');
808         Smilies::add($b, ':poultry leg:', '&#x1F357');
809         Smilies::add($b, ':cut of meat:', '&#x1F969');
810         Smilies::add($b, ':bacon:', '&#x1F953');
811         Smilies::add($b, ':hamburger:', '&#x1F354');
812         Smilies::add($b, ':french fries:', '&#x1F35F');
813         Smilies::add($b, ':pizza:', '&#x1F355');
814         Smilies::add($b, ':hot dog:', '&#x1F32D');
815         Smilies::add($b, ':sandwich:', '&#x1F96A');
816         Smilies::add($b, ':taco:', '&#x1F32E');
817         Smilies::add($b, ':burrito:', '&#x1F32F');
818         Smilies::add($b, ':stuffed flatbread:', '&#x1F959');
819 //      Smilies::add($b, ':falafel:', '&#x1F9C6');
820         Smilies::add($b, ':egg:', '&#x1F95A');
821         Smilies::add($b, ':cooking:', '&#x1F373');
822         Smilies::add($b, ':shallow pan of food:', '&#x1F958');
823         Smilies::add($b, ':pot of food:', '&#x1F372');
824         Smilies::add($b, ':bowl with spoon:', '&#x1F963');
825         Smilies::add($b, ':green salad:', '&#x1F957');
826         Smilies::add($b, ':popcorn:', '&#x1F37F');
827 //      Smilies::add($b, ':butter:', '&#x1F9C8');
828         Smilies::add($b, ':salt:', '&#x1F9C2');
829         Smilies::add($b, ':canned food:', '&#x1F96B');
830
831 // food-asian
832         Smilies::add($b, ':bento box:', '&#x1F371');
833         Smilies::add($b, ':rice cracker:', '&#x1F358');
834         Smilies::add($b, ':rice ball:', '&#x1F359');
835         Smilies::add($b, ':cooked rice:', '&#x1F35A');
836         Smilies::add($b, ':curry rice:', '&#x1F35B');
837         Smilies::add($b, ':steaming bowl:', '&#x1F35C');
838         Smilies::add($b, ':spaghetti:', '&#x1F35D');
839         Smilies::add($b, ':roasted sweet potato:', '&#x1F360');
840         Smilies::add($b, ':oden:', '&#x1F362');
841         Smilies::add($b, ':sushi:', '&#x1F363');
842         Smilies::add($b, ':fried shrimp:', '&#x1F364');
843         Smilies::add($b, ':fish cake with swirl:', '&#x1F365');
844         Smilies::add($b, ':moon cake:', '&#x1F96E');
845         Smilies::add($b, ':dango:', '&#x1F361');
846         Smilies::add($b, ':dumpling:', '&#x1F95F');
847         Smilies::add($b, ':fortune cookie:', '&#x1F960');
848         Smilies::add($b, ':takeout box:', '&#x1F961');
849
850 // food-marine
851         Smilies::add($b, ':crab:', '&#x1F980');
852         Smilies::add($b, ':lobster:', '&#x1F99E');
853         Smilies::add($b, ':shrimp:', '&#x1F990');
854         Smilies::add($b, ':squid:', '&#x1F991');
855 //      Smilies::add($b, ':oyster:', '&#x1F9AA');
856
857 // food-sweet
858         Smilies::add($b, ':soft ice cream:', '&#x1F366');
859         Smilies::add($b, ':shaved ice:', '&#x1F367');
860         Smilies::add($b, ':ice cream:', '&#x1F368');
861         Smilies::add($b, ':doughnut:', '&#x1F369');
862         Smilies::add($b, ':cookie:', '&#x1F36A');
863         Smilies::add($b, ':birthday cake:', '&#x1F382');
864         Smilies::add($b, ':shortcake:', '&#x1F370');
865         Smilies::add($b, ':cupcake:', '&#x1F9C1');
866         Smilies::add($b, ':pie:', '&#x1F967');
867         Smilies::add($b, ':chocolate bar:', '&#x1F36B');
868         Smilies::add($b, ':candy:', '&#x1F36C');
869         Smilies::add($b, ':lollipop:', '&#x1F36D');
870         Smilies::add($b, ':custard:', '&#x1F36E');
871         Smilies::add($b, ':honey pot:', '&#x1F36F');
872
873 // drink  
874         Smilies::add($b, ':baby bottle:', '&#x1F37C');
875         Smilies::add($b, ':glass of milk:', '&#x1F95B');
876         Smilies::add($b, ':hot beverage:', '&#x2615');
877         Smilies::add($b, ':teacup without handle:', '&#x1F375');
878         Smilies::add($b, ':sake:', '&#x1F376');
879         Smilies::add($b, ':bottle with popping cork:', '&#x1F37E');
880         Smilies::add($b, ':wine glass:', '&#x1F377');
881         Smilies::add($b, ':cocktail glass:', '&#x1F378');
882         Smilies::add($b, ':tropical drink:', '&#x1F379');
883         Smilies::add($b, ':beer mug:', '&#x1F37A');
884         Smilies::add($b, ':clinking beer mugs:', '&#x1F37B');
885         Smilies::add($b, ':clinking glasses:', '&#x1F942');
886         Smilies::add($b, ':tumbler glass:', '&#x1F943');
887         Smilies::add($b, ':cup with straw:', '&#x1F964');
888 //      Smilies::add($b, ':beverage box:', '&#x1F9C3');
889 //      Smilies::add($b, ':mate:', '&#x1F9C9');
890 //      Smilies::add($b, ':ice:', '&#x1F9CA');
891
892 // dishware
893         Smilies::add($b, ':chopsticks:', '&#x1F962');
894         Smilies::add($b, ':fork and knife with plate:', '&#x1F37D');
895         Smilies::add($b, ':fork and knife:', '&#x1F374');
896         Smilies::add($b, ':spoon:', '&#x1F944');
897         Smilies::add($b, ':kitchen knife:', '&#x1F52A');
898         Smilies::add($b, ':amphora:', '&#x1F3FA');
899
900 // Travel & Places
901 // place-map
902         Smilies::add($b, ':globe showing Europe-Africa:', '&#x1F30D');
903         Smilies::add($b, ':globe showing Americas:', '&#x1F30E');
904         Smilies::add($b, ':globe showing Asia-Australia:', '&#x1F30F');
905         Smilies::add($b, ':globe with meridians:', '&#x1F310');
906         Smilies::add($b, ':world map:', '&#x1F5FA');
907         Smilies::add($b, ':map of Japan:', '&#x1F5FE');
908         Smilies::add($b, ':compass:', '&#x1F9ED');
909
910 // place-geographic
911         Smilies::add($b, ':snow-capped mountain:', '&#x1F3D4');
912         Smilies::add($b, ':mountain:', '&#x26F0');
913         Smilies::add($b, ':volcano:', '&#x1F30B');
914         Smilies::add($b, ':mount fuji:', '&#x1F5FB');
915         Smilies::add($b, ':camping:', '&#x1F3D5');
916         Smilies::add($b, ':beach with umbrella:', '&#x1F3D6');
917         Smilies::add($b, ':desert:', '&#x1F3DC');
918         Smilies::add($b, ':desert island:', '&#x1F3DD');
919         Smilies::add($b, ':national park:', '&#x1F3DE');
920
921 // place-building
922         Smilies::add($b, ':stadium:', '&#x1F3DF');
923         Smilies::add($b, ':classical building:', '&#x1F3DB');
924         Smilies::add($b, ':building construction:', '&#x1F3D7');
925         Smilies::add($b, ':brick:', '&#x1F9F1');
926         Smilies::add($b, ':houses:', '&#x1F3D8');
927         Smilies::add($b, ':derelict house:', '&#x1F3DA');
928         Smilies::add($b, ':house:', '&#x1F3E0');
929         Smilies::add($b, ':house with garden:', '&#x1F3E1');
930         Smilies::add($b, ':office building:', '&#x1F3E2');
931         Smilies::add($b, ':Japanese post office:', '&#x1F3E3');
932         Smilies::add($b, ':post office:', '&#x1F3E4');
933         Smilies::add($b, ':hospital:', '&#x1F3E5');
934         Smilies::add($b, ':bank:', '&#x1F3E6');
935         Smilies::add($b, ':hotel:', '&#x1F3E8');
936         Smilies::add($b, ':love hotel:', '&#x1F3E9');
937         Smilies::add($b, ':convenience store:', '&#x1F3EA');
938         Smilies::add($b, ':school:', '&#x1F3EB');
939         Smilies::add($b, ':department store:', '&#x1F3EC');
940         Smilies::add($b, ':factory:', '&#x1F3ED');
941         Smilies::add($b, ':Japanese castle:', '&#x1F3EF');
942         Smilies::add($b, ':castle:', '&#x1F3F0');
943         Smilies::add($b, ':wedding:', '&#x1F492');
944         Smilies::add($b, ':Tokyo tower:', '&#x1F5FC');
945         Smilies::add($b, ':Statue of Liberty:', '&#x1F5FD');
946
947
948 // place-religious
949         Smilies::add($b, ':church:', '&#x26EA');
950         Smilies::add($b, ':mosque:', '&#x1F54C');
951 //      Smilies::add($b, ':hindu temple:', '&#x1F6D5');
952         Smilies::add($b, ':synagogue:', '&#x1F54D');
953         Smilies::add($b, ':shinto shrine:', '&#x26E9');
954         Smilies::add($b, ':kaaba:', '&#x1F54B');
955
956 // place-other
957         Smilies::add($b, ':fountain:', '&#x26F2');
958         Smilies::add($b, ':tent:', '&#x26FA');
959         Smilies::add($b, ':foggy:', '&#x1F301');
960         Smilies::add($b, ':night with stars:', '&#x1F303');
961         Smilies::add($b, ':cityscape:', '&#x1F3D9');
962         Smilies::add($b, ':sunrise over mountains:', '&#x1F304');
963         Smilies::add($b, ':sunrise:', '&#x1F305');
964         Smilies::add($b, ':cityscape at dusk:', '&#x1F306');
965         Smilies::add($b, ':sunset:', '&#x1F307');
966         Smilies::add($b, ':bridge at night:', '&#x1F309');
967         Smilies::add($b, ':hot springs:', '&#x2668');
968         Smilies::add($b, ':carousel horse:', '&#x1F3A0');
969         Smilies::add($b, ':ferris wheel:', '&#x1F3A1');
970         Smilies::add($b, ':roller coaster:', '&#x1F3A2');
971         Smilies::add($b, ':barber pole:', '&#x1F488');
972         Smilies::add($b, ':circus tent:', '&#x1F3AA');
973
974 // transport-ground
975         Smilies::add($b, ':locomotive:', '&#x1F682');
976         Smilies::add($b, ':railway car:', '&#x1F683');
977         Smilies::add($b, ':high-speed train:', '&#x1F684');
978         Smilies::add($b, ':bullet train:', '&#x1F685');
979         Smilies::add($b, ':train:', '&#x1F686');
980         Smilies::add($b, ':metro:', '&#x1F687');
981         Smilies::add($b, ':light rail:', '&#x1F688');
982         Smilies::add($b, ':station:', '&#x1F689');
983         Smilies::add($b, ':tram:', '&#x1F68A');
984         Smilies::add($b, ':monorail:', '&#x1F69D');
985         Smilies::add($b, ':mountain railway:', '&#x1F69E');
986         Smilies::add($b, ':tram car:', '&#x1F68B');
987         Smilies::add($b, ':bus:', '&#x1F68C');
988         Smilies::add($b, ':oncoming bus:', '&#x1F68D');
989         Smilies::add($b, ':trolleybus:', '&#x1F68E');
990         Smilies::add($b, ':minibus:', '&#x1F690');
991         Smilies::add($b, ':ambulance:', '&#x1F691');
992         Smilies::add($b, ':fire engine:', '&#x1F692');
993         Smilies::add($b, ':police car:', '&#x1F693');
994         Smilies::add($b, ':oncoming police car:', '&#x1F694');
995         Smilies::add($b, ':taxi:', '&#x1F695');
996         Smilies::add($b, ':oncoming taxi:', '&#x1F696');
997         Smilies::add($b, ':automobile:', '&#x1F697');
998         Smilies::add($b, ':oncoming automobile:', '&#x1F698');
999         Smilies::add($b, ':sport utility vehicle:', '&#x1F699');
1000         Smilies::add($b, ':delivery truck:', '&#x1F69A');
1001         Smilies::add($b, ':articulated lorry:', '&#x1F69B');
1002         Smilies::add($b, ':tractor:', '&#x1F69C');
1003         Smilies::add($b, ':racing car:', '&#x1F3CE');
1004         Smilies::add($b, ':motorcycle:', '&#x1F3CD');
1005         Smilies::add($b, ':motor scooter:', '&#x1F6F5');
1006 //      Smilies::add($b, ':manual wheelchair:', '&#x1F9BD');
1007 //      Smilies::add($b, ':motorized wheelchair:', '&#x1F9BC');
1008 //      Smilies::add($b, ':auto rickshaw:', '&#x1F6FA');
1009         Smilies::add($b, ':bicycle:', '&#x1F6B2');
1010         Smilies::add($b, ':kick scooter:', '&#x1F6F4');
1011         Smilies::add($b, ':skateboard:', '&#x1F6F9');
1012         Smilies::add($b, ':bus stop:', '&#x1F68F');
1013         Smilies::add($b, ':motorway:', '&#x1F6E3');
1014         Smilies::add($b, ':railway track:', '&#x1F6E4');
1015         Smilies::add($b, ':oil drum:', '&#x1F6E2');
1016         Smilies::add($b, ':fuel pump:', '&#x26FD');
1017         Smilies::add($b, ':police car light:', '&#x1F6A8');
1018         Smilies::add($b, ':horizontal traffic light:', '&#x1F6A5');
1019         Smilies::add($b, ':vertical traffic light:', '&#x1F6A6');
1020         Smilies::add($b, ':stop sign:', '&#x1F6D1');
1021         Smilies::add($b, ':construction:', '&#x1F6A7');
1022
1023 // transport-water
1024         Smilies::add($b, ':anchor:', '&#x2693');
1025         Smilies::add($b, ':sailboat:', '&#x26F5');
1026         Smilies::add($b, ':canoe:', '&#x1F6F6');
1027         Smilies::add($b, ':speedboat:', '&#x1F6A4');
1028         Smilies::add($b, ':passenger ship:', '&#x1F6F3');
1029         Smilies::add($b, ':ferry:', '&#x26F4');
1030         Smilies::add($b, ':motor boat:', '&#x1F6E5');
1031         Smilies::add($b, ':ship:', '&#x1F6A2');
1032
1033 // transport-air
1034         Smilies::add($b, ':airplane:', '&#x2708');
1035         Smilies::add($b, ':small airplane:', '&#x1F6E9');
1036         Smilies::add($b, ':airplane departure:', '&#x1F6EB');
1037         Smilies::add($b, ':airplane arrival:', '&#x1F6EC');
1038 //      Smilies::add($b, ':parachute:', '&#x1FA82');
1039         Smilies::add($b, ':seat:', '&#x1F4BA');
1040         Smilies::add($b, ':helicopter:', '&#x1F681');
1041         Smilies::add($b, ':suspension railway:', '&#x1F69F');
1042         Smilies::add($b, ':mountain cableway:', '&#x1F6A0');
1043         Smilies::add($b, ':aerial tramway:', '&#x1F6A1');
1044         Smilies::add($b, ':satellite:', '&#x1F6F0');
1045         Smilies::add($b, ':rocket:', '&#x1F680');
1046         Smilies::add($b, ':flying saucer:', '&#x1F6F8');
1047
1048 // hotel
1049         Smilies::add($b, ':bellhop bell:', '&#x1F6CE');
1050         Smilies::add($b, ':luggage:', '&#x1F9F3');
1051
1052 // time
1053         Smilies::add($b, ':hourglass done:', '&#x231B');
1054         Smilies::add($b, ':hourglass not done:', '&#x23F3');
1055         Smilies::add($b, ':watch:', '&#x231A');
1056         Smilies::add($b, ':alarm clock:', '&#x23F0');
1057         Smilies::add($b, ':stopwatch:', '&#x23F1');
1058         Smilies::add($b, ':timer clock:', '&#x23F2');
1059         Smilies::add($b, ':mantelpiece clock:', '&#x1F570');
1060         Smilies::add($b, ':twelve o’clock:', '&#x1F55B');
1061         Smilies::add($b, ':twelve-thirty:', '&#x1F567');
1062         Smilies::add($b, ':one o’clock:', '&#x1F550');
1063         Smilies::add($b, ':one-thirty:', '&#x1F55C');
1064         Smilies::add($b, ':two o’clock:', '&#x1F551');
1065         Smilies::add($b, ':two-thirty:', '&#x1F55D');
1066         Smilies::add($b, ':three o’clock:', '&#x1F552');
1067         Smilies::add($b, ':three-thirty:', '&#x1F55E');
1068         Smilies::add($b, ':four o’clock:', '&#x1F553');
1069         Smilies::add($b, ':four-thirty:', '&#x1F55F');
1070         Smilies::add($b, ':five o’clock:', '&#x1F554');
1071         Smilies::add($b, ':five-thirty:', '&#x1F560');
1072         Smilies::add($b, ':six o’clock:', '&#x1F555');
1073         Smilies::add($b, ':six-thirty:', '&#x1F561');
1074         Smilies::add($b, ':seven o’clock:', '&#x1F556');
1075         Smilies::add($b, ':seven-thirty:', '&#x1F562');
1076         Smilies::add($b, ':eight o’clock:', '&#x1F557');
1077         Smilies::add($b, ':eight-thirty:', '&#x1F563');
1078         Smilies::add($b, ':nine o’clock:', '&#x1F558');
1079         Smilies::add($b, ':nine-thirty:', '&#x1F564');
1080         Smilies::add($b, ':ten o’clock:', '&#x1F559');
1081         Smilies::add($b, ':ten-thirty:', '&#x1F565');
1082         Smilies::add($b, ':eleven o’clock:', '&#x1F55A');
1083         Smilies::add($b, ':eleven-thirty:', '&#x1F566');
1084
1085 // sky & weather
1086         Smilies::add($b, ':new moon:', '&#x1F311');
1087         Smilies::add($b, ':waxing crescent moon:', '&#x1F312');
1088         Smilies::add($b, ':first quarter moon:', '&#x1F313');
1089         Smilies::add($b, ':waxing gibbous moon:', '&#x1F314');
1090         Smilies::add($b, ':full moon:', '&#x1F315');
1091         Smilies::add($b, ':waning gibbous moon:', '&#x1F316');
1092         Smilies::add($b, ':last quarter moon:', '&#x1F317');
1093         Smilies::add($b, ':waning crescent moon:', '&#x1F318');
1094         Smilies::add($b, ':crescent moon:', '&#x1F319');
1095         Smilies::add($b, ':new moon face:', '&#x1F31A');
1096         Smilies::add($b, ':first quarter moon face:', '&#x1F31B');
1097         Smilies::add($b, ':last quarter moon face:', '&#x1F31C');
1098         Smilies::add($b, ':thermometer:', '&#x1F321');
1099         Smilies::add($b, ':sun:', '&#x2600');
1100         Smilies::add($b, ':full moon face:', '&#x1F31D');
1101         Smilies::add($b, ':sun with face:', '&#x1F31E');
1102 //      Smilies::add($b, ':ringed planet:', '&#x1FA90');
1103         Smilies::add($b, ':star:', '&#x2B50');
1104         Smilies::add($b, ':glowing star:', '&#x1F31F');
1105         Smilies::add($b, ':shooting star:', '&#x1F320');
1106         Smilies::add($b, ':milky way:', '&#x1F30C');
1107         Smilies::add($b, ':cloud:', '&#x2601');
1108         Smilies::add($b, ':sun behind cloud:', '&#x26C5');
1109         Smilies::add($b, ':cloud with lightning and rain:', '&#x26C8');
1110         Smilies::add($b, ':sun behind small cloud:', '&#x1F324');
1111         Smilies::add($b, ':sun behind large cloud:', '&#x1F325');
1112         Smilies::add($b, ':sun behind rain cloud:', '&#x1F326');
1113         Smilies::add($b, ':cloud with rain:', '&#x1F327');
1114         Smilies::add($b, ':cloud with snow:', '&#x1F328');
1115         Smilies::add($b, ':cloud with lightning:', '&#x1F329');
1116         Smilies::add($b, ':tornado:', '&#x1F32A');
1117         Smilies::add($b, ':fog:', '&#x1F32B');
1118         Smilies::add($b, ':wind face:', '&#x1F32C');
1119         Smilies::add($b, ':cyclone:', '&#x1F300');
1120         Smilies::add($b, ':rainbow:', '&#x1F308');
1121         Smilies::add($b, ':closed umbrella:', '&#x1F302');
1122         Smilies::add($b, ':umbrella:', '&#x2602');
1123         Smilies::add($b, ':umbrella with rain drops:', '&#x2614');
1124         Smilies::add($b, ':umbrella on ground:', '&#x26F1');
1125         Smilies::add($b, ':high voltage:', '&#x26A1');
1126         Smilies::add($b, ':snowflake:', '&#x2744');
1127         Smilies::add($b, ':snowman:', '&#x2603');
1128         Smilies::add($b, ':snowman without snow:', '&#x26C4');
1129         Smilies::add($b, ':comet:', '&#x2604');
1130         Smilies::add($b, ':fire:', '&#x1F525');
1131         Smilies::add($b, ':droplet:', '&#x1F4A7');
1132         Smilies::add($b, ':water wave:', '&#x1F30A');
1133
1134 // Activities
1135 // event
1136         Smilies::add($b, ':jack-o-lantern:', '&#x1F383');
1137         Smilies::add($b, ':Christmas tree:', '&#x1F384');
1138         Smilies::add($b, ':fireworks:', '&#x1F386');
1139         Smilies::add($b, ':sparkler:', '&#x1F387');
1140         Smilies::add($b, ':firecracker:', '&#x1F9E8');
1141         Smilies::add($b, ':sparkles:', '&#x2728');
1142         Smilies::add($b, ':balloon:', '&#x1F388');
1143         Smilies::add($b, ':party popper:', '&#x1F389');
1144         Smilies::add($b, ':confetti ball:', '&#x1F38A');
1145         Smilies::add($b, ':tanabata tree:', '&#x1F38B');
1146         Smilies::add($b, ':pine decoration:', '&#x1F38D');
1147         Smilies::add($b, ':Japanese dolls:', '&#x1F38E');
1148         Smilies::add($b, ':carp streamer:', '&#x1F38F');
1149         Smilies::add($b, ':wind chime:', '&#x1F390');
1150         Smilies::add($b, ':moon viewing ceremony:', '&#x1F391');
1151         Smilies::add($b, ':red envelope:', '&#x1F9E7');
1152         Smilies::add($b, ':ribbon:', '&#x1F380');
1153         Smilies::add($b, ':wrapped gift:', '&#x1F381');
1154         Smilies::add($b, ':reminder ribbon:', '&#x1F397');
1155         Smilies::add($b, ':admission tickets:', '&#x1F39F');
1156         Smilies::add($b, ':ticket:', '&#x1F3AB');
1157
1158 // award-medal
1159         Smilies::add($b, ':military medal:', '&#x1F396');
1160         Smilies::add($b, ':trophy:', '&#x1F3C6');
1161         Smilies::add($b, ':sports medal:', '&#x1F3C5');
1162         Smilies::add($b, ':1st place medal:', '&#x1F947');
1163         Smilies::add($b, ':2nd place medal:', '&#x1F948');
1164         Smilies::add($b, ':3rd place medal:', '&#x1F949');
1165
1166 // sport
1167         Smilies::add($b, ':soccer ball:', '&#x26BD');
1168         Smilies::add($b, ':baseball:', '&#x26BE');
1169         Smilies::add($b, ':softball:', '&#x1F94E');
1170         Smilies::add($b, ':basketball:', '&#x1F3C0');
1171         Smilies::add($b, ':volleyball:', '&#x1F3D0');
1172         Smilies::add($b, ':american football:', '&#x1F3C8');
1173         Smilies::add($b, ':rugby football:', '&#x1F3C9');
1174         Smilies::add($b, ':tennis:', '&#x1F3BE');
1175         Smilies::add($b, ':flying disc:', '&#x1F94F');
1176         Smilies::add($b, ':bowling:', '&#x1F3B3');
1177         Smilies::add($b, ':cricket game:', '&#x1F3CF');
1178         Smilies::add($b, ':field hockey:', '&#x1F3D1');
1179         Smilies::add($b, ':ice hockey:', '&#x1F3D2');
1180         Smilies::add($b, ':lacrosse:', '&#x1F94D');
1181         Smilies::add($b, ':ping pong:', '&#x1F3D3');
1182         Smilies::add($b, ':badminton:', '&#x1F3F8');
1183         Smilies::add($b, ':boxing glove:', '&#x1F94A');
1184         Smilies::add($b, ':martial arts uniform:', '&#x1F94B');
1185         Smilies::add($b, ':goal net:', '&#x1F945');
1186         Smilies::add($b, ':flag in hole:', '&#x26F3');
1187         Smilies::add($b, ':ice skate:', '&#x26F8');
1188         Smilies::add($b, ':fishing pole:', '&#x1F3A3');
1189 //      Smilies::add($b, ':diving mask:', '&#x1F93F');
1190         Smilies::add($b, ':running shirt:', '&#x1F3BD');
1191         Smilies::add($b, ':skis:', '&#x1F3BF');
1192         Smilies::add($b, ':sled:', '&#x1F6F7');
1193         Smilies::add($b, ':curling stone:', '&#x1F94C');
1194
1195 // game
1196         Smilies::add($b, ':direct hit:', '&#x1F3AF');
1197 //      Smilies::add($b, ':yo-yo:', '&#x1FA80');
1198 //      Smilies::add($b, ':kite:', '&#x1FA81');
1199         Smilies::add($b, ':pool 8 ball:', '&#x1F3B1');
1200         Smilies::add($b, ':crystal ball:', '&#x1F52E');
1201         Smilies::add($b, ':nazar amulet:', '&#x1F9FF');
1202         Smilies::add($b, ':video game:', '&#x1F3AE');
1203         Smilies::add($b, ':joystick:', '&#x1F579');
1204         Smilies::add($b, ':slot machine:', '&#x1F3B0');
1205         Smilies::add($b, ':game die:', '&#x1F3B2');
1206         Smilies::add($b, ':puzzle piece:', '&#x1F9E9');
1207         Smilies::add($b, ':teddy bear:', '&#x1F9F8');
1208         Smilies::add($b, ':spade suit:', '&#x2660');
1209         Smilies::add($b, ':heart suit:', '&#x2665');
1210         Smilies::add($b, ':diamond suit:', '&#x2666');
1211         Smilies::add($b, ':club suit:', '&#x2663');
1212         Smilies::add($b, ':chess pawn:', '&#x265F');
1213         Smilies::add($b, ':joker:', '&#x1F0CF');
1214         Smilies::add($b, ':mahjong red dragon:', '&#x1F004');
1215         Smilies::add($b, ':flower playing cards:', '&#x1F3B4');
1216
1217 // arts & crafts
1218         Smilies::add($b, ':performing arts:', '&#x1F3AD');
1219         Smilies::add($b, ':framed picture:', '&#x1F5BC');
1220         Smilies::add($b, ':artist palette:', '&#x1F3A8');
1221         Smilies::add($b, ':thread:', '&#x1F9F5');
1222         Smilies::add($b, ':yarn:', '&#x1F9F6');
1223
1224 // Objects
1225 // clothing
1226         Smilies::add($b, ':glasses:', '&#x1F453');
1227         Smilies::add($b, ':sunglasses:', '&#x1F576');
1228         Smilies::add($b, ':goggles:', '&#x1F97D');
1229         Smilies::add($b, ':lab coat:', '&#x1F97C');
1230 //      Smilies::add($b, ':safety vest:', '&#x1F9BA');
1231         Smilies::add($b, ':necktie:', '&#x1F454');
1232         Smilies::add($b, ':t-shirt:', '&#x1F455');
1233         Smilies::add($b, ':jeans:', '&#x1F456');
1234         Smilies::add($b, ':scarf:', '&#x1F9E3');
1235         Smilies::add($b, ':gloves:', '&#x1F9E4');
1236         Smilies::add($b, ':coat:', '&#x1F9E5');
1237         Smilies::add($b, ':socks:', '&#x1F9E6');
1238         Smilies::add($b, ':dress:', '&#x1F457');
1239         Smilies::add($b, ':kimono:', '&#x1F458');
1240 //      Smilies::add($b, ':sari:', '&#x1F97B');
1241 //      Smilies::add($b, ':one-piece swimsuit:', '&#x1FA71');
1242 //      Smilies::add($b, ':briefs:', '&#x1FA72');
1243 //      Smilies::add($b, ':shorts:', '&#x1FA73');
1244         Smilies::add($b, ':bikini:', '&#x1F459');
1245         Smilies::add($b, ':woman’s clothes:', '&#x1F45A');
1246         Smilies::add($b, ':purse:', '&#x1F45B');
1247         Smilies::add($b, ':handbag:', '&#x1F45C');
1248         Smilies::add($b, ':clutch bag:', '&#x1F45D');
1249         Smilies::add($b, ':shopping bags:', '&#x1F6CD');
1250         Smilies::add($b, ':backpack:', '&#x1F392');
1251         Smilies::add($b, ':man’s shoe:', '&#x1F45E');
1252         Smilies::add($b, ':running shoe:', '&#x1F45F');
1253         Smilies::add($b, ':hiking boot:', '&#x1F97E');
1254         Smilies::add($b, ':flat shoe:', '&#x1F97F');
1255         Smilies::add($b, ':high-heeled shoe:', '&#x1F460');
1256         Smilies::add($b, ':woman’s sandal:', '&#x1F461');
1257 //      Smilies::add($b, ':ballet shoes:', '&#x1FA70');
1258         Smilies::add($b, ':woman’s boot:', '&#x1F462');
1259         Smilies::add($b, ':crown:', '&#x1F451');
1260         Smilies::add($b, ':woman’s hat:', '&#x1F452');
1261         Smilies::add($b, ':top hat:', '&#x1F3A9');
1262         Smilies::add($b, ':graduation cap:', '&#x1F393');
1263         Smilies::add($b, ':billed cap:', '&#x1F9E2');
1264         Smilies::add($b, ':rescue worker’s helmet:', '&#x26D1');
1265         Smilies::add($b, ':prayer beads:', '&#x1F4FF');
1266         Smilies::add($b, ':lipstick:', '&#x1F484');
1267         Smilies::add($b, ':ring:', '&#x1F48D');
1268         Smilies::add($b, ':gem stone:', '&#x1F48E');
1269
1270 // sound
1271         Smilies::add($b, ':muted speaker:', '&#x1F507');
1272         Smilies::add($b, ':speaker low volume:', '&#x1F508');
1273         Smilies::add($b, ':speaker medium volume:', '&#x1F509');
1274         Smilies::add($b, ':speaker high volume:', '&#x1F50A');
1275         Smilies::add($b, ':loudspeaker:', '&#x1F4E2');
1276         Smilies::add($b, ':megaphone:', '&#x1F4E3');
1277         Smilies::add($b, ':postal horn:', '&#x1F4EF');
1278         Smilies::add($b, ':bell:', '&#x1F514');
1279         Smilies::add($b, ':bell with slash:', '&#x1F515');
1280
1281 // musik
1282         Smilies::add($b, ':musical score:', '&#x1F3BC');
1283         Smilies::add($b, ':musical note:', '&#x1F3B5');
1284         Smilies::add($b, ':musical notes:', '&#x1F3B6');
1285         Smilies::add($b, ':studio microphone:', '&#x1F399');
1286         Smilies::add($b, ':level slider:', '&#x1F39A');
1287         Smilies::add($b, ':control knobs:', '&#x1F39B');
1288         Smilies::add($b, ':microphone:', '&#x1F3A4');
1289         Smilies::add($b, ':headphone:', '&#x1F3A7');
1290         Smilies::add($b, ':radio:', '&#x1F4FB');    
1291
1292 // musical-instrument
1293         Smilies::add($b, ':saxophone:', '&#x1F3B7');
1294         Smilies::add($b, ':guitar:', '&#x1F3B8');
1295         Smilies::add($b, ':musical keyboard:', '&#x1F3B9');
1296         Smilies::add($b, ':trumpet:', '&#x1F3BA');
1297         Smilies::add($b, ':violin:', '&#x1F3BB');
1298 //  Smilies::add($b, ':banjo:', '&#x1FA95');
1299         Smilies::add($b, ':drum:', '&#x1F941');
1300
1301 // phone
1302         Smilies::add($b, ':mobile phone:', '&#x1F4F1');
1303         Smilies::add($b, ':mobile phone with arrow:', '&#x1F4F2');
1304         Smilies::add($b, ':telephone:', '&#x260E');
1305         Smilies::add($b, ':telephone receiver:', '&#x1F4DE');
1306         Smilies::add($b, ':pager:', '&#x1F4DF');
1307         Smilies::add($b, ':fax machine:', '&#x1F4E0');
1308
1309 // computer
1310         Smilies::add($b, ':battery:', '&#x1F50B');
1311         Smilies::add($b, ':electric plug:', '&#x1F50C');
1312         Smilies::add($b, ':laptop:', '&#x1F4BB');
1313         Smilies::add($b, ':desktop computer:', '&#x1F5A5');
1314         Smilies::add($b, ':printer:', '&#x1F5A8');
1315         Smilies::add($b, ':keyboard:', '&#x2328');
1316         Smilies::add($b, ':computer mouse:', '&#x1F5B1');
1317         Smilies::add($b, ':trackball:', '&#x1F5B2');
1318         Smilies::add($b, ':computer disk:', '&#x1F4BD');
1319         Smilies::add($b, ':floppy disk:', '&#x1F4BE');
1320         Smilies::add($b, ':optical disk:', '&#x1F4BF');
1321         Smilies::add($b, ':dvd:', '&#x1F4C0');
1322         Smilies::add($b, ':abacus:', '&#x1F9EE');
1323
1324 // light & video
1325         Smilies::add($b, ':movie camera:', '&#x1F3A5');
1326         Smilies::add($b, ':film frames:', '&#x1F39E');
1327         Smilies::add($b, ':film projector:', '&#x1F4FD');
1328         Smilies::add($b, ':clapper board:', '&#x1F3AC');
1329         Smilies::add($b, ':television:', '&#x1F4FA');
1330         Smilies::add($b, ':camera:', '&#x1F4F7');
1331         Smilies::add($b, ':camera with flash:', '&#x1F4F8');
1332         Smilies::add($b, ':video camera:', '&#x1F4F9');
1333         Smilies::add($b, ':videocassette:', '&#x1F4FC');
1334         Smilies::add($b, ':magnifying glass tilted left:', '&#x1F50D');
1335         Smilies::add($b, ':magnifying glass tilted right:', '&#x1F50E');
1336         Smilies::add($b, ':candle:', '&#x1F56F');
1337         Smilies::add($b, ':light bulb:', '&#x1F4A1');
1338         Smilies::add($b, ':flashlight:', '&#x1F526');
1339         Smilies::add($b, ':red paper lantern:', '&#x1F3EE');
1340 //      Smilies::add($b, ':diya lamp:', '&#x1FA94');
1341
1342 // book-paper
1343         Smilies::add($b, ':notebook with decorative cover:', '&#x1F4D4');
1344         Smilies::add($b, ':closed book:', '&#x1F4D5');
1345         Smilies::add($b, ':open book:', '&#x1F4D6');
1346         Smilies::add($b, ':green book:', '&#x1F4D7');
1347         Smilies::add($b, ':blue book:', '&#x1F4D8');
1348         Smilies::add($b, ':orange book:', '&#x1F4D9');
1349         Smilies::add($b, ':books:', '&#x1F4DA');
1350         Smilies::add($b, ':notebook:', '&#x1F4D3');
1351         Smilies::add($b, ':ledger:', '&#x1F4D2');
1352         Smilies::add($b, ':page with curl:', '&#x1F4C3');
1353         Smilies::add($b, ':scroll:', '&#x1F4DC');
1354         Smilies::add($b, ':page facing up:', '&#x1F4C4');
1355         Smilies::add($b, ':newspaper:', '&#x1F4F0');
1356         Smilies::add($b, ':rolled-up newspaper:', '&#x1F5DE');
1357         Smilies::add($b, ':bookmark tabs:', '&#x1F4D1');
1358         Smilies::add($b, ':bookmark:', '&#x1F516');
1359         Smilies::add($b, ':label:', '&#x1F3F7');
1360
1361 // money
1362         Smilies::add($b, ':money bag:', '&#x1F4B0');
1363         Smilies::add($b, ':yen banknote:', '&#x1F4B4');
1364         Smilies::add($b, ':dollar banknote:', '&#x1F4B5');
1365         Smilies::add($b, ':euro banknote:', '&#x1F4B6');
1366         Smilies::add($b, ':pound banknote:', '&#x1F4B7');
1367         Smilies::add($b, ':money with wings:', '&#x1F4B8');
1368         Smilies::add($b, ':credit card:', '&#x1F4B3');
1369         Smilies::add($b, ':receipt:', '&#x1F9FE');
1370         Smilies::add($b, ':chart increasing with yen:', '&#x1F4B9');
1371
1372 // mail
1373         Smilies::add($b, ':envelope:', '&#x2709');
1374         Smilies::add($b, ':e-mail:', '&#x1F4E7');
1375         Smilies::add($b, ':incoming envelope:', '&#x1F4E8');
1376         Smilies::add($b, ':envelope with arrow:', '&#x1F4E9');
1377         Smilies::add($b, ':outbox tray:', '&#x1F4E4');
1378         Smilies::add($b, ':inbox tray:', '&#x1F4E5');
1379         Smilies::add($b, ':package:', '&#x1F4E6');
1380         Smilies::add($b, ':closed mailbox with raised flag:', '&#x1F4EB');
1381         Smilies::add($b, ':closed mailbox with lowered flag:', '&#x1F4EA');
1382         Smilies::add($b, ':open mailbox with raised flag:', '&#x1F4EC');
1383         Smilies::add($b, ':open mailbox with lowered flag:', '&#x1F4ED');
1384         Smilies::add($b, ':postbox:', '&#x1F4EE');
1385         Smilies::add($b, ':ballot box with ballot:', '&#x1F5F3');
1386
1387 // writing
1388         Smilies::add($b, ':pencil:', '&#x270F');
1389         Smilies::add($b, ':black nib:', '&#x2712');
1390         Smilies::add($b, ':fountain pen:', '&#x1F58B');
1391         Smilies::add($b, ':pen:', '&#x1F58A');
1392         Smilies::add($b, ':paintbrush:', '&#x1F58C');
1393         Smilies::add($b, ':crayon:', '&#x1F58D');
1394         Smilies::add($b, ':memo:', '&#x1F4DD');
1395
1396 // office
1397         Smilies::add($b, ':briefcase:', '&#x1F4BC');
1398         Smilies::add($b, ':file folder:', '&#x1F4C1');
1399         Smilies::add($b, ':open file folder:', '&#x1F4C2');
1400         Smilies::add($b, ':card index dividers:', '&#x1F5C2');
1401         Smilies::add($b, ':calendar:', '&#x1F4C5');
1402         Smilies::add($b, ':tear-off calendar:', '&#x1F4C6');
1403         Smilies::add($b, ':spiral notepad:', '&#x1F5D2');
1404         Smilies::add($b, ':spiral calendar:', '&#x1F5D3');
1405         Smilies::add($b, ':card index:', '&#x1F4C7');
1406         Smilies::add($b, ':chart increasing:', '&#x1F4C8');
1407         Smilies::add($b, ':chart decreasing:', '&#x1F4C9');
1408         Smilies::add($b, ':bar chart:', '&#x1F4CA');
1409         Smilies::add($b, ':clipboard:', '&#x1F4CB');
1410         Smilies::add($b, ':pushpin:', '&#x1F4CC');
1411         Smilies::add($b, ':round pushpin:', '&#x1F4CD');
1412         Smilies::add($b, ':paperclip:', '&#x1F4CE');
1413         Smilies::add($b, ':linked paperclips:', '&#x1F587');
1414         Smilies::add($b, ':straight ruler:', '&#x1F4CF');
1415         Smilies::add($b, ':triangular ruler:', '&#x1F4D0');
1416         Smilies::add($b, ':scissors:', '&#x2702');
1417         Smilies::add($b, ':card file box:', '&#x1F5C3');
1418         Smilies::add($b, ':file cabinet:', '&#x1F5C4');
1419         Smilies::add($b, ':wastebasket:', '&#x1F5D1');
1420
1421 // lock
1422         Smilies::add($b, ':locked:', '&#x1F512');
1423         Smilies::add($b, ':unlocked:', '&#x1F513');
1424         Smilies::add($b, ':locked with pen:', '&#x1F50F');
1425         Smilies::add($b, ':locked with key:', '&#x1F510');
1426         Smilies::add($b, ':key:', '&#x1F511');
1427         Smilies::add($b, ':old key:', '&#x1F5DD');
1428
1429 // tool
1430         Smilies::add($b, ':hammer:', '&#x1F528');
1431 //  Smilies::add($b, ':axe:', '&#x1FA93');
1432         Smilies::add($b, ':pick:', '&#x26CF');
1433         Smilies::add($b, ':hammer and pick:', '&#x2692');
1434         Smilies::add($b, ':hammer and wrench:', '&#x1F6E0');
1435         Smilies::add($b, ':dagger:', '&#x1F5E1');
1436         Smilies::add($b, ':crossed swords:', '&#x2694');
1437         Smilies::add($b, ':pistol:', '&#x1F52B');
1438         Smilies::add($b, ':bow and arrow:', '&#x1F3F9');
1439         Smilies::add($b, ':shield:', '&#x1F6E1');
1440         Smilies::add($b, ':wrench:', '&#x1F527');
1441         Smilies::add($b, ':nut and bolt:', '&#x1F529');
1442         Smilies::add($b, ':gear:', '&#x2699');
1443         Smilies::add($b, ':clamp:', '&#x1F5DC');
1444         Smilies::add($b, ':balance scale:', '&#x2696');
1445 //      Smilies::add($b, ':white cane:', '&#x1F9AF');
1446         Smilies::add($b, ':link:', '&#x1F517');
1447         Smilies::add($b, ':chains:', '&#x26D3');
1448         Smilies::add($b, ':toolbox:', '&#x1F9F0');
1449         Smilies::add($b, ':magnet:', '&#x1F9F2');
1450
1451 // science
1452         Smilies::add($b, ':alembic:', '&#x2697');
1453         Smilies::add($b, ':test tube:', '&#x1F9EA');
1454         Smilies::add($b, ':petri dish:', '&#x1F9EB');
1455         Smilies::add($b, ':dna:', '&#x1F9EC');
1456         Smilies::add($b, ':microscope:', '&#x1F52C');
1457         Smilies::add($b, ':telescope:', '&#x1F52D');
1458         Smilies::add($b, ':satellite antenna:', '&#x1F4E1');
1459
1460 // medical
1461         Smilies::add($b, ':syringe:', '&#x1F489');
1462 //      Smilies::add($b, ':drop of blood:', '&#x1FA78');
1463         Smilies::add($b, ':pill:', '&#x1F48A');
1464 //      Smilies::add($b, ':adhesive bandage:', '&#x1FA79');
1465 //      Smilies::add($b, ':stethoscope:', '&#x1FA7A');
1466
1467 // household
1468         Smilies::add($b, ':door:', '&#x1F6AA');
1469         Smilies::add($b, ':bed:', '&#x1F6CF');
1470         Smilies::add($b, ':couch and lamp:', '&#x1F6CB');
1471 //      Smilies::add($b, ':chair:', '&#x1FA91');
1472         Smilies::add($b, ':toilet:', '&#x1F6BD');
1473         Smilies::add($b, ':shower:', '&#x1F6BF');
1474 //      Smilies::add($b, ':bathtub:', '&#x1F6C1');
1475 //      Smilies::add($b, ':razor:', '&#x1FA92');
1476         Smilies::add($b, ':lotion bottle:', '&#x1F9F4');
1477         Smilies::add($b, ':safety pin:', '&#x1F9F7');
1478         Smilies::add($b, ':broom:', '&#x1F9F9');
1479         Smilies::add($b, ':basket:', '&#x1F9FA');
1480         Smilies::add($b, ':roll of paper:', '&#x1F9FB');
1481         Smilies::add($b, ':soap:', '&#x1F9FC');
1482         Smilies::add($b, ':sponge:', '&#x1F9FD');
1483         Smilies::add($b, ':fire extinguisher:', '&#x1F9EF');
1484         Smilies::add($b, ':shopping cart:', '&#x1F6D2');
1485
1486 // other-object
1487         Smilies::add($b, ':cigarette:', '&#x1F6AC');
1488         Smilies::add($b, ':coffin:', '&#x26B0');
1489         Smilies::add($b, ':funeral urn:', '&#x26B1');
1490         Smilies::add($b, ':moai:', '&#x1F5FF');
1491
1492 // Symbols
1493 // transport-sign
1494         Smilies::add($b, ':atm sign:', '&#x1F3E7');
1495         Smilies::add($b, ':litter in bin sign:', '&#x1F6AE');
1496         Smilies::add($b, ':potable water:', '&#x1F6B0');
1497         Smilies::add($b, ':wheelchair symbol:', '&#x267F');
1498         Smilies::add($b, ':men’s room:', '&#x1F6B9');
1499         Smilies::add($b, ':women’s room:', '&#x1F6BA');
1500         Smilies::add($b, ':restroom:', '&#x1F6BB');
1501         Smilies::add($b, ':baby symbol:', '&#x1F6BC');
1502         Smilies::add($b, ':water closet:', '&#x1F6BE');
1503         Smilies::add($b, ':passport control:', '&#x1F6C2');
1504         Smilies::add($b, ':customs:', '&#x1F6C3');
1505         Smilies::add($b, ':baggage claim:', '&#x1F6C4');
1506         Smilies::add($b, ':left luggage:', '&#x1F6C5');
1507
1508 // warning
1509         Smilies::add($b, ':warning:', '&#x26A0');
1510         Smilies::add($b, ':children crossing:', '&#x1F6B8');
1511         Smilies::add($b, ':no entry:', '&#x26D4');
1512         Smilies::add($b, ':prohibited:', '&#x1F6AB');
1513         Smilies::add($b, ':no bicycles:', '&#x1F6B3');
1514         Smilies::add($b, ':no smoking:', '&#x1F6AD');
1515         Smilies::add($b, ':no littering:', '&#x1F6AF');
1516         Smilies::add($b, ':non-potable water:', '&#x1F6B1');
1517         Smilies::add($b, ':no pedestrians:', '&#x1F6B7');
1518         Smilies::add($b, ':no mobile phones:', '&#x1F4F5');
1519         Smilies::add($b, ':no one under eighteen:', '&#x1F51E');
1520         Smilies::add($b, ':radioactive:', '&#x2622');
1521         Smilies::add($b, ':biohazard:', '&#x2623');
1522
1523 // arrow
1524         Smilies::add($b, ':up arrow:', '&#x2B06');
1525         Smilies::add($b, ':up-right arrow:', '&#x2197');
1526         Smilies::add($b, ':right arrow:', '&#x27A1');
1527         Smilies::add($b, ':down-right arrow:', '&#x2198');
1528         Smilies::add($b, ':down arrow:', '&#x2B07');
1529         Smilies::add($b, ':down-left arrow:', '&#x2199');
1530         Smilies::add($b, ':left arrow:', '&#x2B05');
1531         Smilies::add($b, ':up-left arrow:', '&#x2196');
1532         Smilies::add($b, ':up-down arrow:', '&#x2195');
1533         Smilies::add($b, ':left-right arrow:', '&#x2194');
1534         Smilies::add($b, ':right arrow curving left:', '&#x21A9');
1535         Smilies::add($b, ':left arrow curving right:', '&#x21AA');
1536         Smilies::add($b, ':right arrow curving up:', '&#x2934');
1537         Smilies::add($b, ':right arrow curving down:', '&#x2935');
1538         Smilies::add($b, ':clockwise vertical arrows:', '&#x1F503');
1539         Smilies::add($b, ':counterclockwise arrows button:', '&#x1F504');
1540         Smilies::add($b, ':BACK arrow:', '&#x1F519');
1541         Smilies::add($b, ':END arrow:', '&#x1F51A');
1542         Smilies::add($b, ':ON! arrow:', '&#x1F51B');
1543         Smilies::add($b, ':SOON arrow:', '&#x1F51C');
1544         Smilies::add($b, ':TOP arrow:', '&#x1F51D');
1545
1546 // religion
1547         Smilies::add($b, ':place of worship:', '&#x1F6D0');
1548         Smilies::add($b, ':atom symbol:', '&#x269B');
1549         Smilies::add($b, ':om:', '&#x1F549');
1550         Smilies::add($b, ':star of David:', '&#x2721');
1551         Smilies::add($b, ':wheel of dharma:', '&#x2638');
1552         Smilies::add($b, ':yin yang:', '&#x262F');
1553         Smilies::add($b, ':latin cross:', '&#x271D');
1554         Smilies::add($b, ':orthodox cross:', '&#x2626');
1555         Smilies::add($b, ':star and crescent:', '&#x262A');
1556         Smilies::add($b, ':peace symbol:', '&#x262E');
1557         Smilies::add($b, ':menorah:', '&#x1F54E');
1558         Smilies::add($b, ':dotted six-pointed star:', '&#x1F52F');
1559
1560 // zodiac
1561         Smilies::add($b, ':Aries:', '&#x2648');
1562         Smilies::add($b, ':Taurus:', '&#x2649');
1563         Smilies::add($b, ':Gemini:', '&#x264A');
1564         Smilies::add($b, ':Cancer:', '&#x264B');
1565         Smilies::add($b, ':Leo:', '&#x264C');
1566         Smilies::add($b, ':Virgo:', '&#x264D');
1567         Smilies::add($b, ':Libra:', '&#x264E');
1568         Smilies::add($b, ':Scorpio:', '&#x264F');
1569         Smilies::add($b, ':Sagittarius:', '&#x2650');
1570         Smilies::add($b, ':Capricorn:', '&#x2651');
1571         Smilies::add($b, ':Aquarius:', '&#x2652');
1572         Smilies::add($b, ':Pisces:', '&#x2653');
1573         Smilies::add($b, ':Ophiuchus:', '&#x26CE');
1574
1575 // av-symbol
1576         Smilies::add($b, ':shuffle tracks button:', '&#x1F500');
1577         Smilies::add($b, ':repeat button:', '&#x1F501');
1578         Smilies::add($b, ':repeat single button:', '&#x1F502');
1579         Smilies::add($b, ':play button:', '&#x25B6');
1580         Smilies::add($b, ':fast-forward button:', '&#x23E9');
1581         Smilies::add($b, ':next track button:', '&#x23ED');
1582         Smilies::add($b, ':play or pause button:', '&#x23EF');
1583         Smilies::add($b, ':reverse button:', '&#x25C0');
1584         Smilies::add($b, ':fast reverse button:', '&#x23EA');
1585         Smilies::add($b, ':last track button:', '&#x23EE');
1586         Smilies::add($b, ':upwards button:', '&#x1F53C');
1587         Smilies::add($b, ':fast up button:', '&#x23EB');
1588         Smilies::add($b, ':downwards button:', '&#x1F53D');
1589         Smilies::add($b, ':fast down button:', '&#x23EC');
1590         Smilies::add($b, ':pause button:', '&#x23F8');
1591         Smilies::add($b, ':stop button:', '&#x23F9');
1592         Smilies::add($b, ':record button:', '&#x23FA');
1593         Smilies::add($b, ':eject button:', '&#x23CF');
1594         Smilies::add($b, ':cinema:', '&#x1F3A6');
1595         Smilies::add($b, ':dim button:', '&#x1F505');
1596         Smilies::add($b, ':bright button:', '&#x1F506');
1597         Smilies::add($b, ':antenna bars:', '&#x1F4F6');
1598         Smilies::add($b, ':vibration mode:', '&#x1F4F3');
1599         Smilies::add($b, ':mobile phone off:', '&#x1F4F4');
1600
1601 // gender
1602         Smilies::add($b, ':female sign:', '&#x2640');
1603         Smilies::add($b, ':male sign:', '&#x2642');
1604
1605 // math
1606         Smilies::add($b, ':multiply:', '&#x2716');
1607         Smilies::add($b, ':plus:', '&#x2795');
1608         Smilies::add($b, ':minus:', '&#x2796');
1609         Smilies::add($b, ':divide:', '&#x2797');
1610         Smilies::add($b, ':infinity:', '&#x267E');
1611         Smilies::add($b, ':kreisoperator:', '&#x2218;');
1612         Smilies::add($b, ':leere menge:', '&#x2205;');
1613         Smilies::add($b, ':rundung:', '&#x2248;');
1614         Smilies::add($b, ':gleichung:', '&#x003D;');
1615         Smilies::add($b, ':ungleichung:', '&#x2260;');
1616         Smilies::add($b, ':kleiner als:', '&#x003C;');
1617         Smilies::add($b, ':groesser als:', '&#x003E;');
1618         Smilies::add($b, ':prozent:', '&#x0025;');
1619
1620 // punctuation
1621         Smilies::add($b, ':double exclamation mark:', '&#x203C');
1622         Smilies::add($b, ':exclamation question mark:', '&#x2049');
1623         Smilies::add($b, ':question mark:', '&#x2753');
1624         Smilies::add($b, ':white question mark:', '&#x2754');
1625         Smilies::add($b, ':white exclamation mark:', '&#x2755');
1626         Smilies::add($b, ':exclamation mark:', '&#x2757');
1627         Smilies::add($b, ':wavy dash:', '&#x3030');
1628
1629 // currency
1630         Smilies::add($b, ':currency exchange:', '&#x1F4B1');
1631         Smilies::add($b, ':heavy dollar sign:', '&#x1F4B2');
1632
1633 // other-symbol
1634         Smilies::add($b, ':medical symbol:', '&#x2695');
1635         Smilies::add($b, ':recycling symbol:', '&#x267B');
1636         Smilies::add($b, ':fleur-de-lis:', '&#x269C');
1637         Smilies::add($b, ':trident emblem:', '&#x1F531');
1638         Smilies::add($b, ':name badge:', '&#x1F4DB');
1639         Smilies::add($b, ':Japanese symbol for beginner:', '&#x1F530');
1640         Smilies::add($b, ':hollow red circle:', '&#x2B55');
1641         Smilies::add($b, ':check mark button:', '&#x2705');
1642         Smilies::add($b, ':check box with check:', '&#x2611');
1643         Smilies::add($b, ':check mark:', '&#x2714');
1644         Smilies::add($b, ':cross mark:', '&#x274C');
1645         Smilies::add($b, ':cross mark button:', '&#x274E');
1646         Smilies::add($b, ':curly loop:', '&#x27B0');
1647         Smilies::add($b, ':double curly loop:', '&#x27BF');
1648         Smilies::add($b, ':part alternation mark:', '&#x303D');
1649         Smilies::add($b, ':eight-spoked asterisk:', '&#x2733');
1650         Smilies::add($b, ':eight-pointed star:', '&#x2734');
1651         Smilies::add($b, ':sparkle:', '&#x2747');
1652         Smilies::add($b, ':copyright:', '&#x00A9');
1653         Smilies::add($b, ':registered:', '&#x00AE');
1654         Smilies::add($b, ':trade mark:', '&#x2122');
1655
1656 // keycap
1657         Smilies::add($b, ':keycap: #:', '&#x0023&#xFE0F&#x20E3');
1658         Smilies::add($b, ':keycap: *:', '&#x002A&#xFE0F&#x20E3');
1659         Smilies::add($b, ':keycap: 0:', '&#x0030&#xFE0F&#x20E3');
1660         Smilies::add($b, ':keycap: 1:', '&#x0031&#xFE0F&#x20E3');
1661         Smilies::add($b, ':keycap: 2:', '&#x0032&#xFE0F&#x20E3');
1662         Smilies::add($b, ':keycap: 3:', '&#x0033&#xFE0F&#x20E3');
1663         Smilies::add($b, ':keycap: 4:', '&#x0034&#xFE0F&#x20E3');
1664         Smilies::add($b, ':keycap: 5:', '&#x0035&#xFE0F&#x20E3');
1665         Smilies::add($b, ':keycap: 6:', '&#x0036&#xFE0F&#x20E3');
1666         Smilies::add($b, ':keycap: 7:', '&#x0037&#xFE0F&#x20E3');
1667         Smilies::add($b, ':keycap: 8:', '&#x0038&#xFE0F&#x20E3');
1668         Smilies::add($b, ':keycap: 9:', '&#x0039&#xFE0F&#x20E3');
1669         Smilies::add($b, ':keycap: 10:', '&#x1F51F');
1670
1671 // alphanum
1672         Smilies::add($b, ':input latin uppercase:', '&#x1F520');
1673         Smilies::add($b, ':input latin lowercase:', '&#x1F521');
1674         Smilies::add($b, ':input numbers:', '&#x1F522');
1675         Smilies::add($b, ':input symbols:', '&#x1F523');
1676         Smilies::add($b, ':input latin letters:', '&#x1F524');
1677         Smilies::add($b, ':A button (blood type):', '&#x1F170');
1678         Smilies::add($b, ':AB button (blood type):', '&#x1F18E');
1679         Smilies::add($b, ':B button (blood type):', '&#x1F171');
1680         Smilies::add($b, ':CL button:', '&#x1F191');
1681         Smilies::add($b, ':COOL button:', '&#x1F192');
1682         Smilies::add($b, ':FREE button:', '&#x1F193');
1683         Smilies::add($b, ':information:', '&#x2139');
1684         Smilies::add($b, ':ID button:', '&#x1F194');
1685         Smilies::add($b, ':circled M:', '&#x24C2');
1686         Smilies::add($b, ':NEW button:', '&#x1F195');
1687         Smilies::add($b, ':NG button:', '&#x1F196');
1688         Smilies::add($b, ':O button (blood type):', '&#x1F17E');
1689         Smilies::add($b, ':OK button:', '&#x1F197');
1690         Smilies::add($b, ':P button:', '&#x1F17F');
1691         Smilies::add($b, ':SOS button:', '&#x1F198');  
1692         Smilies::add($b, ':UP! button:', '&#x1F199');
1693         Smilies::add($b, ':VS button:', '&#x1F19A');
1694         Smilies::add($b, ':Japanese “here” button:', '&#x1F201');
1695         Smilies::add($b, ':Japanese “service charge” button:', '&#x1F202');
1696         Smilies::add($b, ':Japanese “monthly amount” button:', '&#x1F237');
1697         Smilies::add($b, ':Japanese “not free of charge” button:', '&#x1F236');
1698         Smilies::add($b, ':Japanese “reserved” button:', '&#x1F22F');
1699         Smilies::add($b, ':Japanese “bargain” button:', '&#x1F250');
1700         Smilies::add($b, ':Japanese “discount” button:', '&#x1F239');
1701         Smilies::add($b, ':Japanese “free of charge” button:', '&#x1F21A');
1702         Smilies::add($b, ':Japanese “prohibited” button:', '&#x1F232');
1703         Smilies::add($b, ':Japanese “acceptable” button:', '&#x1F251');
1704         Smilies::add($b, ':Japanese “application” button:', '&#x1F238');
1705         Smilies::add($b, ':Japanese “passing grade” button:', '&#x1F234');
1706         Smilies::add($b, ':Japanese “vacancy” button:', '&#x1F233');
1707         Smilies::add($b, ':Japanese “congratulations” button:', '&#x3297');
1708         Smilies::add($b, ':Japanese “secret” button:', '&#x3299');
1709         Smilies::add($b, ':Japanese “open for business” button:', '&#x1F23A');
1710         Smilies::add($b, ':Japanese “no vacancy” button:', '&#x1F235');
1711
1712 // geometric
1713         Smilies::add($b, ':red circle:', '&#x1F534');
1714 //      Smilies::add($b, ':orange circle:', '&#x1F7E0');
1715 //      Smilies::add($b, ':yellow circle:', '&#x1F7E1');
1716 //      Smilies::add($b, ':green circle:', '&#x1F7E2');
1717         Smilies::add($b, ':blue circle:', '&#x1F535');
1718 //      Smilies::add($b, ':purple circle:', '&#x1F7E3');
1719 //      Smilies::add($b, ':brown circle:', '&#x1F7E4');
1720         Smilies::add($b, ':black circle:', '&#x26AB');
1721         Smilies::add($b, ':white circle:', '&#x26AA');
1722 //      Smilies::add($b, ':red square:', '&#x1F7E5');
1723 //      Smilies::add($b, ':orange square:', '&#x1F7E7');
1724 //      Smilies::add($b, ':yellow square:', '&#x1F7E8');
1725 //      Smilies::add($b, ':green square:', '&#x1F7E9');
1726 //      Smilies::add($b, ':blue square:', '&#x1F7E6');
1727 //      Smilies::add($b, ':purple square:', '&#x1F7EA');
1728 //      Smilies::add($b, ':brown square:', '&#x1F7EB');
1729         Smilies::add($b, ':black large square:', '&#x2B1B');
1730         Smilies::add($b, ':white large square:', '&#x2B1C');
1731         Smilies::add($b, ':black medium square:', '&#x25FC');
1732         Smilies::add($b, ':white medium square:', '&#x25FB');
1733         Smilies::add($b, ':black medium-small square:', '&#x25FE');
1734         Smilies::add($b, ':white medium-small square:', '&#x25FD');
1735         Smilies::add($b, ':black small square:', '&#x25AA');
1736         Smilies::add($b, ':white small square:', '&#x25AB');
1737         Smilies::add($b, ':large orange diamond:', '&#x1F536');
1738         Smilies::add($b, ':large blue diamond:', '&#x1F537');
1739         Smilies::add($b, ':small orange diamond:', '&#x1F538');
1740         Smilies::add($b, ':small blue diamond:', '&#x1F539');
1741         Smilies::add($b, ':red triangle pointed up:', '&#x1F53A');
1742         Smilies::add($b, ':red triangle pointed down:', '&#x1F53B');
1743         Smilies::add($b, ':diamond with a dot:', '&#x1F4A0');
1744         Smilies::add($b, ':radio button:', '&#x1F518');
1745         Smilies::add($b, ':white square button:', '&#x1F533');
1746         Smilies::add($b, ':black square button:', '&#x1F532');
1747
1748 // Flags
1749 // flag
1750         Smilies::add($b, ':chequered flag:', '&#x1F3C1');
1751         Smilies::add($b, ':triangular flag:', '&#x1F6A9');
1752         Smilies::add($b, ':crossed flags:', '&#x1F38C');
1753         Smilies::add($b, ':black flag:', '&#x1F3F4');
1754         Smilies::add($b, ':white flag:', '&#x1F3F3');
1755         Smilies::add($b, ':rainbow flag:', '&#x1F3F3&#xFE0F&#x200D&#x1F308');
1756         Smilies::add($b, ':pirate flag:', '&#x1F3F4&#x200D&#x2620&#xFE0F');
1757
1758 // country-flag
1759         Smilies::add($b, ':ascension island:', '&#x1F1E6&#x1F1E8');
1760         Smilies::add($b, ':andorra:', '&#x1F1E6&#x1F1E9');
1761         Smilies::add($b, ':united arab emirates:', '&#x1F1E6&#x1F1EA');
1762         Smilies::add($b, ':afghanistan:', '&#x1F1E6&#x1F1EB');
1763         Smilies::add($b, ':antigua & barbuda:', '&#x1F1E6&#x1F1EC');
1764         Smilies::add($b, ':anguilla:', '&#x1F1E6&#x1F1EE');
1765         Smilies::add($b, ':albania:', '&#x1F1E6&#x1F1F1');
1766         Smilies::add($b, ':armenia:', '&#x1F1E6&#x1F1F2');
1767         Smilies::add($b, ':angola:', '&#x1F1E6&#x1F1F4');
1768         Smilies::add($b, ':antarctica:', '&#x1F1E6&#x1F1F6');
1769         Smilies::add($b, ':argentina:', '&#x1F1E6&#x1F1F7');
1770         Smilies::add($b, ':americansamoa:', '&#x1F1E6&#x1F1F8');
1771         Smilies::add($b, ':austria:', '&#x1F1E6&#x1F1F9');
1772         Smilies::add($b, ':australia:', '&#x1F1E6&#x1F1FA');
1773         Smilies::add($b, ':aruba:', '&#x1F1E6&#x1F1FC');
1774         Smilies::add($b, ':ålandislands:', '&#x1F1E6&#x1F1FD');
1775         Smilies::add($b, ':azerbaijan:', '&#x1F1E6&#x1F1FF');
1776         Smilies::add($b, ':bosnia&herzegovina:', '&#x1F1E7&#x1F1E6');
1777         Smilies::add($b, ':barbados:', '&#x1F1E7&#x1F1E7');
1778         Smilies::add($b, ':bangladesh:', '&#x1F1E7&#x1F1E9');
1779         Smilies::add($b, ':belgium:', '&#x1F1E7&#x1F1EA');
1780         Smilies::add($b, ':burkinafaso:', '&#x1F1E7&#x1F1EB');
1781         Smilies::add($b, ':bulgaria:', '&#x1F1E7&#x1F1EC');
1782         Smilies::add($b, ':bahrain:', '&#x1F1E7&#x1F1ED');
1783         Smilies::add($b, ':burundi:', '&#x1F1E7&#x1F1EE');
1784         Smilies::add($b, ':benin:', '&#x1F1E7&#x1F1EF');
1785         Smilies::add($b, ':st.barthélemy:', '&#x1F1E7&#x1F1F1');
1786         Smilies::add($b, ':bermuda:', '&#x1F1E7&#x1F1F2');
1787         Smilies::add($b, ':brunei:', '&#x1F1E7&#x1F1F3');
1788         Smilies::add($b, ':bolivia:', '&#x1F1E7&#x1F1F4');
1789         Smilies::add($b, ':caribbeannetherlands:', '&#x1F1E7&#x1F1F6');
1790         Smilies::add($b, ':brazil:', '&#x1F1E7&#x1F1F7');
1791         Smilies::add($b, ':bahamas:', '&#x1F1E7&#x1F1F8');
1792         Smilies::add($b, ':bhutan:', '&#x1F1E7&#x1F1F9');
1793         Smilies::add($b, ':bouvetisland:', '&#x1F1E7&#x1F1FB');
1794         Smilies::add($b, ':botswana:', '&#x1F1E7&#x1F1FC');
1795         Smilies::add($b, ':belarus:', '&#x1F1E7&#x1F1FE');
1796         Smilies::add($b, ':belize:', '&#x1F1E7&#x1F1FF');
1797         Smilies::add($b, ':canada:', '&#x1F1E8&#x1F1E6');
1798         Smilies::add($b, ':cocos(keeling)islands:', '&#x1F1E8&#x1F1E8');
1799         Smilies::add($b, ':congo-kinshasa:', '&#x1F1E8&#x1F1E9');
1800         Smilies::add($b, ':centralafricanrepublic:', '&#x1F1E8&#x1F1EB');
1801         Smilies::add($b, ':congo-brazzaville:', '&#x1F1E8&#x1F1EC');
1802         Smilies::add($b, ':switzerland:', '&#x1F1E8&#x1F1ED');
1803         Smilies::add($b, ':côted’ivoire:', '&#x1F1E8&#x1F1EE');
1804         Smilies::add($b, ':cookislands:', '&#x1F1E8&#x1F1F0');
1805         Smilies::add($b, ':chile:', '&#x1F1E8&#x1F1F1');
1806         Smilies::add($b, ':cameroon:', '&#x1F1E8&#x1F1F2');
1807         Smilies::add($b, ':china:', '&#x1F1E8&#x1F1F3');
1808         Smilies::add($b, ':colombia:', '&#x1F1E8&#x1F1F4');
1809         Smilies::add($b, ':clippertonisland:', '&#x1F1E8&#x1F1F5');
1810         Smilies::add($b, ':costarica:', '&#x1F1E8&#x1F1F7');
1811         Smilies::add($b, ':cuba:', '&#x1F1E8&#x1F1FA');
1812         Smilies::add($b, ':capeverde:', '&#x1F1E8&#x1F1FB');
1813         Smilies::add($b, ':curaçao:', '&#x1F1E8&#x1F1FC');
1814         Smilies::add($b, ':christmasisland:', '&#x1F1E8&#x1F1FD');
1815         Smilies::add($b, ':cyprus:', '&#x1F1E8&#x1F1FE');
1816         Smilies::add($b, ':czechia:', '&#x1F1E8&#x1F1FF');
1817         Smilies::add($b, ':germany:', '&#x1F1E9&#x1F1EA');
1818         Smilies::add($b, ':diegogarcia:', '&#x1F1E9&#x1F1EC');
1819         Smilies::add($b, ':djibouti:', '&#x1F1E9&#x1F1EF');
1820         Smilies::add($b, ':denmark:', '&#x1F1E9&#x1F1F0');
1821         Smilies::add($b, ':dominica:', '&#x1F1E9&#x1F1F2');
1822         Smilies::add($b, ':dominicanrepublic:', '&#x1F1E9&#x1F1F4');
1823         Smilies::add($b, ':algeria:', '&#x1F1E9&#x1F1FF');
1824         Smilies::add($b, ':ceuta&melilla:', '&#x1F1EA&#x1F1E6');
1825         Smilies::add($b, ':ecuador:', '&#x1F1EA&#x1F1E8');
1826         Smilies::add($b, ':estonia:', '&#x1F1EA&#x1F1EA');
1827         Smilies::add($b, ':egypt:', '&#x1F1EA&#x1F1EC');
1828         Smilies::add($b, ':westernsahara:', '&#x1F1EA&#x1F1ED');
1829         Smilies::add($b, ':eritrea:', '&#x1F1EA&#x1F1F7');
1830         Smilies::add($b, ':spain:', '&#x1F1EA&#x1F1F8');
1831         Smilies::add($b, ':ethiopia:', '&#x1F1EA&#x1F1F9');
1832         Smilies::add($b, ':europeanunion:', '&#x1F1EA&#x1F1FA');
1833         Smilies::add($b, ':finland:', '&#x1F1EB&#x1F1EE');
1834         Smilies::add($b, ':fiji:', '&#x1F1EB&#x1F1EF');
1835         Smilies::add($b, ':falklandislands:', '&#x1F1EB&#x1F1F0');
1836         Smilies::add($b, ':micronesia:', '&#x1F1EB&#x1F1F2');
1837         Smilies::add($b, ':faroeislands:', '&#x1F1EB&#x1F1F4');
1838         Smilies::add($b, ':france:', '&#x1F1EB&#x1F1F7');
1839         Smilies::add($b, ':gabon:', '&#x1F1EC&#x1F1E6');
1840         Smilies::add($b, ':unitedkingdom:', '&#x1F1EC&#x1F1E7');
1841         Smilies::add($b, ':grenada:', '&#x1F1EC&#x1F1E9');
1842         Smilies::add($b, ':georgia:', '&#x1F1EC&#x1F1EA');
1843         Smilies::add($b, ':frenchguiana:', '&#x1F1EC&#x1F1EB');
1844         Smilies::add($b, ':guernsey:', '&#x1F1EC&#x1F1EC');
1845         Smilies::add($b, ':ghana:', '&#x1F1EC&#x1F1ED');
1846         Smilies::add($b, ':gibraltar:', '&#x1F1EC&#x1F1EE');
1847         Smilies::add($b, ':greenland:', '&#x1F1EC&#x1F1F1');
1848         Smilies::add($b, ':gambia:', '&#x1F1EC&#x1F1F2');
1849         Smilies::add($b, ':guinea:', '&#x1F1EC&#x1F1F3');
1850         Smilies::add($b, ':guadeloupe:', '&#x1F1EC&#x1F1F5');
1851         Smilies::add($b, ':equatorialguinea:', '&#x1F1EC&#x1F1F6');
1852         Smilies::add($b, ':greece:', '&#x1F1EC&#x1F1F7');
1853         Smilies::add($b, ':southgeorgia&southsandwichislands:', '&#x1F1EC&#x1F1F8');
1854         Smilies::add($b, ':guatemala:', '&#x1F1EC&#x1F1F9');
1855         Smilies::add($b, ':guam:', '&#x1F1EC&#x1F1FA');
1856         Smilies::add($b, ':guinea-bissau:', '&#x1F1EC&#x1F1FC');
1857         Smilies::add($b, ':guyana:', '&#x1F1EC&#x1F1FE');
1858         Smilies::add($b, ':hongkongsarchina:', '&#x1F1ED&#x1F1F0');
1859         Smilies::add($b, ':heard&mcdonaldislands:', '&#x1F1ED&#x1F1F2');
1860         Smilies::add($b, ':honduras:', '&#x1F1ED&#x1F1F3');
1861         Smilies::add($b, ':croatia:', '&#x1F1ED&#x1F1F7');
1862         Smilies::add($b, ':haiti:', '&#x1F1ED&#x1F1F9');
1863         Smilies::add($b, ':hungary:', '&#x1F1ED&#x1F1FA');
1864         Smilies::add($b, ':canaryislands:', '&#x1F1EE&#x1F1E8');
1865         Smilies::add($b, ':indonesia:', '&#x1F1EE&#x1F1E9');
1866         Smilies::add($b, ':ireland:', '&#x1F1EE&#x1F1EA');
1867         Smilies::add($b, ':israel:', '&#x1F1EE&#x1F1F1');
1868         Smilies::add($b, ':isleofman:', '&#x1F1EE&#x1F1F2');
1869         Smilies::add($b, ':india:', '&#x1F1EE&#x1F1F3');
1870         Smilies::add($b, ':britishindianoceanterritory:', '&#x1F1EE&#x1F1F4');
1871         Smilies::add($b, ':iraq:', '&#x1F1EE&#x1F1F6');
1872         Smilies::add($b, ':iran:', '&#x1F1EE&#x1F1F7');
1873         Smilies::add($b, ':iceland:', '&#x1F1EE&#x1F1F8');
1874         Smilies::add($b, ':italy:', '&#x1F1EE&#x1F1F9');
1875         Smilies::add($b, ':jersey:', '&#x1F1EF&#x1F1EA');
1876         Smilies::add($b, ':jamaica:', '&#x1F1EF&#x1F1F2');
1877         Smilies::add($b, ':jordan:', '&#x1F1EF&#x1F1F4');
1878         Smilies::add($b, ':japan:', '&#x1F1EF&#x1F1F5');
1879         Smilies::add($b, ':kenya:', '&#x1F1F0&#x1F1EA');
1880         Smilies::add($b, ':kyrgyzstan:', '&#x1F1F0&#x1F1EC');
1881         Smilies::add($b, ':cambodia:', '&#x1F1F0&#x1F1ED');
1882         Smilies::add($b, ':kiribati:', '&#x1F1F0&#x1F1EE');
1883         Smilies::add($b, ':comoros:', '&#x1F1F0&#x1F1F2');
1884         Smilies::add($b, ':st.kitts&nevis:', '&#x1F1F0&#x1F1F3');
1885         Smilies::add($b, ':northkorea:', '&#x1F1F0&#x1F1F5');
1886         Smilies::add($b, ':southkorea:', '&#x1F1F0&#x1F1F7');
1887         Smilies::add($b, ':kuwait:', '&#x1F1F0&#x1F1FC');
1888         Smilies::add($b, ':caymanislands:', '&#x1F1F0&#x1F1FE');
1889         Smilies::add($b, ':kazakhstan:', '&#x1F1F0&#x1F1FF');
1890         Smilies::add($b, ':laos:', '&#x1F1F1&#x1F1E6');
1891         Smilies::add($b, ':lebanon:', '&#x1F1F1&#x1F1E7');
1892         Smilies::add($b, ':st.lucia:', '&#x1F1F1&#x1F1E8');
1893         Smilies::add($b, ':liechtenstein:', '&#x1F1F1&#x1F1EE');
1894         Smilies::add($b, ':srilanka:', '&#x1F1F1&#x1F1F0');
1895         Smilies::add($b, ':liberia:', '&#x1F1F1&#x1F1F7');
1896         Smilies::add($b, ':lesotho:', '&#x1F1F1&#x1F1F8');
1897         Smilies::add($b, ':lithuania:', '&#x1F1F1&#x1F1F9');
1898         Smilies::add($b, ':luxembourg:', '&#x1F1F1&#x1F1FA');
1899         Smilies::add($b, ':latvia:', '&#x1F1F1&#x1F1FB');
1900         Smilies::add($b, ':libya:', '&#x1F1F1&#x1F1FE');
1901         Smilies::add($b, ':morocco:', '&#x1F1F2&#x1F1E6');
1902         Smilies::add($b, ':monaco:', '&#x1F1F2&#x1F1E8');
1903         Smilies::add($b, ':moldova:', '&#x1F1F2&#x1F1E9');
1904         Smilies::add($b, ':montenegro:', '&#x1F1F2&#x1F1EA');
1905         Smilies::add($b, ':st.martin:', '&#x1F1F2&#x1F1EB');
1906         Smilies::add($b, ':madagascar:', '&#x1F1F2&#x1F1EC');
1907         Smilies::add($b, ':marshallislands:', '&#x1F1F2&#x1F1ED');
1908         Smilies::add($b, ':northmacedonia:', '&#x1F1F2&#x1F1F0');
1909         Smilies::add($b, ':mali:', '&#x1F1F2&#x1F1F1');
1910         Smilies::add($b, ':myanmar(burma):', '&#x1F1F2&#x1F1F2');
1911         Smilies::add($b, ':mongolia:', '&#x1F1F2&#x1F1F3');
1912         Smilies::add($b, ':macaosarchina:', '&#x1F1F2&#x1F1F4');
1913         Smilies::add($b, ':northernmarianaislands:', '&#x1F1F2&#x1F1F5');
1914         Smilies::add($b, ':martinique:', '&#x1F1F2&#x1F1F6');
1915         Smilies::add($b, ':mauritania:', '&#x1F1F2&#x1F1F7');
1916         Smilies::add($b, ':montserrat:', '&#x1F1F2&#x1F1F8');
1917         Smilies::add($b, ':malta:', '&#x1F1F2&#x1F1F9');
1918         Smilies::add($b, ':mauritius:', '&#x1F1F2&#x1F1FA');
1919         Smilies::add($b, ':maldives:', '&#x1F1F2&#x1F1FB');
1920         Smilies::add($b, ':malawi:', '&#x1F1F2&#x1F1FC');
1921         Smilies::add($b, ':mexico:', '&#x1F1F2&#x1F1FD');
1922         Smilies::add($b, ':malaysia:', '&#x1F1F2&#x1F1FE');
1923         Smilies::add($b, ':mozambique:', '&#x1F1F2&#x1F1FF');
1924         Smilies::add($b, ':namibia:', '&#x1F1F3&#x1F1E6');
1925         Smilies::add($b, ':newcaledonia:', '&#x1F1F3&#x1F1E8');
1926         Smilies::add($b, ':niger:', '&#x1F1F3&#x1F1EA');
1927         Smilies::add($b, ':norfolkisland:', '&#x1F1F3&#x1F1EB');
1928         Smilies::add($b, ':nigeria:', '&#x1F1F3&#x1F1EC');
1929         Smilies::add($b, ':nicaragua:', '&#x1F1F3&#x1F1EE');
1930         Smilies::add($b, ':netherlands:', '&#x1F1F3&#x1F1F1');
1931         Smilies::add($b, ':norway:', '&#x1F1F3&#x1F1F4');
1932         Smilies::add($b, ':nepal:', '&#x1F1F3&#x1F1F5');
1933         Smilies::add($b, ':nauru:', '&#x1F1F3&#x1F1F7');
1934         Smilies::add($b, ':niue:', '&#x1F1F3&#x1F1FA');
1935         Smilies::add($b, ':newzealand:', '&#x1F1F3&#x1F1FF');
1936         Smilies::add($b, ':oman:', '&#x1F1F4&#x1F1F2');
1937         Smilies::add($b, ':panama:', '&#x1F1F5&#x1F1E6');
1938         Smilies::add($b, ':peru:', '&#x1F1F5&#x1F1EA');
1939         Smilies::add($b, ':frenchpolynesia:', '&#x1F1F5&#x1F1EB');
1940         Smilies::add($b, ':papuanewguinea:', '&#x1F1F5&#x1F1EC');
1941         Smilies::add($b, ':philippines:', '&#x1F1F5&#x1F1ED');
1942         Smilies::add($b, ':pakistan:', '&#x1F1F5&#x1F1F0');
1943         Smilies::add($b, ':poland:', '&#x1F1F5&#x1F1F1');
1944         Smilies::add($b, ':st.pierre&miquelon:', '&#x1F1F5&#x1F1F2');
1945         Smilies::add($b, ':pitcairnislands:', '&#x1F1F5&#x1F1F3');
1946         Smilies::add($b, ':puertorico:', '&#x1F1F5&#x1F1F7');
1947         Smilies::add($b, ':palestinianterritories:', '&#x1F1F5&#x1F1F8');
1948         Smilies::add($b, ':portugal:', '&#x1F1F5&#x1F1F9');
1949         Smilies::add($b, ':palau:', '&#x1F1F5&#x1F1FC');
1950         Smilies::add($b, ':paraguay:', '&#x1F1F5&#x1F1FE');
1951         Smilies::add($b, ':qatar:', '&#x1F1F6&#x1F1E6');
1952         Smilies::add($b, ':réunion:', '&#x1F1F7&#x1F1EA');
1953         Smilies::add($b, ':romania:', '&#x1F1F7&#x1F1F4');
1954         Smilies::add($b, ':serbia:', '&#x1F1F7&#x1F1F8');
1955         Smilies::add($b, ':russia:', '&#x1F1F7&#x1F1FA');
1956         Smilies::add($b, ':rwanda:', '&#x1F1F7&#x1F1FC');
1957         Smilies::add($b, ':saudiarabia:', '&#x1F1F8&#x1F1E6');
1958         Smilies::add($b, ':solomonislands:', '&#x1F1F8&#x1F1E7');
1959         Smilies::add($b, ':seychelles:', '&#x1F1F8&#x1F1E8');
1960         Smilies::add($b, ':sudan:', '&#x1F1F8&#x1F1E9');
1961         Smilies::add($b, ':sweden:', '&#x1F1F8&#x1F1EA');
1962         Smilies::add($b, ':singapore:', '&#x1F1F8&#x1F1EC');
1963         Smilies::add($b, ':st.helena:', '&#x1F1F8&#x1F1ED');
1964         Smilies::add($b, ':slovenia:', '&#x1F1F8&#x1F1EE');
1965         Smilies::add($b, ':svalbard&janmayen:', '&#x1F1F8&#x1F1EF');
1966         Smilies::add($b, ':slovakia:', '&#x1F1F8&#x1F1F0');
1967         Smilies::add($b, ':sierraleone:', '&#x1F1F8&#x1F1F1');
1968         Smilies::add($b, ':sanmarino:', '&#x1F1F8&#x1F1F2');
1969         Smilies::add($b, ':senegal:', '&#x1F1F8&#x1F1F3');
1970         Smilies::add($b, ':somalia:', '&#x1F1F8&#x1F1F4');
1971         Smilies::add($b, ':suriname:', '&#x1F1F8&#x1F1F7');
1972         Smilies::add($b, ':southsudan:', '&#x1F1F8&#x1F1F8');
1973         Smilies::add($b, ':sãotomé&príncipe:', '&#x1F1F8&#x1F1F9');
1974         Smilies::add($b, ':elsalvador:', '&#x1F1F8&#x1F1FB');
1975         Smilies::add($b, ':sintmaarten:', '&#x1F1F8&#x1F1FD');
1976         Smilies::add($b, ':syria:', '&#x1F1F8&#x1F1FE');
1977         Smilies::add($b, ':eswatini:', '&#x1F1F8&#x1F1FF');
1978         Smilies::add($b, ':tristandacunha:', '&#x1F1F9&#x1F1E6');
1979         Smilies::add($b, ':turks&caicosislands:', '&#x1F1F9&#x1F1E8');
1980         Smilies::add($b, ':chad:', '&#x1F1F9&#x1F1E9');
1981         Smilies::add($b, ':frenchsouthernterritories:', '&#x1F1F9&#x1F1EB');
1982         Smilies::add($b, ':togo:', '&#x1F1F9&#x1F1EC');
1983         Smilies::add($b, ':thailand:', '&#x1F1F9&#x1F1ED');
1984         Smilies::add($b, ':tajikistan:', '&#x1F1F9&#x1F1EF');
1985         Smilies::add($b, ':tokelau:', '&#x1F1F9&#x1F1F0');
1986         Smilies::add($b, ':timor-leste:', '&#x1F1F9&#x1F1F1');
1987         Smilies::add($b, ':turkmenistan:', '&#x1F1F9&#x1F1F2');
1988         Smilies::add($b, ':tunisia:', '&#x1F1F9&#x1F1F3');
1989         Smilies::add($b, ':tonga:', '&#x1F1F9&#x1F1F4');
1990         Smilies::add($b, ':turkey:', '&#x1F1F9&#x1F1F7');
1991         Smilies::add($b, ':trinidad&tobago:', '&#x1F1F9&#x1F1F9');
1992         Smilies::add($b, ':tuvalu:', '&#x1F1F9&#x1F1FB');
1993         Smilies::add($b, ':taiwan:', '&#x1F1F9&#x1F1FC');
1994         Smilies::add($b, ':tanzania:', '&#x1F1F9&#x1F1FF');
1995         Smilies::add($b, ':ukraine:', '&#x1F1FA&#x1F1E6');
1996         Smilies::add($b, ':uganda:', '&#x1F1FA&#x1F1EC');
1997         Smilies::add($b, ':u.s.outlyingislands:', '&#x1F1FA&#x1F1F2');
1998         Smilies::add($b, ':unitednations:', '&#x1F1FA&#x1F1F3');
1999         Smilies::add($b, ':unitedstates:', '&#x1F1FA&#x1F1F8');
2000         Smilies::add($b, ':uruguay:', '&#x1F1FA&#x1F1FE');
2001         Smilies::add($b, ':uzbekistan:', '&#x1F1FA&#x1F1FF');
2002         Smilies::add($b, ':vaticancity:', '&#x1F1FB&#x1F1E6');
2003         Smilies::add($b, ':st.vincent&grenadines:', '&#x1F1FB&#x1F1E8');
2004         Smilies::add($b, ':venezuela:', '&#x1F1FB&#x1F1EA');
2005         Smilies::add($b, ':britishvirginislands:', '&#x1F1FB&#x1F1EC');
2006         Smilies::add($b, ':u.s.virginislands:', '&#x1F1FB&#x1F1EE');
2007         Smilies::add($b, ':vietnam:', '&#x1F1FB&#x1F1F3');
2008         Smilies::add($b, ':vanuatu:', '&#x1F1FB&#x1F1FA');
2009         Smilies::add($b, ':wallis&futuna:', '&#x1F1FC&#x1F1EB');
2010         Smilies::add($b, ':samoa:', '&#x1F1FC&#x1F1F8');
2011         Smilies::add($b, ':kosovo:', '&#x1F1FD&#x1F1F0');
2012         Smilies::add($b, ':yemen:', '&#x1F1FE&#x1F1EA');
2013         Smilies::add($b, ':mayotte:', '&#x1F1FE&#x1F1F9');
2014         Smilies::add($b, ':southafrica:', '&#x1F1FF&#x1F1E6');
2015         Smilies::add($b, ':zambia:', '&#x1F1FF&#x1F1F2');
2016         Smilies::add($b, ':zimbabwe:', '&#x1F1FF&#x1F1FC');
2017
2018 // subdivision-flag
2019         Smilies::add($b, ':england:', '&#x1F3F4&#xE0067&#xE0062&#xE0065&#xE006E&#xE0067&#xE007F');
2020         Smilies::add($b, ':scotland:', '&#x1F3F4&#xE0067&#xE0062&#xE0073&#xE0074&#xE007F');
2021         Smilies::add($b, ':wales:', '&#x1F3F4&#xE0067&#xE0062&#xE0077&#xE006C&#xE0073&#xE007F');
2022
2023         }