cs.min.js
193.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
!function (u, D) {
"use strict";
"object" == typeof exports && void 0 !== typeof module ? module.exports = D() : "function" == typeof define && define.amd ? define(D) : (window.RongIMLib = window.RongIMLib || {}, window.RongIMLib.RongIMEmoji = D())
}(window, function () {
var u = {
u1F600: {en: "Grinning Face", zh: "笑嘻嘻", tag: "😀", position: "0px 0px"},
u1F601: {en: "Grinning With Smiling", zh: "露齿而笑", tag: "😁", position: "-25px 0px"},
u1F602: {en: "Laughing Tears", zh: "喜极而泣", tag: "😂", position: "-50px 0px"},
u1F603: {en: "Smiley Face", zh: "笑脸", tag: "😃", position: "-75px 0px"},
u1F605: {en: "Happy Sweat", zh: "尴尬", tag: "😅", position: "-100px 0px"},
u1F606: {en: "Big Grin", zh: "大笑", tag: "😆", position: "-125px 0px"},
u1F607: {en: "Halo", zh: "天使光环", tag: "😇", position: "-150px 0px"},
u1F608: {en: "Purple Devil", zh: "小恶魔", tag: "😈", position: "-175px 0px"},
u1F609: {en: "Winking Face", zh: "眨眼", tag: "😉", position: "-200px 0px"},
u1F611: {en: "Expressionless Face", zh: "面无表情", tag: "😑", position: "-225px 0px"},
u1F612: {en: "Dissatisfied", zh: "不满", tag: "😒", position: "-250px 0px"},
u1F613: {en: "Sweat", zh: "汗", tag: "😓", position: "-275px 0px"},
u1F614: {en: "Pensive", zh: "沉思", tag: "😔", position: "-300px 0px"},
u1F615: {en: "Confused", zh: "困惑", tag: "😕", position: "-325px 0px"},
u1F616: {en: "Confounded Face", zh: "蒙羞", tag: "😖", position: "-350px 0px"},
u1F618: {en: "Blowing Kiss", zh: "飞吻", tag: "😘", position: "-375px 0px"},
u1F621: {en: "Angry Face", zh: "生气", tag: "😡", position: "-400px 0px"},
u1F622: {en: "Sobbing", zh: "哭泣", tag: "😭", position: "-2075px 0px"},
u1F623: {en: "Helpless Face", zh: "无助", tag: "😣", position: "-450px 0px"},
u1F624: {en: "Mad Face", zh: "怒气冲冲", tag: "😤", position: "-475px 0px"},
u1F628: {en: "Fearful Face", zh: "可怕", tag: "😨", position: "-500px 0px"},
u1F629: {en: "Weary Face", zh: "疲惫", tag: "😩", position: "-525px 0px"},
u1F630: {en: "Cold Sweat", zh: "冷汗", tag: "😰", position: "-550px 0px"},
u1F631: {en: "Scream", zh: "尖叫", tag: "😱", position: "-575px 0px"},
u1F632: {en: "Shocked Face", zh: "震惊", tag: "😲", position: "-600px 0px"},
u1F633: {en: "Flushed Face", zh: "脸红", tag: "😳", position: "-625px 0px"},
u1F634: {en: "Sleeping", zh: "睡眠", tag: "😴", position: "-650px 0px"},
u1F635: {en: "Dizzy Face", zh: "头晕眼花", tag: "😵", position: "-675px 0px"},
u1F636: {en: "Mouthless", zh: "无口", tag: "😶", position: "-700px 0px"},
u1F637: {en: "Mask Face", zh: "口罩", tag: "😷", position: "-725px 0px"},
u1F3A4: {en: "Microphone", zh: "麦克风", tag: "🎤", position: "-750px 0px"},
u1F3B2: {en: "Game Die", zh: "骰子", tag: "🎲", position: "-775px 0px"},
u1F3B5: {en: "Musical Note", zh: "音乐", tag: "🎵", position: "-800px 0px"},
u1F3C0: {en: "Basketball", zh: "篮球", tag: "🏀", position: "-825px 0px"},
u1F3C2: {en: "Snowboarder", zh: "单板滑雪", tag: "🏂", position: "-850px 0px"},
u1F3E1: {en: "House With Garden", zh: "房子", tag: "🏡", position: "-875px 0px"},
u1F004: {en: "Mahjong Red Dragon", zh: "麻将", tag: "🀄", position: "-900px 0px"},
u1F4A1: {en: "Light Bulb", zh: "灯泡", tag: "💡", position: "-925px 0px"},
u1F4A2: {en: "Anger", zh: "愤怒", tag: "💢", position: "-950px 0px"},
u1F4A3: {en: "Bomb", zh: "炸弹", tag: "💣", position: "-975px 0px"},
u1F4A4: {en: "Zzz", zh: "ZZZ", tag: "💤", position: "-1000px 0px"},
u1F4A9: {en: "Pile Of Poo", zh: "便便", tag: "💩", position: "-1025px 0px"},
u1F4AA: {en: "Flexed Biceps", zh: "肌肉", tag: "💪", position: "-1050px 0px"},
u1F4B0: {en: "Money Bag", zh: "钱袋", tag: "💰", position: "-1075px 0px"},
u1F4DA: {en: "Books", zh: "书籍", tag: "📚", position: "-1100px 0px"},
u1F4DE: {en: "Telephone Receiver", zh: "电话听筒", tag: "📞", position: "-1125px 0px"},
u1F4E2: {en: "Loudspeaker", zh: "扩音器", tag: "📢", position: "-1150px 0px"},
u1F6AB: {en: "Prohibited", zh: "禁止", tag: "🚫", position: "-1175px 0px"},
u1F6BF: {en: "Shower", zh: "淋浴", tag: "🚿", position: "-1200px 0px"},
u1F30F: {en: "Globe", zh: "地球", tag: "🌏", position: "-1225px 0px"},
u1F33B: {en: "Sunflower", zh: "向日葵", tag: "🌻", position: "-1250px 0px"},
u1F35A: {en: "Cooked Rice", zh: "米饭", tag: "🍚", position: "-1275px 0px"},
u1F36B: {en: "Chocolate Bar", zh: "巧克力", tag: "🍫", position: "-1300px 0px"},
u1F37B: {en: "Cheers", zh: "干杯", tag: "🍻", position: "-1325px 0px"},
u270A: {en: "Oncoming Fist", zh: "击拳", tag: "👊", position: "-1350px 0px"},
u1F44C: {en: "Ok Hand", zh: "没问题", tag: "👌", position: "-1375px 0px"},
u1F44D: {en: "Thumbs Up", zh: "赞", tag: "👍", position: "-1400px 0px"},
u1F44E: {en: "Thumbs Down", zh: "喝倒彩", tag: "👎", position: "-1425px 0px"},
u1F44F: {en: "Clapping Hands", zh: "鼓掌", tag: "👏", position: "-1450px 0px"},
u1F46A: {en: "Family", zh: "家庭", tag: "👪", position: "-1475px 0px"},
u1F46B: {en: "Couple", zh: "情侣", tag: "👫", position: "-1500px 0px"},
u1F62C: {en: "Grimacing Face", zh: "扮鬼脸", tag: "😬", position: "-2050px 0px"},
u1F47B: {en: "Ghost", zh: "鬼", tag: "👻", position: "-1525px 0px"},
u1F47C: {en: "Baby Angel", zh: "宝贝天使", tag: "👼", position: "-1550px 0px"},
u1F47D: {en: "Alien", zh: "外星人", tag: "👽", position: "-1575px 0px"},
u1F47F: {en: "Devil", zh: "恶魔", tag: "👿", position: "-1600px 0px"},
u1F48A: {en: "Capsule", zh: "药", tag: "💊", position: "-1625px 0px"},
u1F48B: {en: "Kiss", zh: "吻", tag: "💋", position: "-1650px 0px"},
u1F48D: {en: "Ring", zh: "戒指", tag: "💍", position: "-1675px 0px"},
u1F52B: {en: "Pistol", zh: "手枪", tag: "🔫", position: "-1700px 0px"},
u1F60A: {en: "Smiley", zh: "微笑", tag: "😊", position: "-1725px 0px"},
u1F60B: {en: "Hungry", zh: "馋", tag: "😋", position: "-1750px 0px"},
u1F60C: {en: "Pleased", zh: "满意", tag: "😌", position: "-1775px 0px"},
u1F60D: {en: "Heart Eyes", zh: "色迷迷", tag: "😍", position: "-1800px 0px"},
u1F60E: {en: "Sunglasses", zh: "墨镜", tag: "😎", position: "-1825px 0px"},
u1F60F: {en: "Smirking Face", zh: "傻笑", tag: "😏", position: "-1850px 0px"},
u1F61A: {en: "Kiss Face", zh: "么么哒", tag: "😚", position: "-1875px 0px"},
u1F61C: {en: "Crazy Face", zh: "调皮", tag: "😜", position: "-1900px 0px"},
u1F61D: {en: "Tongue Out", zh: "吐舌头", tag: "😝", position: "-1925px 0px"},
u1F61E: {en: "Disappointed Face", zh: "失望", tag: "😞", position: "-1950px 0px"},
u1F61F: {en: "Worried Face", zh: "苦瓜脸", tag: "😟", position: "-1975px 0px"},
u1F62A: {en: "Sleepy Face", zh: "困", tag: "😪", position: "-2000px 0px"},
u1F62B: {en: "Tired Face", zh: "抓狂", tag: "😫", position: "-2025px 0px"},
u1F62D: {en: "Crying", zh: "伤心", tag: "😢", position: "-425px 0px"},
u1F62F: {en: "Surprised Face", zh: "惊呆", tag: "😯", position: "-2100px 0px"},
u1F64A: {en: "No Speaking", zh: "闭嘴", tag: "🙊", position: "-2125px 0px"},
u1F64F: {en: "Folded Hands", zh: "祈祷", tag: "🙏", position: "-2150px 0px"},
u1F319: {en: "Drescent Moon", zh: "弯月", tag: "🌙", position: "-2175px 0px"},
u1F332: {en: "Pine Tree", zh: "松树", tag: "🌲", position: "-2200px 0px"},
u1F339: {en: "Rose", zh: "玫瑰", tag: "🌹", position: "-2225px 0px"},
u1F349: {en: "Watermelon", zh: "西瓜", tag: "🍉", position: "-2250px 0px"},
u1F356: {en: "Barbecue", zh: "BBQ", tag: "🍖", position: "-2275px 0px"},
u1F366: {en: "Ice Cream", zh: "冰淇淋", tag: "🍦", position: "-2300px 0px"},
u1F377: {en: "Wine Glass", zh: "红酒", tag: "🍷", position: "-2325px 0px"},
u1F381: {en: "Wrapped Gift", zh: "礼物", tag: "🎁", position: "-2350px 0px"},
u1F382: {en: "Birthday Cake", zh: "生日蛋糕", tag: "🎂", position: "-2375px 0px"},
u1F384: {en: "Christmas Tree", zh: "圣诞树", tag: "🎄", position: "-2400px 0px"},
u1F389: {en: "Party Popper", zh: "聚会礼花", tag: "🎉", position: "-2425px 0px"},
u1F393: {en: "Graduation Cap", zh: "毕业帽", tag: "🎓", position: "-2450px 0px"},
u1F434: {en: "Horse", zh: "马", tag: "🐴", position: "-2475px 0px"},
u1F436: {en: "Dog", zh: "狗", tag: "🐶", position: "-2500px 0px"},
u1F437: {en: "Pig", zh: "猪", tag: "🐷", position: "-2525px 0px"},
u1F451: {en: "Crown", zh: "王冠", tag: "👑", position: "-2550px 0px"},
u1F484: {en: "Lipstick", zh: "口红", tag: "💄", position: "-2575px 0px"},
u1F494: {en: "Broken Heart", zh: "心碎", tag: "💔", position: "-2600px 0px"},
u1F525: {en: "Fire", zh: "火", tag: "🔥", position: "-2625px 0px"},
u1F556: {en: "Clock", zh: "表", tag: "🕖", position: "-2650px 0px"},
u1F648: {en: "See No Monkey", zh: "不看", tag: "🙈", position: "-2675px 0px"},
u1F649: {en: "Hear No Monkey", zh: "不听", tag: "🙉", position: "-2700px 0px"},
u1F680: {en: "Rocket", zh: "火箭", tag: "🚀", position: "-2725px 0px"},
u2B50: {en: "Star", zh: "星星", tag: "⭐", position: "-2750px 0px"},
u23F0: {en: "Alarm Clock", zh: "闹钟", tag: "⏰", position: "-2775px 0px"},
u23F3: {en: "Hourglass", zh: "沙漏", tag: "⏳", position: "-2800px 0px"},
u26A1: {en: "Lightning Bolt", zh: "闪电", tag: "⚡", position: "-2825px 0px"},
u26BD: {en: "Soccer Ball", zh: "足球", tag: "⚽", position: "-2850px 0px"},
u26C4: {en: "Snowman", zh: "雪人", tag: "⛄", position: "-2875px 0px"},
u26C5: {en: "Cloudy", zh: "多云", tag: "⛅", position: "-2900px 0px"},
u261D: {en: "Pointing Up", zh: "第一", tag: "☝", position: "-2925px 0px"},
u263A: {en: "Cute", zh: "萌萌哒", tag: "☺", position: "-2950px 0px"},
u1F44A: {en: "Raised Fist", zh: "举起拳头", tag: "✊", position: "-2975px 0px"},
u270B: {en: "Raised Hand", zh: "举手", tag: "✋", position: "-3000px 0px"},
u270C: {en: "Victory Hand", zh: "耶", tag: "✌", position: "-3025px 0px"},
u270F: {en: "Pencil", zh: "铅笔", tag: "✏", position: "-3050px 0px"},
u2600: {en: "Sunny", zh: "晴朗", tag: "☀", position: "-3075px 0px"},
u2601: {en: "Cloud", zh: "云彩", tag: "☁", position: "-3100px 0px"},
u2614: {en: "Umbrella", zh: "雨伞", tag: "☔", position: "-3125px 0px"},
u2615: {en: "Coffee", zh: "咖啡", tag: "☕", position: "-3150px 0px"},
u2744: {en: "Snowflake", zh: "雪花", tag: "❄", position: "-3175px 0px"}
}, D = [],
f = /(\uD83D\uDC76\uD83C\uDFFB|\uD83D\uDC76\uD83C\uDFFC|\uD83D\uDC76\uD83C\uDFFD|\uD83D\uDC76\uD83C\uDFFE|\uD83D\uDC76\uD83C\uDFFF|\uD83E\uDDD2\uD83C\uDFFB|\uD83E\uDDD2\uD83C\uDFFC|\uD83E\uDDD2\uD83C\uDFFD|\uD83E\uDDD2\uD83C\uDFFE|\uD83E\uDDD2\uD83C\uDFFF|\uD83D\uDC66\uD83C\uDFFB|\uD83D\uDC66\uD83C\uDFFC|\uD83D\uDC66\uD83C\uDFFD|\uD83D\uDC66\uD83C\uDFFE|\uD83D\uDC66\uD83C\uDFFF|\uD83D\uDC67\uD83C\uDFFB|\uD83D\uDC67\uD83C\uDFFC|\uD83D\uDC67\uD83C\uDFFD|\uD83D\uDC67\uD83C\uDFFE|\uD83D\uDC67\uD83C\uDFFF|\uD83E\uDDD1\uD83C\uDFFB|\uD83E\uDDD1\uD83C\uDFFC|\uD83E\uDDD1\uD83C\uDFFD|\uD83E\uDDD1\uD83C\uDFFE|\uD83E\uDDD1\uD83C\uDFFF|\uD83D\uDC68\uD83C\uDFFB|\uD83D\uDC68\uD83C\uDFFC|\uD83D\uDC68\uD83C\uDFFD|\uD83D\uDC68\uD83C\uDFFE|\uD83D\uDC68\uD83C\uDFFF|\uD83D\uDC69\uD83C\uDFFB|\uD83D\uDC69\uD83C\uDFFC|\uD83D\uDC69\uD83C\uDFFD|\uD83D\uDC69\uD83C\uDFFE|\uD83D\uDC69\uD83C\uDFFF|\uD83E\uDDD3\uD83C\uDFFB|\uD83E\uDDD3\uD83C\uDFFC|\uD83E\uDDD3\uD83C\uDFFD|\uD83E\uDDD3\uD83C\uDFFE|\uD83E\uDDD3\uD83C\uDFFF|\uD83D\uDC74\uD83C\uDFFB|\uD83D\uDC74\uD83C\uDFFC|\uD83D\uDC74\uD83C\uDFFD|\uD83D\uDC74\uD83C\uDFFE|\uD83D\uDC74\uD83C\uDFFF|\uD83D\uDC75\uD83C\uDFFB|\uD83D\uDC75\uD83C\uDFFC|\uD83D\uDC75\uD83C\uDFFD|\uD83D\uDC75\uD83C\uDFFE|\uD83D\uDC75\uD83C\uDFFF|\uD83D\uDC68\u200D\u2695\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFB\u200D\u2695\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFC\u200D\u2695\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFD\u200D\u2695\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFE\u200D\u2695\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFF\u200D\u2695\uD83F\uDE0F|\uD83D\uDC69\u200D\u2695\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFB\u200D\u2695\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFC\u200D\u2695\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFD\u200D\u2695\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFE\u200D\u2695\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFF\u200D\u2695\uD83F\uDE0F|\uD83D\uDC68\u200D\uD83C\uDF93|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDF93|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDF93|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDF93|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDF93|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDF93|\uD83D\uDC69\u200D\uD83C\uDF93|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDF93|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDF93|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDF93|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDF93|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDF93|\uD83D\uDC68\u200D\uD83C\uDFEB|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDFEB|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDFEB|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDFEB|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDFEB|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDFEB|\uD83D\uDC69\u200D\uD83C\uDFEB|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDFEB|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDFEB|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDFEB|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDFEB|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDFEB|\uD83D\uDC68\u200D\u2696\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFB\u200D\u2696\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFC\u200D\u2696\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFD\u200D\u2696\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFE\u200D\u2696\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFF\u200D\u2696\uD83F\uDE0F|\uD83D\uDC69\u200D\u2696\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFB\u200D\u2696\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFC\u200D\u2696\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFD\u200D\u2696\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFE\u200D\u2696\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFF\u200D\u2696\uD83F\uDE0F|\uD83D\uDC68\u200D\uD83C\uDF3E|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDF3E|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDF3E|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDF3E|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDF3E|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDF3E|\uD83D\uDC69\u200D\uD83C\uDF3E|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDF3E|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDF3E|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDF3E|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDF3E|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDF3E|\uD83D\uDC68\u200D\uD83C\uDF73|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDF73|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDF73|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDF73|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDF73|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDF73|\uD83D\uDC69\u200D\uD83C\uDF73|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDF73|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDF73|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDF73|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDF73|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDF73|\uD83D\uDC68\u200D\uD83D\uDD27|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83D\uDD27|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83D\uDD27|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83D\uDD27|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83D\uDD27|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83D\uDD27|\uD83D\uDC69\u200D\uD83D\uDD27|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83D\uDD27|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83D\uDD27|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83D\uDD27|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83D\uDD27|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83D\uDD27|\uD83D\uDC68\u200D\uD83C\uDFED|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDFED|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDFED|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDFED|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDFED|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDFED|\uD83D\uDC69\u200D\uD83C\uDFED|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDFED|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDFED|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDFED|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDFED|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDFED|\uD83D\uDC68\u200D\uD83D\uDCBC|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83D\uDCBC|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83D\uDCBC|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83D\uDCBC|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83D\uDCBC|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83D\uDCBC|\uD83D\uDC69\u200D\uD83D\uDCBC|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83D\uDCBC|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83D\uDCBC|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83D\uDCBC|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83D\uDCBC|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83D\uDCBC|\uD83D\uDC68\u200D\uD83D\uDD2C|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83D\uDD2C|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83D\uDD2C|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83D\uDD2C|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83D\uDD2C|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83D\uDD2C|\uD83D\uDC69\u200D\uD83D\uDD2C|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83D\uDD2C|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83D\uDD2C|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83D\uDD2C|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83D\uDD2C|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83D\uDD2C|\uD83D\uDC68\u200D\uD83D\uDCBB|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83D\uDCBB|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83D\uDCBB|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83D\uDCBB|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83D\uDCBB|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83D\uDCBB|\uD83D\uDC69\u200D\uD83D\uDCBB|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83D\uDCBB|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83D\uDCBB|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83D\uDCBB|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83D\uDCBB|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83D\uDCBB|\uD83D\uDC68\u200D\uD83C\uDFA4|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDFA4|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDFA4|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDFA4|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDFA4|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDFA4|\uD83D\uDC69\u200D\uD83C\uDFA4|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDFA4|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDFA4|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDFA4|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDFA4|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDFA4|\uD83D\uDC68\u200D\uD83C\uDFA8|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83C\uDFA8|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83C\uDFA8|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83C\uDFA8|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83C\uDFA8|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83C\uDFA8|\uD83D\uDC69\u200D\uD83C\uDFA8|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83C\uDFA8|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83C\uDFA8|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83C\uDFA8|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83C\uDFA8|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83C\uDFA8|\uD83D\uDC68\u200D\u2708\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFB\u200D\u2708\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFC\u200D\u2708\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFD\u200D\u2708\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFE\u200D\u2708\uD83F\uDE0F|\uD83D\uDC68\uD83C\uDFFF\u200D\u2708\uD83F\uDE0F|\uD83D\uDC69\u200D\u2708\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFB\u200D\u2708\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFC\u200D\u2708\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFD\u200D\u2708\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFE\u200D\u2708\uD83F\uDE0F|\uD83D\uDC69\uD83C\uDFFF\u200D\u2708\uD83F\uDE0F|\uD83D\uDC68\u200D\uD83D\uDE80|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83D\uDE80|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83D\uDE80|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83D\uDE80|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83D\uDE80|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83D\uDE80|\uD83D\uDC69\u200D\uD83D\uDE80|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83D\uDE80|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83D\uDE80|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83D\uDE80|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83D\uDE80|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83D\uDE80|\uD83D\uDC68\u200D\uD83D\uDE92|\uD83D\uDC68\uD83C\uDFFB\u200D\uD83D\uDE92|\uD83D\uDC68\uD83C\uDFFC\u200D\uD83D\uDE92|\uD83D\uDC68\uD83C\uDFFD\u200D\uD83D\uDE92|\uD83D\uDC68\uD83C\uDFFE\u200D\uD83D\uDE92|\uD83D\uDC68\uD83C\uDFFF\u200D\uD83D\uDE92|\uD83D\uDC69\u200D\uD83D\uDE92|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83D\uDE92|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83D\uDE92|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83D\uDE92|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83D\uDE92|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83D\uDE92|\uD83D\uDC6E\uD83C\uDFFB|\uD83D\uDC6E\uD83C\uDFFC|\uD83D\uDC6E\uD83C\uDFFD|\uD83D\uDC6E\uD83C\uDFFE|\uD83D\uDC6E\uD83C\uDFFF|\uD83D\uDC6E\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6E\u200D\u2640\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC6E\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFB|\uD83D\uDD75\uD83C\uDFFC|\uD83D\uDD75\uD83C\uDFFD|\uD83D\uDD75\uD83C\uDFFE|\uD83D\uDD75\uD83C\uDFFF|\uD83D\uDD75\uD83F\uDE0F\u200D\u2642\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDD75\uD83F\uDE0F\u200D\u2640\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDD75\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFB|\uD83D\uDC82\uD83C\uDFFC|\uD83D\uDC82\uD83C\uDFFD|\uD83D\uDC82\uD83C\uDFFE|\uD83D\uDC82\uD83C\uDFFF|\uD83D\uDC82\u200D\u2642\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC82\u200D\u2640\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC82\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFB|\uD83D\uDC77\uD83C\uDFFC|\uD83D\uDC77\uD83C\uDFFD|\uD83D\uDC77\uD83C\uDFFE|\uD83D\uDC77\uD83C\uDFFF|\uD83D\uDC77\u200D\u2642\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC77\u200D\u2640\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC77\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD34\uD83C\uDFFB|\uD83E\uDD34\uD83C\uDFFC|\uD83E\uDD34\uD83C\uDFFD|\uD83E\uDD34\uD83C\uDFFE|\uD83E\uDD34\uD83C\uDFFF|\uD83D\uDC78\uD83C\uDFFB|\uD83D\uDC78\uD83C\uDFFC|\uD83D\uDC78\uD83C\uDFFD|\uD83D\uDC78\uD83C\uDFFE|\uD83D\uDC78\uD83C\uDFFF|\uD83D\uDC73\uD83C\uDFFB|\uD83D\uDC73\uD83C\uDFFC|\uD83D\uDC73\uD83C\uDFFD|\uD83D\uDC73\uD83C\uDFFE|\uD83D\uDC73\uD83C\uDFFF|\uD83D\uDC73\u200D\u2642\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC73\u200D\u2640\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC73\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC72\uD83C\uDFFB|\uD83D\uDC72\uD83C\uDFFC|\uD83D\uDC72\uD83C\uDFFD|\uD83D\uDC72\uD83C\uDFFE|\uD83D\uDC72\uD83C\uDFFF|\uD83E\uDDD5\uD83C\uDFFB|\uD83E\uDDD5\uD83C\uDFFC|\uD83E\uDDD5\uD83C\uDFFD|\uD83E\uDDD5\uD83C\uDFFE|\uD83E\uDDD5\uD83C\uDFFF|\uD83E\uDDD4\uD83C\uDFFB|\uD83E\uDDD4\uD83C\uDFFC|\uD83E\uDDD4\uD83C\uDFFD|\uD83E\uDDD4\uD83C\uDFFE|\uD83E\uDDD4\uD83C\uDFFF|\uD83D\uDC71\uD83C\uDFFB|\uD83D\uDC71\uD83C\uDFFC|\uD83D\uDC71\uD83C\uDFFD|\uD83D\uDC71\uD83C\uDFFE|\uD83D\uDC71\uD83C\uDFFF|\uD83D\uDC71\u200D\u2642\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC71\u200D\u2640\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC71\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD35\uD83C\uDFFB|\uD83E\uDD35\uD83C\uDFFC|\uD83E\uDD35\uD83C\uDFFD|\uD83E\uDD35\uD83C\uDFFE|\uD83E\uDD35\uD83C\uDFFF|\uD83D\uDC70\uD83C\uDFFB|\uD83D\uDC70\uD83C\uDFFC|\uD83D\uDC70\uD83C\uDFFD|\uD83D\uDC70\uD83C\uDFFE|\uD83D\uDC70\uD83C\uDFFF|\uD83E\uDD30\uD83C\uDFFB|\uD83E\uDD30\uD83C\uDFFC|\uD83E\uDD30\uD83C\uDFFD|\uD83E\uDD30\uD83C\uDFFE|\uD83E\uDD30\uD83C\uDFFF|\uD83E\uDD31\uD83C\uDFFB|\uD83E\uDD31\uD83C\uDFFC|\uD83E\uDD31\uD83C\uDFFD|\uD83E\uDD31\uD83C\uDFFE|\uD83E\uDD31\uD83C\uDFFF|\uD83D\uDC7C\uD83C\uDFFB|\uD83D\uDC7C\uD83C\uDFFC|\uD83D\uDC7C\uD83C\uDFFD|\uD83D\uDC7C\uD83C\uDFFE|\uD83D\uDC7C\uD83C\uDFFF|\uD83C\uDF85\uD83C\uDFFB|\uD83C\uDF85\uD83C\uDFFC|\uD83C\uDF85\uD83C\uDFFD|\uD83C\uDF85\uD83C\uDFFE|\uD83C\uDF85\uD83C\uDFFF|\uD83E\uDD36\uD83C\uDFFB|\uD83E\uDD36\uD83C\uDFFC|\uD83E\uDD36\uD83C\uDFFD|\uD83E\uDD36\uD83C\uDFFE|\uD83E\uDD36\uD83C\uDFFF|\uD83E\uDDD9\uD83C\uDFFB|\uD83E\uDDD9\uD83C\uDFFC|\uD83E\uDDD9\uD83C\uDFFD|\uD83E\uDDD9\uD83C\uDFFE|\uD83E\uDDD9\uD83C\uDFFF|\uD83E\uDDD9\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD9\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD9\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFB|\uD83E\uDDDA\uD83C\uDFFC|\uD83E\uDDDA\uD83C\uDFFD|\uD83E\uDDDA\uD83C\uDFFE|\uD83E\uDDDA\uD83C\uDFFF|\uD83E\uDDDA\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDA\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDA\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFB|\uD83E\uDDDB\uD83C\uDFFC|\uD83E\uDDDB\uD83C\uDFFD|\uD83E\uDDDB\uD83C\uDFFE|\uD83E\uDDDB\uD83C\uDFFF|\uD83E\uDDDB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDB\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFB|\uD83E\uDDDC\uD83C\uDFFC|\uD83E\uDDDC\uD83C\uDFFD|\uD83E\uDDDC\uD83C\uDFFE|\uD83E\uDDDC\uD83C\uDFFF|\uD83E\uDDDC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDC\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFB|\uD83E\uDDDD\uD83C\uDFFC|\uD83E\uDDDD\uD83C\uDFFD|\uD83E\uDDDD\uD83C\uDFFE|\uD83E\uDDDD\uD83C\uDFFF|\uD83E\uDDDD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDD\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDDF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDDF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFB|\uD83D\uDE4D\uD83C\uDFFC|\uD83D\uDE4D\uD83C\uDFFD|\uD83D\uDE4D\uD83C\uDFFE|\uD83D\uDE4D\uD83C\uDFFF|\uD83D\uDE4D\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4D\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4D\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFB|\uD83D\uDE4E\uD83C\uDFFC|\uD83D\uDE4E\uD83C\uDFFD|\uD83D\uDE4E\uD83C\uDFFE|\uD83D\uDE4E\uD83C\uDFFF|\uD83D\uDE4E\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4E\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4E\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFB|\uD83D\uDE45\uD83C\uDFFC|\uD83D\uDE45\uD83C\uDFFD|\uD83D\uDE45\uD83C\uDFFE|\uD83D\uDE45\uD83C\uDFFF|\uD83D\uDE45\u200D\u2642\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE45\u200D\u2640\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDE45\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFB|\uD83D\uDE46\uD83C\uDFFC|\uD83D\uDE46\uD83C\uDFFD|\uD83D\uDE46\uD83C\uDFFE|\uD83D\uDE46\uD83C\uDFFF|\uD83D\uDE46\u200D\u2642\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE46\u200D\u2640\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDE46\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFB|\uD83D\uDC81\uD83C\uDFFC|\uD83D\uDC81\uD83C\uDFFD|\uD83D\uDC81\uD83C\uDFFE|\uD83D\uDC81\uD83C\uDFFF|\uD83D\uDC81\u200D\u2642\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC81\u200D\u2640\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC81\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFB|\uD83D\uDE4B\uD83C\uDFFC|\uD83D\uDE4B\uD83C\uDFFD|\uD83D\uDE4B\uD83C\uDFFE|\uD83D\uDE4B\uD83C\uDFFF|\uD83D\uDE4B\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE4B\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDE4B\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFB|\uD83D\uDE47\uD83C\uDFFC|\uD83D\uDE47\uD83C\uDFFD|\uD83D\uDE47\uD83C\uDFFE|\uD83D\uDE47\uD83C\uDFFF|\uD83D\uDE47\u200D\u2642\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDE47\u200D\u2640\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDE47\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFB|\uD83E\uDD26\uD83C\uDFFC|\uD83E\uDD26\uD83C\uDFFD|\uD83E\uDD26\uD83C\uDFFE|\uD83E\uDD26\uD83C\uDFFF|\uD83E\uDD26\u200D\u2642\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDD26\u200D\u2640\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDD26\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFB|\uD83E\uDD37\uD83C\uDFFC|\uD83E\uDD37\uD83C\uDFFD|\uD83E\uDD37\uD83C\uDFFE|\uD83E\uDD37\uD83C\uDFFF|\uD83E\uDD37\u200D\u2642\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDD37\u200D\u2640\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDD37\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFB|\uD83D\uDC86\uD83C\uDFFC|\uD83D\uDC86\uD83C\uDFFD|\uD83D\uDC86\uD83C\uDFFE|\uD83D\uDC86\uD83C\uDFFF|\uD83D\uDC86\u200D\u2642\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC86\u200D\u2640\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC86\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFB|\uD83D\uDC87\uD83C\uDFFC|\uD83D\uDC87\uD83C\uDFFD|\uD83D\uDC87\uD83C\uDFFE|\uD83D\uDC87\uD83C\uDFFF|\uD83D\uDC87\u200D\u2642\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDC87\u200D\u2640\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDC87\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFB|\uD83D\uDEB6\uD83C\uDFFC|\uD83D\uDEB6\uD83C\uDFFD|\uD83D\uDEB6\uD83C\uDFFE|\uD83D\uDEB6\uD83C\uDFFF|\uD83D\uDEB6\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB6\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB6\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFB|\uD83C\uDFC3\uD83C\uDFFC|\uD83C\uDFC3\uD83C\uDFFD|\uD83C\uDFC3\uD83C\uDFFE|\uD83C\uDFC3\uD83C\uDFFF|\uD83C\uDFC3\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC3\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC3\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC83\uD83C\uDFFB|\uD83D\uDC83\uD83C\uDFFC|\uD83D\uDC83\uD83C\uDFFD|\uD83D\uDC83\uD83C\uDFFE|\uD83D\uDC83\uD83C\uDFFF|\uD83D\uDD7A\uD83C\uDFFB|\uD83D\uDD7A\uD83C\uDFFC|\uD83D\uDD7A\uD83C\uDFFD|\uD83D\uDD7A\uD83C\uDFFE|\uD83D\uDD7A\uD83C\uDFFF|\uD83D\uDC6F\u200D\u2642\uD83F\uDE0F|\uD83D\uDC6F\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFB|\uD83E\uDDD6\uD83C\uDFFC|\uD83E\uDDD6\uD83C\uDFFD|\uD83E\uDDD6\uD83C\uDFFE|\uD83E\uDDD6\uD83C\uDFFF|\uD83E\uDDD6\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD6\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD6\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFB|\uD83E\uDDD7\uD83C\uDFFC|\uD83E\uDDD7\uD83C\uDFFD|\uD83E\uDDD7\uD83C\uDFFE|\uD83E\uDDD7\uD83C\uDFFF|\uD83E\uDDD7\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD7\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD7\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFB|\uD83E\uDDD8\uD83C\uDFFC|\uD83E\uDDD8\uD83C\uDFFD|\uD83E\uDDD8\uD83C\uDFFE|\uD83E\uDDD8\uD83C\uDFFF|\uD83E\uDDD8\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDDD8\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDDD8\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDEC0\uD83C\uDFFB|\uD83D\uDEC0\uD83C\uDFFC|\uD83D\uDEC0\uD83C\uDFFD|\uD83D\uDEC0\uD83C\uDFFE|\uD83D\uDEC0\uD83C\uDFFF|\uD83D\uDECC\uD83C\uDFFB|\uD83D\uDECC\uD83C\uDFFC|\uD83D\uDECC\uD83C\uDFFD|\uD83D\uDECC\uD83C\uDFFE|\uD83D\uDECC\uD83C\uDFFF|\uD83D\uDD74\uD83C\uDFFB|\uD83D\uDD74\uD83C\uDFFC|\uD83D\uDD74\uD83C\uDFFD|\uD83D\uDD74\uD83C\uDFFE|\uD83D\uDD74\uD83C\uDFFF|\uD83C\uDFC7\uD83C\uDFFB|\uD83C\uDFC7\uD83C\uDFFC|\uD83C\uDFC7\uD83C\uDFFD|\uD83C\uDFC7\uD83C\uDFFE|\uD83C\uDFC7\uD83C\uDFFF|\uD83C\uDFC2\uD83C\uDFFB|\uD83C\uDFC2\uD83C\uDFFC|\uD83C\uDFC2\uD83C\uDFFD|\uD83C\uDFC2\uD83C\uDFFE|\uD83C\uDFC2\uD83C\uDFFF|\uD83C\uDFCC\uD83C\uDFFB|\uD83C\uDFCC\uD83C\uDFFC|\uD83C\uDFCC\uD83C\uDFFD|\uD83C\uDFCC\uD83C\uDFFE|\uD83C\uDFCC\uD83C\uDFFF|\uD83C\uDFCC\uD83F\uDE0F\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCC\uD83F\uDE0F\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCC\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFB|\uD83C\uDFC4\uD83C\uDFFC|\uD83C\uDFC4\uD83C\uDFFD|\uD83C\uDFC4\uD83C\uDFFE|\uD83C\uDFC4\uD83C\uDFFF|\uD83C\uDFC4\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83C\uDFC4\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83C\uDFC4\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFB|\uD83D\uDEA3\uD83C\uDFFC|\uD83D\uDEA3\uD83C\uDFFD|\uD83D\uDEA3\uD83C\uDFFE|\uD83D\uDEA3\uD83C\uDFFF|\uD83D\uDEA3\u200D\u2642\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDEA3\u200D\u2640\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDEA3\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFB|\uD83C\uDFCA\uD83C\uDFFC|\uD83C\uDFCA\uD83C\uDFFD|\uD83C\uDFCA\uD83C\uDFFE|\uD83C\uDFCA\uD83C\uDFFF|\uD83C\uDFCA\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCA\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCA\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFB|\uD83C\uDFCB\uD83C\uDFFC|\uD83C\uDFCB\uD83C\uDFFD|\uD83C\uDFCB\uD83C\uDFFE|\uD83C\uDFCB\uD83C\uDFFF|\uD83C\uDFCB\uD83F\uDE0F\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83C\uDFCB\uD83F\uDE0F\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83C\uDFCB\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFB|\uD83D\uDEB4\uD83C\uDFFC|\uD83D\uDEB4\uD83C\uDFFD|\uD83D\uDEB4\uD83C\uDFFE|\uD83D\uDEB4\uD83C\uDFFF|\uD83D\uDEB4\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB4\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB4\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFB|\uD83D\uDEB5\uD83C\uDFFC|\uD83D\uDEB5\uD83C\uDFFD|\uD83D\uDEB5\uD83C\uDFFE|\uD83D\uDEB5\uD83C\uDFFF|\uD83D\uDEB5\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83D\uDEB5\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83D\uDEB5\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFB|\uD83E\uDD38\uD83C\uDFFC|\uD83E\uDD38\uD83C\uDFFD|\uD83E\uDD38\uD83C\uDFFE|\uD83E\uDD38\uD83C\uDFFF|\uD83E\uDD38\u200D\u2642\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDD38\u200D\u2640\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDD38\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3C\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3C\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFB|\uD83E\uDD3D\uD83C\uDFFC|\uD83E\uDD3D\uD83C\uDFFD|\uD83E\uDD3D\uD83C\uDFFE|\uD83E\uDD3D\uD83C\uDFFF|\uD83E\uDD3D\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3D\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3D\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFB|\uD83E\uDD3E\uD83C\uDFFC|\uD83E\uDD3E\uD83C\uDFFD|\uD83E\uDD3E\uD83C\uDFFE|\uD83E\uDD3E\uD83C\uDFFF|\uD83E\uDD3E\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDD3E\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDD3E\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFB|\uD83E\uDD39\uD83C\uDFFC|\uD83E\uDD39\uD83C\uDFFD|\uD83E\uDD39\uD83C\uDFFE|\uD83E\uDD39\uD83C\uDFFF|\uD83E\uDD39\u200D\u2642\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFB\u200D\u2642\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFC\u200D\u2642\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFD\u200D\u2642\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFE\u200D\u2642\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFF\u200D\u2642\uD83F\uDE0F|\uD83E\uDD39\u200D\u2640\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFB\u200D\u2640\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFC\u200D\u2640\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFD\u200D\u2640\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFE\u200D\u2640\uD83F\uDE0F|\uD83E\uDD39\uD83C\uDFFF\u200D\u2640\uD83F\uDE0F|\uD83D\uDC69\u200D\u2764\uD83F\uDE0F\u200D\uD83D\uDC8B\u200D\uD83D\uDC68|\uD83D\uDC68\u200D\u2764\uD83F\uDE0F\u200D\uD83D\uDC8B\u200D\uD83D\uDC68|\uD83D\uDC69\u200D\u2764\uD83F\uDE0F\u200D\uD83D\uDC8B\u200D\uD83D\uDC69|\uD83D\uDC69\u200D\u2764\uD83F\uDE0F\u200D\uD83D\uDC68|\uD83D\uDC68\u200D\u2764\uD83F\uDE0F\u200D\uD83D\uDC68|\uD83D\uDC69\u200D\u2764\uD83F\uDE0F\u200D\uD83D\uDC69|\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC67|\uD83D\uDC68\u200D\uD83D\uDC68\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC68\u200D\uD83D\uDC67|\uD83D\uDC68\u200D\uD83D\uDC68\u200D\uD83D\uDC67\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC68\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC68\u200D\uD83D\uDC67\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC67|\uD83D\uDC68\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC67|\uD83D\uDC68\u200D\uD83D\uDC67\u200D\uD83D\uDC66|\uD83D\uDC68\u200D\uD83D\uDC67\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC67|\uD83E\uDD33\uD83C\uDFFB|\uD83E\uDD33\uD83C\uDFFC|\uD83E\uDD33\uD83C\uDFFD|\uD83E\uDD33\uD83C\uDFFE|\uD83E\uDD33\uD83C\uDFFF|\uD83D\uDCAA\uD83C\uDFFB|\uD83D\uDCAA\uD83C\uDFFC|\uD83D\uDCAA\uD83C\uDFFD|\uD83D\uDCAA\uD83C\uDFFE|\uD83D\uDCAA\uD83C\uDFFF|\uD83D\uDC48\uD83C\uDFFB|\uD83D\uDC48\uD83C\uDFFC|\uD83D\uDC48\uD83C\uDFFD|\uD83D\uDC48\uD83C\uDFFE|\uD83D\uDC48\uD83C\uDFFF|\uD83D\uDC49\uD83C\uDFFB|\uD83D\uDC49\uD83C\uDFFC|\uD83D\uDC49\uD83C\uDFFD|\uD83D\uDC49\uD83C\uDFFE|\uD83D\uDC49\uD83C\uDFFF|\uD83D\uDC46\uD83C\uDFFB|\uD83D\uDC46\uD83C\uDFFC|\uD83D\uDC46\uD83C\uDFFD|\uD83D\uDC46\uD83C\uDFFE|\uD83D\uDC46\uD83C\uDFFF|\uD83D\uDD95\uD83C\uDFFB|\uD83D\uDD95\uD83C\uDFFC|\uD83D\uDD95\uD83C\uDFFD|\uD83D\uDD95\uD83C\uDFFE|\uD83D\uDD95\uD83C\uDFFF|\uD83D\uDC47\uD83C\uDFFB|\uD83D\uDC47\uD83C\uDFFC|\uD83D\uDC47\uD83C\uDFFD|\uD83D\uDC47\uD83C\uDFFE|\uD83D\uDC47\uD83C\uDFFF|\uD83E\uDD1E\uD83C\uDFFB|\uD83E\uDD1E\uD83C\uDFFC|\uD83E\uDD1E\uD83C\uDFFD|\uD83E\uDD1E\uD83C\uDFFE|\uD83E\uDD1E\uD83C\uDFFF|\uD83D\uDD96\uD83C\uDFFB|\uD83D\uDD96\uD83C\uDFFC|\uD83D\uDD96\uD83C\uDFFD|\uD83D\uDD96\uD83C\uDFFE|\uD83D\uDD96\uD83C\uDFFF|\uD83E\uDD18\uD83C\uDFFB|\uD83E\uDD18\uD83C\uDFFC|\uD83E\uDD18\uD83C\uDFFD|\uD83E\uDD18\uD83C\uDFFE|\uD83E\uDD18\uD83C\uDFFF|\uD83E\uDD19\uD83C\uDFFB|\uD83E\uDD19\uD83C\uDFFC|\uD83E\uDD19\uD83C\uDFFD|\uD83E\uDD19\uD83C\uDFFE|\uD83E\uDD19\uD83C\uDFFF|\uD83D\uDD90\uD83C\uDFFB|\uD83D\uDD90\uD83C\uDFFC|\uD83D\uDD90\uD83C\uDFFD|\uD83D\uDD90\uD83C\uDFFE|\uD83D\uDD90\uD83C\uDFFF|\uD83D\uDC4C\uD83C\uDFFB|\uD83D\uDC4C\uD83C\uDFFC|\uD83D\uDC4C\uD83C\uDFFD|\uD83D\uDC4C\uD83C\uDFFE|\uD83D\uDC4C\uD83C\uDFFF|\uD83D\uDC4D\uD83C\uDFFB|\uD83D\uDC4D\uD83C\uDFFC|\uD83D\uDC4D\uD83C\uDFFD|\uD83D\uDC4D\uD83C\uDFFE|\uD83D\uDC4D\uD83C\uDFFF|\uD83D\uDC4E\uD83C\uDFFB|\uD83D\uDC4E\uD83C\uDFFC|\uD83D\uDC4E\uD83C\uDFFD|\uD83D\uDC4E\uD83C\uDFFE|\uD83D\uDC4E\uD83C\uDFFF|\uD83D\uDC4A\uD83C\uDFFB|\uD83D\uDC4A\uD83C\uDFFC|\uD83D\uDC4A\uD83C\uDFFD|\uD83D\uDC4A\uD83C\uDFFE|\uD83D\uDC4A\uD83C\uDFFF|\uD83E\uDD1B\uD83C\uDFFB|\uD83E\uDD1B\uD83C\uDFFC|\uD83E\uDD1B\uD83C\uDFFD|\uD83E\uDD1B\uD83C\uDFFE|\uD83E\uDD1B\uD83C\uDFFF|\uD83E\uDD1C\uD83C\uDFFB|\uD83E\uDD1C\uD83C\uDFFC|\uD83E\uDD1C\uD83C\uDFFD|\uD83E\uDD1C\uD83C\uDFFE|\uD83E\uDD1C\uD83C\uDFFF|\uD83E\uDD1A\uD83C\uDFFB|\uD83E\uDD1A\uD83C\uDFFC|\uD83E\uDD1A\uD83C\uDFFD|\uD83E\uDD1A\uD83C\uDFFE|\uD83E\uDD1A\uD83C\uDFFF|\uD83D\uDC4B\uD83C\uDFFB|\uD83D\uDC4B\uD83C\uDFFC|\uD83D\uDC4B\uD83C\uDFFD|\uD83D\uDC4B\uD83C\uDFFE|\uD83D\uDC4B\uD83C\uDFFF|\uD83E\uDD1F\uD83C\uDFFB|\uD83E\uDD1F\uD83C\uDFFC|\uD83E\uDD1F\uD83C\uDFFD|\uD83E\uDD1F\uD83C\uDFFE|\uD83E\uDD1F\uD83C\uDFFF|\uD83D\uDC4F\uD83C\uDFFB|\uD83D\uDC4F\uD83C\uDFFC|\uD83D\uDC4F\uD83C\uDFFD|\uD83D\uDC4F\uD83C\uDFFE|\uD83D\uDC4F\uD83C\uDFFF|\uD83D\uDC50\uD83C\uDFFB|\uD83D\uDC50\uD83C\uDFFC|\uD83D\uDC50\uD83C\uDFFD|\uD83D\uDC50\uD83C\uDFFE|\uD83D\uDC50\uD83C\uDFFF|\uD83D\uDE4C\uD83C\uDFFB|\uD83D\uDE4C\uD83C\uDFFC|\uD83D\uDE4C\uD83C\uDFFD|\uD83D\uDE4C\uD83C\uDFFE|\uD83D\uDE4C\uD83C\uDFFF|\uD83E\uDD32\uD83C\uDFFB|\uD83E\uDD32\uD83C\uDFFC|\uD83E\uDD32\uD83C\uDFFD|\uD83E\uDD32\uD83C\uDFFE|\uD83E\uDD32\uD83C\uDFFF|\uD83D\uDE4F\uD83C\uDFFB|\uD83D\uDE4F\uD83C\uDFFC|\uD83D\uDE4F\uD83C\uDFFD|\uD83D\uDE4F\uD83C\uDFFE|\uD83D\uDE4F\uD83C\uDFFF|\uD83D\uDC85\uD83C\uDFFB|\uD83D\uDC85\uD83C\uDFFC|\uD83D\uDC85\uD83C\uDFFD|\uD83D\uDC85\uD83C\uDFFE|\uD83D\uDC85\uD83C\uDFFF|\uD83D\uDC42\uD83C\uDFFB|\uD83D\uDC42\uD83C\uDFFC|\uD83D\uDC42\uD83C\uDFFD|\uD83D\uDC42\uD83C\uDFFE|\uD83D\uDC42\uD83C\uDFFF|\uD83D\uDC43\uD83C\uDFFB|\uD83D\uDC43\uD83C\uDFFC|\uD83D\uDC43\uD83C\uDFFD|\uD83D\uDC43\uD83C\uDFFE|\uD83D\uDC43\uD83C\uDFFF|\uD83D\uDC41\uD83F\uDE0F\u200D\uD83D\uDDE8\uD83F\uDE0F|\uD83C\uDFF3\uD83F\uDE0F\u200D\uD83C\uDF08|\uD83C\uDDE6\uD83C\uDDE8|\uD83C\uDDE6\uD83C\uDDE9|\uD83C\uDDE6\uD83C\uDDEA|\uD83C\uDDE6\uD83C\uDDEB|\uD83C\uDDE6\uD83C\uDDEC|\uD83C\uDDE6\uD83C\uDDEE|\uD83C\uDDE6\uD83C\uDDF1|\uD83C\uDDE6\uD83C\uDDF2|\uD83C\uDDE6\uD83C\uDDF4|\uD83C\uDDE6\uD83C\uDDF6|\uD83C\uDDE6\uD83C\uDDF7|\uD83C\uDDE6\uD83C\uDDF8|\uD83C\uDDE6\uD83C\uDDF9|\uD83C\uDDE6\uD83C\uDDFA|\uD83C\uDDE6\uD83C\uDDFC|\uD83C\uDDE6\uD83C\uDDFD|\uD83C\uDDE6\uD83C\uDDFF|\uD83C\uDDE7\uD83C\uDDE6|\uD83C\uDDE7\uD83C\uDDE7|\uD83C\uDDE7\uD83C\uDDE9|\uD83C\uDDE7\uD83C\uDDEA|\uD83C\uDDE7\uD83C\uDDEB|\uD83C\uDDE7\uD83C\uDDEC|\uD83C\uDDE7\uD83C\uDDED|\uD83C\uDDE7\uD83C\uDDEE|\uD83C\uDDE7\uD83C\uDDEF|\uD83C\uDDE7\uD83C\uDDF1|\uD83C\uDDE7\uD83C\uDDF2|\uD83C\uDDE7\uD83C\uDDF3|\uD83C\uDDE7\uD83C\uDDF4|\uD83C\uDDE7\uD83C\uDDF6|\uD83C\uDDE7\uD83C\uDDF7|\uD83C\uDDE7\uD83C\uDDF8|\uD83C\uDDE7\uD83C\uDDF9|\uD83C\uDDE7\uD83C\uDDFB|\uD83C\uDDE7\uD83C\uDDFC|\uD83C\uDDE7\uD83C\uDDFE|\uD83C\uDDE7\uD83C\uDDFF|\uD83C\uDDE8\uD83C\uDDE6|\uD83C\uDDE8\uD83C\uDDE8|\uD83C\uDDE8\uD83C\uDDE9|\uD83C\uDDE8\uD83C\uDDEB|\uD83C\uDDE8\uD83C\uDDEC|\uD83C\uDDE8\uD83C\uDDED|\uD83C\uDDE8\uD83C\uDDEE|\uD83C\uDDE8\uD83C\uDDF0|\uD83C\uDDE8\uD83C\uDDF1|\uD83C\uDDE8\uD83C\uDDF2|\uD83C\uDDE8\uD83C\uDDF3|\uD83C\uDDE8\uD83C\uDDF4|\uD83C\uDDE8\uD83C\uDDF5|\uD83C\uDDE8\uD83C\uDDF7|\uD83C\uDDE8\uD83C\uDDFA|\uD83C\uDDE8\uD83C\uDDFB|\uD83C\uDDE8\uD83C\uDDFC|\uD83C\uDDE8\uD83C\uDDFD|\uD83C\uDDE8\uD83C\uDDFE|\uD83C\uDDE8\uD83C\uDDFF|\uD83C\uDDE9\uD83C\uDDEA|\uD83C\uDDE9\uD83C\uDDEC|\uD83C\uDDE9\uD83C\uDDEF|\uD83C\uDDE9\uD83C\uDDF0|\uD83C\uDDE9\uD83C\uDDF2|\uD83C\uDDE9\uD83C\uDDF4|\uD83C\uDDE9\uD83C\uDDFF|\uD83C\uDDEA\uD83C\uDDE6|\uD83C\uDDEA\uD83C\uDDE8|\uD83C\uDDEA\uD83C\uDDEA|\uD83C\uDDEA\uD83C\uDDEC|\uD83C\uDDEA\uD83C\uDDED|\uD83C\uDDEA\uD83C\uDDF7|\uD83C\uDDEA\uD83C\uDDF8|\uD83C\uDDEA\uD83C\uDDF9|\uD83C\uDDEA\uD83C\uDDFA|\uD83C\uDDEB\uD83C\uDDEE|\uD83C\uDDEB\uD83C\uDDEF|\uD83C\uDDEB\uD83C\uDDF0|\uD83C\uDDEB\uD83C\uDDF2|\uD83C\uDDEB\uD83C\uDDF4|\uD83C\uDDEB\uD83C\uDDF7|\uD83C\uDDEC\uD83C\uDDE6|\uD83C\uDDEC\uD83C\uDDE7|\uD83C\uDDEC\uD83C\uDDE9|\uD83C\uDDEC\uD83C\uDDEA|\uD83C\uDDEC\uD83C\uDDEB|\uD83C\uDDEC\uD83C\uDDEC|\uD83C\uDDEC\uD83C\uDDED|\uD83C\uDDEC\uD83C\uDDEE|\uD83C\uDDEC\uD83C\uDDF1|\uD83C\uDDEC\uD83C\uDDF2|\uD83C\uDDEC\uD83C\uDDF3|\uD83C\uDDEC\uD83C\uDDF5|\uD83C\uDDEC\uD83C\uDDF6|\uD83C\uDDEC\uD83C\uDDF7|\uD83C\uDDEC\uD83C\uDDF8|\uD83C\uDDEC\uD83C\uDDF9|\uD83C\uDDEC\uD83C\uDDFA|\uD83C\uDDEC\uD83C\uDDFC|\uD83C\uDDEC\uD83C\uDDFE|\uD83C\uDDED\uD83C\uDDF0|\uD83C\uDDED\uD83C\uDDF2|\uD83C\uDDED\uD83C\uDDF3|\uD83C\uDDED\uD83C\uDDF7|\uD83C\uDDED\uD83C\uDDF9|\uD83C\uDDED\uD83C\uDDFA|\uD83C\uDDEE\uD83C\uDDE8|\uD83C\uDDEE\uD83C\uDDE9|\uD83C\uDDEE\uD83C\uDDEA|\uD83C\uDDEE\uD83C\uDDF1|\uD83C\uDDEE\uD83C\uDDF2|\uD83C\uDDEE\uD83C\uDDF3|\uD83C\uDDEE\uD83C\uDDF4|\uD83C\uDDEE\uD83C\uDDF6|\uD83C\uDDEE\uD83C\uDDF7|\uD83C\uDDEE\uD83C\uDDF8|\uD83C\uDDEE\uD83C\uDDF9|\uD83C\uDDEF\uD83C\uDDEA|\uD83C\uDDEF\uD83C\uDDF2|\uD83C\uDDEF\uD83C\uDDF4|\uD83C\uDDEF\uD83C\uDDF5|\uD83C\uDDF0\uD83C\uDDEA|\uD83C\uDDF0\uD83C\uDDEC|\uD83C\uDDF0\uD83C\uDDED|\uD83C\uDDF0\uD83C\uDDEE|\uD83C\uDDF0\uD83C\uDDF2|\uD83C\uDDF0\uD83C\uDDF3|\uD83C\uDDF0\uD83C\uDDF5|\uD83C\uDDF0\uD83C\uDDF7|\uD83C\uDDF0\uD83C\uDDFC|\uD83C\uDDF0\uD83C\uDDFE|\uD83C\uDDF0\uD83C\uDDFF|\uD83C\uDDF1\uD83C\uDDE6|\uD83C\uDDF1\uD83C\uDDE7|\uD83C\uDDF1\uD83C\uDDE8|\uD83C\uDDF1\uD83C\uDDEE|\uD83C\uDDF1\uD83C\uDDF0|\uD83C\uDDF1\uD83C\uDDF7|\uD83C\uDDF1\uD83C\uDDF8|\uD83C\uDDF1\uD83C\uDDF9|\uD83C\uDDF1\uD83C\uDDFA|\uD83C\uDDF1\uD83C\uDDFB|\uD83C\uDDF1\uD83C\uDDFE|\uD83C\uDDF2\uD83C\uDDE6|\uD83C\uDDF2\uD83C\uDDE8|\uD83C\uDDF2\uD83C\uDDE9|\uD83C\uDDF2\uD83C\uDDEA|\uD83C\uDDF2\uD83C\uDDEB|\uD83C\uDDF2\uD83C\uDDEC|\uD83C\uDDF2\uD83C\uDDED|\uD83C\uDDF2\uD83C\uDDF0|\uD83C\uDDF2\uD83C\uDDF1|\uD83C\uDDF2\uD83C\uDDF2|\uD83C\uDDF2\uD83C\uDDF3|\uD83C\uDDF2\uD83C\uDDF4|\uD83C\uDDF2\uD83C\uDDF5|\uD83C\uDDF2\uD83C\uDDF6|\uD83C\uDDF2\uD83C\uDDF7|\uD83C\uDDF2\uD83C\uDDF8|\uD83C\uDDF2\uD83C\uDDF9|\uD83C\uDDF2\uD83C\uDDFA|\uD83C\uDDF2\uD83C\uDDFB|\uD83C\uDDF2\uD83C\uDDFC|\uD83C\uDDF2\uD83C\uDDFD|\uD83C\uDDF2\uD83C\uDDFE|\uD83C\uDDF2\uD83C\uDDFF|\uD83C\uDDF3\uD83C\uDDE6|\uD83C\uDDF3\uD83C\uDDE8|\uD83C\uDDF3\uD83C\uDDEA|\uD83C\uDDF3\uD83C\uDDEB|\uD83C\uDDF3\uD83C\uDDEC|\uD83C\uDDF3\uD83C\uDDEE|\uD83C\uDDF3\uD83C\uDDF1|\uD83C\uDDF3\uD83C\uDDF4|\uD83C\uDDF3\uD83C\uDDF5|\uD83C\uDDF3\uD83C\uDDF7|\uD83C\uDDF3\uD83C\uDDFA|\uD83C\uDDF3\uD83C\uDDFF|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF5\uD83C\uDDE6|\uD83C\uDDF5\uD83C\uDDEA|\uD83C\uDDF5\uD83C\uDDEB|\uD83C\uDDF5\uD83C\uDDEC|\uD83C\uDDF5\uD83C\uDDED|\uD83C\uDDF5\uD83C\uDDF0|\uD83C\uDDF5\uD83C\uDDF1|\uD83C\uDDF5\uD83C\uDDF2|\uD83C\uDDF5\uD83C\uDDF3|\uD83C\uDDF5\uD83C\uDDF7|\uD83C\uDDF5\uD83C\uDDF8|\uD83C\uDDF5\uD83C\uDDF9|\uD83C\uDDF5\uD83C\uDDFC|\uD83C\uDDF5\uD83C\uDDFE|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF7\uD83C\uDDEA|\uD83C\uDDF7\uD83C\uDDF4|\uD83C\uDDF7\uD83C\uDDF8|\uD83C\uDDF7\uD83C\uDDFA|\uD83C\uDDF7\uD83C\uDDFC|\uD83C\uDDF8\uD83C\uDDE6|\uD83C\uDDF8\uD83C\uDDE7|\uD83C\uDDF8\uD83C\uDDE8|\uD83C\uDDF8\uD83C\uDDE9|\uD83C\uDDF8\uD83C\uDDEA|\uD83C\uDDF8\uD83C\uDDEC|\uD83C\uDDF8\uD83C\uDDED|\uD83C\uDDF8\uD83C\uDDEE|\uD83C\uDDF8\uD83C\uDDEF|\uD83C\uDDF8\uD83C\uDDF0|\uD83C\uDDF8\uD83C\uDDF1|\uD83C\uDDF8\uD83C\uDDF2|\uD83C\uDDF8\uD83C\uDDF3|\uD83C\uDDF8\uD83C\uDDF4|\uD83C\uDDF8\uD83C\uDDF7|\uD83C\uDDF8\uD83C\uDDF8|\uD83C\uDDF8\uD83C\uDDF9|\uD83C\uDDF8\uD83C\uDDFB|\uD83C\uDDF8\uD83C\uDDFD|\uD83C\uDDF8\uD83C\uDDFE|\uD83C\uDDF8\uD83C\uDDFF|\uD83C\uDDF9\uD83C\uDDE6|\uD83C\uDDF9\uD83C\uDDE8|\uD83C\uDDF9\uD83C\uDDE9|\uD83C\uDDF9\uD83C\uDDEB|\uD83C\uDDF9\uD83C\uDDEC|\uD83C\uDDF9\uD83C\uDDED|\uD83C\uDDF9\uD83C\uDDEF|\uD83C\uDDF9\uD83C\uDDF0|\uD83C\uDDF9\uD83C\uDDF1|\uD83C\uDDF9\uD83C\uDDF2|\uD83C\uDDF9\uD83C\uDDF3|\uD83C\uDDF9\uD83C\uDDF4|\uD83C\uDDF9\uD83C\uDDF7|\uD83C\uDDF9\uD83C\uDDF9|\uD83C\uDDF9\uD83C\uDDFB|\uD83C\uDDF9\uD83C\uDDFC|\uD83C\uDDF9\uD83C\uDDFF|\uD83C\uDDFA\uD83C\uDDE6|\uD83C\uDDFA\uD83C\uDDEC|\uD83C\uDDFA\uD83C\uDDF2|\uD83C\uDDFA\uD83C\uDDF3|\uD83C\uDDFA\uD83C\uDDF8|\uD83C\uDDFA\uD83C\uDDFE|\uD83C\uDDFA\uD83C\uDDFF|\uD83C\uDDFB\uD83C\uDDE6|\uD83C\uDDFB\uD83C\uDDE8|\uD83C\uDDFB\uD83C\uDDEA|\uD83C\uDDFB\uD83C\uDDEC|\uD83C\uDDFB\uD83C\uDDEE|\uD83C\uDDFB\uD83C\uDDF3|\uD83C\uDDFB\uD83C\uDDFA|\uD83C\uDDFC\uD83C\uDDEB|\uD83C\uDDFC\uD83C\uDDF8|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDFE\uD83C\uDDEA|\uD83C\uDDFE\uD83C\uDDF9|\uD83C\uDDFF\uD83C\uDDE6|\uD83C\uDDFF\uD83C\uDDF2|\uD83C\uDDFF\uD83C\uDDFC|\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F|\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74\uDB40\uDC7F|\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73\uDB40\uDC7F|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030)/gi,
e = /\uf476\uf3fb|\uf476\uf3fc|\uf476\uf3fd|\uf476\uf3fe|\uf476\uf3ff|\uf9d2\uf3fb|\uf9d2\uf3fc|\uf9d2\uf3fd|\uf9d2\uf3fe|\uf9d2\uf3ff|\uf466\uf3fb|\uf466\uf3fc|\uf466\uf3fd|\uf466\uf3fe|\uf466\uf3ff|\uf467\uf3fb|\uf467\uf3fc|\uf467\uf3fd|\uf467\uf3fe|\uf467\uf3ff|\uf9d1\uf3fb|\uf9d1\uf3fc|\uf9d1\uf3fd|\uf9d1\uf3fe|\uf9d1\uf3ff|\uf468\uf3fb|\uf468\uf3fc|\uf468\uf3fd|\uf468\uf3fe|\uf468\uf3ff|\uf469\uf3fb|\uf469\uf3fc|\uf469\uf3fd|\uf469\uf3fe|\uf469\uf3ff|\uf9d3\uf3fb|\uf9d3\uf3fc|\uf9d3\uf3fd|\uf9d3\uf3fe|\uf9d3\uf3ff|\uf474\uf3fb|\uf474\uf3fc|\uf474\uf3fd|\uf474\uf3fe|\uf474\uf3ff|\uf475\uf3fb|\uf475\uf3fc|\uf475\uf3fd|\uf475\uf3fe|\uf475\uf3ff|\uf468\uf3fb\u200d\u2695\ufe0f|\uf468\uf3fc\u200d\u2695\ufe0f|\uf468\uf3fd\u200d\u2695\ufe0f|\uf468\uf3fe\u200d\u2695\ufe0f|\uf468\uf3ff\u200d\u2695\ufe0f|\uf469\uf3fb\u200d\u2695\ufe0f|\uf469\uf3fc\u200d\u2695\ufe0f|\uf469\uf3fd\u200d\u2695\ufe0f|\uf469\uf3fe\u200d\u2695\ufe0f|\uf469\uf3ff\u200d\u2695\ufe0f|\uf468\uf3fb\u200d\uf393|\uf468\uf3fc\u200d\uf393|\uf468\uf3fd\u200d\uf393|\uf468\uf3fe\u200d\uf393|\uf468\uf3ff\u200d\uf393|\uf469\uf3fb\u200d\uf393|\uf469\uf3fc\u200d\uf393|\uf469\uf3fd\u200d\uf393|\uf469\uf3fe\u200d\uf393|\uf469\uf3ff\u200d\uf393|\uf468\uf3fb\u200d\uf3eb|\uf468\uf3fc\u200d\uf3eb|\uf468\uf3fd\u200d\uf3eb|\uf468\uf3fe\u200d\uf3eb|\uf468\uf3ff\u200d\uf3eb|\uf469\uf3fb\u200d\uf3eb|\uf469\uf3fc\u200d\uf3eb|\uf469\uf3fd\u200d\uf3eb|\uf469\uf3fe\u200d\uf3eb|\uf469\uf3ff\u200d\uf3eb|\uf468\uf3fb\u200d\u2696\ufe0f|\uf468\uf3fc\u200d\u2696\ufe0f|\uf468\uf3fd\u200d\u2696\ufe0f|\uf468\uf3fe\u200d\u2696\ufe0f|\uf468\uf3ff\u200d\u2696\ufe0f|\uf469\uf3fb\u200d\u2696\ufe0f|\uf469\uf3fc\u200d\u2696\ufe0f|\uf469\uf3fd\u200d\u2696\ufe0f|\uf469\uf3fe\u200d\u2696\ufe0f|\uf469\uf3ff\u200d\u2696\ufe0f|\uf468\uf3fb\u200d\uf33e|\uf468\uf3fc\u200d\uf33e|\uf468\uf3fd\u200d\uf33e|\uf468\uf3fe\u200d\uf33e|\uf468\uf3ff\u200d\uf33e|\uf469\uf3fb\u200d\uf33e|\uf469\uf3fc\u200d\uf33e|\uf469\uf3fd\u200d\uf33e|\uf469\uf3fe\u200d\uf33e|\uf469\uf3ff\u200d\uf33e|\uf468\uf3fb\u200d\uf373|\uf468\uf3fc\u200d\uf373|\uf468\uf3fd\u200d\uf373|\uf468\uf3fe\u200d\uf373|\uf468\uf3ff\u200d\uf373|\uf469\uf3fb\u200d\uf373|\uf469\uf3fc\u200d\uf373|\uf469\uf3fd\u200d\uf373|\uf469\uf3fe\u200d\uf373|\uf469\uf3ff\u200d\uf373|\uf468\uf3fb\u200d\uf527|\uf468\uf3fc\u200d\uf527|\uf468\uf3fd\u200d\uf527|\uf468\uf3fe\u200d\uf527|\uf468\uf3ff\u200d\uf527|\uf469\uf3fb\u200d\uf527|\uf469\uf3fc\u200d\uf527|\uf469\uf3fd\u200d\uf527|\uf469\uf3fe\u200d\uf527|\uf469\uf3ff\u200d\uf527|\uf468\uf3fb\u200d\uf3ed|\uf468\uf3fc\u200d\uf3ed|\uf468\uf3fd\u200d\uf3ed|\uf468\uf3fe\u200d\uf3ed|\uf468\uf3ff\u200d\uf3ed|\uf469\uf3fb\u200d\uf3ed|\uf469\uf3fc\u200d\uf3ed|\uf469\uf3fd\u200d\uf3ed|\uf469\uf3fe\u200d\uf3ed|\uf469\uf3ff\u200d\uf3ed|\uf468\uf3fb\u200d\uf4bc|\uf468\uf3fc\u200d\uf4bc|\uf468\uf3fd\u200d\uf4bc|\uf468\uf3fe\u200d\uf4bc|\uf468\uf3ff\u200d\uf4bc|\uf469\uf3fb\u200d\uf4bc|\uf469\uf3fc\u200d\uf4bc|\uf469\uf3fd\u200d\uf4bc|\uf469\uf3fe\u200d\uf4bc|\uf469\uf3ff\u200d\uf4bc|\uf468\uf3fb\u200d\uf52c|\uf468\uf3fc\u200d\uf52c|\uf468\uf3fd\u200d\uf52c|\uf468\uf3fe\u200d\uf52c|\uf468\uf3ff\u200d\uf52c|\uf469\uf3fb\u200d\uf52c|\uf469\uf3fc\u200d\uf52c|\uf469\uf3fd\u200d\uf52c|\uf469\uf3fe\u200d\uf52c|\uf469\uf3ff\u200d\uf52c|\uf468\uf3fb\u200d\uf4bb|\uf468\uf3fc\u200d\uf4bb|\uf468\uf3fd\u200d\uf4bb|\uf468\uf3fe\u200d\uf4bb|\uf468\uf3ff\u200d\uf4bb|\uf469\uf3fb\u200d\uf4bb|\uf469\uf3fc\u200d\uf4bb|\uf469\uf3fd\u200d\uf4bb|\uf469\uf3fe\u200d\uf4bb|\uf469\uf3ff\u200d\uf4bb|\uf468\uf3fb\u200d\uf3a4|\uf468\uf3fc\u200d\uf3a4|\uf468\uf3fd\u200d\uf3a4|\uf468\uf3fe\u200d\uf3a4|\uf468\uf3ff\u200d\uf3a4|\uf469\uf3fb\u200d\uf3a4|\uf469\uf3fc\u200d\uf3a4|\uf469\uf3fd\u200d\uf3a4|\uf469\uf3fe\u200d\uf3a4|\uf469\uf3ff\u200d\uf3a4|\uf468\uf3fb\u200d\uf3a8|\uf468\uf3fc\u200d\uf3a8|\uf468\uf3fd\u200d\uf3a8|\uf468\uf3fe\u200d\uf3a8|\uf468\uf3ff\u200d\uf3a8|\uf469\uf3fb\u200d\uf3a8|\uf469\uf3fc\u200d\uf3a8|\uf469\uf3fd\u200d\uf3a8|\uf469\uf3fe\u200d\uf3a8|\uf469\uf3ff\u200d\uf3a8|\uf468\uf3fb\u200d\u2708\ufe0f|\uf468\uf3fc\u200d\u2708\ufe0f|\uf468\uf3fd\u200d\u2708\ufe0f|\uf468\uf3fe\u200d\u2708\ufe0f|\uf468\uf3ff\u200d\u2708\ufe0f|\uf469\uf3fb\u200d\u2708\ufe0f|\uf469\uf3fc\u200d\u2708\ufe0f|\uf469\uf3fd\u200d\u2708\ufe0f|\uf469\uf3fe\u200d\u2708\ufe0f|\uf469\uf3ff\u200d\u2708\ufe0f|\uf468\uf3fb\u200d\uf680|\uf468\uf3fc\u200d\uf680|\uf468\uf3fd\u200d\uf680|\uf468\uf3fe\u200d\uf680|\uf468\uf3ff\u200d\uf680|\uf469\uf3fb\u200d\uf680|\uf469\uf3fc\u200d\uf680|\uf469\uf3fd\u200d\uf680|\uf469\uf3fe\u200d\uf680|\uf469\uf3ff\u200d\uf680|\uf468\uf3fb\u200d\uf692|\uf468\uf3fc\u200d\uf692|\uf468\uf3fd\u200d\uf692|\uf468\uf3fe\u200d\uf692|\uf468\uf3ff\u200d\uf692|\uf469\uf3fb\u200d\uf692|\uf469\uf3fc\u200d\uf692|\uf469\uf3fd\u200d\uf692|\uf469\uf3fe\u200d\uf692|\uf469\uf3ff\u200d\uf692|\uf46e\uf3fb|\uf46e\uf3fc|\uf46e\uf3fd|\uf46e\uf3fe|\uf46e\uf3ff|\uf46e\uf3fb\u200d\u2642\ufe0f|\uf46e\uf3fc\u200d\u2642\ufe0f|\uf46e\uf3fd\u200d\u2642\ufe0f|\uf46e\uf3fe\u200d\u2642\ufe0f|\uf46e\uf3ff\u200d\u2642\ufe0f|\uf46e\uf3fb\u200d\u2640\ufe0f|\uf46e\uf3fc\u200d\u2640\ufe0f|\uf46e\uf3fd\u200d\u2640\ufe0f|\uf46e\uf3fe\u200d\u2640\ufe0f|\uf46e\uf3ff\u200d\u2640\ufe0f|\uf575\uf3fb|\uf575\uf3fc|\uf575\uf3fd|\uf575\uf3fe|\uf575\uf3ff|\uf575\uf3fb\u200d\u2642\ufe0f|\uf575\uf3fc\u200d\u2642\ufe0f|\uf575\uf3fd\u200d\u2642\ufe0f|\uf575\uf3fe\u200d\u2642\ufe0f|\uf575\uf3ff\u200d\u2642\ufe0f|\uf575\uf3fb\u200d\u2640\ufe0f|\uf575\uf3fc\u200d\u2640\ufe0f|\uf575\uf3fd\u200d\u2640\ufe0f|\uf575\uf3fe\u200d\u2640\ufe0f|\uf575\uf3ff\u200d\u2640\ufe0f|\uf482\uf3fb|\uf482\uf3fc|\uf482\uf3fd|\uf482\uf3fe|\uf482\uf3ff|\uf482\uf3fb\u200d\u2642\ufe0f|\uf482\uf3fc\u200d\u2642\ufe0f|\uf482\uf3fd\u200d\u2642\ufe0f|\uf482\uf3fe\u200d\u2642\ufe0f|\uf482\uf3ff\u200d\u2642\ufe0f|\uf482\uf3fb\u200d\u2640\ufe0f|\uf482\uf3fc\u200d\u2640\ufe0f|\uf482\uf3fd\u200d\u2640\ufe0f|\uf482\uf3fe\u200d\u2640\ufe0f|\uf482\uf3ff\u200d\u2640\ufe0f|\uf477\uf3fb|\uf477\uf3fc|\uf477\uf3fd|\uf477\uf3fe|\uf477\uf3ff|\uf477\uf3fb\u200d\u2642\ufe0f|\uf477\uf3fc\u200d\u2642\ufe0f|\uf477\uf3fd\u200d\u2642\ufe0f|\uf477\uf3fe\u200d\u2642\ufe0f|\uf477\uf3ff\u200d\u2642\ufe0f|\uf477\uf3fb\u200d\u2640\ufe0f|\uf477\uf3fc\u200d\u2640\ufe0f|\uf477\uf3fd\u200d\u2640\ufe0f|\uf477\uf3fe\u200d\u2640\ufe0f|\uf477\uf3ff\u200d\u2640\ufe0f|\uf934\uf3fb|\uf934\uf3fc|\uf934\uf3fd|\uf934\uf3fe|\uf934\uf3ff|\uf478\uf3fb|\uf478\uf3fc|\uf478\uf3fd|\uf478\uf3fe|\uf478\uf3ff|\uf473\uf3fb|\uf473\uf3fc|\uf473\uf3fd|\uf473\uf3fe|\uf473\uf3ff|\uf473\uf3fb\u200d\u2642\ufe0f|\uf473\uf3fc\u200d\u2642\ufe0f|\uf473\uf3fd\u200d\u2642\ufe0f|\uf473\uf3fe\u200d\u2642\ufe0f|\uf473\uf3ff\u200d\u2642\ufe0f|\uf473\uf3fb\u200d\u2640\ufe0f|\uf473\uf3fc\u200d\u2640\ufe0f|\uf473\uf3fd\u200d\u2640\ufe0f|\uf473\uf3fe\u200d\u2640\ufe0f|\uf473\uf3ff\u200d\u2640\ufe0f|\uf472\uf3fb|\uf472\uf3fc|\uf472\uf3fd|\uf472\uf3fe|\uf472\uf3ff|\uf9d5\uf3fb|\uf9d5\uf3fc|\uf9d5\uf3fd|\uf9d5\uf3fe|\uf9d5\uf3ff|\uf9d4\uf3fb|\uf9d4\uf3fc|\uf9d4\uf3fd|\uf9d4\uf3fe|\uf9d4\uf3ff|\uf471\uf3fb|\uf471\uf3fc|\uf471\uf3fd|\uf471\uf3fe|\uf471\uf3ff|\uf471\uf3fb\u200d\u2642\ufe0f|\uf471\uf3fc\u200d\u2642\ufe0f|\uf471\uf3fd\u200d\u2642\ufe0f|\uf471\uf3fe\u200d\u2642\ufe0f|\uf471\uf3ff\u200d\u2642\ufe0f|\uf471\uf3fb\u200d\u2640\ufe0f|\uf471\uf3fc\u200d\u2640\ufe0f|\uf471\uf3fd\u200d\u2640\ufe0f|\uf471\uf3fe\u200d\u2640\ufe0f|\uf471\uf3ff\u200d\u2640\ufe0f|\uf935\uf3fb|\uf935\uf3fc|\uf935\uf3fd|\uf935\uf3fe|\uf935\uf3ff|\uf470\uf3fb|\uf470\uf3fc|\uf470\uf3fd|\uf470\uf3fe|\uf470\uf3ff|\uf930\uf3fb|\uf930\uf3fc|\uf930\uf3fd|\uf930\uf3fe|\uf930\uf3ff|\uf931\uf3fb|\uf931\uf3fc|\uf931\uf3fd|\uf931\uf3fe|\uf931\uf3ff|\uf47c\uf3fb|\uf47c\uf3fc|\uf47c\uf3fd|\uf47c\uf3fe|\uf47c\uf3ff|\uf385\uf3fb|\uf385\uf3fc|\uf385\uf3fd|\uf385\uf3fe|\uf385\uf3ff|\uf936\uf3fb|\uf936\uf3fc|\uf936\uf3fd|\uf936\uf3fe|\uf936\uf3ff|\uf9d9\uf3fb|\uf9d9\uf3fc|\uf9d9\uf3fd|\uf9d9\uf3fe|\uf9d9\uf3ff|\uf9d9\uf3fb\u200d\u2640\ufe0f|\uf9d9\uf3fc\u200d\u2640\ufe0f|\uf9d9\uf3fd\u200d\u2640\ufe0f|\uf9d9\uf3fe\u200d\u2640\ufe0f|\uf9d9\uf3ff\u200d\u2640\ufe0f|\uf9d9\uf3fb\u200d\u2642\ufe0f|\uf9d9\uf3fc\u200d\u2642\ufe0f|\uf9d9\uf3fd\u200d\u2642\ufe0f|\uf9d9\uf3fe\u200d\u2642\ufe0f|\uf9d9\uf3ff\u200d\u2642\ufe0f|\uf9da\uf3fb|\uf9da\uf3fc|\uf9da\uf3fd|\uf9da\uf3fe|\uf9da\uf3ff|\uf9da\uf3fb\u200d\u2640\ufe0f|\uf9da\uf3fc\u200d\u2640\ufe0f|\uf9da\uf3fd\u200d\u2640\ufe0f|\uf9da\uf3fe\u200d\u2640\ufe0f|\uf9da\uf3ff\u200d\u2640\ufe0f|\uf9da\uf3fb\u200d\u2642\ufe0f|\uf9da\uf3fc\u200d\u2642\ufe0f|\uf9da\uf3fd\u200d\u2642\ufe0f|\uf9da\uf3fe\u200d\u2642\ufe0f|\uf9da\uf3ff\u200d\u2642\ufe0f|\uf9db\uf3fb|\uf9db\uf3fc|\uf9db\uf3fd|\uf9db\uf3fe|\uf9db\uf3ff|\uf9db\uf3fb\u200d\u2640\ufe0f|\uf9db\uf3fc\u200d\u2640\ufe0f|\uf9db\uf3fd\u200d\u2640\ufe0f|\uf9db\uf3fe\u200d\u2640\ufe0f|\uf9db\uf3ff\u200d\u2640\ufe0f|\uf9db\uf3fb\u200d\u2642\ufe0f|\uf9db\uf3fc\u200d\u2642\ufe0f|\uf9db\uf3fd\u200d\u2642\ufe0f|\uf9db\uf3fe\u200d\u2642\ufe0f|\uf9db\uf3ff\u200d\u2642\ufe0f|\uf9dc\uf3fb|\uf9dc\uf3fc|\uf9dc\uf3fd|\uf9dc\uf3fe|\uf9dc\uf3ff|\uf9dc\uf3fb\u200d\u2640\ufe0f|\uf9dc\uf3fc\u200d\u2640\ufe0f|\uf9dc\uf3fd\u200d\u2640\ufe0f|\uf9dc\uf3fe\u200d\u2640\ufe0f|\uf9dc\uf3ff\u200d\u2640\ufe0f|\uf9dc\uf3fb\u200d\u2642\ufe0f|\uf9dc\uf3fc\u200d\u2642\ufe0f|\uf9dc\uf3fd\u200d\u2642\ufe0f|\uf9dc\uf3fe\u200d\u2642\ufe0f|\uf9dc\uf3ff\u200d\u2642\ufe0f|\uf9dd\uf3fb|\uf9dd\uf3fc|\uf9dd\uf3fd|\uf9dd\uf3fe|\uf9dd\uf3ff|\uf9dd\uf3fb\u200d\u2640\ufe0f|\uf9dd\uf3fc\u200d\u2640\ufe0f|\uf9dd\uf3fd\u200d\u2640\ufe0f|\uf9dd\uf3fe\u200d\u2640\ufe0f|\uf9dd\uf3ff\u200d\u2640\ufe0f|\uf9dd\uf3fb\u200d\u2642\ufe0f|\uf9dd\uf3fc\u200d\u2642\ufe0f|\uf9dd\uf3fd\u200d\u2642\ufe0f|\uf9dd\uf3fe\u200d\u2642\ufe0f|\uf9dd\uf3ff\u200d\u2642\ufe0f|\uf64d\uf3fb|\uf64d\uf3fc|\uf64d\uf3fd|\uf64d\uf3fe|\uf64d\uf3ff|\uf64d\uf3fb\u200d\u2642\ufe0f|\uf64d\uf3fc\u200d\u2642\ufe0f|\uf64d\uf3fd\u200d\u2642\ufe0f|\uf64d\uf3fe\u200d\u2642\ufe0f|\uf64d\uf3ff\u200d\u2642\ufe0f|\uf64d\uf3fb\u200d\u2640\ufe0f|\uf64d\uf3fc\u200d\u2640\ufe0f|\uf64d\uf3fd\u200d\u2640\ufe0f|\uf64d\uf3fe\u200d\u2640\ufe0f|\uf64d\uf3ff\u200d\u2640\ufe0f|\uf64e\uf3fb|\uf64e\uf3fc|\uf64e\uf3fd|\uf64e\uf3fe|\uf64e\uf3ff|\uf64e\uf3fb\u200d\u2642\ufe0f|\uf64e\uf3fc\u200d\u2642\ufe0f|\uf64e\uf3fd\u200d\u2642\ufe0f|\uf64e\uf3fe\u200d\u2642\ufe0f|\uf64e\uf3ff\u200d\u2642\ufe0f|\uf64e\uf3fb\u200d\u2640\ufe0f|\uf64e\uf3fc\u200d\u2640\ufe0f|\uf64e\uf3fd\u200d\u2640\ufe0f|\uf64e\uf3fe\u200d\u2640\ufe0f|\uf64e\uf3ff\u200d\u2640\ufe0f|\uf645\uf3fb|\uf645\uf3fc|\uf645\uf3fd|\uf645\uf3fe|\uf645\uf3ff|\uf645\uf3fb\u200d\u2642\ufe0f|\uf645\uf3fc\u200d\u2642\ufe0f|\uf645\uf3fd\u200d\u2642\ufe0f|\uf645\uf3fe\u200d\u2642\ufe0f|\uf645\uf3ff\u200d\u2642\ufe0f|\uf645\uf3fb\u200d\u2640\ufe0f|\uf645\uf3fc\u200d\u2640\ufe0f|\uf645\uf3fd\u200d\u2640\ufe0f|\uf645\uf3fe\u200d\u2640\ufe0f|\uf645\uf3ff\u200d\u2640\ufe0f|\uf646\uf3fb|\uf646\uf3fc|\uf646\uf3fd|\uf646\uf3fe|\uf646\uf3ff|\uf646\uf3fb\u200d\u2642\ufe0f|\uf646\uf3fc\u200d\u2642\ufe0f|\uf646\uf3fd\u200d\u2642\ufe0f|\uf646\uf3fe\u200d\u2642\ufe0f|\uf646\uf3ff\u200d\u2642\ufe0f|\uf646\uf3fb\u200d\u2640\ufe0f|\uf646\uf3fc\u200d\u2640\ufe0f|\uf646\uf3fd\u200d\u2640\ufe0f|\uf646\uf3fe\u200d\u2640\ufe0f|\uf646\uf3ff\u200d\u2640\ufe0f|\uf481\uf3fb|\uf481\uf3fc|\uf481\uf3fd|\uf481\uf3fe|\uf481\uf3ff|\uf481\uf3fb\u200d\u2642\ufe0f|\uf481\uf3fc\u200d\u2642\ufe0f|\uf481\uf3fd\u200d\u2642\ufe0f|\uf481\uf3fe\u200d\u2642\ufe0f|\uf481\uf3ff\u200d\u2642\ufe0f|\uf481\uf3fb\u200d\u2640\ufe0f|\uf481\uf3fc\u200d\u2640\ufe0f|\uf481\uf3fd\u200d\u2640\ufe0f|\uf481\uf3fe\u200d\u2640\ufe0f|\uf481\uf3ff\u200d\u2640\ufe0f|\uf64b\uf3fb|\uf64b\uf3fc|\uf64b\uf3fd|\uf64b\uf3fe|\uf64b\uf3ff|\uf64b\uf3fb\u200d\u2642\ufe0f|\uf64b\uf3fc\u200d\u2642\ufe0f|\uf64b\uf3fd\u200d\u2642\ufe0f|\uf64b\uf3fe\u200d\u2642\ufe0f|\uf64b\uf3ff\u200d\u2642\ufe0f|\uf64b\uf3fb\u200d\u2640\ufe0f|\uf64b\uf3fc\u200d\u2640\ufe0f|\uf64b\uf3fd\u200d\u2640\ufe0f|\uf64b\uf3fe\u200d\u2640\ufe0f|\uf64b\uf3ff\u200d\u2640\ufe0f|\uf647\uf3fb|\uf647\uf3fc|\uf647\uf3fd|\uf647\uf3fe|\uf647\uf3ff|\uf647\uf3fb\u200d\u2642\ufe0f|\uf647\uf3fc\u200d\u2642\ufe0f|\uf647\uf3fd\u200d\u2642\ufe0f|\uf647\uf3fe\u200d\u2642\ufe0f|\uf647\uf3ff\u200d\u2642\ufe0f|\uf647\uf3fb\u200d\u2640\ufe0f|\uf647\uf3fc\u200d\u2640\ufe0f|\uf647\uf3fd\u200d\u2640\ufe0f|\uf647\uf3fe\u200d\u2640\ufe0f|\uf647\uf3ff\u200d\u2640\ufe0f|\uf926\uf3fb|\uf926\uf3fc|\uf926\uf3fd|\uf926\uf3fe|\uf926\uf3ff|\uf926\uf3fb\u200d\u2642\ufe0f|\uf926\uf3fc\u200d\u2642\ufe0f|\uf926\uf3fd\u200d\u2642\ufe0f|\uf926\uf3fe\u200d\u2642\ufe0f|\uf926\uf3ff\u200d\u2642\ufe0f|\uf926\uf3fb\u200d\u2640\ufe0f|\uf926\uf3fc\u200d\u2640\ufe0f|\uf926\uf3fd\u200d\u2640\ufe0f|\uf926\uf3fe\u200d\u2640\ufe0f|\uf926\uf3ff\u200d\u2640\ufe0f|\uf937\uf3fb|\uf937\uf3fc|\uf937\uf3fd|\uf937\uf3fe|\uf937\uf3ff|\uf937\uf3fb\u200d\u2642\ufe0f|\uf937\uf3fc\u200d\u2642\ufe0f|\uf937\uf3fd\u200d\u2642\ufe0f|\uf937\uf3fe\u200d\u2642\ufe0f|\uf937\uf3ff\u200d\u2642\ufe0f|\uf937\uf3fb\u200d\u2640\ufe0f|\uf937\uf3fc\u200d\u2640\ufe0f|\uf937\uf3fd\u200d\u2640\ufe0f|\uf937\uf3fe\u200d\u2640\ufe0f|\uf937\uf3ff\u200d\u2640\ufe0f|\uf486\uf3fb|\uf486\uf3fc|\uf486\uf3fd|\uf486\uf3fe|\uf486\uf3ff|\uf486\uf3fb\u200d\u2642\ufe0f|\uf486\uf3fc\u200d\u2642\ufe0f|\uf486\uf3fd\u200d\u2642\ufe0f|\uf486\uf3fe\u200d\u2642\ufe0f|\uf486\uf3ff\u200d\u2642\ufe0f|\uf486\uf3fb\u200d\u2640\ufe0f|\uf486\uf3fc\u200d\u2640\ufe0f|\uf486\uf3fd\u200d\u2640\ufe0f|\uf486\uf3fe\u200d\u2640\ufe0f|\uf486\uf3ff\u200d\u2640\ufe0f|\uf487\uf3fb|\uf487\uf3fc|\uf487\uf3fd|\uf487\uf3fe|\uf487\uf3ff|\uf487\uf3fb\u200d\u2642\ufe0f|\uf487\uf3fc\u200d\u2642\ufe0f|\uf487\uf3fd\u200d\u2642\ufe0f|\uf487\uf3fe\u200d\u2642\ufe0f|\uf487\uf3ff\u200d\u2642\ufe0f|\uf487\uf3fb\u200d\u2640\ufe0f|\uf487\uf3fc\u200d\u2640\ufe0f|\uf487\uf3fd\u200d\u2640\ufe0f|\uf487\uf3fe\u200d\u2640\ufe0f|\uf487\uf3ff\u200d\u2640\ufe0f|\uf6b6\uf3fb|\uf6b6\uf3fc|\uf6b6\uf3fd|\uf6b6\uf3fe|\uf6b6\uf3ff|\uf6b6\uf3fb\u200d\u2642\ufe0f|\uf6b6\uf3fc\u200d\u2642\ufe0f|\uf6b6\uf3fd\u200d\u2642\ufe0f|\uf6b6\uf3fe\u200d\u2642\ufe0f|\uf6b6\uf3ff\u200d\u2642\ufe0f|\uf6b6\uf3fb\u200d\u2640\ufe0f|\uf6b6\uf3fc\u200d\u2640\ufe0f|\uf6b6\uf3fd\u200d\u2640\ufe0f|\uf6b6\uf3fe\u200d\u2640\ufe0f|\uf6b6\uf3ff\u200d\u2640\ufe0f|\uf3c3\uf3fb|\uf3c3\uf3fc|\uf3c3\uf3fd|\uf3c3\uf3fe|\uf3c3\uf3ff|\uf3c3\uf3fb\u200d\u2642\ufe0f|\uf3c3\uf3fc\u200d\u2642\ufe0f|\uf3c3\uf3fd\u200d\u2642\ufe0f|\uf3c3\uf3fe\u200d\u2642\ufe0f|\uf3c3\uf3ff\u200d\u2642\ufe0f|\uf3c3\uf3fb\u200d\u2640\ufe0f|\uf3c3\uf3fc\u200d\u2640\ufe0f|\uf3c3\uf3fd\u200d\u2640\ufe0f|\uf3c3\uf3fe\u200d\u2640\ufe0f|\uf3c3\uf3ff\u200d\u2640\ufe0f|\uf483\uf3fb|\uf483\uf3fc|\uf483\uf3fd|\uf483\uf3fe|\uf483\uf3ff|\uf57a\uf3fb|\uf57a\uf3fc|\uf57a\uf3fd|\uf57a\uf3fe|\uf57a\uf3ff|\uf9d6\uf3fb|\uf9d6\uf3fc|\uf9d6\uf3fd|\uf9d6\uf3fe|\uf9d6\uf3ff|\uf9d6\uf3fb\u200d\u2640\ufe0f|\uf9d6\uf3fc\u200d\u2640\ufe0f|\uf9d6\uf3fd\u200d\u2640\ufe0f|\uf9d6\uf3fe\u200d\u2640\ufe0f|\uf9d6\uf3ff\u200d\u2640\ufe0f|\uf9d6\uf3fb\u200d\u2642\ufe0f|\uf9d6\uf3fc\u200d\u2642\ufe0f|\uf9d6\uf3fd\u200d\u2642\ufe0f|\uf9d6\uf3fe\u200d\u2642\ufe0f|\uf9d6\uf3ff\u200d\u2642\ufe0f|\uf9d7\uf3fb|\uf9d7\uf3fc|\uf9d7\uf3fd|\uf9d7\uf3fe|\uf9d7\uf3ff|\uf9d7\uf3fb\u200d\u2640\ufe0f|\uf9d7\uf3fc\u200d\u2640\ufe0f|\uf9d7\uf3fd\u200d\u2640\ufe0f|\uf9d7\uf3fe\u200d\u2640\ufe0f|\uf9d7\uf3ff\u200d\u2640\ufe0f|\uf9d7\uf3fb\u200d\u2642\ufe0f|\uf9d7\uf3fc\u200d\u2642\ufe0f|\uf9d7\uf3fd\u200d\u2642\ufe0f|\uf9d7\uf3fe\u200d\u2642\ufe0f|\uf9d7\uf3ff\u200d\u2642\ufe0f|\uf9d8\uf3fb|\uf9d8\uf3fc|\uf9d8\uf3fd|\uf9d8\uf3fe|\uf9d8\uf3ff|\uf9d8\uf3fb\u200d\u2640\ufe0f|\uf9d8\uf3fc\u200d\u2640\ufe0f|\uf9d8\uf3fd\u200d\u2640\ufe0f|\uf9d8\uf3fe\u200d\u2640\ufe0f|\uf9d8\uf3ff\u200d\u2640\ufe0f|\uf9d8\uf3fb\u200d\u2642\ufe0f|\uf9d8\uf3fc\u200d\u2642\ufe0f|\uf9d8\uf3fd\u200d\u2642\ufe0f|\uf9d8\uf3fe\u200d\u2642\ufe0f|\uf9d8\uf3ff\u200d\u2642\ufe0f|\uf6c0\uf3fb|\uf6c0\uf3fc|\uf6c0\uf3fd|\uf6c0\uf3fe|\uf6c0\uf3ff|\uf6cc\uf3fb|\uf6cc\uf3fc|\uf6cc\uf3fd|\uf6cc\uf3fe|\uf6cc\uf3ff|\uf574\uf3fb|\uf574\uf3fc|\uf574\uf3fd|\uf574\uf3fe|\uf574\uf3ff|\uf3c7\uf3fb|\uf3c7\uf3fc|\uf3c7\uf3fd|\uf3c7\uf3fe|\uf3c7\uf3ff|\uf3c2\uf3fb|\uf3c2\uf3fc|\uf3c2\uf3fd|\uf3c2\uf3fe|\uf3c2\uf3ff|\uf3cc\uf3fb|\uf3cc\uf3fc|\uf3cc\uf3fd|\uf3cc\uf3fe|\uf3cc\uf3ff|\uf3cc\uf3fb\u200d\u2642\ufe0f|\uf3cc\uf3fc\u200d\u2642\ufe0f|\uf3cc\uf3fd\u200d\u2642\ufe0f|\uf3cc\uf3fe\u200d\u2642\ufe0f|\uf3cc\uf3ff\u200d\u2642\ufe0f|\uf3cc\uf3fb\u200d\u2640\ufe0f|\uf3cc\uf3fc\u200d\u2640\ufe0f|\uf3cc\uf3fd\u200d\u2640\ufe0f|\uf3cc\uf3fe\u200d\u2640\ufe0f|\uf3cc\uf3ff\u200d\u2640\ufe0f|\uf3c4\uf3fb|\uf3c4\uf3fc|\uf3c4\uf3fd|\uf3c4\uf3fe|\uf3c4\uf3ff|\uf3c4\uf3fb\u200d\u2642\ufe0f|\uf3c4\uf3fc\u200d\u2642\ufe0f|\uf3c4\uf3fd\u200d\u2642\ufe0f|\uf3c4\uf3fe\u200d\u2642\ufe0f|\uf3c4\uf3ff\u200d\u2642\ufe0f|\uf3c4\uf3fb\u200d\u2640\ufe0f|\uf3c4\uf3fc\u200d\u2640\ufe0f|\uf3c4\uf3fd\u200d\u2640\ufe0f|\uf3c4\uf3fe\u200d\u2640\ufe0f|\uf3c4\uf3ff\u200d\u2640\ufe0f|\uf6a3\uf3fb|\uf6a3\uf3fc|\uf6a3\uf3fd|\uf6a3\uf3fe|\uf6a3\uf3ff|\uf6a3\uf3fb\u200d\u2642\ufe0f|\uf6a3\uf3fc\u200d\u2642\ufe0f|\uf6a3\uf3fd\u200d\u2642\ufe0f|\uf6a3\uf3fe\u200d\u2642\ufe0f|\uf6a3\uf3ff\u200d\u2642\ufe0f|\uf6a3\uf3fb\u200d\u2640\ufe0f|\uf6a3\uf3fc\u200d\u2640\ufe0f|\uf6a3\uf3fd\u200d\u2640\ufe0f|\uf6a3\uf3fe\u200d\u2640\ufe0f|\uf6a3\uf3ff\u200d\u2640\ufe0f|\uf3ca\uf3fb|\uf3ca\uf3fc|\uf3ca\uf3fd|\uf3ca\uf3fe|\uf3ca\uf3ff|\uf3ca\uf3fb\u200d\u2642\ufe0f|\uf3ca\uf3fc\u200d\u2642\ufe0f|\uf3ca\uf3fd\u200d\u2642\ufe0f|\uf3ca\uf3fe\u200d\u2642\ufe0f|\uf3ca\uf3ff\u200d\u2642\ufe0f|\uf3ca\uf3fb\u200d\u2640\ufe0f|\uf3ca\uf3fc\u200d\u2640\ufe0f|\uf3ca\uf3fd\u200d\u2640\ufe0f|\uf3ca\uf3fe\u200d\u2640\ufe0f|\uf3ca\uf3ff\u200d\u2640\ufe0f|\uf3cb\uf3fb|\uf3cb\uf3fc|\uf3cb\uf3fd|\uf3cb\uf3fe|\uf3cb\uf3ff|\uf3cb\uf3fb\u200d\u2642\ufe0f|\uf3cb\uf3fc\u200d\u2642\ufe0f|\uf3cb\uf3fd\u200d\u2642\ufe0f|\uf3cb\uf3fe\u200d\u2642\ufe0f|\uf3cb\uf3ff\u200d\u2642\ufe0f|\uf3cb\uf3fb\u200d\u2640\ufe0f|\uf3cb\uf3fc\u200d\u2640\ufe0f|\uf3cb\uf3fd\u200d\u2640\ufe0f|\uf3cb\uf3fe\u200d\u2640\ufe0f|\uf3cb\uf3ff\u200d\u2640\ufe0f|\uf6b4\uf3fb|\uf6b4\uf3fc|\uf6b4\uf3fd|\uf6b4\uf3fe|\uf6b4\uf3ff|\uf6b4\uf3fb\u200d\u2642\ufe0f|\uf6b4\uf3fc\u200d\u2642\ufe0f|\uf6b4\uf3fd\u200d\u2642\ufe0f|\uf6b4\uf3fe\u200d\u2642\ufe0f|\uf6b4\uf3ff\u200d\u2642\ufe0f|\uf6b4\uf3fb\u200d\u2640\ufe0f|\uf6b4\uf3fc\u200d\u2640\ufe0f|\uf6b4\uf3fd\u200d\u2640\ufe0f|\uf6b4\uf3fe\u200d\u2640\ufe0f|\uf6b4\uf3ff\u200d\u2640\ufe0f|\uf6b5\uf3fb|\uf6b5\uf3fc|\uf6b5\uf3fd|\uf6b5\uf3fe|\uf6b5\uf3ff|\uf6b5\uf3fb\u200d\u2642\ufe0f|\uf6b5\uf3fc\u200d\u2642\ufe0f|\uf6b5\uf3fd\u200d\u2642\ufe0f|\uf6b5\uf3fe\u200d\u2642\ufe0f|\uf6b5\uf3ff\u200d\u2642\ufe0f|\uf6b5\uf3fb\u200d\u2640\ufe0f|\uf6b5\uf3fc\u200d\u2640\ufe0f|\uf6b5\uf3fd\u200d\u2640\ufe0f|\uf6b5\uf3fe\u200d\u2640\ufe0f|\uf6b5\uf3ff\u200d\u2640\ufe0f|\uf938\uf3fb|\uf938\uf3fc|\uf938\uf3fd|\uf938\uf3fe|\uf938\uf3ff|\uf938\uf3fb\u200d\u2642\ufe0f|\uf938\uf3fc\u200d\u2642\ufe0f|\uf938\uf3fd\u200d\u2642\ufe0f|\uf938\uf3fe\u200d\u2642\ufe0f|\uf938\uf3ff\u200d\u2642\ufe0f|\uf938\uf3fb\u200d\u2640\ufe0f|\uf938\uf3fc\u200d\u2640\ufe0f|\uf938\uf3fd\u200d\u2640\ufe0f|\uf938\uf3fe\u200d\u2640\ufe0f|\uf938\uf3ff\u200d\u2640\ufe0f|\uf93d\uf3fb|\uf93d\uf3fc|\uf93d\uf3fd|\uf93d\uf3fe|\uf93d\uf3ff|\uf93d\uf3fb\u200d\u2642\ufe0f|\uf93d\uf3fc\u200d\u2642\ufe0f|\uf93d\uf3fd\u200d\u2642\ufe0f|\uf93d\uf3fe\u200d\u2642\ufe0f|\uf93d\uf3ff\u200d\u2642\ufe0f|\uf93d\uf3fb\u200d\u2640\ufe0f|\uf93d\uf3fc\u200d\u2640\ufe0f|\uf93d\uf3fd\u200d\u2640\ufe0f|\uf93d\uf3fe\u200d\u2640\ufe0f|\uf93d\uf3ff\u200d\u2640\ufe0f|\uf93e\uf3fb|\uf93e\uf3fc|\uf93e\uf3fd|\uf93e\uf3fe|\uf93e\uf3ff|\uf93e\uf3fb\u200d\u2642\ufe0f|\uf93e\uf3fc\u200d\u2642\ufe0f|\uf93e\uf3fd\u200d\u2642\ufe0f|\uf93e\uf3fe\u200d\u2642\ufe0f|\uf93e\uf3ff\u200d\u2642\ufe0f|\uf93e\uf3fb\u200d\u2640\ufe0f|\uf93e\uf3fc\u200d\u2640\ufe0f|\uf93e\uf3fd\u200d\u2640\ufe0f|\uf93e\uf3fe\u200d\u2640\ufe0f|\uf93e\uf3ff\u200d\u2640\ufe0f|\uf939\uf3fb|\uf939\uf3fc|\uf939\uf3fd|\uf939\uf3fe|\uf939\uf3ff|\uf939\uf3fb\u200d\u2642\ufe0f|\uf939\uf3fc\u200d\u2642\ufe0f|\uf939\uf3fd\u200d\u2642\ufe0f|\uf939\uf3fe\u200d\u2642\ufe0f|\uf939\uf3ff\u200d\u2642\ufe0f|\uf939\uf3fb\u200d\u2640\ufe0f|\uf939\uf3fc\u200d\u2640\ufe0f|\uf939\uf3fd\u200d\u2640\ufe0f|\uf939\uf3fe\u200d\u2640\ufe0f|\uf939\uf3ff\u200d\u2640\ufe0f|\uf933\uf3fb|\uf933\uf3fc|\uf933\uf3fd|\uf933\uf3fe|\uf933\uf3ff|\uf4aa\uf3fb|\uf4aa\uf3fc|\uf4aa\uf3fd|\uf4aa\uf3fe|\uf4aa\uf3ff|\uf448\uf3fb|\uf448\uf3fc|\uf448\uf3fd|\uf448\uf3fe|\uf448\uf3ff|\uf449\uf3fb|\uf449\uf3fc|\uf449\uf3fd|\uf449\uf3fe|\uf449\uf3ff|\uf446\uf3fb|\uf446\uf3fc|\uf446\uf3fd|\uf446\uf3fe|\uf446\uf3ff|\uf595\uf3fb|\uf595\uf3fc|\uf595\uf3fd|\uf595\uf3fe|\uf595\uf3ff|\uf447\uf3fb|\uf447\uf3fc|\uf447\uf3fd|\uf447\uf3fe|\uf447\uf3ff|\uf91e\uf3fb|\uf91e\uf3fc|\uf91e\uf3fd|\uf91e\uf3fe|\uf91e\uf3ff|\uf596\uf3fb|\uf596\uf3fc|\uf596\uf3fd|\uf596\uf3fe|\uf596\uf3ff|\uf918\uf3fb|\uf918\uf3fc|\uf918\uf3fd|\uf918\uf3fe|\uf918\uf3ff|\uf919\uf3fb|\uf919\uf3fc|\uf919\uf3fd|\uf919\uf3fe|\uf919\uf3ff|\uf590\uf3fb|\uf590\uf3fc|\uf590\uf3fd|\uf590\uf3fe|\uf590\uf3ff|\uf44c\uf3fb|\uf44c\uf3fc|\uf44c\uf3fd|\uf44c\uf3fe|\uf44c\uf3ff|\uf44d\uf3fb|\uf44d\uf3fc|\uf44d\uf3fd|\uf44d\uf3fe|\uf44d\uf3ff|\uf44e\uf3fb|\uf44e\uf3fc|\uf44e\uf3fd|\uf44e\uf3fe|\uf44e\uf3ff|\uf44a\uf3fb|\uf44a\uf3fc|\uf44a\uf3fd|\uf44a\uf3fe|\uf44a\uf3ff|\uf91b\uf3fb|\uf91b\uf3fc|\uf91b\uf3fd|\uf91b\uf3fe|\uf91b\uf3ff|\uf91c\uf3fb|\uf91c\uf3fc|\uf91c\uf3fd|\uf91c\uf3fe|\uf91c\uf3ff|\uf91a\uf3fb|\uf91a\uf3fc|\uf91a\uf3fd|\uf91a\uf3fe|\uf91a\uf3ff|\uf44b\uf3fb|\uf44b\uf3fc|\uf44b\uf3fd|\uf44b\uf3fe|\uf44b\uf3ff|\uf91f\uf3fb|\uf91f\uf3fc|\uf91f\uf3fd|\uf91f\uf3fe|\uf91f\uf3ff|\uf44f\uf3fb|\uf44f\uf3fc|\uf44f\uf3fd|\uf44f\uf3fe|\uf44f\uf3ff|\uf450\uf3fb|\uf450\uf3fc|\uf450\uf3fd|\uf450\uf3fe|\uf450\uf3ff|\uf64c\uf3fb|\uf64c\uf3fc|\uf64c\uf3fd|\uf64c\uf3fe|\uf64c\uf3ff|\uf932\uf3fb|\uf932\uf3fc|\uf932\uf3fd|\uf932\uf3fe|\uf932\uf3ff|\uf64f\uf3fb|\uf64f\uf3fc|\uf64f\uf3fd|\uf64f\uf3fe|\uf64f\uf3ff|\uf485\uf3fb|\uf485\uf3fc|\uf485\uf3fd|\uf485\uf3fe|\uf485\uf3ff|\uf442\uf3fb|\uf442\uf3fc|\uf442\uf3fd|\uf442\uf3fe|\uf442\uf3ff|\uf443\uf3fb|\uf443\uf3fc|\uf443\uf3fd|\uf443\uf3fe|\uf443\uf3ff|\uf1e6\uf1e8|\uf1e6\uf1e9|\uf1e6\uf1ea|\uf1e6\uf1eb|\uf1e6\uf1ec|\uf1e6\uf1ee|\uf1e6\uf1f1|\uf1e6\uf1f2|\uf1e6\uf1f4|\uf1e6\uf1f6|\uf1e6\uf1f7|\uf1e6\uf1f8|\uf1e6\uf1f9|\uf1e6\uf1fa|\uf1e6\uf1fc|\uf1e6\uf1fd|\uf1e6\uf1ff|\uf1e7\uf1e6|\uf1e7\uf1e7|\uf1e7\uf1e9|\uf1e7\uf1ea|\uf1e7\uf1eb|\uf1e7\uf1ec|\uf1e7\uf1ed|\uf1e7\uf1ee|\uf1e7\uf1ef|\uf1e7\uf1f1|\uf1e7\uf1f2|\uf1e7\uf1f3|\uf1e7\uf1f4|\uf1e7\uf1f6|\uf1e7\uf1f7|\uf1e7\uf1f8|\uf1e7\uf1f9|\uf1e7\uf1fb|\uf1e7\uf1fc|\uf1e7\uf1fe|\uf1e7\uf1ff|\uf1e8\uf1e6|\uf1e8\uf1e8|\uf1e8\uf1e9|\uf1e8\uf1eb|\uf1e8\uf1ec|\uf1e8\uf1ed|\uf1e8\uf1ee|\uf1e8\uf1f0|\uf1e8\uf1f1|\uf1e8\uf1f2|\uf1e8\uf1f3|\uf1e8\uf1f4|\uf1e8\uf1f5|\uf1e8\uf1f7|\uf1e8\uf1fa|\uf1e8\uf1fb|\uf1e8\uf1fc|\uf1e8\uf1fd|\uf1e8\uf1fe|\uf1e8\uf1ff|\uf1e9\uf1ea|\uf1e9\uf1ec|\uf1e9\uf1ef|\uf1e9\uf1f0|\uf1e9\uf1f2|\uf1e9\uf1f4|\uf1e9\uf1ff|\uf1ea\uf1e6|\uf1ea\uf1e8|\uf1ea\uf1ea|\uf1ea\uf1ec|\uf1ea\uf1ed|\uf1ea\uf1f7|\uf1ea\uf1f8|\uf1ea\uf1f9|\uf1ea\uf1fa|\uf1eb\uf1ee|\uf1eb\uf1ef|\uf1eb\uf1f0|\uf1eb\uf1f2|\uf1eb\uf1f4|\uf1eb\uf1f7|\uf1ec\uf1e6|\uf1ec\uf1e7|\uf1ec\uf1e9|\uf1ec\uf1ea|\uf1ec\uf1eb|\uf1ec\uf1ec|\uf1ec\uf1ed|\uf1ec\uf1ee|\uf1ec\uf1f1|\uf1ec\uf1f2|\uf1ec\uf1f3|\uf1ec\uf1f5|\uf1ec\uf1f6|\uf1ec\uf1f7|\uf1ec\uf1f8|\uf1ec\uf1f9|\uf1ec\uf1fa|\uf1ec\uf1fc|\uf1ec\uf1fe|\uf1ed\uf1f0|\uf1ed\uf1f2|\uf1ed\uf1f3|\uf1ed\uf1f7|\uf1ed\uf1f9|\uf1ed\uf1fa|\uf1ee\uf1e8|\uf1ee\uf1e9|\uf1ee\uf1ea|\uf1ee\uf1f1|\uf1ee\uf1f2|\uf1ee\uf1f3|\uf1ee\uf1f4|\uf1ee\uf1f6|\uf1ee\uf1f7|\uf1ee\uf1f8|\uf1ee\uf1f9|\uf1ef\uf1ea|\uf1ef\uf1f2|\uf1ef\uf1f4|\uf1ef\uf1f5|\uf1f0\uf1ea|\uf1f0\uf1ec|\uf1f0\uf1ed|\uf1f0\uf1ee|\uf1f0\uf1f2|\uf1f0\uf1f3|\uf1f0\uf1f5|\uf1f0\uf1f7|\uf1f0\uf1fc|\uf1f0\uf1fe|\uf1f0\uf1ff|\uf1f1\uf1e6|\uf1f1\uf1e7|\uf1f1\uf1e8|\uf1f1\uf1ee|\uf1f1\uf1f0|\uf1f1\uf1f7|\uf1f1\uf1f8|\uf1f1\uf1f9|\uf1f1\uf1fa|\uf1f1\uf1fb|\uf1f1\uf1fe|\uf1f2\uf1e6|\uf1f2\uf1e8|\uf1f2\uf1e9|\uf1f2\uf1ea|\uf1f2\uf1eb|\uf1f2\uf1ec|\uf1f2\uf1ed|\uf1f2\uf1f0|\uf1f2\uf1f1|\uf1f2\uf1f2|\uf1f2\uf1f3|\uf1f2\uf1f4|\uf1f2\uf1f5|\uf1f2\uf1f6|\uf1f2\uf1f7|\uf1f2\uf1f8|\uf1f2\uf1f9|\uf1f2\uf1fa|\uf1f2\uf1fb|\uf1f2\uf1fc|\uf1f2\uf1fd|\uf1f2\uf1fe|\uf1f2\uf1ff|\uf1f3\uf1e6|\uf1f3\uf1e8|\uf1f3\uf1ea|\uf1f3\uf1eb|\uf1f3\uf1ec|\uf1f3\uf1ee|\uf1f3\uf1f1|\uf1f3\uf1f4|\uf1f3\uf1f5|\uf1f3\uf1f7|\uf1f3\uf1fa|\uf1f3\uf1ff|\uf1f4\uf1f2|\uf1f5\uf1e6|\uf1f5\uf1ea|\uf1f5\uf1eb|\uf1f5\uf1ec|\uf1f5\uf1ed|\uf1f5\uf1f0|\uf1f5\uf1f1|\uf1f5\uf1f2|\uf1f5\uf1f3|\uf1f5\uf1f7|\uf1f5\uf1f8|\uf1f5\uf1f9|\uf1f5\uf1fc|\uf1f5\uf1fe|\uf1f6\uf1e6|\uf1f7\uf1ea|\uf1f7\uf1f4|\uf1f7\uf1f8|\uf1f7\uf1fa|\uf1f7\uf1fc|\uf1f8\uf1e6|\uf1f8\uf1e7|\uf1f8\uf1e8|\uf1f8\uf1e9|\uf1f8\uf1ea|\uf1f8\uf1ec|\uf1f8\uf1ed|\uf1f8\uf1ee|\uf1f8\uf1ef|\uf1f8\uf1f0|\uf1f8\uf1f1|\uf1f8\uf1f2|\uf1f8\uf1f3|\uf1f8\uf1f4|\uf1f8\uf1f7|\uf1f8\uf1f8|\uf1f8\uf1f9|\uf1f8\uf1fb|\uf1f8\uf1fd|\uf1f8\uf1fe|\uf1f8\uf1ff|\uf1f9\uf1e6|\uf1f9\uf1e8|\uf1f9\uf1e9|\uf1f9\uf1eb|\uf1f9\uf1ec|\uf1f9\uf1ed|\uf1f9\uf1ef|\uf1f9\uf1f0|\uf1f9\uf1f1|\uf1f9\uf1f2|\uf1f9\uf1f3|\uf1f9\uf1f4|\uf1f9\uf1f7|\uf1f9\uf1f9|\uf1f9\uf1fb|\uf1f9\uf1fc|\uf1f9\uf1ff|\uf1fa\uf1e6|\uf1fa\uf1ec|\uf1fa\uf1f2|\uf1fa\uf1f3|\uf1fa\uf1f8|\uf1fa\uf1fe|\uf1fa\uf1ff|\uf1fb\uf1e6|\uf1fb\uf1e8|\uf1fb\uf1ea|\uf1fb\uf1ec|\uf1fb\uf1ee|\uf1fb\uf1f3|\uf1fb\uf1fa|\uf1fc\uf1eb|\uf1fc\uf1f8|\uf1fd\uf1f0|\uf1fe\uf1ea|\uf1fe\uf1f9|\uf1ff\uf1e6|\uf1ff\uf1f2|\uf1ff\uf1fc|\uf004|\uf0cf|[\uf170-\uf171]|[\uf17e-\uf17f]|\uf18e|[\uf191-\uf19a]|[\uf201-\uf202]|\uf21a|\uf22f|[\uf232-\uf23a]|[\uf250-\uf251]|[\uf300-\uf321]|[\uf324-\uf393]|[\uf396-\uf397]|[\uf399-\uf39b]|[\uf39e-\uf3f0]|[\uf3f3-\uf3f5]|[\uf3f7-\uf3fa]|[\uf400-\uf4fd]|[\uf4ff-\uf53d]|[\uf549-\uf54e]|[\uf550-\uf567]|[\uf56f-\uf570]|[\uf573-\uf57a]|\uf587|[\uf58a-\uf58d]|\uf590|[\uf595-\uf596]|[\uf5a4-\uf5a5]|\uf5a8|[\uf5b1-\uf5b2]|\uf5bc|[\uf5c2-\uf5c4]|[\uf5d1-\uf5d3]|[\uf5dc-\uf5de]|\uf5e1|\uf5e3|\uf5e8|\uf5ef|\uf5f3|[\uf5fa-\uf64f]|[\uf680-\uf6c5]|[\uf6cb-\uf6d2]|[\uf6e0-\uf6e5]|\uf6e9|[\uf6eb-\uf6ec]|\uf6f0|[\uf6f3-\uf6f8]|[\uf910-\uf93a]|[\uf93c-\uf93e]|[\uf940-\uf945]|[\uf947-\uf94c]|[\uf950-\uf96b]|[\uf980-\uf997]|\uf9c0|[\uf9d0-\uf9e6]/g,
n = function (u) {
return "file:" === document.location.protocol ? "http:" + u : u
}, F = document.all && !document.addEventListener, o = n("//cdn.ronghub.com/css-sprite_bg-2.1.10.png"),
t = n("//f2e.cn.ronghub.com/sdk/emoji-48.png"), i = {url: F ? o : t, size: 24, lang: "zh", reg: e},
a = ["en", "zh"], s = function () {
var u = function (u, D) {
try {
var f = document.createElement("canvas");
f.width = 20, f.height = 20;
var e = f.getContext("2d");
e.textBaseline = "top", e.font = "20px sans-serif", e.fillStyle = D, e.fillText(u, 0, 0);
for (var n = e.getImageData(0, 0, 20, 20).data, F = [], o = 0; o < n.length; o++) F[o] = n[o];
for (var t = 0, o = 0; o < F.length; o++) t += F[o];
return !!(t > 0) && F.toString()
} catch (u) {
return !1
}
}, D = u("😁", "#000");
if (D) {
var f = u("😁", "#FFF"), e = u("😨", "#000"), n = D && D === f, F = D && D !== e;
return n || F
}
return !1
}();
String.prototype.codePointAt || function () {
"use strict";
var u = function (u) {
if (null == this) throw TypeError();
var D = String(this), f = D.length, e = u ? Number(u) : 0;
if (e != e && (e = 0), !(e < 0 || e >= f)) {
var n, F = D.charCodeAt(e);
return F >= 55296 && F <= 56319 && f > e + 1 && (n = D.charCodeAt(e + 1)) >= 56320 && n <= 57343 ? 1024 * (F - 55296) + n - 56320 + 65536 : F
}
}, D = (navigator.userAgent, navigator.userAgent.indexOf("MSIE 8.0") > 0);
Object.defineProperty && !D ? Object.defineProperty(String.prototype, "codePointAt", {
value: u,
configurable: !0,
writable: !0
}) : String.prototype.codePointAt = u
}(), String.fromCodePoint || function () {
var u = function () {
try {
var u = {}, D = Object.defineProperty, f = D(u, u, u) && D
} catch (u) {
}
return f
}(), D = String.fromCharCode, f = Math.floor, e = function () {
var u, e, n = [], F = -1, o = arguments.length;
if (!o) return "";
for (var t = ""; ++F < o;) {
var i = Number(arguments[F]);
if (!isFinite(i) || i < 0 || i > 1114111 || f(i) != i) throw RangeError("Invalid code point: " + i);
i <= 65535 ? n.push(i) : (u = 55296 + ((i -= 65536) >> 10), e = i % 1024 + 56320, n.push(u, e)), (F + 1 == o || n.length > 16384) && (t += D.apply(null, n), n.length = 0)
}
return t
};
u ? u(String, "fromCodePoint", {value: e, configurable: !0, writable: !0}) : String.fromCodePoint = e
}();
var r = {
symbolRegExp: /\[([^\[\]]+?)\]/g, toEmoji: function (u, D) {
return D ? D(u) : u
}, extend: function () {
if (0 !== arguments.length) {
for (var u = arguments[0], D = 1, f = arguments.length; D < f; D++) {
var e = arguments[D];
for (var n in e) u[n] = e[n]
}
return u
}
}, hasSame: function (u, D) {
for (var f = u.join(" "), e = 0; e < D.length; e++) {
var n = D[e];
if (-1 === r.indexOf(f, n)) return !1
}
return !0
}, getDom: function (u) {
var D = document.createElement("div");
return D.innerHTML = u, D.childNodes[0]
}, getSymbol: function (u) {
return "[" + u + "]"
}, cutString: function (u, D, f) {
for (var e = [], n = D; n < D + f; n++) e.push(u.charAt(n));
return e.join("")
}, indexOf: function (u, D) {
if ("string" == typeof u) for (f = 0; f <= u.length - D.length; f++) {
r.cutString(u, f, D.length);
if (u.charAt(f) == D.charAt(0) && r.cutString(u, f, D.length) == D) return f
} else if ("[object Array]" === Object.prototype.toString.call(u)) for (var f = 0; f < u.length; f++) if (u[f] == D) return f;
return -1
}, keys: function (u) {
var D = [];
for (var f in u) D.push(f);
return D
}, map: function (u, D) {
for (var f = u.concat([]), e = 0; e < f.length; e++) {
var n = f[e];
D && "function" == typeof D && (f[e] = D(n))
}
return f
}, filter: function (u, D) {
for (var f = [], e = 0; e < u.length; e++) {
var n = u[e];
D(n) && f.push(n)
}
return f
}, emojiToUnicode: function (u) {
for (var D = "", f = 0; f < u.length; f += 2) {
var e = u.codePointAt(f).toString(16);
D += 0 !== e.indexOf("1f") ? "%u" + e : e.replace("1f", "%uf")
}
return unescape(D)
}, newEmojisAdaptOldVersion: function (u) {
if (u && r.hasKey(u, "dataSource")) {
var D = u.dataSource;
if (D && "object" == typeof D) for (var f in D) {
var e = D.bp || "0px 0px";
D[f].position = e
}
u.dataSource = D
}
return u
}, hasKey: function (u, D) {
var f = !1;
if ("object" === d.getType(u)) for (var e in u) e === D && (f = !0);
return f
}, deleteKey: function (u, D) {
var f = {};
for (var e in u) e !== D && (f[e] = u[e]);
return f
}, getInitDetail: function (u) {
var D, f, e = r.hasKey(u, "extension");
return r.hasKey(u, "dataSource") ? D = u : e ? (D = u.extension, f = r.deleteKey(u, "extension")) : f = u, {
config: f,
newEmojis: D
}
}
}, C = "具体信息请参考文档以及Demo示例: https://rongcloud.github.io/websdk-demo/emoji.html", c = {
LogFactory: {
0: {code: 0, msg: "初始化参数错误", desc: C},
1: {code: 1, msg: "Emoji参数错误", desc: C},
2: {code: 2, msg: "Emoji语言设置错误", desc: C},
3: {code: 3, msg: "Emoji扩展错误", desc: C},
4: {code: 4, msg: "Emoji设置size错误", desc: C},
5: {code: 5, msg: "Emoji设置reg错误", desc: C},
6: {code: 6, msg: "Emoji设置背景url错误", desc: C}
}, isShowError: !0, showErrorInfo: function (u) {
console.error(u)
}, logger: function (u) {
var D = u.code, f = this.LogFactory[D] || u, e = JSON.stringify(f),
n = (e = JSON.parse(e)).msg + ": " + u.msg + "\n " + e.desc;
this.isShowError && this.showErrorInfo(n)
}
}, d = {
getType: function (u) {
if (void 0 === u) return "undefined";
if (null === u) return "null";
var D = Object.prototype.toString.call(u).toLowerCase();
return D.slice(8, D.length - 1)
}, check: function (u, D, f) {
f = f || [];
var e = u.length;
f.length > e && (f.length = e);
for (var n = 0; n < u.length; n++) {
var F = this.getType(f[n]), o = u[n];
if (!new RegExp(F).test(o)) {
var t = "第{{index}}个参数错误, 传入参数类型为: {{errType}}, 应传参数类型为: {{sucType}}, 错误所在位置为: {{funcName}}".replace(/{{index}}/g, n + 1).replace(/{{errType}}/g, F).replace(/{{sucType}}/g, o).replace(/{{funcName}}/g, D);
c.logger({code: 1, funcName: D, msg: t})
}
}
}, checkConfigParam: function (u, D) {
var f = this.checkLanguage(u.lang || i.lang, D), e = this.checkOptType(u.size || i.size, "number", 4, D),
n = this.checkOptType(u.reg || i.reg, "regexp|string", 5, D),
F = this.checkOptType(u.url || i.url, "string", 6, D);
return f && e && n && F
}, checkLanguage: function (u, D) {
if (-1 !== r.indexOf(a, u)) return !0;
var f = "不支持语言: {{lang}}, 支持的语言有: {{support}}".replace(/{{lang}}/g, u).replace(/{{support}}/g, a.join(", "));
return c.logger({code: 2, msg: f, funcName: D}), !1
}, checkOptType: function (u, D, f, e) {
var n = this.getType(u);
if (!new RegExp(n).test(D)) {
var F = "传入参数类型为: {{errType}}, 应传参数类型为: {{sucType}}";
return F = F.replace(/{{errType}}/g, n).replace(/{{sucType}}/g, D), c.logger({
code: f,
msg: F,
funcName: e
}), !1
}
return !0
}, checkDataSource: function (u, D) {
var f = ["en", "zh", "tag", "position"];
for (var e in u) {
var n = u[e];
if ("object" !== this.getType(n)) return o = (o = "dataSource.{{unicode}}必须是object类型").replace(/{{unicode}}/g, e), c.logger({
code: 3,
msg: o,
funcName: D
}), !1;
var F = r.keys(n);
if (!r.hasSame(F, f)) {
var o = "dataSource.{{unicode}}必须包含属性: en, zh, tag, position".replace(/{{unicode}}/g, e);
return c.logger({code: 3, msg: o, funcName: D}), !1
}
}
return !0
}, checkAddEmoji: function (u, D) {
for (var f in u) if ("dataSource" === f) {
var e = u[f];
if ("object" !== this.getType(e)) {
return c.logger({code: 3, msg: "dataSource必须是object类型", funcName: D}), !1
}
if (!this.checkDataSource(e, D)) return !1
}
return !0
}, checkInit: function (u, D) {
var f = d.getType(u), e = new RegExp(f).test(D), n = "config参数必须是" + D + "类型";
return !e && c.logger({code: 0, msg: n, funcName: "init"}), e
}
}, l = function (u, D) {
var f = g(u.position, D), e = D || i.size;
document.all && !document.addEventListener && (f = u.position, e = i.size);
var n = {size: e, position: f, background: u.background || i.url, name: u[i.lang], tag: u.tag};
return E(n)
}, E = function (u) {
var D = "<span class='rong-emoji-content' name='[{{name}}]' style='{{style}}'>{{tag}}</span>";
return (D = D.replace(/{{style}}/g, "width: {{size}}px; height: {{size}}px; line-height: {{size}}px; background-image: url({{background}}); background-position: {{position}}; background-size: auto {{size}}px; overflow: hidden; vertical-align: middle; font-size: 0 !important;")).replace(/\\?\{\{([^}]+)\}\}/g, function (D, f) {
return u[f]
})
}, g = function (u, D) {
var f = (D || i.size) / (document.all && !document.addEventListener ? 24 : 25), e = (u = u.split(" "))[0],
n = u[1];
return e = e ? e.split("px")[0] : 0, n = n ? n.split("px")[0] : 0, parseInt(e) * f + "px " + parseInt(n) * f + "px"
}, p = function () {
D.length = 0;
for (var f in u) {
var e = u[f], n = i.lang, F = l(e),
o = {unicode: f, symbol: r.getSymbol(e[n]), emoji: e.tag, node: r.getDom(F)};
D.push(o)
}
}, m = function (D) {
var f = {};
if (D) {
var e = D.dataSource, n = D.url || i.url;
for (var F in e) e[F].background = n, f[F] = e[F]
}
u = r.extend(u, f)
}, v = function (u) {
var D = escape(u).split("%u");
return D = r.filter(D, function (u) {
return "" !== u
}), r.map(D, function (u) {
return -1 !== r.indexOf(u, "f") || -1 !== r.indexOf(u, "F") ? String.fromCodePoint("0x1" + u) : String.fromCodePoint("0x" + u)
}).join("")
}, h = function (u) {
for (var f = 0; f < D.length; f++) {
i.lang;
var e = D[f];
if (e.symbol === u) return e.emoji
}
return u
}, b = function (D, f) {
for (var e in u) {
var n = u[e];
if (n.tag === D) return l(n, f)
}
return !1
}, x = function (u) {
var D, f;
if (d.checkInit(u, "object|null|undefined")) {
var e = r.getInitDetail(u);
D = e.newEmojis, f = e.config
}
y(D), B(f), R()
}, B = function (u) {
d.checkConfigParam(u || {}, "init") && (i = r.extend(i, u), p())
}, y = function (u) {
u = r.newEmojisAdaptOldVersion(u), d.checkAddEmoji(u || {}, "init") && (m(u), p())
}, M = function (u, D) {
return D = D || i.reg, u.replace(D, function (u) {
return v(u) || u
})
}, k = function (D, e, n) {
return d.check(["string", "regexp|null|undefined"], "emojiToSymbol", arguments), (D = M(D, e)).replace(f, function (D) {
var f = i.lang;
for (var e in u) {
var F = u[e];
if (F.tag == D) {
var o = F[f];
return r.getSymbol(o)
}
}
return r.toEmoji(D, n)
})
}, w = function (u, D) {
return d.check(["string"], "symbolToEmoji", arguments), (u = M(u)).replace(r.symbolRegExp, function (u) {
return h(u)
}).replace(f, function (u) {
return r.toEmoji(u, D)
})
}, S = function (u, D, e, n) {
return d.check(["string", "number|null|undefined", "regexp|null|undefined"], "emojiToHTML", arguments), (u = M(u, e)).replace(f, function (u) {
return b(u, D) || u
}).replace(f, function (u) {
return r.toEmoji(u, n)
})
}, I = function (u, D, e, n) {
return d.check(["string", "number|null|undefined", "regexp|null|undefined"], "symbolToHTML", arguments), u.replace(r.symbolRegExp, function (u) {
var f = h(u);
return b(f, D) || u
}).replace(f, function (u) {
return r.toEmoji(u, n)
})
}, T = {}, R = function () {
T.emojis = r.map(D, function (D) {
var f = D.unicode, e = u[f], n = e.zh, F = e.en, t = e.position;
F = F.replace(" ", "_").toLowerCase();
var i = "<b style='width: 24px; height: 24px; display: inline-block; background-image: url({{url}}); background-position: {{position}}'></b>";
i = i.replace("{{url}}", o).replace("{{position}}", t);
var a = "<span name='[{{zh}}]' class='RongIMExpression_{{en}}' style='{{style}}'>{{b}}</span>",
s = "<span>" + (a = a.replace("{{zh}}", n).replace("{{en}}", F).replace("{{b}}", i).replace("{{style}}", "height: 24px; width: 24px; display: inline-block; font-size: 20px !important; text-align: center; vertical-align: middle;overflow: hidden; line-height: 24px;")) + "</span>";
return r.getDom(s)
}), T.names = function () {
var D = [];
for (var f in u) {
for (var e = u[f], n = {}, F = 0; F < a.length; F++) {
var o = a[F];
n[o] = e[o]
}
D.push(n)
}
return D
}(), T.data = r.map(D, function (D) {
var f;
for (var e in u) {
var n = u[e];
n.tag === D.emoji && (f = n, n.html = D.node)
}
return f
})
};
return function () {
var u = ".rong-emoji-content { display: inline-block; overflow: hidden; font-size: 20px !important; text-align: center; vertical-align: middle; overflow: hidden;}",
D = document.createElement("style");
D.setAttribute("type", "text/css");
var f = document.getElementsByTagName("head")[0];
f.appendChild(D), D.styleSheet ? D.styleSheet.cssText = u : (f = document.createTextNode(u), D.appendChild(f))
}(), p(), R(), r.extend(T, {
isSupportEmoji: s,
init: x,
list: D,
emojiToSymbol: k,
symbolToEmoji: w,
emojiToHTML: S,
symbolToHTML: I,
adaptOldVersion: R
})
});
var RCS = {templateCache: {}};
!function (u) {
function D(u) {
return !!/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(u)
}
var f = {
$: function (u) {
return document.querySelectorAll(u)
}, show: function (u) {
u.style.display = "block"
}, hide: function (u) {
u.style.display = "none"
}, removeNode: function (u) {
var D = f.$(u)[0];
D && D.parentNode.removeChild(D)
}, getStyle: function (u, D) {
return u.currentStyle ? u.currentStyle[D] || "" : window.getComputedStyle ? window.getComputedStyle(u, null)[D] : void 0
}, indexOf: function (u, D) {
if (u.indexOf) return u.indexOf(D);
for (var f = 0, e = u.length; f < e; f++) if (u[f] === D) return f;
return -1
}, copy: function (u, D, f, e) {
e = e || function (u) {
return u
};
for (var n in D) (f || void 0 === u[n] || null === u[n]) && (u[n] = e(D[n]));
return u
}, isChild: function (u, D) {
for (; u && u.tagName && "body" != u.tagName.toLowerCase();) {
if (u == D) return !0;
u = u.parentNode
}
return !1
}, getTime: function (u) {
var D = new Date, f = new Date(u);
return D.getFullYear() == f.getFullYear() && D.getMonth() == f.getMonth() && D.getDate() == f.getDate() ? (f.getHours() > 9 ? f.getHours() : "0" + f.getHours()) + ":" + (f.getMinutes() > 9 ? f.getMinutes() : "0" + f.getMinutes()) : f.getFullYear() + "-" + (f.getMonth() > 8 ? f.getMonth() + 1 : "0" + (f.getMonth() + 1)) + "-" + (f.getDate() > 9 ? f.getDate() : "0" + f.getDate()) + " " + (f.getHours() > 9 ? f.getHours() : "0" + f.getHours()) + ":" + (f.getMinutes() > 9 ? f.getMinutes() : "0" + f.getMinutes())
}, getFileSize: function (u) {
var D = Math.pow(1024, 3), f = Math.pow(1024, 2), e = Math.pow(1024, 1);
return u > D ? u = (u / D).toFixed(2) + "G" : u > f ? u = (u / f).toFixed(2) + "M" : u > e ? u = (u / e).toFixed(2) + "K" : u += "B", u
}, getFormValue: function (u) {
for (var D = {}, f = 0; f < u.length; f++) D[u[f]] = document.getElementsByName(u[f])[0].value;
return D
}, fadein: function (u) {
if (u.style.opacity = 0, u.style.display = "block", u) {
var D = 0, f = null;
f = setInterval(function () {
e(u, D += 1), 100 == D && clearInterval(f)
}, 1)
}
}, fadeout: function (u) {
if (u) {
var D = 100, f = null;
f = setInterval(function () {
e(u, D -= 1), 0 == D && (u.style.display = "none", clearInterval(f))
}, 1)
}
}, downloadHistoryMsgFile: function (u, D) {
var f = document.createElement("a");
f.href = u, f.setAttribute("download", D || ""), f.click()
}, encodeHtmlStr: function (u) {
for (var D = [{symbol: "&", html: "&"}, {
symbol: "[\\u0009]",
html: " "
}, {symbol: "<", html: "<"}, {symbol: ">", html: ">"}, {symbol: '"', html: """}, {
symbol: "'",
html: "'"
}, {symbol: "\\n\\r", html: "<br/>"}, {symbol: "\\r\\n", html: "<br/>"}, {
symbol: "\\n",
html: "<br/>"
}], f = 0, e = D.length; f < e; f++) {
var n = D[f], F = new RegExp(n.symbol, "g");
u = u.replace(F, n.html)
}
return u
}, replaceUri: function (u, D) {
var f = new RegExp("((?:http|https|ftp)\\:\\/\\/)?(?:(?:(?:(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9]))|(?:(?!@)(?:[a-z0-9-]{1,36}\\.)+[a-z]{2,6}))(?:\\:[0-9]{1,5})?(?:[a-zA-Z0-9.,;?\\'+&%$#=~_\\-!()*\\/]*)", "ig");
return u.replace(f, function (f, e) {
var n = arguments[arguments.length - 2], F = "@" === u.substr(n - 1, 1), t = !o(f, e);
return F || t ? f : D.apply(null, arguments)
})
}, replaceEmail: function (u, D) {
var f = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/gi;
return u.replace(f, D)
}, browserRedirect: function (u) {
var D = navigator.userAgent.toLowerCase(), f = "ipad" == D.match(/ipad/i),
e = "iphone os" == D.match(/iphone os/i), n = "midp" == D.match(/midp/i),
F = "rv:1.2.3.4" == D.match(/rv:1.2.3.4/i), o = "ucweb" == D.match(/ucweb/i),
t = "android" == D.match(/android/i), i = "windows ce" == D.match(/windows ce/i),
a = "windows mobile" == D.match(/windows mobile/i);
u(f || e || n || F || o || t || i || a ? "phone" : "pc")
}, cloneObj: function (u) {
var D, f = u.constructor === Array ? [] : {};
if ("object" == typeof u) {
if (window.JSON) D = JSON.stringify(u), f = JSON.parse(D); else for (var e in u) f[e] = "object" == typeof u[e] ? cloneObj(u[e]) : u[e];
return f
}
}
}, e = function (u, D) {
void 0 != u.style.opacity ? u.style.opacity = D / 100 : u.style.filter = "alpha(opacity=" + D + ")"
},
n = [".com", ".net", ".org", ".biz", ".coop", ".info", ".museum", ".name", ".pro", ".edu", ".gov", ".int", ".mil", ".ac", ".ad", ".ae", ".af", ".ag", ".ai", ".al", ".am", ".an", ".ao", ".aq", ".ar", ".as", ".at", ".au", ".aw", ".az", ".ba", ".bb", ".bd", ".be", ".bf", ".bg", ".bh", ".bi", ".bj", ".bm", ".bn", ".bo", ".br", ".bs", ".bt", ".bv", ".bw", ".by", ".bz", ".ca", ".cc", ".cd", ".cf", ".cg", ".ch", ".ci", ".ck", ".cl", ".cm", ".cn", ".co", ".cr", ".cu", ".cv", ".cx", ".cy", ".cz", ".de", ".dj", ".dk", ".dm", ".do", ".dz", ".ec", ".ee", ".eg", ".eh", ".er", ".es", ".et", ".fi", ".fj", ".fk", ".fm", ".fo", ".fr", ".ga", ".gd", ".ge", ".gf", ".gg", ".gh", ".gi", ".gl", ".gm", ".gn", ".gp", ".gq", ".gr", ".gs", ".gt", ".gu", ".gv", ".gy", ".hk", ".hm", ".hn", ".hr", ".ht", ".hu", ".id", ".ie", ".il", ".im", ".in", ".io", ".iq", ".ir", ".is", ".it", ".je", ".jm", ".jo", ".jp", ".ke", ".kg", ".kh", ".ki", ".km", ".kn", ".kp", ".kr", ".kw", ".ky", ".kz", ".la", ".lb", ".lc", ".li", ".lk", ".lr", ".ls", ".lt", ".lu", ".lv", ".ly", ".ma", ".mc", ".md", ".me", ".mh", ".mk", ".ml", ".mm", ".mn", ".mo", ".mp", ".mq", ".mr", ".ms", ".mt", ".mu", ".mv", ".mw", ".mx", ".my", ".mz", ".na", ".nc", ".ne", ".nf", ".ng", ".ni", ".nl", ".no", ".np", ".nr", ".nu", ".nz", ".om", ".pa", ".pe", ".pf", ".pg", ".ph", ".pk", ".pl", ".pm", ".pn", ".pr", ".ps", ".pt", ".pw", ".py", ".qa", ".re", ".ro", ".rw", ".ru", ".sa", ".sb", ".sc", ".sd", ".se", ".sg", ".sh", ".si", ".sj", ".sk", ".sl", ".sm", ".sn", ".so", ".sr", ".st", ".sv", ".sy", ".sz", ".tc", ".td", ".tf", ".tg", ".th", ".tj", ".tk", ".tm", ".tn", ".to", ".tp", ".tr", ".tt", ".tv", ".tw", ".tz", ".ua", ".ug", ".uk", ".um", ".us", ".uy", ".uz", ".va", ".vc", ".ve", ".vg", ".vi", ".vn", ".vu", ".ws", ".wf", ".ye", ".yt", ".yu", ".za", ".zm", ".zw", ".mg"],
F = function (u) {
var D = document.createElement("a");
return D.href = u, D
}, o = function (u, f) {
var e = u;
f || (e = "http://" + e);
var o = F(e);
if (D(o.hostname)) return !0;
var t = o.hostname.replace(/^.+\./, "");
return !(n.indexOf("." + t) < 0)
};
f.render = function (u, D) {
u = u || "", D = D || [""];
for (var f, e = /{%((?:(?!%}).)+)%}/g, n = /(^( )?(var|if|for|else|switch|case|default|break|{|}))(.*)?/g, F = "var r=[];\n", o = 0, t = function (u, D) {
return F += D ? u.match(n) ? u + "\n" : "r.push(" + u + ");\n" : "" != u ? 'r.push("' + u.replace(/"/g, '\\"') + '");\n' : "", t
}; f = e.exec(u);) t(u.slice(o, f.index))(f[1], !0), o = f.index + f[0].length;
t(u.substr(o, u.length - o)), F += 'return r.join("");';
for (var i = "", a = 0, s = (D = isNaN(D.length) ? [D] : D).length; a < s; a++) i += new Function(F.replace(/[\r\t\n]/g, "")).apply(D[a]);
return i
}, u.utils = f
}(RCS), function (u) {
function D(u, D) {
for (var f in u) D(f, u[f])
}
function f(u, f) {
var e = "";
return D(f, function (u, D) {
"token" != u && (e += (e ? "&" : "") + encodeURIComponent(u) + "=" + encodeURIComponent(D))
}), e && (u += (u.indexOf("?") > 0 ? "&" : "?") + e), u
}
function e(u) {
if (null === u || void 0 === u) return "";
var D, f, e = u + "", n = "", F = 0;
D = f = 0, F = e.length;
for (var o = 0; o < F; o++) {
var t = e.charCodeAt(o), i = null;
if (t < 128) f++; else if (t > 127 && t < 2048) i = String.fromCharCode(t >> 6 | 192, 63 & t | 128); else if (63488 & t ^ !0) i = String.fromCharCode(t >> 12 | 224, t >> 6 & 63 | 128, 63 & t | 128); else {
if (64512 & t ^ !0) throw new RangeError("Unmatched trail surrogate at " + o);
var a = e.charCodeAt(++o);
if (64512 & a ^ !0) throw new RangeError("Unmatched lead surrogate at " + (o - 1));
t = ((1023 & t) << 10) + (1023 & a) + 65536, i = String.fromCharCode(t >> 18 | 240, t >> 12 & 63 | 128, t >> 6 & 63 | 128, 63 & t | 128)
}
null !== i && (f > D && (n += e.slice(D, f)), n += i, D = f = o + 1)
}
return f > D && (n += e.slice(D, F)), n
}
function n(u) {
var D, f, n, F, o, t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", i = 0, a = 0,
s = "", r = [];
if (!u) return u;
u = e(u + "");
do {
D = (o = u.charCodeAt(i++) << 16 | u.charCodeAt(i++) << 8 | u.charCodeAt(i++)) >> 18 & 63, f = o >> 12 & 63, n = o >> 6 & 63, F = 63 & o, r[a++] = t.charAt(D) + t.charAt(f) + t.charAt(n) + t.charAt(F)
} while (i < u.length);
switch (s = r.join(""), u.length % 3) {
case 1:
s = s.slice(0, -2) + "==";
break;
case 2:
s = s.slice(0, -1) + "="
}
return s
}
function F(u) {
return (u = n(u)).replace(/\//g, "_").replace(/\+/g, "-")
}
function o(u, D, f) {
var e = "/key/" + F(u.filename), n = "/fname/" + F(u.filename), o = {
domain: D.domain + "/mkfile/" + u.size + e + n,
method: "POST",
headers: {"Content-Type": "application/octet-stream"},
multi_parmas: D.multi_parmas,
support_options: !0,
stream: !0
};
i(u.ctx, o, {
onCompleted: function (D) {
D.filename = u.filename, D.name = u.name, f.onCompleted(D)
}, onError: function () {
throw new Error("qiniu uploadChunk error")
}, onProgress: function (u, D) {
}, onOpen: function (u) {
f.onOpen(u)
}
})
}
function t(u, f, e) {
var n = Math.ceil(d / f.chunk_size), F = Math.ceil(u.size / f.chunk_size),
a = Math.min(f.chunk_size, u.size - d), s = u.slice(d, d + a),
r = {chunk: n, chunks: F, name: u.uniqueName};
D(r, function (u, D) {
f.multi_parmas[u] = D
}), f.filesize = u.size, f.headers = {"Content-Type": "application/octet-stream"}, f.isChunk = !0, i(s, f, {
onCompleted: function (n) {
d += a, l[u.uniqueName] = l[u.uniqueName] || [], l[u.uniqueName].push(n.ctx), d < u.size ? n.ctx ? t(u, f, e) : (d = 0, delete l[u.uniqueName]) : (d = 0, delete f.isChunk, delete f.headers["Content-Type"], D(r, function (u, D) {
delete f.multi_parmas[u]
}), o({ctx: l[u.uniqueName].join(","), name: u.name, size: u.size, filename: u.uniqueName}, f, e))
}, onError: function () {
throw new Error("qiniu uploadChunk error")
}, onProgress: function (u, D) {
var n = u + d;
e.onProgress(n, f.filesize)
}, onOpen: function (u) {
e.onOpen(u)
}
})
}
function i(u, e, n) {
var F = new XMLHttpRequest;
F.upload && e.support_options && (F.upload.onprogress = function (u) {
n.onProgress(u.loaded, u.total)
}), F.onreadystatechange = function () {
if (4 == F.readyState) {
var u = F.responseText || "{}";
(u = JSON.parse(u)).filename = e.unique_value, n.onCompleted(u)
}
};
var o = e.domain;
e.isChunk && (o = f(o += "/mkblk/" + u.size, e.multi_parmas)), F.open(e.method, o, !0), n.onOpen(F), e.stream && F.setRequestHeader("authorization", "UpToken " + e.multi_parmas.token), D(e.headers, function (u, D) {
F.setRequestHeader(u, D)
}), F.send(u)
}
function a() {
var u = (new Date).getTime();
return "xxxxxx4xxxyxxxxxxx".replace(/[xy]/g, function (D) {
var f = (u + 16 * Math.random()) % 16 | 0;
return u = Math.floor(u / 16), ("x" == D ? f : 3 & f | 8).toString(16)
})
}
function s(u) {
var D = {
domain: "",
method: "POST",
file_data_name: "file",
unique_key: "key",
base64_size: 4194304,
chunk_size: 4194304,
headers: {},
multi_parmas: {},
query: {},
support_options: !0,
data: g.form,
genUId: a
};
if (!u || !u.domain) throw new Error("domain is null");
for (var f in u) D[f] = u[f];
return D
}
function r(u, D) {
for (var f in u) D(f, u[f])
}
function C(u) {
this.options = s(u), this.setOptions = function (u) {
var D = this;
r(u, function (u, f) {
D.options[u] = f
})
}, this.upload = function (u, D) {
if (u) {
var f = this;
E(u, this.options, {
onProgress: function (u, f) {
D.onProgress(u, f)
}, onCompleted: function (u) {
D.onCompleted(u)
}, onError: function (u) {
D.onError(u)
}, onOpen: function (u) {
f.xhr = u
}
})
} else D.onError("upload file is null.")
}, this.cancel = function () {
this.xhr && this.xhr.abort()
}
}
function c(u) {
return new C(u)
}
var d = 0, l = {}, E = function (u, D, f) {
if (u.size && D.chunk_size < u.size) {
var e = D.genUId(u);
e += u.name.substr(u.name.lastIndexOf(".")), u.uniqueName = e, D.stream = !0, t(u, D, f)
} else i(D.data(u, D), D, f)
}, g = {
form: function (u, D) {
var f = new FormData;
if (D.unique_key) {
var e = u.name.substr(u.name.lastIndexOf(".")), n = a() + e;
f.append(D.unique_key, n), D.unique_value = n
}
return f.append(D.file_data_name, u), r(D.multi_parmas, function (u, D) {
f.append(u, D)
}), f
}, json: function (u, D) {
var f = {};
if (D.unique_key) {
var e = u.name.substr(u.name.lastIndexOf(".")), n = a() + e;
f[D.unique_key] = n, D.unique_value = n
}
return f[D.file_data_name] = u, r(D.multi_parmas, function (u, D) {
f[u] = D
}), JSON.stringify(f)
}, data: function (u, D) {
return u
}
}, p = {
domain: "http://upload.qiniu.com", fileType: RongIMLib.FileType.IMAGE, getToken: function (u) {
RongIMClient.getInstance().getFileToken(this.fileType, {
onSuccess: function (D) {
u(D.token)
}, onError: function (u) {
console.log("获取上传token失败"), console.log(u)
}
})
}
}, m = function (u, D, f) {
var e, n, F, o = u < D, t = 0, i = 0;
return (o ? D / u : u / D) > f.scale ? (o ? (n = 100, i = ((F = D / (e = u / 100)) - f.maxHeight) / 2) : (F = 100, t = ((n = u / (e = D / 100)) - f.maxWidth) / 2), {
w: n,
h: F,
x: -t,
y: -i
}) : (o ? (e = D / f.maxHeight, F = f.maxHeight, n = u / e) : (e = u / f.maxWidth, n = f.maxWidth, F = D / e), {
w: n,
h: F,
x: -t,
y: -i
})
}, v = function (u) {
var D = window.URL || window.webkitURL;
return D ? D.createObjectURL(u) : ""
}, h = function (u, D, f) {
var e = document.createElement("canvas"), n = e.getContext("2d"), F = new Image;
F.onload = function () {
var o = m(F.width, F.height, D);
e.width = o.w > D.maxWidth ? D.maxWidth : o.w, e.height = o.h > D.maxHeight ? D.maxHeight : o.h, n.drawImage(F, o.x, o.y, o.w, o.h);
try {
var t = e.toDataURL(u.type, D.quality), i = new RegExp("^data:image/[^;]+;base64,");
t = t.replace(i, ""), f(t)
} catch (u) {
throw new Error(u)
}
}, F.src = "string" == typeof u ? "data:image/jpg;base64," + u : v(u)
}, b = function (u, D) {
var f = u.file, e = u.compress;
h(f, e, D)
};
_init = function (u, D) {
if (u.getToken) u.getToken(function (f) {
u.multi_parmas || (u.multi_parmas = {}), u.multi_parmas.token = f, u.headers || (u.headers = {}), u.base64 && (u.headers["Content-type"] = "application/octet-stream", u.headers.Authorization = "UpToken " + f);
var e = c(u);
D(e)
}); else {
u.headers || (u.headers = {}), u.base64 && (u.headers["Content-type"] = "application/octet-stream");
var f = c(u);
D(f)
}
};
var x = function (u, D, f) {
D.upload(u.file, {
onError: function (u) {
f.onError(u)
}, onProgress: function (u, D) {
f.onProgress(u, D)
}, onCompleted: function (D) {
D.filename || (D.filename = D.hash);
var e = u.compressThumbnail || b;
u.compress ? e(u, function (u) {
D.thumbnail = u, f.onCompleted(D)
}) : f.onCompleted(D)
}
})
}, B = function (u) {
var D = this;
this.instance = u, this.upload = function (u, f) {
x({file: u}, D.instance, f)
}, this.cancel = function () {
D.instance.cancel()
}
}, y = function (u, D) {
_init(u, function (u) {
var f = new B(u);
D(f)
})
}, M = function (u, D) {
var f = this;
this.cfg = D, this.instance = u, this.upload = function (u, D) {
var e = {file: u, compress: f.cfg};
x(e, f.instance, D)
}, this.cancel = function () {
f.instance.cancel()
}
}, k = function (u, D) {
_init(u, function (f) {
var e = {
maxHeight: u.height || 240,
maxWidth: u.width || 240,
quality: u.quality || .5,
scale: u.scale || 2.4
}, n = new M(f, e);
D(n)
})
}, w = {
file: function (u, D, f) {
y(D, function (D) {
D.upload(u, f)
})
}, image: function (u, D, f) {
k(D, function (D) {
D.upload(u, f)
})
}
};
u.imageStartUpload = function (u, D) {
var f = {
onError: function (u) {
console.log(u)
}, onProgress: function (u, D) {
}, onCompleted: function (u) {
u.fileType = "image", D(u)
}
};
w.image(u, p, f)
}, u.fileStartUpload = function (u, D) {
p.fileType = RongIMLib.FileType.FILE;
var f = {
onError: function (u) {
console.log(u)
}, onProgress: function (u, D) {
}, onCompleted: function (u) {
u.fileType = "file", D(u)
}
};
w.file(u, p, f)
}, u.fileConfig = p
}(RCS), function (u) {
u.getTemplates = function (D) {
var f = {
button: "templates/button.html",
chat: "templates/chat.html",
closebefore: "templates/closebefore.html",
conversation: "templates/conversation.html",
endconversation: "templates/endconversation.html",
evaluate: "templates/evaluate.html",
imageView: "templates/imageView.html",
leaveword: "templates/leaveword.html",
main: "templates/main.html",
message: "templates/message.html",
messageTemplate: "templates/messageTemplate.html",
userInfo: "templates/userInfo.html",
evaluateItem: "templates/evaluateItem.html"
}, e = {};
for (var n in f) {
var F = f[n], o = u.templateCache[F];
if (o) e[n] = o; else {
var t = new XMLHttpRequest;
t.open("get", F, !1), t.onreadystatechange = function () {
4 == t.readyState && 200 == t.status && (e[n] = t.responseText)
}, t.send(null)
}
}
return e
}
}(RCS), function (u) {
var D = {
init: function () {
RongIMLib.RongIMEmoji.init()
}, emojiToHTML: function (u) {
return RongIMLib.RongIMEmoji.emojiToHTML(u, 24)
}, symbolToEmoji: function (u) {
return RongIMLib.RongIMEmoji.symbolToEmoji(u)
}, getEmoji: function () {
return RongIMLib.RongIMEmoji.list.map(function (u) {
return u.node
})
}
};
u.emoji = D
}(RCS), function (u) {
function D(u) {
return 0 === u.length ? "" : (u = e.encodeHtmlStr(u), u = e.replaceUri(u, function (u, D) {
var f = u;
return D || (f = "http://" + u), '<a class="rong-link-site" target="_blank" href="' + f + '">' + u + "</a>"
}), u = e.replaceEmail(u, function (u) {
return '<a class="rong-link-email" href="mailto:' + u + '">' + u + "<a>"
}), n.emojiToHTML(u, 18))
}
function f(u) {
if (!r(".rongcloud-errorInfo")[0]) {
var D = document.createElement("div");
D.className = "rongcloud-errorInfo", D.innerText = u, r(".rcs-chat-wrapper")[0].appendChild(D), e.fadein(r(".rongcloud-errorInfo")[0]), setTimeout(function () {
e.fadeout(r(".rongcloud-errorInfo")[0]), setTimeout(function () {
r(".rcs-chat-wrapper")[0].removeChild(D)
}, 500)
}, 1e3)
}
}
var e = u.utils, n = u.emoji, F = e.render, o = {};
o.lastSendTime = 0, o.lastInputTime = 0, o.evaluateStatus = !0, o.closeStatus = 1, o.messageContent = [], o.evaluateFormValue = {}, o.evaluateFormValue.isresolve = 1;
var t, i = null, a = {}, s = {}, r = e.$, C = !1, c = 0, d = function (D) {
s = u.getTemplates(), D && D()
}, l = function () {
var u = r(".rongcloud-text")[0], D = u.value;
D && (D = n.symbolToEmoji(D), p(new RongIMLib.TextMessage({
content: D,
extra: "附加信息"
})), u.value = "", u.focus())
}, E = function () {
var u = (new Date).getTime() - o.lastSendTime;
u > 6e3 && (o.lastSendTime += u, g())
}, g = function () {
if (o.targetType == RongIMLib.ConversationType.CUSTOMER_SERVICE) {
var u = new RongIMLib.TypingStatusMessage({typingContentType: "RC:TxtMsg", data: null});
p(u, function () {
})
}
}, p = function (u, D) {
var f = o.id;
RongIMClient.getInstance().sendMessage(o.targetType, f, u, {
onSuccess: function (u) {
console.log(u), console.log("Send successfully"), D && D(), D || m(u)
}, onError: function (u, D) {
var f = "";
switch (u) {
case RongIMLib.ErrorCode.TIMEOUT:
f = "超时";
break;
case RongIMLib.ErrorCode.UNKNOWN_ERROR:
f = "未知错误";
break;
case RongIMLib.ErrorCode.REJECTED_BY_BLACKLIST:
f = "在黑名单中,无法向对方发送消息";
break;
case RongIMLib.ErrorCode.NOT_IN_DISCUSSION:
f = "不在讨论组中";
break;
case RongIMLib.ErrorCode.NOT_IN_GROUP:
f = "不在群组中";
break;
case RongIMLib.ErrorCode.NOT_IN_CHATROOM:
f = "不在聊天室中";
break;
default:
f = x
}
console.log("发送失败:" + f)
}
})
}, m = function (u) {
o.messageContent.push(u);
var D = y(e.cloneObj(u));
1 != u.messageDirection && C && v(D);
var f = r(".rcs-message-box")[0];
if (f) {
if (D.sentTime - o.lastSendTime >= 6e4) {
var n = {};
n.content = {}, n.messageType = "TimeMessage", n.sentTime = e.getTime(D.sentTime), f.innerHTML += F(s.messageTemplate, n), o.lastSendTime = D.sentTime
}
f.innerHTML += F(s.messageTemplate, D), f.scrollTop = f.scrollHeight
}
}, v = function (D) {
if ("pc" == t) {
var f = {
body: "您有一条新消息,请及时回复",
icon: D.content.user && D.content.user.icon ? D.content.user.icon : u.config.csIcon
}, e = new Notification("客服消息提醒", f);
e.onclick = function (u) {
window.focus(), e.close()
}, e.onshow = function () {
setTimeout(function () {
e.close()
}, 5e3)
}
}
}, h = function (u) {
var D = {showConversitionList: u.showConversitionList};
D.showConversitionList && (D.conversationList = F(s.conversation, u.customers)), r(".customer-service")[0].innerHTML = F(s.main, D);
for (var f = r(".rong-conversation"), e = 0; e < f.length; e++) f[e].onclick = function () {
o.id != this.getAttribute("_cid") && (o.id = this.getAttribute("_cid"), k(o.id))
}
}, b = function (u) {
o.targetType = RongIMLib.ConversationType.CUSTOMER_SERVICE;
r(".rcs-chat-wrapper")[0];
var D = {}, f = {};
f.firstEnter = !0, D.messageList = F(s.message, f), D.evaEntryPoint = o.evaEntryPoint, D.terminal = t, D.announce = o.announce, r(".rcs-chat-wrapper")[0].innerHTML = F(s.chat, D);
for (var e = n.getEmoji(), i = "", a = 0; a < e.length; a++) i += '<div class="emojiItem">' + e[a].outerHTML + "</div>";
r(".rongcloud-expressionContent")[0].innerHTML += i;
B(u, 0, 2, function (u, D) {
(D || 0 != u.length) && (r(".rongcloud-Messages-history")[0].style.display = "block")
})
}, B = function (u, D, f, e) {
var n = RongIMLib.ConversationType.CUSTOMER_SERVICE, F = u;
RongIMLib.RongIMClient.getInstance().getHistoryMessages(n, F, D, f, {
onSuccess: function (u, D) {
console.log(u), o.messageContent = u.concat(o.messageContent), e(u, D)
}, onError: function (u) {
console.log("GetHistoryMessages,errorcode:" + u)
}
})
}, y = function (u) {
return "TextMessage" == u.messageType ? u.content.content = D(u.content.content) : "FileMessage" == u.messageType ? u.content.size = e.getFileSize(u.content.size) : "InfoNtf" == u.messageType ? u.messageType = "InformationNotificationMessage" : "VoiceMessage" == u.messageType ? RongIMLib.RongIMVoice.preLoaded(u.content.content) : "PullLeaveMessage" == u.messageType && (u.messageType = "AlertMessage", u.content.content = u.content.content.replace("留言", '<a class="leavemessageHref" onclick="RCS.leavemessage()">留言</a>')), u
}, M = function (u) {
for (var D = JSON.parse(JSON.stringify(u)), f = [], n = 0; n < D.length; n++) {
var F = {sentTime: e.getTime(D[n].sentTime), messageType: "TimeMessage"};
["TextMessage", "FileMessage", "InfoNtf", "ImageMessage", "InformationNotificationMessage", "VoiceMessage", "PullLeaveMessage"].indexOf(D[n].messageType) >= 0 && (D[n] = y(D[n]), 0 == n ? f.push(F) : D[n].sentTime - D[n - 1].sentTime >= 6e3 && f.push(F), f.push(D[n]))
}
return f
}, k = function (D) {
RongIMLib.RongIMClient.getInstance().startCustomService(D, {
onSuccess: function () {
console.log("客服初始化成功"), o.connect = !0
}, onError: function () {
}
}, u.config.extraInfo)
}, w = function (u) {
console.log(o.id), RongIMLib.RongIMClient.getInstance().stopCustomeService(o.id, {
onSuccess: function () {
o.connect = !1, console.log("客服断开成功"), u && u()
}, onError: function (u) {
console.log("errorcode")
}
})
}, S = function (u) {
"robot" == u ? (o.serviceState = "robot", e.hide(r(".rongcloud-mode1")[0]), e.show(r(".rongcloud-mode2")[0])) : (o.serviceState = "people", e.hide(r(".rongcloud-mode2")[0]), e.show(r(".rongcloud-mode1")[0]))
}, I = function (u) {
o.evaluate = u.content.data.satisfaction;
var D = null;
switch (u.content.data.status) {
case 1:
S("people");
break;
case 2:
S("robot");
break;
case 3:
D = "你被拉黑了";
break;
case 4:
D = "已经是人工了"
}
return D
}, T = function (u) {
var D = {};
D.sentTime = (new Date).getTime(), D.content = {}, D.messageType = "TextMessage", D.content.content = u.robotWelcome, D.content.user = {}, D.content.user.icon = u.robotIcon, D.content.user.name = u.robotName, console.log(D), m(D)
}, R = function (u) {
var D = {};
D.sentTime = (new Date).getTime(), D.content = {}, D.messageType = "InformationNotificationMessage", D.content.message = u, console.log(D), m(D)
}, A = {
file: function (D) {
if (u.config.upload && u.config.upload.isPrivate) {
1 == D.rc_url.type ? D.downloadUrl = D.rc_url.path : D.downloadUrl = u.config.upload.fileServer + D.rc_url.path;
var f = z[D.fileType](D);
p(f)
} else {
var e = RongIMLib.FileType.FILE;
RongIMClient.getInstance().getFileUrl(e, D.filename, D.name, {
onSuccess: function (u) {
D.downloadUrl = u.downloadUrl;
var f = z[D.fileType](D);
p(f)
}, onError: function (u) {
showResult("getFileToken error:" + u)
}
})
}
}, image: function (D) {
if (u.config.upload && u.config.upload.isPrivate) {
1 == D.rc_url.type ? D.downloadUrl = D.rc_url.path : D.downloadUrl = u.config.upload.fileServer + D.rc_url.path;
var f = z[D.fileType](D);
p(f)
} else {
var e = RongIMLib.FileType.IMAGE;
RongIMClient.getInstance().getFileUrl(e, D.filename, null, {
onSuccess: function (u) {
D.downloadUrl = u.downloadUrl;
var f = z[D.fileType](D);
p(f)
}, onError: function (u) {
console.log(u)
}
})
}
}
}, z = {
file: function (u) {
var D = u.name || "", f = D.lastIndexOf(".") + 1, e = D.substring(f);
return new RongIMLib.FileMessage({name: u.name, size: u.size, type: e, fileUrl: u.downloadUrl})
}, image: function (u) {
return new RongIMLib.ImageMessage({content: u.thumbnail, imageUri: u.downloadUrl})
}
}, L = function (u) {
A[u.fileType](u)
}, N = function (u) {
u ? "people" == o.serviceState ? r(".rcs-chat-wrapper")[0].innerHTML += e.render(s.evaluate, o.evaluate[0]) : H(!1) : 1 == o.closeStatus ? r(".rcs-chat-wrapper")[0].innerHTML += s.endconversation : 2 == o.closeStatus ? (e.removeNode(".rongcloud-leavemessage"), o.closeStatus = 1) : 3 == o.closeStatus && (w(), j(), o.closeStatus = 1)
}, j = function () {
r(".rcs-chat-wrapper")[0].innerHTML = "", e.hide(r(".customer-service")[0]), o.lastSendTime = 0, o.announce = {}, o.messageContent = [], o.evaluateFormValue = {}
}, O = function () {
e.removeNode(".rongcloud-layermbox")
}, H = function (u) {
var D = function () {
O(), r(".rcs-chat-wrapper")[0].innerHTML += s.closebefore
};
if (u) {
if (!_()) return;
1 != o.evaluate[0].isQuestionFlag && (o.evaluateFormValue.isresolve = -1);
for (var f = 0, e = r(".satisfaction-star"), n = 0; n < e.length; n++) -1 != e[n].className.indexOf("satisfaction-star-selected") && (f += 1);
o.evaluateFormValue.source = f, o.evaluateFormValue.type = 1;
var F = new RongIMClient.RegisterMessage.EvaluateMessage(o.evaluateFormValue);
console.log(F), console.log(o.evaluateFormValue), RongIMClient.getInstance().sendMessage(o.targetType, o.id, F, {
onSuccess: function () {
console.log("发送评价消息成功"), D()
}, onError: function () {
}
})
} else D()
}, _ = function () {
for (var u = r(".rongcloud-tag-item"), D = [], e = 0; e < u.length; e++) -1 != u[e].className.indexOf("rongcloud-group-tag-active") && D.push(u[e].innerText);
return o.evaluateFormValue.tag = D.join(), o.evaluateFormValue.suggest = r(".rongcloud-evaluate-suggest")[0] ? r(".rongcloud-evaluate-suggest")[0].value : "", o.evaluateFormValue.isTagMust && !o.evaluateFormValue.tag ? (f("请选择存在的问题"), !1) : !(o.evaluateFormValue.isInputMust && !o.evaluateFormValue.suggest) || (f("请输入评价内容"), !1)
}, U = function () {
o.evaluateStatus = !1, r(".rcs-chat-wrapper")[0].innerHTML += e.render(s.evaluate, o.evaluate[0])
}, P = function (u) {
o.closeStatus = u ? 3 : 2;
var D = {};
D.list = o.formList, r(".rcs-chat-wrapper")[0].innerHTML += F(s.leaveword, D)
}, V = function (u, D) {
var f = {email: "^([0-9A-Za-z-_.]+)@([0-9a-z]+.[a-z]{2,3}(.[a-z]{2})?)$", phone: "^1\\d{10}$"},
n = D.target || D.srcElement ? D.target || D.srcElement : D, F = n.value, t = "", i = o.formList;
i[u].required && (F || (t = i[u].message[0])), F && i[u].verification && (new RegExp(f[i[u].verification]).test(F) || (t = i[u].message[1])), F && i[u].max && F.length > i[u].max && (t = i[u].message[2]);
var a = n.nextElementSibling;
return t ? (a.innerHTML = t, e.show(a), !1) : (a.innerHTML = "", e.hide(a), !0)
}, q = function (u) {
var D = {
name: "^[一-龥A-Za-z0-9]+$",
phone: "^1[3|4|5|7|8][0-9]{9}$",
email: "^([0-9A-Za-z-_.]+)@([0-9a-z]+.[a-z]{2,3}(.[a-z]{2})?)$"
}, f = u.target || u.srcElement ? u.target || u.srcElement : u, n = f.value, F = f.getAttribute("name"),
o = f.getAttribute("data-label"), t = f.getAttribute("data-required"), i = f.getAttribute("data-pattern"),
a = "";
"required" == t && (n || (a = o + "不能为空")), n && i && (new RegExp(D[F]).test(n) || (a = i)), n && "name" == F && n.length > 20 && (a = i), n && "email" == F && n.length > 30 && (a = i);
var s = f.nextElementSibling;
return a ? (s.innerHTML = a, e.show(s), !1) : (s.innerHTML = "", e.hide(s), !0)
}, W = function (u) {
e.removeNode(".userInfoModel");
var D = {};
D.list = u.content.content.fields, a.formid = u.content.content.formid, a.submiturl = u.content.content.submiturl, a.data = [], a.wid = 1;
for (var f = 0; f < D.list.length; f++) {
var n = {};
n.name = D.list[f].name, a.data.push(n)
}
r(".rcs-chat-wrapper")[0].innerHTML += F(s.userInfo, D)
}, G = function () {
var u = new RongIMLib.MessageTag(!0, !0);
RongIMLib.RongIMClient.registerMessageType("PullEvaMessage", "RC:CsPullEva", u, ["content"]), RongIMLib.RongIMClient.registerMessageType("EvaluateMessage", "RC:CsEva", u, ["sid", "pid", "uid", "source", "isresolve", "tag", "suggest", "type"]), RongIMLib.RongIMClient.registerMessageType("PullLeaveMessage", "RC:CsPLM", u, ["content"]), RongIMLib.RongIMClient.registerMessageType("LeaveMessage", "RC:CsLm", u, ["msg_content", "msg_email", "msg_name", "msg_tel"]), RongIMLib.RongIMClient.registerMessageType("CollectUserInfo", "RC:CsCEI", u, ["content", "user"]), RongIMLib.RongIMClient.registerMessageType("UserInfo", "RC:CsEI", u, ["content"]), RongIMLib.RongIMClient.registerMessageType("DownloadHistoryMessage", "RC:CsDHM", u, ["begin"]), RongIMLib.RongIMClient.registerMessageType("HistoryMessage", "RC:CsHM", u, ["fileUrl", "name", "size", "type"])
}, K = function (D, f) {
if (0 != window.navigator.onLine) {
if (2 == c) return o.connect || (D.connectingCallback && D.connectingCallback(), f.getInstance && f.getInstance(RongIMClient.getInstance()), o.id = D.customerServiceId), void $(D);
if (1 != c) {
var n = 0;
c = 1, D.connectingCallback && D.connectingCallback();
var F = D.appKey, t = D.token, i = D.navi || "";
if ("" !== i) {
var a = {navi: i};
console.log("私有云"), console.log(D), RongIMLib.RongIMClient.init(F, null, a)
} else console.log("公有云"), console.log(D), RongIMLib.RongIMClient.init(F);
u.config.upload && u.config.upload.fileServer && (u.fileConfig.domain = u.config.upload.fileServer);
var s = RongIMClient.getInstance();
RongIMClient.setConnectionStatusListener({
onChanged: function (u) {
console.log(u);
var e = r(".rcs-connect-status")[0];
switch (e && (e.style.display = "block"), u) {
case RongIMLib.ConnectionStatus.CONNECTED:
e && (e.style.display = "none"), c = 2, n++, f.getInstance && f.getInstance(s);
break;
case RongIMLib.ConnectionStatus.CONNECTING:
console.log("正在链接");
break;
case RongIMLib.ConnectionStatus.DISCONNECTED:
console.log("断开连接"), c = 0, D.disconnectedCallback && D.disconnectedCallback();
break;
case RongIMLib.ConnectionStatus.KICKED_OFFLINE_BY_OTHER_CLIENT:
console.log("其他设备登录"), c = 0, D.disconnectedCallback && D.disconnectedCallback();
break;
case RongIMLib.ConnectionStatus.DOMAIN_INCORRECT:
console.log("域名不正确"), c = 0, D.disconnectedCallback && D.disconnectedCallback();
break;
case RongIMLib.ConnectionStatus.NETWORK_UNAVAILABLE:
console.log("网络不可用");
break;
case RongIMLib.ConnectionStatus.DISCONNECTED:
console.log("断开连接"), c = 0, D.disconnectedCallback && D.disconnectedCallback();
break;
case 4:
console.log("token无效"), c = 0, D.disconnectedCallback && D.disconnectedCallback();
break;
default:
console.log("未知错误"), c = 0, D.disconnectedCallback && D.disconnectedCallback()
}
}
}), RongIMClient.setOnReceiveMessageListener({
onReceived: function (u) {
if (console.log("新消息: " + u.targetId), !u.offLineMessage) {
console.log(u);
var n = null;
switch (u.messageType) {
case"HandShakeResponseMessage":
D.connectedCallback && D.connectedCallback(), J(u), b(o.id), 1 == u.content.data.serviceType || 3 == u.content.data.serviceType ? (u.content.data.robotWelcome && T(u.content.data), S("robot")) : S("people"), 1 == u.content.data.isblack && (console.log(u.content.data.isblack), P(!0));
break;
case"ChangeModeResponseMessage":
n = I(u);
break;
case"TerminateMessage":
if (r(".imageViewBox")[0] && e.fadeout(r(".imageViewBox")[0]), r(".rongcloud-layermbox")[0]) return;
if (!o.connect) return;
0 == u.content.code || 3 == o.evaEntryPoint ? N(!0) : S("robot");
break;
case"CustomerStatusUpdateMessage":
S("people");
break;
case"InformationNotificationMessage":
case"InfoNtf":
m(u);
break;
case"SuspendMessage":
w(), j();
break;
case"PullEvaMessage":
U();
break;
case"CollectUserInfo":
W(u);
break;
case"HistoryMessage":
var F = u.content.fileUrl, t = u.content.name;
e.downloadHistoryMsgFile(F, t);
break;
case"TextMessage":
case"ImageMessage":
case"FileMessage":
case"VoiceMessage":
case"PullLeaveMessage":
m(u);
break;
default:
f.receiveNewMessage && f.receiveNewMessage(u)
}
n && (console.log(n), R(n))
}
}
}), RongIMClient.connect(t, {
onSuccess: function (u) {
f.getCurrentUser && f.getCurrentUser({userId: u}), console.log("链接成功,用户id:" + u), 1 == n && f.enterConversation && f.enterConversation(), n++
}, onTokenIncorrect: function () {
console.log("token无效"), D.disconnectedCallback && D.disconnectedCallback()
}, onError: function (u) {
console.log("============================================="), console.log(u), D.disconnectedCallback && D.disconnectedCallback()
}
})
}
} else D.disconnectedCallback && D.disconnectedCallback()
}, J = function (u) {
if (u.content.data.leaveMsgConf && u.content.data.leaveMsgConf.defaultConf && (o.formList = u.content.data.leaveMsgConf.defaultConf), o.announce = {
announceMsgFlag: u.content.data.announceMsgFlag,
announceMsg: u.content.data.announceMsg,
announceClickFlag: u.content.data.announceClickFlag,
announceClickUrl: u.content.data.announceClickUrl
}, o.evaluateFormValue.uid = u.content.data.uid, o.evaluateFormValue.pid = u.content.data.pid, o.evaluateFormValue.sid = u.content.data.sid, 1 == u.content.data.needTypSts && (o.needTypSts = 1), u.content.data.evaConf) switch (u.content.data.evaConf.evaEntryPoint) {
case 1:
o.evaEntryPoint = 1;
break;
case 2:
o.evaEntryPoint = 2;
break;
case 3:
o.evaEntryPoint = 3
}
}, $ = function (u) {
var D = {showButton: u.showButton};
r(".customer-service")[0] || (u.target.innerHTML = F(s.button, D)), o.connect ? Q() : (h(u), Z(), u.showButton || Q())
}, Z = function () {
e.browserRedirect(function (u) {
t = u
}), "pc" == t ? (document.body.onclick = function () {
r(".rongcloud-text")[0];
Y()
}, "granted" === Notification.permission ? C = !0 : "denied" !== Notification.permission && Notification.requestPermission(function (u) {
"granted" === u && (C = !0)
})) : document.body.ontouchstart = function (u) {
if (u.target.className.indexOf("emojiItem") < 0 && u.target.className.indexOf("rong-emoji-content") < 0 && u.target.className.indexOf("rongcloud-expressionContent") < 0 && Y(), u.target.className.indexOf("rongcloud-rong-btn") < 0 && u.target.className.indexOf("rongcloud-text") < 0) {
var D = r(".rongcloud-text")[0];
D && D.blur()
}
}, window.addEventListener("message", function (u) {
"https://web.jiaxincloud.com" == u.origin && "success" == u.data && e.removeNode(".rongcloud-leavemessage")
}, !1), window.onbeforeunload = function (u) {
w()
}
}, Y = function () {
var u = r(".rongcloud-expressionWrap")[0];
u && e.hide(u)
}, Q = function () {
o.connect ? "none" != r(".customer-service")[0].style.display ? e.hide(r(".customer-service")[0]) : (e.show(r(".customer-service")[0]), r(".rcs-chat-wrapper")[0] || (h(o.id), b(o.id))) : (console.log(o.id), k(o.id), e.show(r(".customer-service")[0]))
};
u.init = function (D) {
u.config = D, K(D, {
getInstance: function (D) {
d(function () {
if (u.config.templates) for (var D in u.config.templates) {
if (!u.config.showButton && "button" == D) break;
s[D] = u.config.templates[D]
}
}), n.init(), RongIMLib.RongIMVoice.init(), G()
}, getCurrentUser: function (u) {
console.log(u.userId)
}, enterConversation: function () {
o.id = D.customerServiceId, $(D)
}
})
}, u.send = l, u.keySend = function (u) {
"13" != u.keyCode || u.shiftKey ? 1 == o.needTypSts && E() : (u.preventDefault(), l())
}, u.showemoji = function (u) {
u.stopPropagation();
var D = r(".rongcloud-expressionWrap")[0];
"none" == D.style.display ? e.show(D) : e.hide(D)
}, u.chooseEmoji = function (u) {
u.stopPropagation();
var D = r(".rongcloud-expressionWrap")[0], f = u.target || u.srcElement, n = r(".rongcloud-text")[0];
"RC_Expression" == f.className && (f = f.parentNode);
var F = f.getAttribute("name");
F && (n.value += F, e.hide(D), "pc" == t && (n.focus(), range = document.createRange(), range.selectNodeContents(n), range.collapse(!0), range.setEnd(n, n.childNodes.length), range.setStart(n, n.childNodes.length), sel = window.getSelection(), sel.removeAllRanges(), sel.addRange(range)))
}, u.loadHisMessages = function () {
B(o.id, null, 20, function (u, D) {
var f = r(".rcs-message-box")[0], e = {};
e.hasMore = D, e.list = M(o.messageContent);
var n = f.scrollHeight;
f.innerHTML = F(s.message, e);
var t = f.scrollHeight;
f.scrollTop = t - n
})
}, u.scrollBottom = function () {
var u = r(".rcs-message-box")[0];
u.scrollTop = u.scrollHeight
}, u.imgUpload = function (D) {
for (var f = D.target || D.srcElement, e = f.files, n = 0; n < e.length; n++) u.imageStartUpload(e[n], function (u) {
console.log("文件上传完成:", u), L(u)
});
f.value = ""
}, u.fileUpload = function (D) {
for (var f = D.target || D.srcElement, e = f.files, n = 0; n < e.length; n++) u.fileStartUpload(e[n], function (u) {
console.log("文件上传完成:", u), L(u)
});
f.value = ""
}, u.switchPerson = function () {
console.log(o.id), RongIMLib.RongIMClient.getInstance().switchToHumanMode(o.id, {
onSuccess: function () {
console.log("转人工成功")
}, onError: function () {
}
})
}, u.endConversation = N, u.play = function (u, D) {
RongIMLib.RongIMVoice.stop();
var f = u.target || u.srcElement;
if (-1 != f.className.indexOf("rongcloud-animate")) f.className = f.className.replace(" rongcloud-animate", ""), clearTimeout(i); else {
var e = f.parentNode.querySelector(".rongcloud-audioState");
if (e && e.parentNode.removeChild(e), i) {
clearTimeout(i);
for (var n = r(".rongcloud-audioBox"), F = 0; F < n.length; F++) n[F].className = "rongcloud-audioBox rongcloud-clearfix"
}
RongIMLib.RongIMVoice.play(D.content, D.duration), f.className = f.className + " rongcloud-animate", i = setTimeout(function () {
f.className = f.className.replace(" rongcloud-animate", "")
}, 1e3 * D.duration)
}
}, u.playVideo = function (u) {
var D = u.currentTarget.querySelector("video"), f = u.currentTarget.querySelector(".play-btn");
D.paused ? (D.play(), f.style.display = "none") : (D.pause(), f.style.display = "block"), D.onended = function () {
f.style.display = "block"
}
}, u.minimize = function () {
e.hide(r(".customer-service")[0])
}, u.showCommon = Q, u.confirm = function () {
O(), "people" == o.serviceState ? r(".rcs-chat-wrapper")[0].innerHTML += e.render(s.evaluate, o.evaluate[0]) : H(!1)
}, u.close = O, u.evaluate = H, u.star = function (u) {
for (var D = r(".satisfaction-star"), f = 0; f < D.length; f++) D[f].className = "satisfaction-star", f < u && (D[f].className = "satisfaction-star satisfaction-star-selected");
var n = o.evaluate[u - 1];
5 == u ? n.labelNameArray = [] : (o.evaluateFormValue.isTagMust = n.isTagMust, o.evaluateFormValue.isInputMust = n.isInputMust, n.labelNameArray = n.labelName.split(",")), r(".rongcloud-evaluate-tag")[0].innerHTML = e.render(s.evaluateItem, n)
}, u.startEvaluate = function (u) {
u.target || u.srcElement;
U()
}, u.leavemessage = P, u.leaveMessageComfirm = function (u) {
u.preventDefault();
for (var D = [], f = 0; f < o.formList.length; f++) D.push(o.formList[f].name);
for (var n = !0, f = 0; f < D.length; f++) {
var F = document.getElementsByName(D[f])[0];
V(f, F) || (n = !1)
}
if (n) {
var t = e.getFormValue(D), i = new RongIMClient.RegisterMessage.LeaveMessage(t);
p(i, function () {
w(), j()
})
}
}, u.validateUserInfo = q, u.validateLeaveMessage = V, u.viewImage = function (u) {
var D = {imageUrl: (u.target || u.srcElement).getAttribute("data-img")};
r(".imageViewBox")[0].innerHTML = F(s.imageView, D), e.fadein(r(".imageViewBox")[0])
}, u.escImageView = function () {
r(".imageViewBox")[0].innerHTML = "", e.fadeout(r(".imageViewBox")[0])
}, u.userInfoClose = function () {
e.removeNode(".userInfoModel"), a = {}
}, u.userInfoConfirm = function (u) {
u.preventDefault();
for (var D = [], f = 0; f < a.data.length; f++) D.push(a.data[f].name);
for (var n = !0, f = 0; f < D.length; f++) {
var F = document.getElementsByName(D[f])[0];
q(F) || (n = !1)
}
if (n) {
for (var o = e.getFormValue(D), f = 0; f < a.data.length; f++) a.data[f].value = o[a.data[f].name];
var t = {};
t.content = a;
var i = new RongIMClient.RegisterMessage.UserInfo(t);
a = {}, p(i, function () {
e.removeNode(".userInfoModel")
})
}
}, u.getHistoryMsgFile = function () {
var u = new RongIMClient.RegisterMessage.DownloadHistoryMessage({begin: 0});
p(u, function () {
})
}, u.keyboard = function (u) {
var D = u.target || u.srcElement;
setTimeout(function () {
D.scrollIntoView(!0)
}, 500)
}, u.chatEnd = function () {
w(), j()
}, u.openNotice = function (u) {
window.open(u)
}, u.isresolve = function (u, D) {
o.evaluateFormValue.isresolve = D;
for (var f = u.target || u.srcElement, e = r(".rongcloud-solve-tag"), n = 0; n < e.length; n++) e[n].className = "rongcloud-group-tag rongcloud-solve-tag";
f.className = "rongcloud-group-tag rongcloud-solve-tag rongcloud-solve-active"
}, u.tagClick = function (u) {
var D = u.target || u.srcElement;
-1 != D.className.indexOf("rongcloud-group-tag-active") ? D.className = "rongcloud-group-tag rongcloud-tag-item" : D.className = "rongcloud-group-tag rongcloud-tag-item rongcloud-group-tag-active"
}
}(RCS), RCS.templateCache = {
"templates/button.html": '\x3c!-- class="customer-service"主页面容器,类名不能修改 --\x3e\r\n<div class="rongcloud-consult">\r\n <button onclick="RCS.showCommon()"><span>咨询客服</span></button>\r\n</div>\r\n<div class="customer-service" style="display: none;"></div>',
"templates/chat.html": '\x3c!-- \r\nclass="rongcloud-text"消息输入框; \r\nclass="rongcloud-expressionContent"表情容器;\r\nclass="rcs-message-box"消息列表容器;\r\nclass="rongcloud-Messages-history"查看更多消息按钮;\r\nclass="rongcloud-mode1"、class="rongcloud-mode2"人工、机器人转换按钮的容器(机器人状态时,rongcloud-mode1隐藏,rongcloud-mode1显示);\r\nclass="rcs-connect-status"connect断开时,状态显示的容器\r\nclass="imageViewBox"图片预览容器\r\n以上类名不能被修改\r\n --\x3e\r\n<div class="rongcloud-kefuChat">\r\n <div id="header" class="rongcloud-rong-header rongcloud-blueBg rongcloud-online">\r\n {%if(this.terminal == \'phone\'){%}\r\n <span class="rongcloud-phone-exit" onclick="RCS.endConversation()"></span>\r\n <div class="rongcloud-phone-infoBar">\r\n <span class="rongcloud-phone-kefuName">客服</span>\r\n </div>\r\n {%}else{%}<div class="rongcloud-infoBar rongcloud-pull-left">\r\n <div class="rongcloud-infoBarTit">\r\n <span class="rongcloud-kefuName">客服</span>\r\n </div>\r\n </div>\r\n <div class="rongcloud-toolBar rongcloud-headBtn rongcloud-pull-right">\r\n <div class="rongcloud-voice"></div>\r\n <a onclick="RCS.minimize()" class="rongcloud-kefuChatBoxHide rongcloud-sprite" title="隐藏"></a>\r\n <a onclick="RCS.endConversation()" class="rongcloud-kefuChatBoxClose rongcloud-sprite" title="结束对话"></a>\r\n </div>{%}%}\r\n </div>\r\n <div class="rongcloud-box">\r\n <div class="rongcloud-outlineBox rcs-connect-status" style="display:none;">\r\n <div class="rongcloud-sprite"></div>\r\n <span>连接断开,请刷新重连</span>\r\n </div>\r\n {%if(this.announce.announceMsgFlag == 1){%}\r\n <div class="rongcloud-noticeBox {%if(this.announce.announceClickFlag == 1){%} rongcloud-link {%}%}" {%if(this.announce.announceClickFlag == 1){%} onclick=\'RCS.openNotice({%JSON.stringify(this.announce.announceClickUrl)%})\' {%}%}>\r\n <div class="rongcloud-notice-horn"></div>\r\n <span class="rongcloud-noticeBox-content">{%this.announce.announceMsg%}</span>\r\n {%if(this.announce.announceClickFlag == 1){%}<div class="rongcloud-notice-link"></div>{%}%}\r\n </div>\r\n {%}%}\r\n </div>\r\n \r\n <div id="rcs-message-list" class="rcs-message-box {%if(this.announce.announceMsgFlag == 1){%} rongcloud-hasNotice {%}%}">\r\n {%this.messageList%}\r\n </div>\r\n\r\n <div id="rcs-chat-box" class="rongcloud-rong-footer">\r\n <div class="rongcloud-footer-con">\r\n <div class="rongcloud-text-layout">\r\n <div id="funcPanel" class="rongcloud-funcPanel rongcloud-robotMode">\r\n <div class="rongcloud-MessageForm-tool" id="expressionWrap" style="overflow: visible;">\r\n <i class="rongcloud-sprite rongcloud-iconfont-smile" onclick="RCS.showemoji(event)"></i>\r\n <div class="rongcloud-expressionWrap" onclick="RCS.chooseEmoji(event)" style="display: none;">\r\n <div class="rongcloud-expressionContent"></div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-mode1" style="display: none;">\r\n <div class="rongcloud-MessageForm-tool">\r\n <i class="rongcloud-sprite rongcloud-iconfont-upload" id="upload-image">\r\n <input type="file" multiple="multiple" accept="image/png,image/gif,image/jpeg" onchange="RCS.imgUpload(event)"></input>\r\n </i>\r\n </div>\r\n \x3c!-- <div class="rongcloud-MessageForm-tool">\r\n <i class="rongcloud-sprite rongcloud-iconfont-file" id="upload-file">\r\n <input type="file" multiple="multiple" onchange="RCS.fileUpload(event)"></input>\r\n </i>\r\n </div> --\x3e\r\n \x3c!-- <div class="rongcloud-MessageForm-tool">\r\n <i class="rongcloud-sprite rongcloud-iconfont-download" id="download-his" onclick="RCS.getHistoryMsgFile()">\r\n </i>\r\n </div> --\x3e\r\n {%if(this.evaEntryPoint == 1){%}\r\n <div class="rongcloud-MessageForm-tool">\r\n <i class="rongcloud-sprite rongcloud-iconfont-evaluate" onclick="RCS.startEvaluate(event)">\r\n </i>\r\n </div>{%}%}\r\n </div>\r\n <div class="rongcloud-mode2"><a onclick="RCS.switchPerson()" id="chatSwitch" class="rongcloud-chatSwitch">转人工服务</a></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-footer-input">\r\n <div class="rongcloud-footer-textarea"">\r\n <textarea class="rongcloud-text rongcloud-grey" placeholder="请输入文字..." onfocus="RCS.keyboard(event)" onkeydown="RCS.keySend(event)"></textarea>\r\n </div>\r\n <button type="button" style="background-color: #0099ff;" class="rongcloud-rong-btn rongcloud-rong-send-btn" id="rong-sendBtn" onclick="RCS.send(event)">发送</button>\r\n </div>\r\n </div>\r\n</div>\r\n<div class="rebox imageViewBox" onclick="RCS.escImageView()" style="display: none;">\r\n \r\n</div>',
"templates/closebefore.html": '\x3c!-- 客服主动关闭弹出的页面 --\x3e\r\n<div class="rongcloud-layermbox">\r\n <div class="rongcloud-laymshade"></div>\r\n <div class="rongcloud-layermmain">\r\n <div class="rongcloud-section">\r\n <div class="rongcloud-layermchild rongcloud-endconversation">\r\n <p class="rongcloud-prompt">客服会话已结束</p>\r\n <div class="rongcloud-buttons" onclick="RCS.chatEnd()"><button class="rongcloud-button">确定</button></div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>',
"templates/conversation.html": '\x3c!-- 会话列表每一个会话\r\nclass="rong-conversation"会话列表中的每一个会话\r\n此类名不能被修改\r\n--\x3e\r\n<div class="rong-conversation" _cid="{%this.cid%}" _name="{%this.name%}">\r\n <img src="https://bsetting60.ntalker.com/application/static/setting/images/head.jpg" alt="">\r\n <span class="rong-conversation-name">客服{%this.cid%} - {%this.name%}</span>\r\n <div class="rong-conversation-message">...</div>\r\n</div>',
"templates/endconversation.html": '\x3c!-- endconversation: 用户主动关闭弹出的页面 \r\nclass="rongcloud-layermbox"弹出层容器\r\n此类名不能被修改\r\n--\x3e\r\n<div class="rongcloud-layermbox">\r\n <div class="rongcloud-laymshade"></div>\r\n <div class="rongcloud-layermmain">\r\n <div class="rongcloud-section">\r\n <div class="rongcloud-layermchild rongcloud-endconversation">\r\n <p class="rongcloud-prompt">是否要结束当前会话?</p>\r\n <div class="rongcloud-buttons"><button class="rongcloud-button" onclick="RCS.confirm()">是</button><button class="rongcloud-button" onclick="RCS.close()">否</button></div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>',
"templates/evaluate.html": '\x3c!-- evaluate: 评价页面 \r\nclass="rongcloud-evaluate"评价弹出层容器;\r\nclass="rongcloud-evaluate-tag"评价tag容器;\r\n此类名不能被修改\r\n--\x3e\r\n<div class="rongcloud-layermbox rongcloud-evaluate">\r\n <div class="rongcloud-laymshade"></div>\r\n <div class="rongcloud-layermmain">\r\n <div class="rongcloud-section">\r\n <div class="rongcloud-layermchild rongcloud-evaluate">\r\n <div class="rongcloud-layer-title">评价客服</div>\r\n <div class="rongcloud-layer-body">\r\n {%if(this.isQuestionFlag == 1){%}\r\n <div class="rongcloud-group-row">\r\n <div class="rongcloud-group-title">请问客服是否解决了您的问题</div>\r\n <div class="rongcloud-group-tag-list">\r\n <div class="rongcloud-group-tag rongcloud-solve-tag rongcloud-solve-active" onclick="RCS.isresolve(event,1)">已解决</div>\r\n <div class="rongcloud-group-tag rongcloud-solve-tag" onclick="RCS.isresolve(event,0)">未解决</div>\r\n </div>\r\n </div>{%}%}\r\n <div class="rongcloud-group-row">\r\n <div class="rongcloud-group-title">请您对客服进行评价</div>\r\n <span class="satisfaction-star satisfaction-star-selected" onclick="RCS.star(1)"></span>\r\n <span class="satisfaction-star satisfaction-star-selected" onclick="RCS.star(2)"></span>\r\n <span class="satisfaction-star satisfaction-star-selected" onclick="RCS.star(3)"></span>\r\n <span class="satisfaction-star satisfaction-star-selected" onclick="RCS.star(4)"></span>\r\n <span class="satisfaction-star satisfaction-star-selected" onclick="RCS.star(5)"></span>\r\n </div>\r\n <div class="rongcloud-evaluate-tag">\r\n \r\n </div>\r\n </div>\r\n <div class="rongcloud-foot">\r\n <button class="rongcloud-evaluate-btn" onclick="RCS.evaluate(true)">提交</button><button class="rongcloud-evaluate-btn" onclick="RCS.evaluate(false)">取消</button>\r\n </div>\r\n </div>\r\n \x3c!--反馈提示--\x3e\r\n \x3c!-- <div class="rongcloud-layermchild rongcloud-feedback" ng-show="end">\r\n <div class="rongcloud-layermcont">\r\n 感谢您的反馈 ^ - ^ !\r\n </div>\r\n </div> --\x3e\r\n </div>\r\n </div>\r\n</div>\r\n',
"templates/evaluateItem.html": '{%if(this.labelNameArray.length != 0){%}\r\n<div class="rongcloud-group-row">\r\n <div class="rongcloud-group-title">存在哪些问题{%if(this.isTagMust == 1){%}(必填){%}%}</div>\r\n <div class="rongcloud-group-tag-list">\r\n \t{%for(var index in this.labelNameArray){%}\r\n <div class="rongcloud-group-tag rongcloud-tag-item" onclick="RCS.tagClick(event)">{%this.labelNameArray[index]%}</div>\r\n {%}%}\r\n </div>\r\n</div>\r\n<div class="rongcloud-group-row">\r\n <textarea class="rongcloud-evaluate-suggest rongcloud-suggest" placeholder="其他想说的"></textarea>\r\n</div>\r\n{%}%}',
"templates/imageView.html": '\x3c!-- imageView: 图片预览页面 --\x3e\r\n<a href="#" class="rebox-close rebox-button">×</a>\r\n<div class="rebox-contents">\r\n\t<img src="{%this.imageUrl%}" class="rebox-content">\r\n</div>\r\n',
"templates/import.html": '<script id="rcs-templte-button" type="rcs/templte">\r\n\t\x3c!--#include file="button.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-main" type="rcs/templte">\r\n\t\x3c!--#include file="main.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-conversation" type="rcs/templte">\r\n\t\x3c!--#include file="conversation.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-chat" type="rcs/templte">\r\n\t\x3c!--#include file="chat.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-message" type="rcs/templte">\r\n\t\x3c!--#include file="message.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-message-template" type="rcs/templte">\r\n\t\x3c!--#include file="messageTemplate.html"--\x3e\r\n<\/script>\r\n\r\n\r\n<script id="rcs-templte-closebefore" type="rcs/templte">\r\n\t\x3c!--#include file="closebefore.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-endconversation" type="rcs/templte">\r\n\t\x3c!--#include file="endconversation.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-evaluate" type="rcs/templte">\r\n\t\x3c!--#include file="evaluate.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-leaveword" type="rcs/templte">\r\n\t\x3c!--#include file="leaveword.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-imageView" type="rcs/templte">\r\n\t\x3c!--#include file="imageView.html"--\x3e\r\n<\/script>\r\n\r\n<script id="rcs-templte-userInfo" type="rcs/templte">\r\n\t\x3c!--#include file="userInfo.html"--\x3e\r\n<\/script>',
"templates/leaveword.html": '\x3c!-- leaveword: 留言页面 \r\nclass="rongcloud-leavemessage"留言弹出层容器\r\n此类名不能被修改--\x3e\r\n<div class="rongcloud-leavemessage">\r\n {%if(this.url){%}\r\n <iframe id="leavewordIframe" src="{%this.url%}" frameborder="0" width="100%;" height="100%;"></iframe>\r\n {%}else{%}\r\n <div class="rongcloud-leavemessage-title">您好,请留言~</div>\r\n <form>\r\n {%for(var index in this.list){%}\r\n <div class="rongcloud-form-item">\r\n <label class="{%if(this.list[index].required){%}{%\'rongcloud-require\'%}{%}%}">{%this.list[index].title%}:</label>\r\n {%if(this.list[index].type == \'text\'){%}<input class="rongcloud-inputtext" name="{%this.list[index].name%}" placeholder="{%this.list[index].defaultText%}" type="text" onblur="RCS.validateLeaveMessage({%index%}, event)"></input>{%}else{%}\r\n <textarea name="{%this.list[index].name%}" placeholder="{%this.list[index].defaultText%}" onblur="RCS.validateLeaveMessage({%index%}, event)"></textarea>{%}%}\r\n <div class="rongcloud-form-error" style="display: none;"></div>\r\n </div>{%}%}\r\n <div class="rongcloud-leavemessage-form-btns">\r\n <button class="rongcloud-btn" onclick="RCS.leaveMessageComfirm(event)">提交</button>\r\n </div>\r\n </form>{%}%}\r\n</div>',
"templates/main.html": '\x3c!-- main: 包括客服列表和聊天窗口的主页面 \r\nclass="rcs-chat-wrapper"聊天窗口的容器 \r\n此类名不能被修改\r\n--\x3e\r\n<div id="rcs-main" class="rongcloud-kefuListBox rongcloud-container">\r\n {%if(this.showConversitionList){%}<div class="rongcloud-kefuList">\r\n <div class="rongcloud-rong-header rongcloud-blueBg">\r\n <div class="rongcloud-toolBar rongcloud-headBtn">\r\n <div class="rongcloud-voice"></div>\r\n <div class="rongcloud-sprite rongcloud-people"></div>\r\n <span class="rongcloud-recent">客服列表</span>\r\n <div class="rongcloud-sprite rongcloud-arrow-down cursor-pointer" onclick="RCS.minimize()"></div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-content">\r\n <div class="rongcloud-netStatus" style="display:none">\r\n <div class="rongcloud-sprite"></div>\r\n <span>连接断开,请刷新重连</span>\r\n </div>\r\n <div class="rcs-conversation-list">\r\n {%this.conversationList%}\r\n \x3c!-- <div class="rcs-conversation-item"></div> --\x3e\r\n </div>\r\n </div>\r\n </div>{%}%}\r\n <div class="rcs-chat-wrapper"></div>\r\n</div>',
"templates/message.html": '\x3c!-- message: 消息list的页面 --\x3e\r\n<div class="rong-message-list">\r\n {%if(this.firstEnter){%}<div class="rongcloud-Messages-history" style="display: none;"><b onclick="RCS.loadHisMessages()">查看历史消息</b></div>{%}else if(this.hasMore){%}<div class="rongcloud-Messages-history"><b onclick="RCS.loadHisMessages()">查看历史消息</b></div>{%}%}{%else{%}<div class="rongcloud-Messages-history"><b>没有更多消息</b></div>{%}%}\r\n {%for(var index in this.list){%}{%switch(this.list[index].messageType){%}{%case \'TextMessage\':%}\r\n <div class="rongcloud-Message rongcloud-clearfix {%if(this.list[index].messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user.icon){%}{%this.list[index].content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.list[index].messageDirection != 1){%}{%this.list[index].content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-text">\r\n <pre class="rongcloud-Message-entry">{%this.list[index].content.content%}</pre>\r\n </div>\r\n </div>\r\n </div>{%break;%}\r\n {%case \'ImageMessage\':%}\r\n <div class="rongcloud-Message rongcloud-clearfix {%if(this.list[index].messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user.icon){%}{%this.list[index].content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.list[index].messageDirection != 1){%}{%this.list[index].content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-img">\r\n <span class="rongcloud-Message-entry">\r\n <a onclick="RCS.viewImage(event)" class="cursor-pointer" data-img="{%this.list[index].content.imageUri%}">\r\n <img src="{%this.list[index].content.imageUri%}" data-img="{%this.list[index].content.imageUri%}">\r\n </a>\r\n </span>\r\n </div>\r\n </div>\r\n </div>{%break;%}\r\n {%case \'FileMessage\':%}\r\n <div class="rongcloud-Message rongcloud-clearfix {%if(this.list[index].messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user.icon){%}{%this.list[index].content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user){%}{%this.list[index].content.user.name%}{%}else{%} {%\'客服\'%} {%}%} {%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-file">\r\n <div class="rongcloud-sprite rongcloud-file-icon"></div>\r\n <div class="rongcloud-file-name">{%this.list[index].content.name%}</div>\r\n <div class="rongcloud-file-size">{%this.list[index].content.size%}</div>\r\n <a class="rongcloud-sprite rongcloud-file-download" href="{%this.list[index].content.fileUrl%}" download="{%this.list[index].content.name%}"></a>\r\n </div>\r\n </div>\r\n </div>{%break;%}\r\n {%case \'VoiceMessage\':%}\r\n <div class="rongcloud-Message rongcloud-clearfix {%if(this.list[index].messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user.icon){%}{%this.list[index].content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.list[index].messageDirection != 1){%}{%this.list[index].content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-audio">\r\n <span class="rongcloud-Message-entry">\r\n {%if(this.messageDirection == 1){%}\r\n <div style="display:inline-block;">\r\n <span class="rongcloud-audioTimer">{%Math.ceil(this.list[index].content.duration || this.list[index].content.duration / 1024)%}\'\'</span>\r\n </div>\r\n <span class="rongcloud-r-audioBox rongcloud-clearfix" onclick=\'RCS.play(event, {%JSON.stringify(this.list[index].content)%})\'>\r\n <i></i><i></i><i></i>\r\n </span>\r\n {%}else{%}\r\n <span class="rongcloud-audioBox rongcloud-clearfix" onclick=\'RCS.play(event, {%JSON.stringify(this.list[index].content)%})\'>\r\n <i></i><i></i><i></i>\r\n </span>\r\n <div style="display:inline-block;">\r\n <span class="rongcloud-audioTimer">{%Math.ceil(this.list[index].content.duration || this.list[index].content.duration / 1024)%}\'\'</span>\r\n </div>\r\n {%}%}\r\n </span>\r\n </div>\r\n </div>\r\n </div>{%break;%}\r\n {%case \'TimeMessage\':%}\r\n <div class="rongcloud-Messages-date">\r\n <b>{%this.list[index].sentTime%}</b>\r\n </div>{%break;%}\r\n {%case \'InformationNotificationMessage\':%}\r\n <div class="rongcloud-sys-tips">\r\n <span>{%this.list[index].content.message%}</span>\r\n </div>{%break;%}\r\n {%case \'AlertMessage\':%}\r\n <div class="rongcloud-sys-tips">\r\n <span>{%this.list[index].content.content%}</span>\r\n </div>{%break;%}\r\n {%case \'SightMessage\': %}\r\n <div class="rongcloud-Message rongcloud-clearfix {%if(this.list[index].messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user.icon){%}{%this.list[index].content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.list[index].messageDirection != 1){%}{%this.list[index].content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-sight" onclick="RCS.playVideo(event)">\r\n <video poster="{% \'data:image/jpg;base64,\' + this.list[index].content.content %}" src="{% this.list[index].content.sightUrl %}"></video>\r\n <div class="play-btn"></div>\r\n </div>\r\n </div>\r\n </div>\r\n {%break;%}\r\n {%default: %}\r\n <div class="rongcloud-Message rongcloud-clearfix {%if(this.list[index].messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.list[index].messageDirection != 1){%} {%if(this.list[index].content.user.icon){%}{%this.list[index].content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.list[index].messageDirection != 1){%}{%this.list[index].content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-text">\r\n <pre class="rongcloud-Message-entry">当前版本暂不支持查看此消息</pre>\r\n </div>\r\n </div>\r\n </div>{%}%}{%}%}\r\n</div>\r\n\r\n\x3c!-- <div class="rongcloud-emptyBox">暂时没有新消息</div> --\x3e',
"templates/messageTemplate.html": '\x3c!-- messageTemplate: 一个消息的页面 --\x3e\r\n\x3c!-- class="rongcloud-audioState"声音消息播放状态\r\nclass="rongcloud-audioBox" 声音消息容器\r\n此类名不能被修改 --\x3e\r\n{%switch(this.messageType){%}{%case \'TextMessage\':%}\r\n<div class="rongcloud-Message rongcloud-clearfix {%if(this.messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.messageDirection != 1){%} {%if(this.content.user.icon){%}{%this.content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.messageDirection != 1){%}{%this.content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-text">\r\n <pre class="rongcloud-Message-entry">{%this.content.content%}</pre>\r\n </div>\r\n </div>\r\n</div>{%break;%}\r\n{%case \'ImageMessage\':%}\r\n<div class="rongcloud-Message rongcloud-clearfix {%if(this.messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.messageDirection != 1){%} {%if(this.content.user.icon){%}{%this.content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.messageDirection != 1){%}{%this.content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-img">\r\n <span class="rongcloud-Message-entry">\r\n <a onclick="RCS.viewImage(event)" class="cursor-pointer" data-img="{%this.content.imageUri%}">\r\n <img src="{%this.content.imageUri%}" onload="RCS.scrollBottom()" data-img="{%this.content.imageUri%}">\r\n </a>\r\n </span>\r\n </div>\r\n </div>\r\n</div>{%break;%}\r\n{%case \'FileMessage\':%}\r\n<div class="rongcloud-Message rongcloud-clearfix {%if(this.messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.messageDirection != 1){%} {%if(this.content.user.icon){%}{%this.content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.messageDirection != 1){%}{%this.content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-file">\r\n <div class="rongcloud-sprite rongcloud-file-icon"></div>\r\n <div class="rongcloud-file-name">{%this.content.name%}</div>\r\n <div class="rongcloud-file-size">{%this.content.size%}</div>\r\n <a class="rongcloud-sprite rongcloud-file-download" href="{%this.content.fileUrl%}" download="{%this.content.name%}"></a>\r\n </div>\r\n </div>\r\n</div>{%break;%}\r\n{%case \'VoiceMessage\':%}\r\n<div class="rongcloud-Message rongcloud-clearfix {%if(this.messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.messageDirection != 1){%} {%if(this.content.user.icon){%}{%this.content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.messageDirection != 1){%}{%this.content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-audio">\r\n <span class="rongcloud-Message-entry">\r\n {%if(this.messageDirection == 1){%}\r\n <div style="display:inline-block;">\r\n <span class="rongcloud-audioTimer">{%Math.ceil(this.content.duration || this.content.duration.length / 1024)%}\'\'</span>\r\n </div>\r\n <span class="rongcloud-r-audioBox rongcloud-clearfix" onclick=\'RCS.play(event, {%JSON.stringify(this.content)%})\'>\r\n <i></i><i></i><i></i>\r\n </span>\r\n {%}else{%}\r\n <span class="rongcloud-audioBox rongcloud-clearfix" onclick=\'RCS.play(event, {%JSON.stringify(this.content)%})\'>\r\n <i></i><i></i><i></i>\r\n </span>\r\n <div style="display:inline-block;">\r\n <span class="rongcloud-audioTimer">{%Math.ceil(this.content.duration || this.content.duration.length / 1024)%}\'\'</span>\r\n <span class="rongcloud-audioState"></span>\r\n </div>\r\n {%}%}\r\n </span>\r\n </div>\r\n </div>\r\n</div>{%break;%}\r\n{%case \'TimeMessage\':%}\r\n<div class="rongcloud-Messages-date">\r\n <b>{%this.sentTime%}</b>\r\n</div>{%break;%}\r\n{%case \'InformationNotificationMessage\':%}\r\n<div class="rongcloud-sys-tips">\r\n <span>{%this.content.message%}</span>\r\n</div>{%break;%}\r\n{%case \'AlertMessage\':%}\r\n<div class="rongcloud-sys-tips">\r\n <span>{%this.content.content%}</span>\r\n</div>{%break;%}\r\n{%case \'SightMessage\': %}\r\n<div class="rongcloud-Message rongcloud-clearfix {%if(this.messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.messageDirection != 1){%} {%if(this.content.user.icon){%}{%this.content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.messageDirection != 1){%}{%this.content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-sight" onclick="RCS.playVideo(event)">\r\n <video poster="{% \'data:image/jpg;base64,\' + this.content.content %}" src="{% this.content.sightUrl %}"></video>\r\n <div class="play-btn"></div>\r\n </div>\r\n </div>\r\n</div>\r\n{%break;%}\r\n{%default: %}\r\n<div class="rongcloud-Message rongcloud-clearfix {%if(this.messageDirection == 1){%} {%\'rongcloud-Message-send\'%} {%}%}" id="rcs-templte-message-text">\r\n <div>\r\n <div class="rongcloud-Message-header"><img class="rongcloud-img rongcloud-Message-avatar rongcloud-avatar" src="{%if(this.messageDirection != 1){%} {%if(this.content.user.icon){%}{%this.content.user.icon%}{%}else{%} {%RCS.config.csIcon%} {%}%} {%}else{%} {%RCS.config.userIcon%} {%}%}" alt="">\r\n <div class="rongcloud-Message-author rongcloud-clearfix">\r\n <a class="rongcloud-author">{%if(this.messageDirection != 1){%}{%this.content.user.name%}{%}else{%} {%\'我\'%} {%}%}</a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="rongcloud-Message-body">\r\n <div class="rongcloud-Message-text">\r\n <pre class="rongcloud-Message-entry">当前版本暂不支持查看此消息</pre>\r\n </div>\r\n </div>\r\n</div>{%}%}\r\n',
"templates/userInfo.html": '\x3c!-- userInfo: 收集用户信息的页面 \r\nclass="userInfoModel"收集用户信息页面容器 \r\n此类名不能被修改\r\n--\x3e\r\n<div class="rongcloud-layermbox userInfoModel">\r\n <div class="rongcloud-laymshade"></div>\r\n <div class="rongcloud-layermmain">\r\n <div class="rongcloud-section">\r\n <div class="rongcloud-layermchild rongcloud-collectuserinfo">\r\n <form name=\'userinfo\' novalidate="true">\r\n <div class="rongcloud-layer-body">\r\n <div class="rongcloud-collectuserinfo-title">你好,客服邀请您填写如下内容</div>\r\n <a class="rongcloud-layer-close" onclick="RCS.userInfoClose()">×</a>\r\n {%for(var index in this.list){%}\r\n <div class="rongcloud-form-item">\r\n <label class="rongcloud-form-label {%if(this.list[index].required == 1){%}{%\'rongcloud-require\'%}{%}%}">{%this.list[index].label%}:</label>\r\n {%switch(this.list[index].type){%}{%case \'input\':%}\r\n <input class="rongcloud-inputtext" type="text" name="{%this.list[index].name%}" data-label="{%this.list[index].label%}" data-pattern="{%this.list[index].rule%}" placeholder="{%this.list[index].defaultText%}" onblur="RCS.validateUserInfo(event)" {%if(this.list[index].required == 1){%}{%\'data-required = required\'%}{%}%}></input>{%break;%}{%case \'textarea\':%}\r\n <textarea name="{%this.list[index].name%}" placeholder="{%this.list[index].defaultText%}" data-label="{%this.list[index].label%}" data-pattern="{%this.list[index].rule%}" onblur="RCS.validateUserInfo(event)"></textarea>{%break;%}{%}%}\r\n <div class="rongcloud-form-error" style="display: none;"></div>\r\n </div>{%}%}\r\n </div>\r\n <div class="rongcloud-foot">\r\n <button class="rongcloud-btn" onclick="RCS.userInfoConfirm(event)">提交</button>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n</div>'
};