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: "&amp;"}, {
                    symbol: "[\\u0009]",
                    html: "&nbsp;&nbsp;&nbsp;&nbsp; "
                }, {symbol: "<", html: "&lt;"}, {symbol: ">", html: "&gt;"}, {symbol: '"', html: "&quot;"}, {
                    symbol: "'",
                    html: "&#39;"
                }, {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>'
};