1use std::collections::HashMap;
2
3use lazy_static::lazy_static;
4use maplit::hashmap;
5use strum::{Display, EnumIter, EnumString};
6
7#[derive(Debug, Clone, Copy, EnumIter, Display, EnumString)]
8#[strum(serialize_all = "camelCase")]
9pub enum Spinners {
19 Dots,
21 Dots2,
23 Dots3,
25 Dots4,
27 Dots5,
29 Dots6,
31 Dots7,
33 Dots8,
35 Dots9,
37 Dots10,
39 Dots11,
41 Dots8Bit,
43 Arrow,
45 Arrow2,
47 Arrow3,
49 BouncingBar,
51 BouncingBall,
53 Smiley,
55 Monkey,
57 Hearts,
59 Clock,
61 Earth,
63 Material,
65 Moon,
67 Runner,
69 Pong,
71 Shark,
73 Dqpb,
75 Weather,
77 Christmas,
79 Grenade,
81 Point,
83 Layer,
85 BetaWave,
87 FingerDance,
89 FistBump,
91 SoccerHeader,
93 Mindblown,
95 Speaker,
97 OrangePulse,
99 BluePulse,
101 OrangeBluePulse,
103 TimeTravel,
105 Aesthetic,
107 Pipe,
109 Star,
111 Star2,
113 Flip,
115 Hamburger,
117 GrowVertical,
119 GrowHorizontal,
121 Balloon,
123 Balloon2,
125 Noise,
127 Bounce,
129 BoxBounce,
131 BoxBounce2,
133 Triangle,
135 Arc,
137 Circle,
139 SquareCorners,
141 CircleQuaters,
143 CircleHalves,
145 Squish,
147 Toggle,
149 Toggle2,
151 Toggle3,
153 Toggle4,
155 Toggle5,
157 Toggle6,
159 Toggle7,
161 Toggle8,
163 Toggle9,
165 Toggle10,
167 Toggle11,
169 Toggle12,
171 Toggle13,
173 Line,
175 Line2,
177 SimpleDots,
179 SimpleDotsScrolling,
181}
182
183impl Spinners {
184 pub fn get_frames(&self) -> Vec<&'static str> {
186 SPINNER_MAP.get(&self.to_string()).unwrap().to_vec()
187 }
188}
189
190lazy_static! {
191 static ref SPINNER_MAP: HashMap<String, Vec<&'static str>> = {
192 hashmap! {
193 r"dots".into() => vec![
194 r"⠋",
195 r"⠙",
196 r"⠹",
197 r"⠸",
198 r"⠼",
199 r"⠴",
200 r"⠦",
201 r"⠧",
202 r"⠇",
203 r"⠏"
204 ],
205 "dots2".into() => vec![
206 r"⣾",
207 r"⣽",
208 r"⣻",
209 r"⢿",
210 r"⡿",
211 r"⣟",
212 r"⣯",
213 r"⣷"
214 ],
215 "dots3".into() => vec![
216 r"⠋",
217 r"⠙",
218 r"⠚",
219 r"⠞",
220 r"⠖",
221 r"⠦",
222 r"⠴",
223 r"⠲",
224 r"⠳",
225 r"⠓"
226 ],
227 "dots4".into() => vec![
228 r"⠄",
229 r"⠆",
230 r"⠇",
231 r"⠋",
232 r"⠙",
233 r"⠸",
234 r"⠰",
235 r"⠠",
236 r"⠰",
237 r"⠸",
238 r"⠙",
239 r"⠋",
240 r"⠇",
241 r"⠆"
242 ],
243 "dots5".into() => vec![
244 r"⠋",
245 r"⠙",
246 r"⠚",
247 r"⠒",
248 r"⠂",
249 r"⠂",
250 r"⠒",
251 r"⠲",
252 r"⠴",
253 r"⠦",
254 r"⠖",
255 r"⠒",
256 r"⠐",
257 r"⠐",
258 r"⠒",
259 r"⠓",
260 r"⠋"
261 ],
262 "dots6".into() => vec![
263 r"⠁",
264 r"⠉",
265 r"⠙",
266 r"⠚",
267 r"⠒",
268 r"⠂",
269 r"⠂",
270 r"⠒",
271 r"⠲",
272 r"⠴",
273 r"⠤",
274 r"⠄",
275 r"⠄",
276 r"⠤",
277 r"⠴",
278 r"⠲",
279 r"⠒",
280 r"⠂",
281 r"⠂",
282 r"⠒",
283 r"⠚",
284 r"⠙",
285 r"⠉",
286 r"⠁"
287 ],
288 "dots7".into() => vec![
289 r"⠈",
290 r"⠉",
291 r"⠋",
292 r"⠓",
293 r"⠒",
294 r"⠐",
295 r"⠐",
296 r"⠒",
297 r"⠖",
298 r"⠦",
299 r"⠤",
300 r"⠠",
301 r"⠠",
302 r"⠤",
303 r"⠦",
304 r"⠖",
305 r"⠒",
306 r"⠐",
307 r"⠐",
308 r"⠒",
309 r"⠓",
310 r"⠋",
311 r"⠉",
312 r"⠈"
313 ],
314 "dots8".into() => vec![
315 r"⠁",
316 r"⠁",
317 r"⠉",
318 r"⠙",
319 r"⠚",
320 r"⠒",
321 r"⠂",
322 r"⠂",
323 r"⠒",
324 r"⠲",
325 r"⠴",
326 r"⠤",
327 r"⠄",
328 r"⠄",
329 r"⠤",
330 r"⠠",
331 r"⠠",
332 r"⠤",
333 r"⠦",
334 r"⠖",
335 r"⠒",
336 r"⠐",
337 r"⠐",
338 r"⠒",
339 r"⠓",
340 r"⠋",
341 r"⠉",
342 r"⠈",
343 r"⠈"
344 ],
345 "dots9".into() => vec![
346 r"⢹",
347 r"⢺",
348 r"⢼",
349 r"⣸",
350 r"⣇",
351 r"⡧",
352 r"⡗",
353 r"⡏"
354 ],
355 "dots10".into() => vec![
356 r"⢄",
357 r"⢂",
358 r"⢁",
359 r"⡁",
360 r"⡈",
361 r"⡐",
362 r"⡠"
363 ],
364 "dots11".into() => vec![
365 r"⠁",
366 r"⠂",
367 r"⠄",
368 r"⡀",
369 r"⢀",
370 r"⠠",
371 r"⠐",
372 r"⠈"
373 ],
374 "pipe".into() => vec![
375 r"┤",
376 r"┘",
377 r"┴",
378 r"└",
379 r"├",
380 r"┌",
381 r"┬",
382 r"┐"
383 ],
384 "star".into() => vec![
385 r"✶",
386 r"✸",
387 r"✹",
388 r"✺",
389 r"✹",
390 r"✷"
391 ],
392 "star2".into() => vec![
393 r"+",
394 r"x",
395 r"*"
396 ],
397 "flip".into() => vec![
398 r"_",
399 r"_",
400 r"_",
401 r"-",
402 r"`",
403 r"`",
404 r"'",
405 r"´",
406 r"-",
407 r"_",
408 r"_",
409 r"_"
410 ],
411 "hamburger".into() => vec![
412 r"☱",
413 r"☲",
414 r"☴"
415 ],
416 "growVertical".into() => vec![
417 r"▁",
418 r"▃",
419 r"▄",
420 r"▅",
421 r"▆",
422 r"▇",
423 r"▆",
424 r"▅",
425 r"▄",
426 r"▃"
427 ],
428 "growHorizontal".into() => vec![
429 r"▏",
430 r"▎",
431 r"▍",
432 r"▌",
433 r"▋",
434 r"▊",
435 r"▉",
436 r"▊",
437 r"▋",
438 r"▌",
439 r"▍",
440 r"▎"
441 ],
442 "balloon".into() => vec![
443 r".",
444 r"i",
445 r"n",
446 r"t",
447 r"o",
448 r"(",
449 r")",
450 r" ",
451 r".",
452 r"o",
453 r"O",
454 r"@",
455 r"*",
456 r" "
457 ],
458 "balloon2".into() => vec![
459 r".",
460 r"o",
461 r"O",
462 r"°",
463 r"O",
464 r"o",
465 r"."
466 ],
467 "noise".into() => vec![
468 r"▓",
469 r"▒",
470 r"░"
471 ],
472 "bounce".into() => vec![
473 r"⠁",
474 r"⠂",
475 r"⠄",
476 r"⠂"
477 ],
478 "boxBounce".into() => vec![
479 r"▖",
480 r"▘",
481 r"▝",
482 r"▗"
483 ],
484 "boxBounce2".into() => vec![
485 r"▌",
486 r"▀",
487 r"▐",
488 r"▄"
489 ],
490 "triangle".into() => vec![
491 r"◢",
492 r"◣",
493 r"◤",
494 r"◥"
495 ],
496 "arc".into() => vec![
497 r"◜",
498 r"◠",
499 r"◝",
500 r"◞",
501 r"◡",
502 r"◟"
503 ],
504 "circle".into() => vec![
505 r"◡",
506 r"⊙",
507 r"◠"
508 ],
509 "squareCorners".into() => vec![
510 r"◰",
511 r"◳",
512 r"◲",
513 r"◱"
514 ],
515 "circleQuaters".into() => vec![
516 r"◴",
517 r"◷",
518 r"◶",
519 r"◵"
520 ],
521 "circleHalves".into() => vec![
522 r"◐",
523 r"◓",
524 r"◑",
525 r"◒"
526 ],
527 "squish".into() => vec![
528 r"╫",
529 r"╪"
530 ],
531 "toggle".into() => vec![
532 r"⊶",
533 r"⊷"
534 ],
535 "toggle2".into() => vec![
536 r"▫",
537 r"▪"
538 ],
539 "toggle3".into() => vec![
540 r"□",
541 r"■"
542 ],
543 "toggle4".into() => vec![
544 r"■",
545 r"□",
546 r"▪",
547 r"▫"
548 ],
549 "toggle5".into() => vec![
550 r"▮",
551 r"▯"
552 ],
553 "toggle6".into() => vec![
554 r"ဝ",
555 r"၀"
556 ],
557 "toggle7".into() => vec![
558 r"⦾",
559 r"⦿"
560 ],
561 "toggle8".into() => vec![
562 r"◍",
563 r"◌"
564 ],
565 "toggle9".into() => vec![
566 r"◉",
567 r"◎"
568 ],
569 "toggle10".into() => vec![
570 r"㊂",
571 r"㊀",
572 r"㊁"
573 ],
574 "toggle11".into() => vec![
575 r"⧇",
576 r"⧆"
577 ],
578 "toggle12".into() => vec![
579 r"☗",
580 r"☖"
581 ],
582 "toggle13".into() => vec![
583 r"=",
584 r"*",
585 r"-"
586 ],
587 "arrow".into() => vec![
588 r"←",
589 r"↖",
590 r"↑",
591 r"↗",
592 r"→",
593 r"↘",
594 r"↓",
595 r"↙"
596 ],
597 "dots8Bit".into() => vec![
598 r"⠀",
599 r"⠁",
600 r"⠂",
601 r"⠃",
602 r"⠄",
603 r"⠅",
604 r"⠆",
605 r"⠇",
606 r"⡀",
607 r"⡁",
608 r"⡂",
609 r"⡃",
610 r"⡄",
611 r"⡅",
612 r"⡆",
613 r"⡇",
614 r"⠈",
615 r"⠉",
616 r"⠊",
617 r"⠋",
618 r"⠌",
619 r"⠍",
620 r"⠎",
621 r"⠏",
622 r"⡈",
623 r"⡉",
624 r"⡊",
625 r"⡋",
626 r"⡌",
627 r"⡍",
628 r"⡎",
629 r"⡏",
630 r"⠐",
631 r"⠑",
632 r"⠒",
633 r"⠓",
634 r"⠔",
635 r"⠕",
636 r"⠖",
637 r"⠗",
638 r"⡐",
639 r"⡑",
640 r"⡒",
641 r"⡓",
642 r"⡔",
643 r"⡕",
644 r"⡖",
645 r"⡗",
646 r"⠘",
647 r"⠙",
648 r"⠚",
649 r"⠛",
650 r"⠜",
651 r"⠝",
652 r"⠞",
653 r"⠟",
654 r"⡘",
655 r"⡙",
656 r"⡚",
657 r"⡛",
658 r"⡜",
659 r"⡝",
660 r"⡞",
661 r"⡟",
662 r"⠠",
663 r"⠡",
664 r"⠢",
665 r"⠣",
666 r"⠤",
667 r"⠥",
668 r"⠦",
669 r"⠧",
670 r"⡠",
671 r"⡡",
672 r"⡢",
673 r"⡣",
674 r"⡤",
675 r"⡥",
676 r"⡦",
677 r"⡧",
678 r"⠨",
679 r"⠩",
680 r"⠪",
681 r"⠫",
682 r"⠬",
683 r"⠭",
684 r"⠮",
685 r"⠯",
686 r"⡨",
687 r"⡩",
688 r"⡪",
689 r"⡫",
690 r"⡬",
691 r"⡭",
692 r"⡮",
693 r"⡯",
694 r"⠰",
695 r"⠱",
696 r"⠲",
697 r"⠳",
698 r"⠴",
699 r"⠵",
700 r"⠶",
701 r"⠷",
702 r"⡰",
703 r"⡱",
704 r"⡲",
705 r"⡳",
706 r"⡴",
707 r"⡵",
708 r"⡶",
709 r"⡷",
710 r"⠸",
711 r"⠹",
712 r"⠺",
713 r"⠻",
714 r"⠼",
715 r"⠽",
716 r"⠾",
717 r"⠿",
718 r"⡸",
719 r"⡹",
720 r"⡺",
721 r"⡻",
722 r"⡼",
723 r"⡽",
724 r"⡾",
725 r"⡿",
726 r"⢀",
727 r"⢁",
728 r"⢂",
729 r"⢃",
730 r"⢄",
731 r"⢅",
732 r"⢆",
733 r"⢇",
734 r"⣀",
735 r"⣁",
736 r"⣂",
737 r"⣃",
738 r"⣄",
739 r"⣅",
740 r"⣆",
741 r"⣇",
742 r"⢈",
743 r"⢉",
744 r"⢊",
745 r"⢋",
746 r"⢌",
747 r"⢍",
748 r"⢎",
749 r"⢏",
750 r"⣈",
751 r"⣉",
752 r"⣊",
753 r"⣋",
754 r"⣌",
755 r"⣍",
756 r"⣎",
757 r"⣏",
758 r"⢐",
759 r"⢑",
760 r"⢒",
761 r"⢓",
762 r"⢔",
763 r"⢕",
764 r"⢖",
765 r"⢗",
766 r"⣐",
767 r"⣑",
768 r"⣒",
769 r"⣓",
770 r"⣔",
771 r"⣕",
772 r"⣖",
773 r"⣗",
774 r"⢘",
775 r"⢙",
776 r"⢚",
777 r"⢛",
778 r"⢜",
779 r"⢝",
780 r"⢞",
781 r"⢟",
782 r"⣘",
783 r"⣙",
784 r"⣚",
785 r"⣛",
786 r"⣜",
787 r"⣝",
788 r"⣞",
789 r"⣟",
790 r"⢠",
791 r"⢡",
792 r"⢢",
793 r"⢣",
794 r"⢤",
795 r"⢥",
796 r"⢦",
797 r"⢧",
798 r"⣠",
799 r"⣡",
800 r"⣢",
801 r"⣣",
802 r"⣤",
803 r"⣥",
804 r"⣦",
805 r"⣧",
806 r"⢨",
807 r"⢩",
808 r"⢪",
809 r"⢫",
810 r"⢬",
811 r"⢭",
812 r"⢮",
813 r"⢯",
814 r"⣨",
815 r"⣩",
816 r"⣪",
817 r"⣫",
818 r"⣬",
819 r"⣭",
820 r"⣮",
821 r"⣯",
822 r"⢰",
823 r"⢱",
824 r"⢲",
825 r"⢳",
826 r"⢴",
827 r"⢵",
828 r"⢶",
829 r"⢷",
830 r"⣰",
831 r"⣱",
832 r"⣲",
833 r"⣳",
834 r"⣴",
835 r"⣵",
836 r"⣶",
837 r"⣷",
838 r"⢸",
839 r"⢹",
840 r"⢺",
841 r"⢻",
842 r"⢼",
843 r"⢽",
844 r"⢾",
845 r"⢿",
846 r"⣸",
847 r"⣹",
848 r"⣺",
849 r"⣻",
850 r"⣼",
851 r"⣽",
852 r"⣾",
853 r"⣿"
854 ],
855 "line".into() => vec![
856 r"-",
857 r"\",
858 r"|",
859 r"/"
860 ],
861 "line2".into() => vec![
862 r"⠂",
863 r"-",
864 r"–",
865 r"—",
866 r"–",
867 r"-"
868 ],
869 "pipe".into() => vec![
870 r"┤",
871 r"┘",
872 r"┴",
873 r"└",
874 r"├",
875 r"┌",
876 r"┬",
877 r"┐"
878 ],
879 "simpleDots".into() => vec![
880 r". ",
881 r".. ",
882 r"...",
883 r" "
884 ],
885 "simpleDotsScrolling".into() => vec![
886 r". ",
887 r".. ",
888 r"...",
889 r" ..",
890 r" .",
891 r" "
892 ],
893 "star".into() => vec![
894 r"✶",
895 r"✸",
896 r"✹",
897 r"✺",
898 r"✹",
899 r"✷"
900 ],
901 "star2".into() => vec![
902 r"+",
903 r"x",
904 r"*"
905 ],
906 "flip".into() => vec![
907 r"_",
908 r"_",
909 r"_",
910 r"-",
911 r"`",
912 r"`",
913 r"'",
914 r"´",
915 r"-",
916 r"_",
917 r"_",
918 r"_"
919 ],
920 "hamburger".into() => vec![
921 r"☱",
922 r"☲",
923 r"☴"
924 ],
925 "growVertical".into() => vec![
926 r"▁",
927 r"▃",
928 r"▄",
929 r"▅",
930 r"▆",
931 r"▇",
932 r"▆",
933 r"▅",
934 r"▄",
935 r"▃"
936 ],
937 "growHorizontal".into() => vec![
938 r"▏",
939 r"▎",
940 r"▍",
941 r"▌",
942 r"▋",
943 r"▊",
944 r"▉",
945 r"▊",
946 r"▋",
947 r"▌",
948 r"▍",
949 r"▎"
950 ],
951 "balloon".into() => vec![
952 r" ",
953 r".",
954 r"o",
955 r"O",
956 r"@",
957 r"*",
958 r" "
959 ],
960 "balloon2".into() => vec![
961 r".",
962 r"o",
963 r"O",
964 r"°",
965 r"O",
966 r"o",
967 r"."
968 ],
969 "noise".into() => vec![
970 r"▓",
971 r"▒",
972 r"░"
973 ],
974 "bounce".into() => vec![
975 r"⠁",
976 r"⠂",
977 r"⠄",
978 r"⠂"
979 ],
980 "boxBounce".into() => vec![
981 r"▖",
982 r"▘",
983 r"▝",
984 r"▗"
985 ],
986 "boxBounce2".into() => vec![
987 r"▌",
988 r"▀",
989 r"▐",
990 r"▄"
991 ],
992 "triangle".into() => vec![
993 r"◢",
994 r"◣",
995 r"◤",
996 r"◥"
997 ],
998 "arc".into() => vec![
999 r"◜",
1000 r"◠",
1001 r"◝",
1002 r"◞",
1003 r"◡",
1004 r"◟"
1005 ],
1006 "circle".into() => vec![
1007 r"◡",
1008 r"⊙",
1009 r"◠"
1010 ],
1011 "squareCorners".into() => vec![
1012 r"◰",
1013 r"◳",
1014 r"◲",
1015 r"◱"
1016 ],
1017 "circleQuarters".into() => vec![
1018 r"◴",
1019 r"◷",
1020 r"◶",
1021 r"◵"
1022 ],
1023 "circleHalves".into() => vec![
1024 r"◐",
1025 r"◓",
1026 r"◑",
1027 r"◒"
1028 ],
1029 "squish".into() => vec![
1030 r"╫",
1031 r"╪"
1032 ],
1033 "toggle".into() => vec![
1034 r"⊶",
1035 r"⊷"
1036 ],
1037 "toggle2".into() => vec![
1038 r"▫",
1039 r"▪"
1040 ],
1041 "toggle3".into() => vec![
1042 r"□",
1043 r"■"
1044 ],
1045 "toggle4".into() => vec![
1046 r"■",
1047 r"□",
1048 r"▪",
1049 r"▫"
1050 ],
1051 "toggle5".into() => vec![
1052 r"▮",
1053 r"▯"
1054 ],
1055 "toggle6".into() => vec![
1056 r"ဝ",
1057 r"၀"
1058 ],
1059 "toggle7".into() => vec![
1060 r"⦾",
1061 r"⦿"
1062 ],
1063 "toggle8".into() => vec![
1064 r"◍",
1065 r"◌"
1066 ],
1067 "toggle9".into() => vec![
1068 r"◉",
1069 r"◎"
1070 ],
1071 "toggle10".into() => vec![
1072 r"㊂",
1073 r"㊀",
1074 r"㊁"
1075 ],
1076 "toggle11".into() => vec![
1077 r"⧇",
1078 r"⧆"
1079 ],
1080 "toggle12".into() => vec![
1081 r"☗",
1082 r"☖"
1083 ],
1084 "toggle13".into() => vec![
1085 r"=",
1086 r"*",
1087 r"-"
1088 ],
1089 "arrow".into() => vec![
1090 r"←",
1091 r"↖",
1092 r"↑",
1093 r"↗",
1094 r"→",
1095 r"↘",
1096 r"↓",
1097 r"↙"
1098 ],
1099 "arrow2".into() => vec![
1100 r"⬆️ ",
1101 r"↗️ ",
1102 r"➡️ ",
1103 r"↘️ ",
1104 r"⬇️ ",
1105 r"↙️ ",
1106 r"⬅️ ",
1107 r"↖️ "
1108 ],
1109 "arrow3".into() => vec![
1110 r"▹▹▹▹▹",
1111 r"▸▹▹▹▹",
1112 r"▹▸▹▹▹",
1113 r"▹▹▸▹▹",
1114 r"▹▹▹▸▹",
1115 r"▹▹▹▹▸"
1116 ],
1117 "bouncingBar".into() => vec![
1118 r"[ ]",
1119 r"[= ]",
1120 r"[== ]",
1121 r"[=== ]",
1122 r"[ ===]",
1123 r"[ ==]",
1124 r"[ =]",
1125 r"[ ]",
1126 r"[ =]",
1127 r"[ ==]",
1128 r"[ ===]",
1129 r"[====]",
1130 r"[=== ]",
1131 r"[== ]",
1132 r"[= ]"
1133 ],
1134 "bouncingBall".into() => vec![
1135 r"( ● )",
1136 r"( ● )",
1137 r"( ● )",
1138 r"( ● )",
1139 r"( ●)",
1140 r"( ● )",
1141 r"( ● )",
1142 r"( ● )",
1143 r"( ● )",
1144 r"(● )"
1145 ],
1146 "smiley".into() => vec![
1147 r"😄 ",
1148 r"😝 "
1149 ],
1150 "monkey".into() => vec![
1151 r"🙈 ",
1152 r"🙈 ",
1153 r"🙉 ",
1154 r"🙊 "
1155 ],
1156 "hearts".into() => vec![
1157 r"💛 ",
1158 r"💙 ",
1159 r"💜 ",
1160 r"💚 ",
1161 r"❤️ "
1162 ],
1163 "clock".into() => vec![
1164 r"🕛 ",
1165 r"🕐 ",
1166 r"🕑 ",
1167 r"🕒 ",
1168 r"🕓 ",
1169 r"🕔 ",
1170 r"🕕 ",
1171 r"🕖 ",
1172 r"🕗 ",
1173 r"🕘 ",
1174 r"🕙 ",
1175 r"🕚 "
1176 ],
1177 "earth".into() => vec![
1178 r"🌍 ",
1179 r"🌎 ",
1180 r"🌏 "
1181 ],
1182 "material".into() => vec![
1183 r"█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1184 r"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1185 r"███▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1186 r"████▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1187 r"██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1188 r"██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1189 r"███████▁▁▁▁▁▁▁▁▁▁▁▁▁",
1190 r"████████▁▁▁▁▁▁▁▁▁▁▁▁",
1191 r"█████████▁▁▁▁▁▁▁▁▁▁▁",
1192 r"█████████▁▁▁▁▁▁▁▁▁▁▁",
1193 r"██████████▁▁▁▁▁▁▁▁▁▁",
1194 r"███████████▁▁▁▁▁▁▁▁▁",
1195 r"█████████████▁▁▁▁▁▁▁",
1196 r"██████████████▁▁▁▁▁▁",
1197 r"██████████████▁▁▁▁▁▁",
1198 r"▁██████████████▁▁▁▁▁",
1199 r"▁██████████████▁▁▁▁▁",
1200 r"▁██████████████▁▁▁▁▁",
1201 r"▁▁██████████████▁▁▁▁",
1202 r"▁▁▁██████████████▁▁▁",
1203 r"▁▁▁▁█████████████▁▁▁",
1204 r"▁▁▁▁██████████████▁▁",
1205 r"▁▁▁▁██████████████▁▁",
1206 r"▁▁▁▁▁██████████████▁",
1207 r"▁▁▁▁▁██████████████▁",
1208 r"▁▁▁▁▁██████████████▁",
1209 r"▁▁▁▁▁▁██████████████",
1210 r"▁▁▁▁▁▁██████████████",
1211 r"▁▁▁▁▁▁▁█████████████",
1212 r"▁▁▁▁▁▁▁█████████████",
1213 r"▁▁▁▁▁▁▁▁████████████",
1214 r"▁▁▁▁▁▁▁▁████████████",
1215 r"▁▁▁▁▁▁▁▁▁███████████",
1216 r"▁▁▁▁▁▁▁▁▁███████████",
1217 r"▁▁▁▁▁▁▁▁▁▁██████████",
1218 r"▁▁▁▁▁▁▁▁▁▁██████████",
1219 r"▁▁▁▁▁▁▁▁▁▁▁▁████████",
1220 r"▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1221 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████",
1222 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1223 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1224 r"█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1225 r"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1226 r"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1227 r"███▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1228 r"████▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1229 r"█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1230 r"█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1231 r"██████▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1232 r"████████▁▁▁▁▁▁▁▁▁▁▁▁",
1233 r"█████████▁▁▁▁▁▁▁▁▁▁▁",
1234 r"█████████▁▁▁▁▁▁▁▁▁▁▁",
1235 r"█████████▁▁▁▁▁▁▁▁▁▁▁",
1236 r"█████████▁▁▁▁▁▁▁▁▁▁▁",
1237 r"███████████▁▁▁▁▁▁▁▁▁",
1238 r"████████████▁▁▁▁▁▁▁▁",
1239 r"████████████▁▁▁▁▁▁▁▁",
1240 r"██████████████▁▁▁▁▁▁",
1241 r"██████████████▁▁▁▁▁▁",
1242 r"▁██████████████▁▁▁▁▁",
1243 r"▁██████████████▁▁▁▁▁",
1244 r"▁▁▁█████████████▁▁▁▁",
1245 r"▁▁▁▁▁████████████▁▁▁",
1246 r"▁▁▁▁▁████████████▁▁▁",
1247 r"▁▁▁▁▁▁███████████▁▁▁",
1248 r"▁▁▁▁▁▁▁▁█████████▁▁▁",
1249 r"▁▁▁▁▁▁▁▁█████████▁▁▁",
1250 r"▁▁▁▁▁▁▁▁▁█████████▁▁",
1251 r"▁▁▁▁▁▁▁▁▁█████████▁▁",
1252 r"▁▁▁▁▁▁▁▁▁▁█████████▁",
1253 r"▁▁▁▁▁▁▁▁▁▁▁████████▁",
1254 r"▁▁▁▁▁▁▁▁▁▁▁████████▁",
1255 r"▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
1256 r"▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
1257 r"▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1258 r"▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1259 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1260 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1261 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1262 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1263 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1264 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1265 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1266 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1267 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1268 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1269 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1270 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1271 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1272 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1273 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1274 r"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁"
1275 ],
1276 "moon".into() => vec![
1277 r"🌑 ",
1278 r"🌒 ",
1279 r"🌓 ",
1280 r"🌔 ",
1281 r"🌕 ",
1282 r"🌖 ",
1283 r"🌗 ",
1284 r"🌘 "
1285 ],
1286 "runner".into() => vec![
1287 r"🚶 ",
1288 r"🏃 "
1289 ],
1290 "pong".into() => vec![
1291 r"▐⠂ ▌",
1292 r"▐⠈ ▌",
1293 r"▐ ⠂ ▌",
1294 r"▐ ⠠ ▌",
1295 r"▐ ⡀ ▌",
1296 r"▐ ⠠ ▌",
1297 r"▐ ⠂ ▌",
1298 r"▐ ⠈ ▌",
1299 r"▐ ⠂ ▌",
1300 r"▐ ⠠ ▌",
1301 r"▐ ⡀ ▌",
1302 r"▐ ⠠ ▌",
1303 r"▐ ⠂ ▌",
1304 r"▐ ⠈ ▌",
1305 r"▐ ⠂▌",
1306 r"▐ ⠠▌",
1307 r"▐ ⡀▌",
1308 r"▐ ⠠ ▌",
1309 r"▐ ⠂ ▌",
1310 r"▐ ⠈ ▌",
1311 r"▐ ⠂ ▌",
1312 r"▐ ⠠ ▌",
1313 r"▐ ⡀ ▌",
1314 r"▐ ⠠ ▌",
1315 r"▐ ⠂ ▌",
1316 r"▐ ⠈ ▌",
1317 r"▐ ⠂ ▌",
1318 r"▐ ⠠ ▌",
1319 r"▐ ⡀ ▌",
1320 r"▐⠠ ▌"
1321 ],
1322 "shark".into() => vec![
1323 r"▐|\____________▌",
1324 r"▐_|\___________▌",
1325 r"▐__|\__________▌",
1326 r"▐___|\_________▌",
1327 r"▐____|\________▌",
1328 r"▐_____|\_______▌",
1329 r"▐______|\______▌",
1330 r"▐_______|\_____▌",
1331 r"▐________|\____▌",
1332 r"▐_________|\___▌",
1333 r"▐__________|\__▌",
1334 r"▐___________|\_▌",
1335 r"▐____________|\▌",
1336 r"▐____________/|▌",
1337 r"▐___________/|_▌",
1338 r"▐__________/|__▌",
1339 r"▐_________/|___▌",
1340 r"▐________/|____▌",
1341 r"▐_______/|_____▌",
1342 r"▐______/|______▌",
1343 r"▐_____/|_______▌",
1344 r"▐____/|________▌",
1345 r"▐___/|_________▌",
1346 r"▐__/|__________▌",
1347 r"▐_/|___________▌",
1348 r"▐/|____________▌"
1349 ],
1350 "dqpb".into() => vec![
1351 r"d",
1352 r"q",
1353 r"p",
1354 r"b"
1355 ],
1356 "weather".into() => vec![
1357 r"☀️ ",
1358 r"☀️ ",
1359 r"☀️ ",
1360 r"🌤 ",
1361 r"⛅️ ",
1362 r"🌥 ",
1363 r"☁️ ",
1364 r"🌧 ",
1365 r"🌨 ",
1366 r"🌧 ",
1367 r"🌨 ",
1368 r"🌧 ",
1369 r"🌨 ",
1370 r"⛈ ",
1371 r"🌨 ",
1372 r"🌧 ",
1373 r"🌨 ",
1374 r"☁️ ",
1375 r"🌥 ",
1376 r"⛅️ ",
1377 r"🌤 ",
1378 r"☀️ ",
1379 r"☀️ "
1380 ],
1381 "christmas".into() => vec![
1382 r"🌲",
1383 r"🎄"
1384 ],
1385 "grenade".into() => vec![
1386 r"، ",
1387 r"′ ",
1388 r" ´ ",
1389 r" ‾ ",
1390 r" ⸌ ",
1391 r" ⸊ ",
1392 r" | ",
1393 r" ⁎ ",
1394 r" ⁕ ",
1395 r" ෴ ",
1396 r" ⁓ ",
1397 r" ",
1398 r" ",
1399 r" "
1400 ],
1401 "point".into() => vec![
1402 r"∙∙∙",
1403 r"●∙∙",
1404 r"∙●∙",
1405 r"∙∙●",
1406 r"∙∙∙"
1407 ],
1408 "layer".into() => vec![
1409 r"-",
1410 r"=",
1411 r"≡"
1412 ],
1413 "betaWave".into() => vec![
1414 r"ρββββββ",
1415 r"βρβββββ",
1416 r"ββρββββ",
1417 r"βββρβββ",
1418 r"ββββρββ",
1419 r"βββββρβ",
1420 r"ββββββρ"
1421 ],
1422 "fingerDance".into() => vec![
1423 r"🤘 ",
1424 r"🤟 ",
1425 r"🖖 ",
1426 r"✋ ",
1427 r"🤚 ",
1428 r"👆 "
1429 ],
1430 "fistBump".into() => vec![
1431 r"🤜 🤛 ",
1432 r"🤜 🤛 ",
1433 r"🤜 🤛 ",
1434 r" 🤜 🤛 ",
1435 r" 🤜🤛 ",
1436 r" 🤜✨🤛 ",
1437 r"🤜 ✨ 🤛 "
1438 ],
1439 "soccerHeader".into() => vec![
1440 r" 🧑⚽️ 🧑 ",
1441 r"🧑 ⚽️ 🧑 ",
1442 r"🧑 ⚽️ 🧑 ",
1443 r"🧑 ⚽️ 🧑 ",
1444 r"🧑 ⚽️ 🧑 ",
1445 r"🧑 ⚽️ 🧑 ",
1446 r"🧑 ⚽️🧑 ",
1447 r"🧑 ⚽️ 🧑 ",
1448 r"🧑 ⚽️ 🧑 ",
1449 r"🧑 ⚽️ 🧑 ",
1450 r"🧑 ⚽️ 🧑 ",
1451 r"🧑 ⚽️ 🧑 "
1452 ],
1453 "mindblown".into() => vec![
1454 r"😐 ",
1455 r"😐 ",
1456 r"😮 ",
1457 r"😮 ",
1458 r"😦 ",
1459 r"😦 ",
1460 r"😧 ",
1461 r"😧 ",
1462 r"🤯 ",
1463 r"💥 ",
1464 r"✨ ",
1465 r" ",
1466 r" ",
1467 r" "
1468 ],
1469 "speaker".into() => vec![
1470 r"🔈 ",
1471 r"🔉 ",
1472 r"🔊 ",
1473 r"🔉 "
1474 ],
1475 "orangePulse".into() => vec![
1476 r"🔸 ",
1477 r"🔶 ",
1478 r"🟠 ",
1479 r"🟠 ",
1480 r"🔶 "
1481 ],
1482 "bluePulse".into() => vec![
1483 r"🔹 ",
1484 r"🔷 ",
1485 r"🔵 ",
1486 r"🔵 ",
1487 r"🔷 "
1488 ],
1489 "orangeBluePulse".into() => vec![
1490 r"🔸 ",
1491 r"🔶 ",
1492 r"🟠 ",
1493 r"🟠 ",
1494 r"🔶 ",
1495 r"🔹 ",
1496 r"🔷 ",
1497 r"🔵 ",
1498 r"🔵 ",
1499 r"🔷 "
1500 ],
1501 "timeTravel".into() => vec![
1502 r"🕛 ",
1503 r"🕚 ",
1504 r"🕙 ",
1505 r"🕘 ",
1506 r"🕗 ",
1507 r"🕖 ",
1508 r"🕕 ",
1509 r"🕔 ",
1510 r"🕓 ",
1511 r"🕒 ",
1512 r"🕑 ",
1513 r"🕐 "
1514 ],
1515 "aesthetic".into() => vec![
1516 r"▰▱▱▱▱▱▱",
1517 r"▰▰▱▱▱▱▱",
1518 r"▰▰▰▱▱▱▱",
1519 r"▰▰▰▰▱▱▱",
1520 r"▰▰▰▰▰▱▱",
1521 r"▰▰▰▰▰▰▱",
1522 r"▰▰▰▰▰▰▰",
1523 r"▰▱▱▱▱▱▱"
1524 ],
1525 }
1526 };
1527}