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
|
from typing import Dict, Final, Tuple
def get_font_map_ascii_basic() -> Dict[str, bytes]:
font = {
# U+0000..U+007F Basic Latin
" ": b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"!": b"\x00\x00\x00\x00\x7C\xFF\xFF\x7C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x33\x00\x00\x00\x00\x00",
'"': b"\x00\x00\x00\x3C\x3C\x00\x00\x3C\x3C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"#": b"\x00\x00\x10\x90\xF0\x7E\x1E\x90\xF0\x7E\x1E\x10\x00\x02\x1E\x1F\x03\x02\x1E\x1F\x03\x02\x00\x00",
"$": b"\x00\x00\x78\xFC\xCC\xFF\xFF\xCC\xCC\x88\x00\x00\x00\x00\x04\x0C\x0C\x3F\x3F\x0C\x0F\x07\x00\x00",
"%": b"\x00\x00\x38\x38\x38\x00\x80\xC0\xE0\x70\x38\x1C\x00\x30\x38\x1C\x0E\x07\x03\x01\x38\x38\x38\x00",
"&": b"\x00\x00\x00\xB8\xFC\xC6\xE2\x3E\x1C\x00\x00\x00\x00\x00\x1F\x3F\x31\x21\x37\x1E\x1C\x36\x22\x00",
"'": b"\x00\x00\x00\x00\x27\x3F\x1F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"(": b"\x00\x00\x00\xF0\xFC\xFE\x07\x01\x01\x00\x00\x00\x00\x00\x00\x03\x0F\x1F\x38\x20\x20\x00\x00\x00",
")": b"\x00\x00\x00\x01\x01\x07\xFE\xFC\xF0\x00\x00\x00\x00\x00\x00\x20\x20\x38\x1F\x0F\x03\x00\x00\x00",
"*": b"\x00\x00\x98\xB8\xE0\xF8\xF8\xE0\xB8\x98\x00\x00\x00\x00\x0C\x0E\x03\x0F\x0F\x03\x0E\x0C\x00\x00",
"+": b"\x00\x00\x80\x80\x80\xF0\xF0\x80\x80\x80\x00\x00\x00\x00\x01\x01\x01\x0F\x0F\x01\x01\x01\x00\x00",
",": b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xB8\xF8\x78\x00\x00\x00\x00\x00",
"-": b"\x00\x00\x80\x80\x80\x80\x80\x80\x80\x80\x00\x00\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00",
".": b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x38\x38\x00\x00\x00\x00\x00",
"/": b"\x00\x00\x00\x00\x00\x80\xC0\xE0\x70\x38\x1C\x0E\x00\x18\x1C\x0E\x07\x03\x01\x00\x00\x00\x00\x00",
"0": b"\x00\xF8\xFE\x06\x03\x83\xC3\x63\x33\x1E\xFE\xF8\x00\x07\x1F\x1E\x33\x31\x30\x30\x30\x18\x1F\x07",
"1": b"\x00\x00\x00\x0C\x0C\x0E\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x30\x30\x30\x3F\x3F\x30\x30\x30\x00",
"2": b"\x00\x1C\x1E\x07\x03\x03\x83\xC3\xE3\x77\x3E\x1C\x00\x30\x38\x3C\x3E\x37\x33\x31\x30\x30\x30\x30",
"3": b"\x00\x0C\x0E\x07\xC3\xC3\xC3\xC3\xC3\xE7\x7E\x3C\x00\x0C\x1C\x38\x30\x30\x30\x30\x30\x39\x1F\x0E",
"4": b"\x00\xC0\xE0\x70\x38\x1C\x0E\x07\xFF\xFF\x00\x00\x00\x03\x03\x03\x03\x03\x03\x03\x3F\x3F\x03\x03",
"5": b"\x00\x3F\x7F\x63\x63\x63\x63\x63\x63\xE3\xC3\x83\x00\x0C\x1C\x38\x30\x30\x30\x30\x30\x38\x1F\x0F",
"6": b"\x00\xC0\xF0\xF8\xDC\xCE\xC7\xC3\xC3\xC3\x80\x00\x00\x0F\x1F\x39\x30\x30\x30\x30\x30\x39\x1F\x0F",
"7": b"\x00\x03\x03\x03\x03\x03\x03\xC3\xF3\x3F\x0F\x03\x00\x00\x00\x00\x30\x3C\x0F\x03\x00\x00\x00\x00",
"8": b"\x00\x00\xBC\xFE\xE7\xC3\xC3\xC3\xE7\xFE\xBC\x00\x00\x0F\x1F\x39\x30\x30\x30\x30\x30\x39\x1F\x0F",
"9": b"\x00\x3C\x7E\xE7\xC3\xC3\xC3\xC3\xC3\xE7\xFE\xFC\x00\x00\x00\x30\x30\x30\x38\x1C\x0E\x07\x03\x00",
":": b"\x00\x00\x00\x00\x70\x70\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1C\x1C\x1C\x00\x00\x00\x00\x00",
";": b"\x00\x00\x00\x00\x70\x70\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9C\xFC\x7C\x00\x00\x00\x00\x00",
"<": b"\x00\x00\xC0\xE0\xF0\x38\x1C\x0E\x07\x03\x00\x00\x00\x00\x00\x01\x03\x07\x0E\x1C\x38\x30\x00\x00",
"=": b"\x00\x00\x60\x60\x60\x60\x60\x60\x60\x60\x60\x00\x00\x00\x06\x06\x06\x06\x06\x06\x06\x06\x06\x00",
">": b"\x00\x00\x03\x07\x0E\x1C\x38\xF0\xE0\xC0\x00\x00\x00\x00\x30\x38\x1C\x0E\x07\x03\x01\x00\x00\x00",
"?": b"\x00\x1C\x1E\x07\x03\x83\xC3\xE3\x77\x3E\x1C\x00\x00\x00\x00\x00\x00\x37\x37\x00\x00\x00\x00\x00",
"@": b"\x00\xF8\xFE\x07\xF3\xFB\x1B\xFB\xFB\x07\xFE\xF8\x00\x0F\x1F\x18\x33\x37\x36\x37\x37\x36\x03\x01",
"A": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x07\x3F\x38\x00",
"B": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xE7\xFE\xBC\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x39\x1F\x0F\x00",
"C": b"\x00\xF0\xFC\x0E\x07\x03\x03\x03\x07\x0E\x0C\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"D": b"\x00\xFF\xFF\x03\x03\x03\x03\x07\x0E\xFC\xF0\x00\x00\x3F\x3F\x30\x30\x30\x30\x38\x1C\x0F\x03\x00",
"E": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"F": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"G": b"\x00\xF0\xFC\x0E\x07\x03\xC3\xC3\xC3\xC7\xC6\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x30\x3F\x3F\x00",
"H": b"\x00\xFF\xFF\xC0\xC0\xC0\xC0\xC0\xC0\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"I": b"\x00\x00\x00\x03\x03\xFF\xFF\x03\x03\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"J": b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\x00\x00\x0E\x1E\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"K": b"\x00\xFF\xFF\xC0\xE0\xF0\x38\x1C\x0E\x07\x03\x00\x00\x3F\x3F\x00\x01\x03\x07\x0E\x1C\x38\x30\x00",
"L": b"\x00\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"M": b"\x00\xFF\xFF\x1E\x78\xE0\xE0\x78\x1E\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x01\x01\x00\x00\x3F\x3F\x00",
"N": b"\x00\xFF\xFF\x0E\x38\xF0\xC0\x00\x00\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x03\x07\x1C\x3F\x3F\x00",
"O": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"P": b"\x00\xFF\xFF\x83\x83\x83\x83\x83\xC7\xFE\x7C\x00\x00\x3F\x3F\x01\x01\x01\x01\x01\x01\x00\x00\x00",
"Q": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x36\x3E\x1C\x3F\x33\x00",
"R": b"\x00\xFF\xFF\x83\x83\x83\x83\x83\xC7\xFE\x7C\x00\x00\x3F\x3F\x01\x01\x03\x07\x0F\x1D\x38\x30\x00",
"S": b"\x00\x3C\x7E\xE7\xC3\xC3\xC3\xC3\xC7\x8E\x0C\x00\x00\x0C\x1C\x38\x30\x30\x30\x30\x39\x1F\x0F\x00",
"T": b"\x00\x00\x03\x03\x03\xFF\xFF\x03\x03\x03\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"U": b"\x00\xFF\xFF\x00\x00\x00\x00\x00\x00\xFF\xFF\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"V": b"\x00\x07\x3F\xF8\xC0\x00\x00\xC0\xF8\x3F\x07\x00\x00\x00\x00\x01\x0F\x3E\x3E\x0F\x01\x00\x00\x00",
"W": b"\x00\xFF\xFF\x00\x00\x80\x80\x00\x00\xFF\xFF\x00\x00\x3F\x3F\x1C\x06\x03\x03\x06\x1C\x3F\x3F\x00",
"X": b"\x00\x03\x0F\x1C\x30\xE0\xE0\x30\x1C\x0F\x03\x00\x00\x30\x3C\x0E\x03\x01\x01\x03\x0E\x3C\x30\x00",
"Y": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"Z": b"\x00\x03\x03\x03\x03\xC3\xE3\x33\x1F\x0F\x03\x00\x00\x30\x3C\x3E\x33\x31\x30\x30\x30\x30\x30\x00",
"[": b"\x00\x00\x00\xFF\xFF\x03\x03\x03\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x00\x00\x00",
"\\": b"\x00\x0E\x1C\x38\x70\xE0\xC0\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x03\x07\x0E\x1C\x18",
"]": b"\x00\x00\x00\x03\x03\x03\x03\xFF\xFF\x00\x00\x00\x00\x00\x00\x30\x30\x30\x30\x3F\x3F\x00\x00\x00",
"^": b"\x00\x60\x70\x38\x1C\x0E\x07\x0E\x1C\x38\x70\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"_": b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xC0\xC0\xC0\xC0\xC0\xC0\xC0\xC0\xC0\xC0\xC0",
"`": b"\x00\x00\x00\x00\x00\x3E\x7E\x4E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"a": b"\x00\x00\x40\x60\x60\x60\x60\x60\x60\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"b": b"\x00\xFF\xFF\xC0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x38\x1F\x0F\x00",
"c": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\x60\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x18\x08\x00",
"d": b"\x00\x80\xC0\xE0\x60\x60\x60\xE0\xC0\xFF\xFF\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x3F\x3F\x00",
"e": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\x60\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x33\x33\x33\x13\x01\x00",
"f": b"\x00\xC0\xC0\xFC\xFE\xC7\xC3\xC3\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00",
"g": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\x60\xE0\xE0\x00\x00\x03\xC7\xCE\xCC\xCC\xCC\xCC\xE6\x7F\x3F\x00",
"h": b"\x00\xFF\xFF\xC0\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00\x00",
"i": b"\x00\x00\x00\x00\x60\xEC\xEC\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"j": b"\x00\x00\x00\x00\x00\x00\x60\xEC\xEC\x00\x00\x00\x00\x00\x00\x60\xE0\xC0\xC0\xFF\x7F\x00\x00\x00",
"k": b"\x00\x00\xFF\xFF\x00\x80\xC0\xE0\x60\x00\x00\x00\x00\x00\x3F\x3F\x03\x07\x0F\x1C\x38\x30\x00\x00",
"l": b"\x00\x00\x00\x00\x03\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"m": b"\x00\xE0\xC0\xE0\xE0\xC0\xC0\xE0\xE0\xC0\x80\x00\x00\x3F\x3F\x00\x00\x3F\x3F\x00\x00\x3F\x3F\x00",
"n": b"\x00\x00\xE0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"o": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"p": b"\x00\xE0\xE0\x60\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\xFF\xFF\x0C\x18\x18\x18\x18\x1C\x0F\x07\x00",
"q": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\x60\xE0\xE0\x00\x00\x07\x0F\x1C\x18\x18\x18\x18\x0C\xFF\xFF\x00",
"r": b"\x00\x00\xE0\xE0\xC0\x60\x60\x60\x60\xE0\xC0\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00",
"s": b"\x00\xC0\xE0\x60\x60\x60\x60\x60\x40\x00\x00\x00\x00\x11\x33\x33\x33\x33\x33\x3F\x1E\x00\x00\x00",
"t": b"\x00\x60\x60\xFE\xFE\x60\x60\x60\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x30\x00\x00\x00",
"u": b"\x00\xE0\xE0\x00\x00\x00\x00\x00\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"v": b"\x00\x60\xE0\x80\x00\x00\x00\x00\x80\xE0\x60\x00\x00\x00\x01\x07\x1E\x38\x38\x1E\x07\x01\x00\x00",
"w": b"\x00\xE0\xE0\x00\x00\xE0\xE0\x00\x00\xE0\xE0\x00\x00\x07\x1F\x38\x1C\x0F\x0F\x1C\x38\x1F\x07\x00",
"x": b"\x00\x60\xE0\xC0\x80\x00\x80\xC0\xE0\x60\x00\x00\x00\x30\x38\x1D\x0F\x07\x0F\x1D\x38\x30\x00\x00",
"y": b"\x00\x00\x60\xE0\x80\x00\x00\x80\xE0\x60\x00\x00\x00\x00\x00\x81\xE7\x7E\x1E\x07\x01\x00\x00\x00",
"z": b"\x00\x60\x60\x60\x60\x60\xE0\xE0\x60\x20\x00\x00\x00\x30\x38\x3C\x36\x33\x31\x30\x30\x30\x00\x00",
"{": b"\x00\x00\x80\xC0\xFC\x7E\x07\x03\x03\x03\x00\x00\x00\x00\x00\x01\x1F\x3F\x70\x60\x60\x60\x00\x00",
"|": b"\x00\x00\x00\x00\x00\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"}": b"\x00\x00\x03\x03\x03\x07\x7E\xFC\xC0\x80\x00\x00\x00\x00\x60\x60\x60\x70\x3F\x1F\x01\x00\x00\x00",
"~": b"\x00\x10\x18\x0C\x04\x0C\x18\x10\x18\x0C\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
}
return font
def get_font_map_latin_extended() -> Dict[str, bytes]:
font = {
# U+0080..U+00FF Latin-1 Supplement
"¡": b"\x00\x00\x00\x00\x80\xF3\xF3\x80\x00\x00\x00\x00\x00\x00\x00\x00\x0F\x3F\x3F\x0F\x00\x00\x00\x00",
"¢": b"\x00\x00\xE0\xF0\x38\xFE\xFE\x18\x38\x30\x00\x00\x00\x00\x03\x07\x0E\x3F\x3F\x0C\x0E\x06\x00\x00",
"£": b"\x00\x00\x00\x80\xF8\xFC\x8C\x8C\x1C\x18\x00\x00\x00\x00\x18\x1C\x1F\x0B\x18\x18\x18\x18\x08\x00",
"¤": b"\x00\xF6\xFE\x18\x0C\x0C\x0C\x0C\x18\xFE\xF6\x00\x00\x1B\x1F\x06\x0C\x0C\x0C\x0C\x06\x1F\x1B\x00",
"¥": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x00\x0A\x0A\x0A\x3F\x3F\x0A\x0A\x0A\x00\x00",
"¦": b"\x00\x00\x00\x00\x00\x1F\x1F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"§": b"\x00\x00\xDC\xFE\x22\x22\x22\x22\xE6\xC4\x00\x00\x00\x00\x08\x19\x11\x11\x11\x11\x1F\x0E\x00\x00",
"¨": b"\x00\x00\x00\x03\x03\x00\x00\x03\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"©": b"\x00\xF0\xF8\x1C\xCC\xEC\x2C\x6C\x4C\x1C\xF8\xF0\x00\x07\x0F\x1C\x19\x1B\x1A\x1B\x19\x1C\x0F\x07",
"«": b"\x00\x80\xC0\x60\x20\x00\x80\xC0\x60\x20\x00\x00\x00\x00\x01\x03\x02\x00\x00\x01\x03\x02\x00\x00",
"¬": b"\x18\x18\x18\x18\x18\x18\x18\x18\x18\xF8\xF8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x03\x00",
"®": b"\x00\xF0\xF8\x1C\xEC\xEC\xAC\xEC\x4C\x1C\xF8\xF0\x00\x07\x0F\x1C\x1B\x1B\x18\x1B\x1B\x1C\x0F\x07",
"¯": b"\x00\x00\x00\x00\x00\x0C\x0C\x0C\x0C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"°": b"\x00\x00\x00\x1E\x3F\x33\x33\x3F\x1E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"±": b"\x00\x00\x00\xC0\xC0\xF0\xF0\xC0\xC0\x00\x00\x00\x00\x00\x00\x18\x18\x1B\x1B\x18\x18\x00\x00\x00",
"²": b"\x00\x00\x19\x1D\x15\x17\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"³": b"\x00\x00\x11\x15\x15\x1F\x0A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"´": b"\x00\x00\x00\x00\x04\x06\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"µ": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x00\xFF\xFF\x0E\x0C\x0C\x0C\x06\x0F\x0F\x00\x00",
"¶": b"\x00\x38\x7C\xC6\x82\xFE\xFE\x02\xFE\xFE\x02\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x3F\x3F\x00\x00",
"¹": b"\x00\x00\x12\x1F\x1F\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"»": b"\x00\x20\x60\xC0\x80\x00\x20\x60\xC0\x80\x00\x00\x00\x02\x03\x01\x00\x00\x02\x03\x01\x00\x00\x00",
"¼": b"\x00\x48\x7C\x7C\x40\x80\xC0\x60\x30\x10\x00\x00\x00\x00\x04\x06\x03\x01\x06\x07\x04\x1F\x1F\x00",
"½": b"\x00\x48\x7C\x7C\x40\x80\xC0\x60\x30\x10\x00\x00\x00\x00\x04\x06\x03\x01\x00\x19\x1D\x17\x12\x00",
"¾": b"\x00\x44\x54\x7C\x28\x80\xC0\x60\x30\x10\x00\x00\x00\x00\x04\x06\x03\x01\x06\x07\x04\x1F\x1F\x00",
"¿": b"\x00\x00\x00\x80\xC0\xFB\x7B\x00\x00\x00\x00\x00\x00\x0E\x1F\x3B\x31\x30\x30\x30\x38\x1E\x0E\x00",
"À": b"\x00\x00\x00\x80\xE1\x7B\x7E\xE4\x80\x00\x00\x00\x00\x38\x3E\x0F\x0D\x0C\x0C\x0D\x0F\x3E\x38\x00",
"Á": b"\x00\x00\x00\x80\xE4\x7E\x7B\xE1\x80\x00\x00\x00\x00\x38\x3E\x0F\x0D\x0C\x0C\x0D\x0F\x3E\x38\x00",
"Â": b"\x00\x00\x00\x84\xE6\x7B\x7B\xE6\x84\x00\x00\x00\x00\x38\x3E\x0F\x0D\x0C\x0C\x0D\x0F\x3E\x38\x00",
"Ã": b"\x00\x00\x00\x82\xE3\x79\x7B\xE2\x83\x01\x00\x00\x00\x38\x3E\x0F\x0D\x0C\x0C\x0D\x0F\x3E\x38\x00",
"Ä": b"\x00\x00\x00\x83\xE3\x78\x78\xE3\x83\x00\x00\x00\x00\x38\x3E\x0F\x0D\x0C\x0C\x0D\x0F\x3E\x38\x00",
"Å": b"\x00\x00\x00\x80\xE2\x75\x75\xE2\x80\x00\x00\x00\x00\x38\x3E\x0F\x0D\x0C\x0C\x0D\x0F\x3E\x38\x00",
"Æ": b"\x00\x00\x80\xF0\x7C\x1F\xFF\xFF\xC3\xC3\x03\x00\x00\x3C\x3F\x07\x06\x06\x3F\x3F\x30\x30\x30\x00",
"Ç": b"\x00\xF0\xFC\x0E\x07\x03\x03\x03\x07\x1E\x1C\x00\x00\x01\x07\xCE\xDC\xF8\xF8\x18\x1C\x0E\x06\x00",
"È": b"\x00\xF8\xF8\x99\x9B\x9E\x9C\x98\x98\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"É": b"\x00\xF8\xF8\x98\x98\x9C\x9E\x9B\x99\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"Ê": b"\x00\xF8\xF8\x9C\x9E\x9B\x9B\x9E\x9C\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"Ë": b"\x00\xF8\xF8\x9B\x9B\x98\x98\x9B\x9B\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"Ì": b"\x00\x00\x00\x19\x1B\xFE\xFC\x18\x18\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Í": b"\x00\x00\x00\x18\x18\xFC\xFE\x1B\x19\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Î": b"\x00\x00\x00\x1C\x1E\xFB\xFB\x1E\x1C\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ï": b"\x00\x00\x00\x1B\x1B\xF8\xF8\x1B\x1B\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ð": b"\x00\xC0\xFF\xFF\xC3\x03\x03\x07\x0E\xFC\xF0\x00\x00\x00\x3F\x3F\x30\x30\x30\x38\x1C\x0F\x03\x00",
"Ñ": b"\x00\xF8\xF8\x72\xE3\xC1\x83\x02\x03\xF9\xF8\x00\x00\x3F\x3F\x00\x00\x01\x03\x07\x0E\x3F\x3F\x00",
"Ò": b"\x00\xE0\xF0\x39\x1B\x1E\x1C\x18\x38\xF0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Ó": b"\x00\xE0\xF0\x38\x18\x1C\x1E\x1B\x39\xF0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Ô": b"\x00\xE0\xF0\x3C\x1E\x1B\x1B\x1E\x3C\xF0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Õ": b"\x00\xE0\xF0\x3A\x1B\x19\x1B\x1A\x3B\xF1\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Ö": b"\x00\xE0\xF0\x3B\x1B\x18\x18\x1B\x3B\xF0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"×": b"\x00\xF0\xF8\x1C\x0C\x8C\xEC\x7C\x18\xFC\xF4\x00\x00\x2F\x3F\x18\x3E\x37\x31\x30\x38\x1F\x0F\x00",
"Ù": b"\x00\xF8\xF8\x01\x03\x06\x04\x00\x00\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"Ú": b"\x00\xF8\xF8\x00\x00\x04\x06\x03\x01\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"Û": b"\x00\xF8\xF8\x04\x06\x03\x03\x06\x04\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"Ü": b"\x00\xF8\xF8\x03\x03\x00\x00\x03\x03\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"Ý": b"\x00\x08\x18\x30\x60\xC4\xC6\x63\x31\x18\x08\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"ß": b"\x00\x00\xC0\xE0\x30\x10\x10\x30\xE0\xC0\x00\x00\x00\x00\xFF\xFF\x21\x21\x21\x33\x3F\x1E\x00\x00",
"à": b"\x00\x00\x40\x60\x62\x66\x6C\x68\x60\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"á": b"\x00\x00\x40\x60\x68\x6C\x66\x62\x60\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"â": b"\x00\x00\x40\x68\x6C\x66\x66\x6C\x68\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"ã": b"\x00\x00\x40\x68\x6C\x64\x6C\x68\x6C\xE4\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"ä": b"\x00\x00\x40\x6C\x6C\x60\x60\x6C\x6C\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"å": b"\x00\x00\x40\x60\x64\x6A\x6A\x64\x60\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"æ": b"\x00\x80\xC0\x40\x40\xC0\x80\x40\x40\xC0\x80\x00\x00\x1C\x3E\x22\x22\x1F\x3F\x22\x22\x33\x11\x00",
"ç": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x0F\x1F\xB8\xB0\xF0\xF0\x30\x38\x18\x08\x00",
"è": b"\x00\x80\xC0\xE0\x62\x66\x6C\x68\x60\xC0\x80\x00\x00\x0F\x1F\x33\x33\x33\x33\x33\x33\x13\x03\x00",
"é": b"\x00\x80\xC0\xE0\x60\x68\x6C\x66\x62\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x33\x33\x33\x13\x03\x00",
"ê": b"\x00\x80\xC0\xE8\x6C\x66\x66\x6C\x68\xC0\x80\x00\x00\x0F\x1F\x33\x33\x33\x33\x33\x33\x13\x03\x00",
"ë": b"\x00\x80\xC0\xEC\x6C\x60\x60\x6C\x6C\xC0\x80\x00\x00\x0F\x1F\x33\x33\x33\x33\x33\x33\x13\x03\x00",
"ì": b"\x00\x00\x00\x00\x62\xE6\xEC\x08\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"í": b"\x00\x00\x00\x00\x68\xEC\xE6\x02\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"î": b"\x00\x00\x00\x08\x6C\xE6\xE6\x0C\x08\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ï": b"\x00\x00\x00\x0C\x6C\xE0\xEC\x0C\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ñ": b"\x00\x00\xE0\xE8\x6C\x64\x6C\x68\xEC\xC4\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"ò": b"\x00\x80\xC0\xE0\x62\x66\x6C\x68\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"ó": b"\x00\x80\xC0\xE0\x68\x6C\x66\x62\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"ô": b"\x00\x80\xC0\xE8\x6C\x66\x66\x6C\xE8\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"õ": b"\x00\x80\xC8\xEC\x64\x6C\x68\x6C\xE4\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"ö": b"\x00\x80\xC0\xEC\x6C\x60\x60\x6C\xEC\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"÷": b"\x00\x00\x80\x80\x80\xB0\xB0\x80\x80\x80\x00\x00\x00\x00\x01\x01\x01\x0D\x0D\x01\x01\x01\x00\x00",
"ø": b"\x00\x80\xC0\xE0\x60\x60\x60\xE0\xC0\xE0\xA0\x00\x00\x2F\x3F\x18\x3C\x36\x33\x31\x38\x1F\x0F\x00",
"ù": b"\x00\xE0\xE0\x00\x02\x06\x0C\x08\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"ú": b"\x00\xE0\xE0\x00\x08\x0C\x06\x02\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"û": b"\x00\xE0\xE0\x08\x0C\x06\x06\x0C\x08\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"ü": b"\x00\xE0\xE0\x0C\x0C\x00\x00\x0C\x0C\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"ý": b"\x00\x00\x60\xE0\x80\x10\x18\x8C\xE4\x60\x00\x00\x00\x00\x00\x81\xE7\x7E\x1E\x07\x01\x00\x00\x00",
"þ": b"\x00\x00\x03\xFF\xFF\x1B\x18\x18\xF8\xF0\x00\x00\x00\x00\x30\x3F\x3F\x36\x06\x06\x07\x03\x00\x00",
"ÿ": b"\x00\x00\x60\xEC\x8C\x00\x00\x8C\xEC\x60\x00\x00\x00\x00\x00\x81\xE7\x7E\x1E\x07\x01\x00\x00\x00",
# U+0100..U+017F Latin Extended A
"Ā": b"\x00\x00\x00\xE0\xF9\x1D\x1D\xF9\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x07\x3F\x38\x00",
"ā": b"\x00\x00\x40\x60\x68\x68\x68\x68\x68\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"Ă": b"\x00\x00\x00\xE0\xF9\x1A\x1A\xF9\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x07\x3F\x38\x00",
"ă": b"\x00\x00\x40\x60\x64\x68\x68\x68\x64\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"Ą": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x67\xBF\xB8\x00",
"ą": b"\x00\x00\x40\x60\x60\x60\x60\x60\x60\xE0\xC0\x00\x00\x1C\x3E\x33\x33\x33\x33\x33\x73\xBF\xBF\x00",
"Ć": b"\x00\x80\xE0\x70\x38\x18\x1A\x1B\x39\x70\x60\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"ć": b"\x00\x80\xC0\xE0\x60\x60\x68\x6C\x64\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x18\x08\x00",
"Ĉ": b"\x00\x80\xE0\x70\x3A\x1B\x19\x1B\x3A\x70\x60\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"ĉ": b"\x00\x80\xC0\xE0\x68\x6C\x64\x6C\x68\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x18\x08\x00",
"Ċ": b"\x00\x80\xE0\x70\x38\x18\x1A\x18\x38\x70\x60\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"ċ": b"\x00\x80\xC0\xE0\x60\x60\x68\x60\x60\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x18\x08\x00",
"Č": b"\x00\x80\xE0\x70\x39\x1B\x1A\x1B\x39\x70\x60\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"č": b"\x00\x80\xC0\xE0\x64\x6C\x68\x6C\x64\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x18\x08\x00",
"Ď": b"\x00\xF8\xF8\x19\x1B\x1A\x1B\x39\x70\xE0\x80\x00\x00\x3F\x3F\x30\x30\x30\x30\x38\x1C\x0F\x03\x00",
"ď": b"\x00\x80\xC0\xE0\x60\x60\xE0\xFF\xFF\x00\x05\x03\x00\x0F\x1F\x38\x30\x30\x30\x3F\x3F\x00\x00\x00",
"Đ": b"\xC0\xFF\xFF\xC3\xC3\x03\x03\x07\x0E\xFC\xF0\x00\x00\x3F\x3F\x30\x30\x30\x30\x38\x1C\x0F\x03\x00",
"đ": b"\x00\x80\xC0\xE0\x60\x60\x60\xE4\xC4\xFF\xFF\x04\x00\x0F\x1F\x38\x30\x30\x30\x30\x30\x3F\x3F\x00",
"Ē": b"\x00\xFC\xFC\x8C\x8D\x8D\x8D\x8D\x8C\x0C\x0C\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"ē": b"\x00\x80\xC0\xE0\x68\x68\x68\x68\x68\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x33\x33\x33\x13\x01\x00",
"Ĕ": b"\x00\xF8\xF8\x98\x99\x9A\x9A\x99\x98\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"ĕ": b"\x00\x80\xC0\xE0\x64\x68\x68\x68\x64\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x33\x33\x33\x13\x01\x00",
"Ė": b"\x00\xF8\xF8\x98\x98\x98\x9A\x98\x98\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"ė": b"\x00\x80\xC0\xE0\x60\x60\x68\x60\x60\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x33\x33\x33\x13\x01\x00",
"Ę": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x70\xB0\xB0\x00",
"ę": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\x60\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x73\xB3\xB3\x13\x01\x00",
"Ě": b"\x00\xF8\xF8\x98\x99\x9B\x9A\x9B\x99\x18\x18\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"ě": b"\x00\x80\xC0\xE0\x64\x6C\x68\x6C\x64\xC0\x80\x00\x00\x0F\x1F\x3B\x33\x33\x33\x33\x33\x13\x01\x00",
"Ĝ": b"\x00\x80\xE0\x70\x1A\x1B\x19\x1B\x1A\x38\x30\x00\x00\x03\x0F\x1C\x38\x30\x33\x33\x33\x3F\x3F\x00",
"ĝ": b"\x00\x80\xC0\xE0\x68\x6C\x64\x6C\x68\xE0\xE0\x00\x00\x03\xC7\xCE\xCC\xCC\xCC\xCC\xE6\x7F\x3F\x00",
"Ğ": b"\x00\x80\xE0\x70\x1A\x19\x19\x19\x1A\x38\x30\x00\x00\x03\x0F\x1C\x38\x30\x33\x33\x33\x3F\x3F\x00",
"ğ": b"\x00\x80\xC0\xE0\x68\x64\x64\x64\x68\xE0\xE0\x00\x00\x03\xC7\xCE\xCC\xCC\xCC\xCC\xE6\x7F\x3F\x00",
"Ġ": b"\x00\x80\xE0\x70\x18\x18\x1A\x18\x18\x38\x30\x00\x00\x03\x0F\x1C\x38\x30\x33\x33\x33\x3F\x3F\x00",
"ġ": b"\x00\x80\xC0\xE0\x60\x60\x68\x60\x60\xE0\xE0\x00\x00\x03\xC7\xCE\xCC\xCC\xCC\xCC\xE6\x7F\x3F\x00",
"Ģ": b"\x00\xF0\xFC\x0E\x07\x03\xC3\xC3\xC3\xC7\xC6\x00\x00\x03\x0F\x1C\x38\x30\xB0\x70\x30\x3F\x3F\x00",
"ģ": b"\x00\x80\xC0\xE0\x60\x60\x6C\x6A\x60\xE0\xE0\x00\x00\x03\xC7\xCE\xCC\xCC\xCC\xCC\xE6\x7F\x3F\x00",
"Ĥ": b"\x00\xFC\xFC\x80\x82\x81\x81\x82\x80\xFC\xFC\x00\x00\x3F\x3F\x01\x01\x01\x01\x01\x01\x3F\x3F\x00",
"ĥ": b"\x00\xFE\xFE\xC0\x62\x63\x61\xE3\xC2\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00\x00",
"Ħ": b"\x02\xFF\xFF\xC2\xC2\xC2\xC2\xC2\xC2\xFF\xFF\x02\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"ħ": b"\x04\xFF\xFF\xC4\x64\x60\x60\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00\x00",
"Ĩ": b"\x00\x00\x00\x1A\x19\xFB\xFB\x1A\x19\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ĩ": b"\x00\x00\x00\x08\x64\xEC\xE8\x04\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ī": b"\x00\x00\x00\x0C\x0D\xFD\xFD\x0D\x0C\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ī": b"\x00\x00\x00\x08\x68\xE8\xE8\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ĭ": b"\x00\x00\x00\x18\x19\xFA\xFA\x19\x18\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ĭ": b"\x00\x00\x00\x00\x64\xE8\xE8\x04\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Į": b"\x00\x00\x00\x03\x03\xFF\xFF\x03\x03\x00\x00\x00\x00\x00\x00\x30\x30\x7F\xBF\xB0\x30\x00\x00\x00",
"į": b"\x00\x00\x00\x00\x60\xEC\xEC\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\x7F\xBF\xB0\x30\x00\x00\x00",
"İ": b"\x00\x00\x00\x18\x18\xF8\xFA\x18\x18\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ı": b"\x00\x00\x00\x00\x60\xE0\xE0\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"IJ": b"\x00\x03\xFF\xFF\x03\x00\x00\x00\x03\xFF\xFF\x00\x00\x30\x3F\x3F\x30\x0C\x1C\x30\x30\x3F\x1F\x00",
"ij": b"\x00\x00\x20\xEC\xEC\x00\x00\x20\xEC\xEC\x00\x00\x00\x00\x30\x3F\x3F\x70\xC0\xC0\xFF\x7F\x00\x00",
"Ĵ": b"\x00\x00\x00\x00\x02\x03\x01\x03\x02\xF8\xF8\x00\x00\x0E\x1E\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"ĵ": b"\x00\x00\x00\x00\x00\x08\x6C\xE4\xEC\x08\x00\x00\x00\x00\x00\x60\xE0\xC0\xC0\xFF\x7F\x00\x00\x00",
"Ķ": b"\x00\xFF\xFF\xC0\xE0\xF0\x38\x1C\x0E\x07\x03\x00\x00\x3F\x3F\x00\x01\xA3\x67\x0E\x1C\x38\x30\x00",
"ķ": b"\x00\x00\xFF\xFF\x00\x80\xC0\xE0\x60\x00\x00\x00\x00\x00\x3F\x3F\x03\xA7\x6F\x1C\x38\x30\x00\x00",
"ĸ": b"\x00\x00\xE0\xE0\x00\x80\xC0\xE0\x60\x20\x00\x00\x00\x00\x3F\x3F\x03\x07\x0F\x1C\x38\x30\x00\x00",
"Ĺ": b"\x00\xF8\xFA\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"ĺ": b"\x00\x00\x00\x00\x18\xFA\xFB\x01\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ļ": b"\x00\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\xB0\x70\x30\x30\x30\x30\x00",
"ļ": b"\x00\x00\x00\x00\x03\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\xBF\x7F\x30\x30\x00\x00\x00",
"Ľ": b"\x00\xFF\xFF\x00\x00\x05\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"ľ": b"\x00\x00\x00\x00\x03\xFF\xFF\x00\x05\x03\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ŀ": b"\x00\xFF\xFF\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"ŀ": b"\x00\x00\x00\x00\x03\xFF\xFF\x00\x40\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ł": b"\x80\xFF\xFF\x20\x10\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"ł": b"\x00\x00\x00\x00\x83\xFF\xFF\x20\x10\x00\x00\x00\x00\x00\x00\x31\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ń": b"\x00\xFF\xFF\x0E\x38\xF2\xC3\x01\x00\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x03\x07\x1C\x3F\x3F\x00",
"ń": b"\x00\x00\xE0\xE0\x60\x68\x6C\x64\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"Ņ": b"\x00\xFF\xFF\x0E\x38\xF0\xC0\x00\x00\xFF\xFF\x00\x00\x3F\x3F\x00\x00\xA0\x63\x07\x1C\x3F\x3F\x00",
"ņ": b"\x00\x00\xE0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\xA0\x60\x00\x3F\x3F\x00",
"Ň": b"\x00\xFF\xFF\x0E\x38\xF1\xC2\x01\x00\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x03\x07\x1C\x3F\x3F\x00",
"ň": b"\x00\x00\xE0\xE0\x64\x6C\x68\x6C\xE4\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"ʼn": b"\x00\x0A\xE6\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"Ŋ": b"\x00\x00\xFF\xFF\x06\x03\x03\x03\x07\xFE\xFC\x00\x00\x00\x3F\x3F\x00\x00\x20\x20\x30\x1F\x0F\x00",
"ŋ": b"\x00\x00\xE0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x3F\x3F\x00\x00\x00\xC0\xC0\xFF\x7F\x00",
"Ō": b"\x00\xC0\xF0\x38\x1D\x0D\x0D\x1D\x38\xF0\xC0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"ō": b"\x00\x80\xC0\xE0\x68\x68\x68\x68\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Ŏ": b"\x00\x80\xE0\x70\x39\x1A\x1A\x39\x70\xE0\x80\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"ŏ": b"\x00\x80\xC0\xE0\x64\x68\x68\x64\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Ő": b"\x00\x80\xE0\x70\x3A\x19\x1A\x39\x70\xE0\x80\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"ő": b"\x00\x80\xC0\xE0\x68\x64\x68\x64\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Œ": b"\xF0\xFC\x0E\x03\x03\x07\xFE\xFF\xC3\xC3\xC3\x00\x03\x0F\x1C\x30\x30\x38\x1F\x3F\x30\x30\x30\x00",
"œ": b"\x80\xC0\xE0\x60\x60\xE0\xC0\x60\x60\x60\x40\x80\x0F\x1F\x38\x30\x30\x1F\x1F\x3B\x33\x33\x1B\x09",
"Ŕ": b"\x00\xF8\xF8\x98\x98\x9A\x9B\x99\xF8\xF0\x60\x00\x00\x3F\x3F\x01\x01\x03\x07\x0F\x1D\x38\x30\x00",
"ŕ": b"\x00\x00\xE0\xE0\xC0\x60\x68\x6C\x64\xE0\xC0\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00",
"Ŗ": b"\x00\xFF\xFF\x83\x83\x83\x83\x83\xC7\xFE\x7C\x00\x00\x3F\x3F\x01\x01\xA3\x67\x0F\x1D\x38\x30\x00",
"ŗ": b"\x00\x00\xE0\xE0\xC0\x60\x60\x60\x60\xE0\xC0\x00\x00\x00\x3F\x3F\x00\xA0\x60\x00\x00\x00\x00\x00",
"Ř": b"\x00\xF8\xF8\x99\x9B\x9A\x9B\x99\xF8\xF0\x60\x00\x00\x3F\x3F\x01\x01\x03\x07\x0F\x1D\x38\x30\x00",
"ř": b"\x00\x00\xE0\xE0\xC4\x6C\x68\x6C\x64\xE0\xC0\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00",
"Ś": b"\x00\x60\xF0\xF8\x98\x9A\x9B\x99\x98\x30\x20\x00\x00\x0C\x1C\x39\x31\x31\x31\x31\x3B\x1F\x0E\x00",
"ś": b"\x00\xC0\xE0\x60\x68\x6C\x64\x60\x40\x00\x00\x00\x00\x11\x33\x33\x33\x33\x33\x3F\x1E\x00\x00\x00",
"Ŝ": b"\x00\x60\xF0\xF8\x9A\x9B\x99\x9B\x9A\x30\x20\x00\x00\x0C\x1C\x39\x31\x31\x31\x31\x3B\x1F\x0E\x00",
"ŝ": b"\x00\xC0\xE0\x68\x6C\x64\x6C\x68\x40\x00\x00\x00\x00\x11\x33\x33\x33\x33\x33\x3F\x1E\x00\x00\x00",
"Ş": b"\x00\x3C\x7E\xE7\xC3\xC3\xC3\xC3\xC7\x8E\x0C\x00\x00\x0C\x1C\x38\x30\xB0\xF0\x30\x39\x1F\x0F\x00",
"ş": b"\x00\xC0\xE0\x60\x60\x60\x60\x60\x40\x00\x00\x00\x00\x11\x33\x33\xB3\xF3\x33\x3F\x1E\x00\x00\x00",
"Š": b"\x00\x60\xF0\xF8\x99\x9B\x9A\x9B\x99\x30\x20\x00\x00\x0C\x1C\x39\x31\x31\x31\x31\x3B\x1F\x0E\x00",
"š": b"\x00\xC0\xE0\x64\x6C\x68\x6C\x64\x40\x00\x00\x00\x00\x11\x33\x33\x33\x33\x33\x3F\x1E\x00\x00\x00",
"Ţ": b"\x00\x00\x03\x03\x03\xFF\xFF\x03\x03\x03\x00\x00\x00\x00\x00\x00\x00\xBF\xBF\x60\x00\x00\x00\x00",
"ţ": b"\x00\x60\x60\xFE\xFE\x60\x60\x60\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\xB0\xB0\xF0\x30\x00\x00\x00",
"Ť": b"\x00\x00\x18\x19\x1B\xFA\xFA\x1B\x19\x18\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"ť": b"\x00\x60\x60\xFE\xFE\x60\x65\x63\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x30\x00\x00\x00",
"Ŧ": b"\x00\x00\x03\xC3\xC3\xFF\xFF\xC3\xC3\x03\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"ŧ": b"\x00\x30\x30\xFE\xFE\x30\x30\x30\x00\x00\x00\x00\x00\x03\x03\x1F\x3F\x33\x33\x30\x30\x00\x00\x00",
"Ũ": b"\x00\xF8\xF8\x02\x01\x03\x03\x02\x01\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"ũ": b"\x00\xE0\xE0\x08\x04\x0C\x0C\x08\x04\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"Ū": b"\x00\xFC\xFC\x00\x01\x01\x01\x01\x00\xFC\xFC\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"ū": b"\x00\xE0\xE0\x00\x08\x08\x08\x08\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"Ŭ": b"\x00\xFC\xFC\x00\x01\x02\x02\x01\x00\xFC\xFC\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"ŭ": b"\x00\xE0\xE0\x00\x04\x08\x08\x04\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"Ů": b"\x00\xF8\xF8\x00\x06\x09\x09\x06\x00\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"ů": b"\x00\xE0\xE0\x00\x0C\x12\x12\x0C\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"Ű": b"\x00\xF8\xF8\x00\x02\x01\x02\x01\x00\xF8\xF8\x00\x00\x07\x1F\x38\x30\x30\x30\x30\x38\x1F\x07\x00",
"ű": b"\x00\xE0\xE0\x00\x08\x04\x08\x04\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x00",
"Ų": b"\x00\xFF\xFF\x00\x00\x00\x00\x00\x00\xFF\xFF\x00\x00\x07\x1F\x38\x30\xF0\xB0\xB0\x38\x1F\x07\x00",
"ų": b"\x00\xE0\xE0\x00\x00\x00\x00\x00\x00\xE0\xE0\x00\x00\x0F\x1F\x38\x30\xF0\xB0\xB0\x18\x3F\x3F\x00",
"Ŵ": b"\x00\xFC\xFC\x00\x02\x81\x81\x02\x00\xFC\xFC\x00\x00\x3F\x3F\x1C\x06\x03\x03\x06\x1C\x3F\x3F\x00",
"ŵ": b"\x00\xE0\xE0\x00\x04\xE8\xE8\x04\x00\xE0\xE0\x00\x00\x07\x1F\x38\x1C\x0F\x0F\x1C\x38\x1F\x07\x00",
"Ŷ": b"\x00\x02\x0E\x3C\xF2\xC1\xC1\xF2\x3C\x0E\x02\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"ŷ": b"\x00\x00\x60\xE0\x88\x04\x04\x88\xE0\x60\x00\x00\x00\x00\x00\x81\xE7\x7E\x1E\x07\x01\x00\x00\x00",
"Ÿ": b"\x00\x02\x0E\x3C\xF1\xC0\xC0\xF1\x3C\x0E\x02\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"Ź": b"\x00\x18\x18\x18\x18\x1A\x9B\xD9\xF8\x78\x38\x00\x00\x30\x38\x3C\x3E\x37\x33\x31\x30\x30\x30\x00",
"ź": b"\x00\x60\x60\x60\x68\x6C\xE4\xE0\x60\x20\x00\x00\x00\x30\x38\x3C\x36\x33\x31\x30\x30\x30\x00\x00",
"Ż": b"\x00\x18\x18\x18\x18\x18\x9A\xD8\xF8\x78\x38\x00\x00\x30\x38\x3C\x3E\x37\x33\x31\x30\x30\x30\x00",
"ż": b"\x00\x60\x60\x60\x60\x68\xE0\xE0\x60\x20\x00\x00\x00\x30\x38\x3C\x36\x33\x31\x30\x30\x30\x00\x00",
"Ž": b"\x00\x18\x18\x18\x19\x1B\x9A\xDB\xF9\x78\x38\x00\x00\x30\x38\x3C\x3E\x37\x33\x31\x30\x30\x30\x00",
"ž": b"\x00\x60\x60\x64\x6C\x68\xEC\xE4\x60\x20\x00\x00\x00\x30\x38\x3C\x36\x33\x31\x30\x30\x30\x00\x00",
"ſ": b"\x00\x00\x00\x00\xFC\xFE\x06\x06\x0E\x0C\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x00\x00\x00\x00\x00",
}
return font
def get_font_map_greek() -> Dict[str, bytes]:
font = {
# U+0370..U+03FF Greek and Coptic
"Έ": b"\x06\xFC\xFC\x8C\x8C\x8C\x8C\x8C\x8C\x0C\x0C\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"Α": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x07\x3F\x38\x00",
"Β": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xE7\xFE\xBC\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x39\x1F\x0F\x00",
"Γ": b"\x00\xFF\xFF\x03\x03\x03\x03\x03\x03\x03\x03\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"Δ": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x37\x30\x30\x30\x30\x37\x3F\x38\x00",
"Ε": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"Ζ": b"\x00\x03\x03\x03\x03\xC3\xE3\x33\x1F\x0F\x03\x00\x00\x30\x3C\x3E\x33\x31\x30\x30\x30\x30\x30\x00",
"Η": b"\x00\xFF\xFF\xC0\xC0\xC0\xC0\xC0\xC0\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"Θ": b"\x00\xF0\xFC\x0E\xC7\xC3\xC3\xC7\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"Ι": b"\x00\x00\x00\x03\x03\xFF\xFF\x03\x03\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Κ": b"\x00\xFF\xFF\xC0\xE0\xF0\x38\x1C\x0E\x07\x03\x00\x00\x3F\x3F\x00\x01\x03\x07\x0E\x1C\x38\x30\x00",
"Λ": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x00\x00\x00\x00\x07\x3F\x38\x00",
"Μ": b"\x00\xFF\xFF\x1E\x78\xE0\xE0\x78\x1E\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x01\x01\x00\x00\x3F\x3F\x00",
"Ν": b"\x00\xFF\xFF\x0E\x38\xF0\xC0\x00\x00\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x03\x07\x1C\x3F\x3F\x00",
"Ξ": b"\x00\x03\x03\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x30\x30\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"Ο": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"Π": b"\x00\xFF\xFF\x03\x03\x03\x03\x03\x03\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"Ρ": b"\x00\xFF\xFF\x83\x83\x83\x83\x83\xC7\xFE\x7C\x00\x00\x3F\x3F\x01\x01\x01\x01\x01\x01\x00\x00\x00",
"Σ": b"\x00\x03\x0F\x1F\x33\xE3\xE3\x03\x03\x03\x03\x00\x00\x30\x3C\x3E\x33\x31\x30\x30\x30\x30\x30\x00",
"Τ": b"\x00\x03\x03\x03\x03\xFF\xFF\x03\x03\x03\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"Υ": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"Φ": b"\x00\xF8\xFC\x0E\x06\xFF\xFF\x06\x0E\xFC\xF8\x00\x00\x03\x07\x0E\x0C\x3F\x3F\x0C\x0E\x07\x03\x00",
"Χ": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x30\x3C\x0F\x03\x00\x00\x03\x0F\x3C\x30\x00",
"Ψ": b"\x00\x3F\x7F\xE0\xC0\xFF\xFF\xC0\xE0\x7F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"Ω": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x63\x6F\x7C\x70\x00\x00\x70\x7C\x6F\x63\x00",
"ά": b"\x00\x80\xC0\xE0\x60\x6C\x6E\x66\xC0\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x20",
"έ": b"\x00\xE0\xF0\x30\x30\x36\x37\x33\x30\x70\x60\x00\x00\x1D\x3F\x33\x33\x33\x33\x33\x33\x38\x18\x00",
"ή": b"\x00\xE0\xE0\xC0\x60\x6C\x6E\xE6\xE0\xC0\x00\x00\x00\x1F\x1F\x00\x00\x00\x00\x00\x7F\x7F\x00\x00",
"ί": b"\x00\x00\x00\xEC\xEE\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x00\x00\x00\x00",
"α": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\xC0\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x20",
"β": b"\x00\x00\xC0\xE0\x30\x10\x10\x30\xE0\xC0\x00\x00\x00\x00\xFF\xFF\x21\x21\x21\x33\x3F\x1E\x00\x00",
"γ": b"\x00\x60\xE0\x80\x00\x00\x00\x00\x80\xE0\x60\x00\x00\x00\x01\x07\x1E\xF8\xF8\x1E\x07\x01\x00\x00",
"δ": b"\x00\x83\xC7\xEF\x7F\x7B\x73\x63\xE3\xC3\x83\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"ε": b"\x00\xE0\xF0\x30\x30\x30\x30\x30\x30\x70\x60\x00\x00\x1D\x3F\x33\x33\x33\x33\x33\x33\x38\x18\x00",
"ζ": b"\x00\x83\xC3\xE3\x63\x63\x63\x73\x3F\x1F\x00\x00\x00\x0F\x1F\x38\x30\x30\x30\xF0\xE0\x00\x00\x00",
"η": b"\x00\xE0\xE0\xC0\x60\x60\x60\xE0\xE0\xC0\x00\x00\x00\x1F\x1F\x00\x00\x00\x00\x00\x7F\x7F\x00\x00",
"θ": b"\x00\xF0\xF8\x1C\x8C\x8C\x8C\x8C\x1C\xF8\xF0\x00\x00\x0F\x1F\x38\x31\x31\x31\x31\x38\x1F\x0F\x00",
"ι": b"\x00\x00\x00\xE0\xE0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x00\x00\x00\x00",
"κ": b"\x00\x00\xC0\xC0\x00\x00\x80\xC0\xC0\x00\x00\x00\x00\x00\x3F\x3F\x06\x0F\x1F\x39\x30\x00\x00\x00",
"λ": b"\x00\x00\x00\x00\xC0\xE0\xE0\xC0\x00\x00\x00\x00\x00\x30\x3C\x0F\x03\x00\x00\x03\x0F\x3C\x30\x00",
"μ": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x00\xFF\xFF\x0E\x0C\x0C\x0C\x06\x0F\x0F\x00\x00",
"ν": b"\x00\x60\xE0\x80\x00\x00\x00\x00\x80\xE0\x60\x00\x00\x00\x01\x07\x1E\x38\x38\x1E\x07\x01\x00\x00",
"ξ": b"\x00\x3C\xFE\xE7\xC3\xC3\xC3\xC3\x00\x00\x00\x00\x00\x0F\x1F\x39\x30\x30\xF0\xE0\x00\x00\x00\x00",
"ο": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"π": b"\x00\x60\xE0\xE0\x60\x60\x60\xE0\xE0\x60\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x3F\x3F\x30\x00\x00",
"ρ": b"\x00\xE0\xE0\x60\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\xFF\xFF\x0C\x18\x18\x18\x18\x1C\x0F\x07\x00",
"ς": b"\x00\x80\xC0\xE0\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x0F\x1F\x38\x30\x30\xF0\xE0\x03\x03\x00\x00",
"σ": b"\x00\x80\xC0\xE0\x60\x60\x60\xE0\xE0\xE0\x60\x00\x00\x0F\x1F\x38\x30\x30\x30\x38\x1F\x0F\x00\x00",
"τ": b"\x00\x60\x60\xE0\xE0\x60\x60\x60\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x00\x00\x00\x00",
"υ": b"\x00\xE0\xE0\x00\x00\x00\x00\x00\xE0\xE0\x00\x00\x00\x0F\x1F\x38\x30\x30\x30\x38\x1F\x0F\x00\x00",
"φ": b"\x00\xC0\xE0\x70\x30\xF8\xF8\x30\x70\xE0\xC0\x00\x00\x07\x0F\x1C\x18\x7F\x7F\x18\x1C\x0F\x07\x00",
"χ": b"\x00\x70\xF0\xC0\x80\x00\x80\xC0\xF0\x70\x00\x00\x00\x70\x78\x1D\x0F\x07\x0F\x1D\x78\x70\x00\x00",
"ψ": b"\x00\xE0\xE0\x00\x00\xE0\xE0\x00\x00\xE0\xE0\x00\x00\x07\x0F\x1C\x18\x7F\x7F\x18\x1C\x0F\x07\x00",
"ω": b"\x00\xC0\xE0\x00\x00\x00\x00\x00\x00\xE0\xC0\x00\x00\x0F\x1F\x38\x38\x1E\x1E\x38\x38\x1F\x0F\x00",
"ό": b"\x00\x80\xC0\xE0\x60\x6C\x6E\x66\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"ύ": b"\x00\xE0\xE0\x00\x00\x0C\x0E\x06\xE0\xE0\x00\x00\x00\x0F\x1F\x38\x30\x30\x30\x38\x1F\x0F\x00\x00",
"ώ": b"\x00\xC0\xE0\x00\x00\x18\x1C\x0C\x00\xE0\xC0\x00\x00\x0F\x1F\x38\x38\x1E\x1E\x38\x38\x1F\x0F\x00",
}
return font
def get_font_map_cyrillic() -> Dict[str, bytes]:
font = {
# U+0400..U+04FF Cyrillic
"Ѐ": b"\x00\xFC\xFC\x8D\x8F\x8E\x8C\x8C\x8C\x0C\x0C\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
"Ё": b"\x00\xFE\xFE\xC7\xC7\xC6\xC6\xC7\xC7\x06\x06\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"Ђ": b"\x00\x03\xFF\xFF\x83\xC3\xC3\xC3\xC0\x80\x00\x00\x00\x00\x3F\x3F\x01\x00\x30\x30\x39\x1F\x0F\x00",
"Ѓ": b"\x00\xFC\xFC\x0C\x0C\x0C\x0E\x0F\x0D\x0C\x0C\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"Є": b"\x00\xF8\xFC\xCE\xC7\xC3\xC3\xC3\x07\x0E\x0C\x00\x00\x07\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"Ѕ": b"\x00\x3C\x7E\x67\xE3\xC3\xC3\xC3\x87\x8E\x0C\x00\x00\x0C\x1C\x38\x30\x30\x30\x31\x39\x1F\x0F\x00",
"І": b"\x00\x00\x00\x03\x03\xFF\xFF\x03\x03\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ї": b"\x00\x00\x00\x0D\x0D\xFC\xFC\x0D\x0D\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"Ј": b"\x00\x00\x00\x00\x00\x00\x03\x03\x03\xFF\xFF\x00\x00\x0E\x1E\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"Љ": b"\x00\x00\xFE\xFF\x03\x03\xFF\xFF\xC0\xC0\x80\x00\x00\x30\x3F\x1F\x00\x00\x3F\x3F\x30\x39\x1F\x0F",
"Њ": b"\x00\xFF\xFF\xC0\xC0\xC0\xFF\xFF\xC0\xC0\x80\x00\x00\x3F\x3F\x00\x00\x00\x3F\x3F\x30\x39\x1F\x0F",
"Ћ": b"\x00\x03\xFF\xFF\xC3\xC3\xC3\xC3\xC0\x80\x00\x00\x00\x00\x3F\x3F\x01\x00\x00\x00\x01\x3F\x3F\x00",
"Ќ": b"\x00\xFF\xFF\xC0\xE2\xF3\x39\x1C\x0E\x07\x03\x00\x00\x3F\x3F\x00\x01\x03\x07\x0E\x1C\x38\x30\x00",
"Ѝ": b"\x00\xFF\xFF\x00\x01\xC3\xF2\x38\x0E\xFF\xFF\x00\x00\x3F\x3F\x1C\x07\x03\x00\x00\x00\x3F\x3F\x00",
"Ў": b"\x00\x07\x1F\x7C\xF1\xC1\xC1\xF1\x7C\x1F\x07\x00\x00\x00\x30\x30\x3C\x0F\x07\x01\x00\x00\x00\x00",
"Џ": b"\x00\xFF\xFF\x00\x00\x00\x00\x00\x00\xFF\xFF\x00\x00\x1F\x1F\x18\x18\x78\x78\x18\x18\x1F\x1F\x00",
"А": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x07\x3F\x38\x00",
"Б": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x83\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x39\x1F\x0F\x00",
"В": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xE7\xFE\xBC\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x39\x1F\x0F\x00",
"Г": b"\x00\xFF\xFF\x03\x03\x03\x03\x03\x03\x03\x03\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"Ґ": b"\x00\xFC\xFC\x0C\x0C\x0C\x0C\x0C\x0C\x0F\x0F\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"Д": b"\x00\x00\xF8\xFE\x0F\x03\x03\x03\xFF\xFF\x00\x00\x00\x70\x7F\x1F\x18\x18\x18\x18\x1F\x7F\x70\x00",
"Е": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
"Ж": b"\x00\x03\x0F\xFC\xE0\xFF\xFF\xE0\xFC\x0F\x03\x00\x00\x38\x3F\x07\x00\x3F\x3F\x00\x07\x3F\x38\x00",
"З": b"\x0C\x0E\x07\x03\xC3\xC3\xC3\xC3\xC3\xE7\x7E\x3C\x0C\x1C\x38\x30\x30\x30\x30\x30\x30\x39\x1F\x0E",
"И": b"\x00\xFF\xFF\x00\x00\xC0\xF0\x38\x0E\xFF\xFF\x00\x00\x3F\x3F\x1C\x07\x03\x00\x00\x00\x3F\x3F\x00",
"Й": b"\x00\xFF\xFF\x00\x02\xC3\xF1\x38\x0E\xFF\xFF\x00\x00\x3F\x3F\x1C\x07\x03\x00\x00\x00\x3F\x3F\x00",
"К": b"\x00\xFF\xFF\xC0\xE0\xF0\x38\x1C\x0E\x07\x03\x00\x00\x3F\x3F\x00\x01\x03\x07\x0E\x1C\x38\x30\x00",
"Л": b"\x00\x00\xF0\xFC\x1E\x07\x03\x03\x03\xFF\xFF\x00\x00\x30\x3F\x1F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"М": b"\x00\xFF\xFF\x1E\x78\xE0\xE0\x78\x1E\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x01\x01\x00\x00\x3F\x3F\x00",
"Н": b"\x00\xFF\xFF\xC0\xC0\xC0\xC0\xC0\xC0\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"О": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
"П": b"\x00\xFF\xFF\x03\x03\x03\x03\x03\x03\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"Р": b"\x00\xFF\xFF\x83\x83\x83\x83\x83\xC7\xFE\x7C\x00\x00\x3F\x3F\x01\x01\x01\x01\x01\x01\x00\x00\x00",
"С": b"\x00\xF0\xFC\x0E\x07\x03\x03\x03\x07\x0E\x0C\x00\x00\x03\x0F\x1C\x38\x30\x30\x30\x38\x1C\x0C\x00",
"Т": b"\x00\x03\x03\x03\x03\xFF\xFF\x03\x03\x03\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"У": b"\x00\x07\x1F\x7C\xF0\xC0\xC0\xF0\x7C\x1F\x07\x00\x00\x00\x30\x30\x3C\x0F\x07\x01\x00\x00\x00\x00",
"Ф": b"\x00\xF8\xFC\x0E\x06\xFF\xFF\x06\x0E\xFC\xF8\x00\x00\x03\x07\x0E\x0C\x3F\x3F\x0C\x0E\x07\x03\x00",
"Х": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x30\x3C\x0F\x03\x00\x00\x03\x0F\x3C\x30\x00",
"Ц": b"\x00\xFF\xFF\x00\x00\x00\x00\x00\xFF\xFF\x00\x00\x00\x1F\x1F\x18\x18\x18\x18\x18\x1F\x7F\x78\x00",
"Ч": b"\x00\x7F\xFF\xC0\xC0\xC0\xC0\xC0\xC0\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"Ш": b"\x00\xFF\xFF\x00\x00\xFF\xFF\x00\x00\xFF\xFF\x00\x00\x3F\x3F\x30\x30\x3F\x3F\x30\x30\x3F\x3F\x00",
"Щ": b"\x00\xFF\xFF\x00\x00\xFF\xFF\x00\x00\xFF\xFF\x00\x00\x1F\x1F\x18\x18\x1F\x1F\x18\x18\x1F\x7F\x70",
"Ъ": b"\x03\x03\xFF\xFF\xC0\xC0\xC0\xC0\xC0\x80\x00\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x39\x1F\x0F\x00",
"Ы": b"\x00\xFF\xFF\xC0\xC0\xC0\xC0\x80\x00\x00\xFF\xFF\x00\x3F\x3F\x30\x30\x30\x39\x1F\x0F\x00\x3F\x3F",
"Ь": b"\x00\xFF\xFF\xC0\xC0\xC0\xC0\xC0\xC0\x80\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x39\x1F\x0F\x00",
"Э": b"\x00\x0C\x0E\x07\xC3\xC3\xC3\xC7\xCE\xFC\xF8\x00\x00\x0C\x1C\x38\x30\x30\x30\x38\x1C\x0F\x07\x00",
"Ю": b"\x00\xFF\xFF\xC0\xFC\xFE\x07\x03\x07\xFE\xFC\x00\x00\x3F\x3F\x00\x0F\x1F\x38\x30\x38\x1F\x0F\x00",
"Я": b"\x00\x7C\xFE\xC7\x83\x83\x83\x83\x83\xFF\xFF\x00\x00\x30\x38\x1D\x0F\x07\x03\x01\x01\x3F\x3F\x00",
"а": b"\x00\x00\x30\x30\x30\x30\x30\x30\x30\xF0\xE0\x00\x00\x1E\x3F\x33\x33\x33\x33\x33\x33\x3F\x3F\x00",
"б": b"\x00\xE0\xF0\x30\x30\x30\x30\x30\x30\x30\x00\x00\x00\x1F\x3F\x33\x33\x33\x33\x33\x33\x3F\x1E\x00",
"в": b"\x00\xF0\xF0\x30\x30\x30\x30\x30\xF0\xE0\x00\x00\x00\x3F\x3F\x33\x33\x33\x33\x33\x33\x3F\x1E\x00",
"г": b"\x00\xF0\xF0\x30\x30\x30\x30\x30\x30\x30\x30\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"ґ": b"\x00\xF0\xF0\x30\x30\x30\x30\x30\x30\x3C\x3C\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"д": b"\x00\x00\xC0\xE0\x70\x30\x30\x30\xF0\xF0\x00\x00\x00\x60\x7F\x3F\x30\x30\x30\x30\x3F\x7F\x60\x00",
"е": b"\x00\xE0\xF0\x30\x30\x30\x30\x30\x30\xF0\xE0\x00\x00\x1F\x3F\x33\x33\x33\x33\x33\x33\x33\x33\x00",
"ж": b"\x00\x30\xF0\xC0\x00\xF0\xF0\x00\xC0\xF0\x30\x00\x00\x30\x3C\x0F\x03\x3F\x3F\x03\x0F\x3C\x30\x00",
"з": b"\x00\x60\x70\x30\x30\x30\x30\x30\x30\xF0\xE0\x00\x00\x18\x38\x30\x33\x33\x33\x33\x33\x3F\x1D\x00",
"и": b"\x00\xF0\xF0\x00\x00\x00\x80\xC0\xE0\xF0\xF0\x00\x00\x3F\x3F\x1C\x0E\x07\x03\x01\x00\x3F\x3F\x00",
"й": b"\x00\xF0\xF0\x00\x04\x08\x88\xC4\xE0\xF0\xF0\x00\x00\x3F\x3F\x1C\x0E\x07\x03\x01\x00\x3F\x3F\x00",
"к": b"\x00\xF0\xF0\x80\x80\xC0\xE0\x70\x30\x10\x00\x00\x00\x3F\x3F\x03\x03\x07\x0E\x1C\x38\x30\x20\x00",
"л": b"\x00\x00\xC0\xE0\x70\x30\x30\x30\x30\xF0\xF0\x00\x00\x30\x3F\x1F\x00\x00\x00\x00\x00\x3F\x3F\x00",
"м": b"\x00\xF0\xF0\xE0\xC0\x80\x80\xC0\xE0\xF0\xF0\x00\x00\x3F\x3F\x00\x01\x03\x03\x01\x00\x3F\x3F\x00",
"н": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x3F\x3F\x03\x03\x03\x03\x03\x03\x3F\x3F\x00",
"о": b"\x00\xC0\xE0\x70\x30\x30\x30\x30\x70\xE0\xC0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
"п": b"\x00\xF0\xF0\x30\x30\x30\x30\x30\x30\xF0\xF0\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
"р": b"\x00\xF0\xF0\x30\x30\x30\x30\x30\x70\xE0\xC0\x00\x00\xFF\xFF\x0C\x0C\x0C\x0C\x0C\x0E\x07\x03\x00",
"с": b"\x00\xC0\xE0\x70\x30\x30\x30\x30\x70\x60\x40\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x18\x08\x00",
"т": b"\x00\x30\x30\x30\x30\xF0\xF0\x30\x30\x30\x30\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
"у": b"\x00\x30\xF0\xC0\x00\x00\x00\x00\xC0\xF0\x30\x00\x00\x60\xE0\xC3\xE7\x7C\x3C\x0F\x03\x00\x00\x00",
"ф": b"\x00\x80\xC0\x60\x60\xF0\xF0\x60\x60\xC0\x80\x00\x00\x0F\x1F\x30\x30\xFF\xFF\x30\x30\x1F\x0F\x00",
"х": b"\x00\x30\x70\xC0\x80\x00\x00\x80\xC0\x70\x30\x00\x00\x30\x38\x0C\x07\x03\x03\x07\x0C\x38\x30\x00",
"ц": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x3F\xFF\xF0\x00",
"ч": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x01\x03\x03\x03\x03\x03\x03\x03\x3F\x3F\x00",
"ш": b"\x00\xF0\xF0\x00\x00\xE0\xE0\x00\x00\xF0\xF0\x00\x00\x3F\x3F\x30\x30\x3F\x3F\x30\x30\x3F\x3F\x00",
"щ": b"\x00\xF0\xF0\x00\x00\xF0\xF0\x00\x00\xF0\xF0\x00\x00\x3F\x3F\x30\x30\x3F\x3F\x30\x30\x3F\xFF\xE0",
"ъ": b"\x30\x30\xF0\xF0\x80\x80\x80\x80\x80\x00\x00\x00\x00\x00\x3F\x3F\x31\x31\x31\x31\x3B\x1F\x0E\x00",
"ы": b"\x00\xF0\xF0\x80\x80\x80\x00\x00\x00\xF0\xF0\x00\x00\x3F\x3F\x31\x31\x3B\x1F\x0E\x00\x3F\x3F\x00",
"ь": b"\x00\xF0\xF0\x80\x80\x80\x80\x80\x80\x00\x00\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x3B\x1F\x0E\x00",
"э": b"\x00\x40\x60\x70\x30\x30\x30\x30\x70\xE0\xC0\x00\x00\x08\x18\x38\x30\x33\x33\x33\x3B\x1F\x0F\x00",
"ю": b"\x00\xF0\xF0\x00\xE0\xF0\x30\x30\x30\xF0\xE0\x00\x00\x3F\x3F\x03\x1F\x3F\x30\x30\x30\x3F\x1F\x00",
"я": b"\x00\xC0\xE0\x70\x30\x30\x30\x30\x30\xF0\xF0\x00\x00\x21\x33\x3B\x1E\x0E\x06\x06\x06\x3F\x3F\x00",
"ѐ": b"\x00\xE0\xF0\x32\x36\x36\x34\x30\x30\xF0\xE0\x00\x00\x1F\x3F\x33\x33\x33\x33\x33\x33\x33\x33\x00",
"ё": b"\x00\xE0\xF0\x34\x34\x30\x30\x34\x34\xF0\xE0\x00\x00\x1F\x3F\x33\x33\x33\x33\x33\x33\x33\x33\x00",
"ђ": b"\x00\x30\xFC\xFC\x30\xB0\xB0\xB0\x80\x80\x00\x00\x00\x00\x3F\x3F\x07\x03\x01\x01\xC1\xFF\x3F\x00",
"ѓ": b"\x00\xF0\xF0\x30\x30\x34\x36\x32\x30\x30\x30\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
"є": b"\x00\xC0\xE0\x70\x30\x30\x30\x30\x70\x60\x40\x00\x00\x0F\x1F\x3B\x33\x33\x33\x30\x38\x18\x08\x00",
"ѕ": b"\x00\xE0\xF0\xB0\xB0\x30\x30\x30\x30\x70\x60\x00\x00\x18\x39\x31\x33\x33\x33\x37\x36\x3E\x1C\x00",
"і": b"\x00\x00\x00\x00\x30\xF6\xF6\x00\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ї": b"\x00\x00\x00\x04\x34\xF0\xF4\x04\x00\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
"ј": b"\x00\x00\x00\x00\x00\x30\x30\xF6\xF6\x00\x00\x00\x00\x00\x00\x60\xE0\xC0\xC0\xFF\x7F\x00\x00\x00",
"љ": b"\x00\x00\xE0\xF0\x30\x30\xF0\xF0\x00\x00\x00\x00\x00\x30\x3F\x1F\x00\x00\x3F\x3F\x33\x33\x1E\x0C",
"њ": b"\x00\xF0\xF0\x00\x00\x00\xF0\xF0\x00\x00\x00\x00\x00\x3F\x3F\x03\x03\x03\x3F\x3F\x33\x33\x1E\x0C",
"ћ": b"\x00\x30\xFC\xFC\xB0\xB0\xB0\xB0\x80\x80\x00\x00\x00\x00\x3F\x3F\x01\x01\x01\x01\x01\x3F\x3F\x00",
"ќ": b"\x00\xF0\xF0\x80\x88\xCC\xE4\x70\x30\x10\x00\x00\x00\x3F\x3F\x03\x03\x07\x0E\x1C\x38\x30\x20\x00",
"ѝ": b"\x00\xF0\xF0\x00\x06\x0C\x88\xC0\xE0\xF0\xF0\x00\x00\x3F\x3F\x1C\x0E\x07\x03\x01\x00\x3F\x3F\x00",
"ў": b"\x00\x30\xF0\xC0\x04\x08\x08\x04\xC0\xF0\x30\x00\x00\x60\xE0\xC3\xE7\x7C\x3C\x0F\x03\x00\x00\x00",
"џ": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x3F\x3F\x30\x30\xF0\xF0\x30\x30\x3F\x3F\x00",
}
return font
def get_small_font_map_ascii_basic() -> Dict[str, bytes]:
font = {
# U+0000..U+007F Basic Latin
" ": b"\x00\x00\x00\x00\x00\x00",
"!": b"\x00\x00\x4f\x00\x00\x00",
'"': b"\x00\x07\x00\x07\x00\x00",
"#": b"\x14\x7f\x14\x7f\x14\x00",
"$": b"\x24\x2a\x7f\x2a\x12\x00",
"%": b"\x23\x13\x08\x64\x62\x00",
"&": b"\x36\x49\x56\x20\x58\x00",
"'": b"\x00\x05\x03\x00\x00\x00",
"(": b"\x00\x1c\x22\x41\x00\x00",
")": b"\x00\x41\x22\x1c\x00\x00",
"*": b"\x14\x08\x3e\x08\x14\x00",
"+": b"\x08\x08\x3e\x08\x08\x00",
",": b"\x00\x50\x30\x00\x00\x00",
"-": b"\x08\x08\x08\x08\x08\x00",
".": b"\x00\x60\x60\x00\x00\x00",
"/": b"\x20\x10\x08\x04\x02\x00",
"0": b"\x3e\x51\x49\x45\x3e\x00",
"1": b"\x00\x42\x7f\x40\x00\x00",
"2": b"\x42\x61\x51\x49\x46\x00",
"3": b"\x21\x41\x45\x4b\x31\x00",
"4": b"\x18\x14\x12\x7f\x10\x00",
"5": b"\x27\x45\x45\x45\x39\x00",
"6": b"\x3c\x4a\x49\x49\x30\x00",
"7": b"\x01\x71\x09\x05\x03\x00",
"8": b"\x36\x49\x49\x49\x36\x00",
"9": b"\x06\x49\x49\x29\x1e\x00",
":": b"\x00\x36\x36\x00\x00\x00",
";": b"\x00\x56\x36\x00\x00\x00",
"<": b"\x08\x14\x22\x41\x00\x00",
"=": b"\x14\x14\x14\x14\x14\x00",
">": b"\x00\x41\x22\x14\x08\x00",
"?": b"\x02\x01\x51\x09\x06\x00",
"@": b"\x32\x49\x79\x41\x3e\x00",
"A": b"\x7e\x09\x09\x09\x7e\x00",
"B": b"\x7f\x49\x49\x49\x36\x00",
"C": b"\x3e\x41\x41\x41\x22\x00",
"D": b"\x7f\x41\x41\x22\x1c\x00",
"E": b"\x7f\x49\x49\x49\x41\x00",
"F": b"\x7f\x09\x09\x09\x01\x00",
"G": b"\x3e\x41\x41\x49\x7a\x00",
"H": b"\x7f\x08\x08\x08\x7f\x00",
"I": b"\x00\x41\x7f\x41\x00\x00",
"J": b"\x20\x40\x41\x3f\x01\x00",
"K": b"\x7f\x08\x14\x22\x41\x00",
"L": b"\x7f\x40\x40\x40\x40\x00",
"M": b"\x7f\x02\x0c\x02\x7f\x00",
"N": b"\x7f\x04\x08\x10\x7f\x00",
"O": b"\x3e\x41\x41\x41\x3e\x00",
"P": b"\x7f\x09\x09\x09\x06\x00",
"Q": b"\x3e\x41\x51\x21\x5e\x00",
"R": b"\x7f\x09\x19\x29\x46\x00",
"S": b"\x26\x49\x49\x49\x32\x00",
"T": b"\x01\x01\x7f\x01\x01\x00",
"U": b"\x3f\x40\x40\x40\x3f\x00",
"V": b"\x1f\x20\x40\x20\x1f\x00",
"W": b"\x3f\x40\x38\x40\x3f\x00",
"X": b"\x63\x14\x08\x14\x63\x00",
"Y": b"\x07\x08\x70\x08\x07\x00",
"Z": b"\x61\x51\x49\x45\x43\x00",
"[": b"\x00\x7f\x41\x41\x00\x00",
"\\": b"\x02\x04\x08\x10\x20\x00",
"]": b"\x00\x41\x41\x7f\x00\x00",
"^": b"\x04\x02\x01\x02\x04\x00",
"_": b"\x40\x40\x40\x40\x40\x00",
"`": b"\x00\x03\x05\x00\x00\x00",
"a": b"\x20\x54\x54\x54\x78\x00",
"b": b"\x7f\x48\x44\x44\x38\x00",
"c": b"\x38\x44\x44\x44\x20\x00",
"d": b"\x38\x44\x44\x48\x7f\x00",
"e": b"\x38\x54\x54\x54\x18\x00",
"f": b"\x00\x04\x7e\x05\x01\x00",
"g": b"\x08\x54\x54\x54\x3c\x00",
"h": b"\x7f\x08\x04\x04\x78\x00",
"i": b"\x00\x44\x7d\x40\x00\x00",
"j": b"\x20\x40\x44\x3d\x00\x00",
"k": b"\x00\x7f\x10\x28\x44\x00",
"l": b"\x00\x41\x7f\x40\x00\x00",
"m": b"\x7c\x04\x78\x04\x78\x00",
"n": b"\x7c\x08\x04\x04\x78\x00",
"o": b"\x38\x44\x44\x44\x38\x00",
"p": b"\x7c\x14\x14\x14\x08\x00",
"q": b"\x08\x14\x14\x14\x7c\x00",
"r": b"\x7c\x08\x04\x04\x08\x00",
"s": b"\x48\x54\x54\x54\x24\x00",
"t": b"\x04\x3e\x44\x40\x20\x00",
"u": b"\x3c\x40\x40\x20\x7c\x00",
"v": b"\x0c\x30\x40\x30\x0c\x00",
"w": b"\x3c\x40\x30\x40\x3c\x00",
"x": b"\x44\x24\x38\x48\x44\x00",
"y": b"\x44\x48\x30\x10\x0c\x00",
"z": b"\x44\x64\x54\x4c\x44\x00",
"{": b"\x08\x36\x41\x00\x00\x00",
"|": b"\x00\x00\x77\x00\x00\x00",
"}": b"\x00\x00\x41\x36\x08\x00",
"~": b"\x02\x01\x02\x04\x02\x00",
}
return font
def get_small_font_map_latin_extended() -> Dict[str, bytes]:
font = {
# U+0080..U+00FF Latin-1 Supplement
"¡": b"\x00\x00\x79\x00\x00\x00",
"¢": b"\x1c\x22\x7f\x22\x10\x00",
"£": b"\x50\x7e\x51\x41\x42\x00",
"¤": b"\x22\x1c\x14\x1c\x22\x00",
"¥": b"\x15\x16\x7c\x16\x15\x00",
"¦": b"\x00\x00\x77\x00\x00\x00",
"§": b"\x4a\x55\x55\x55\x29\x00",
"¨": b"\x00\x01\x00\x01\x00\x00",
"©": b"\x00\x18\x24\x24\x00\x00",
"«": b"\x08\x14\x00\x08\x14\x00",
"¬": b"\x08\x08\x08\x08\x38\x00",
"": b"\x08\x08\x08\x08\x08\x00",
"¯": b"\x00\x01\x01\x01\x00\x00",
"°": b"\x00\x00\x07\x05\x07\x00",
"±": b"\x44\x44\x5f\x44\x44\x00",
"²": b"\x1d\x15\x17\x00\x00\x00",
"³": b"\x15\x15\x1f\x00\x00\x00",
"´": b"\x00\x04\x02\x01\x00\x00",
"µ": b"\x7c\x10\x10\x0c\x10\x00",
"¶": b"\x02\x07\x7f\x01\x7f\x00",
"·": b"\x00\x00\x08\x00\x00\x00",
"¸": b"\x00\x40\x60\x00\x00\x00",
"¹": b"\x12\x1f\x10\x00\x00\x00",
"º": b"\x07\x05\x07\x00\x00\x00",
"»": b"\x14\x08\x00\x14\x08\x00",
"¼": b"\x21\x17\x38\x24\x72\x00",
"½": b"\x21\x17\x78\x54\x5e\x00",
"¿": b"\x30\x48\x45\x40\x20\x00",
"À": b"\x78\x15\x16\x14\x78\x00",
"Á": b"\x78\x14\x16\x15\x78\x00",
"Â": b"\x78\x16\x15\x16\x78\x00",
"Ã": b"\x7a\x29\x2a\x79\x00\x00",
"Ä": b"\x78\x15\x14\x15\x78\x00",
"Å": b"\x78\x14\x15\x14\x78\x00",
"Æ": b"\x7e\x09\x7f\x49\x49\x00",
"Ç": b"\x0e\x51\x71\x11\x08\x00",
"È": b"\x7c\x55\x56\x44\x44\x00",
"É": b"\x7c\x54\x56\x45\x44\x00",
"Ê": b"\x7c\x56\x55\x46\x44\x00",
"Ë": b"\x7c\x55\x54\x45\x44\x00",
"Ì": b"\x00\x49\x7a\x48\x00\x00",
"Í": b"\x00\x48\x7a\x49\x00\x00",
"Î": b"\x00\x4a\x79\x4a\x00\x00",
"Ï": b"\x44\x45\x7c\x45\x44\x00",
"Ð": b"\x08\x7f\x49\x22\x1c\x00",
"Ñ": b"\x7a\x11\x22\x79\x00\x00",
"Ò": b"\x38\x45\x46\x44\x38\x00",
"Ó": b"\x38\x44\x46\x45\x38\x00",
"Ô": b"\x38\x46\x45\x46\x38\x00",
"Õ": b"\x32\x49\x4a\x31\x00\x00",
"Ö": b"\x38\x45\x44\x45\x38\x00",
"×": b"\x22\x14\x08\x14\x22\x00",
"Ø": b"\x58\x24\x54\x48\x34\x00",
"Ù": b"\x38\x41\x42\x40\x38\x00",
"Ú": b"\x38\x40\x42\x41\x38\x00",
"Û": b"\x38\x42\x41\x42\x38\x00",
"Ü": b"\x3c\x41\x40\x41\x3c\x00",
"Ý": b"\x04\x08\x72\x09\x04\x00",
"Þ": b"\x7f\x22\x22\x22\x1c\x00",
"ß": b"\x7e\x11\x25\x25\x1a\x00",
"à": b"\x20\x55\x56\x54\x78\x00",
"á": b"\x20\x54\x56\x55\x78\x00",
"â": b"\x20\x56\x55\x56\x78\x00",
"ã": b"\x22\x55\x56\x55\x78\x00",
"ä": b"\x20\x55\x54\x55\x78\x00",
"å": b"\x20\x54\x55\x54\x78\x00",
"æ": b"\x24\x54\x7c\x54\x48\x00",
"ç": b"\x1c\x22\x62\x22\x10\x00",
"è": b"\x38\x55\x56\x54\x08\x00",
"é": b"\x38\x54\x56\x55\x08\x00",
"ê": b"\x38\x56\x55\x56\x08\x00",
"ë": b"\x38\x55\x54\x55\x08\x00",
"ì": b"\x00\x45\x7e\x40\x00\x00",
"í": b"\x00\x44\x7e\x41\x00\x00",
"î": b"\x00\x46\x7d\x42\x00\x00",
"ï": b"\x00\x45\x7c\x41\x00\x00",
"ñ": b"\x78\x12\x09\x0a\x71\x00",
"ò": b"\x38\x45\x46\x44\x38\x00",
"ó": b"\x38\x44\x46\x45\x38\x00",
"ô": b"\x38\x46\x45\x46\x38\x00",
"õ": b"\x32\x49\x4a\x31\x00\x00",
"ö": b"\x38\x45\x44\x45\x38\x00",
"÷": b"\x08\x08\x2a\x08\x08\x00",
"ø": b"\x58\x24\x54\x48\x34\x00",
"ù": b"\x3c\x41\x42\x20\x7c\x00",
"ú": b"\x3c\x40\x42\x21\x7c\x00",
"û": b"\x3c\x42\x41\x22\x7c\x00",
"ü": b"\x3c\x41\x40\x21\x5c\x00",
"ű": b"\x3c\x41\x40\x21\x5c\x00",
"ų": b"\x3C\x40\x40\x20\xDC\x80",
"ý": b"\x44\x48\x32\x11\x0c\x00",
"þ": b"\x7c\x28\x28\x10\x00\x00",
"ÿ": b"\x44\x49\x30\x11\x0c\x00",
# U+0100..U+017F Latin Extended A
"Ā": b"\x78\x15\x15\x15\x78\x00",
"ā": b"\x20\x55\x55\x55\x78\x00",
"Ă": b"\x78\x15\x16\x15\x78\x00",
"ă": b"\x20\x55\x56\x55\x78\x00",
"Ą": b"\x7e\x09\x09\x49\xbe\x00",
"ą": b"\x20\x54\x54\xd4\x78\x00",
"Ć": b"\x38\x44\x46\x45\x28\x00",
"ć": b"\x38\x44\x46\x45\x20\x00",
"Ĉ": b"\x38\x46\x45\x46\x28\x00",
"ĉ": b"\x38\x46\x45\x46\x20\x00",
"Ċ": b"\x38\x44\x45\x44\x28\x00",
"ċ": b"\x38\x44\x45\x44\x20\x00",
"Č": b"\x38\x45\x46\x45\x28\x00",
"č": b"\x38\x45\x46\x45\x20\x00",
"Ď": b"\x7c\x45\x46\x29\x10\x00",
"ď": b"\x38\x44\x44\x4A\x7F\x00",
"Đ": b"\x08\x7f\x49\x22\x1c\x00",
"đ": b"\x38\x44\x44\x4A\x7F\x00",
"Ē": b"\x7c\x55\x55\x55\x44\x00",
"ē": b"\x38\x55\x55\x55\x08\x00",
"Ĕ": b"\x7c\x55\x56\x55\x44\x00",
"ĕ": b"\x38\x55\x56\x55\x08\x00",
"Ė": b"\x7c\x54\x55\x54\x44\x00",
"ė": b"\x38\x54\x55\x54\x08\x00",
"Ę": b"\x7f\x49\x49\xc9\x41\x00",
"ę": b"\x38\x54\x54\xd4\x18\x00",
"Ě": b"\x7c\x55\x56\x55\x44\x00",
"ě": b"\x38\x55\x56\x55\x08\x00",
"Ĝ": b"\x38\x46\x55\x56\x70\x00",
"ĝ": b"\x08\x56\x55\x56\x3c\x00",
"Ğ": b"\x38\x45\x56\x55\x30\x00",
"ğ": b"\x08\x55\x56\x55\x3c\x00",
"Ġ": b"\x38\x44\x55\x54\x30\x00",
"ġ": b"\x08\x54\x55\x54\x3c\x00",
"Ģ": b"\x0e\x51\x35\x15\x1c\x00",
"Ĥ": b"\x7c\x12\x11\x12\x7c\x00",
"ĥ": b"\x02\x79\x22\x10\x60\x00",
"Ħ": b"\x02\x7f\x0a\x7f\x02\x00",
"ħ": b"\x02\x7f\x12\x08\x70\x00",
"Ĩ": b"\x4a\x49\x7a\x49\x48\x00",
"ĩ": b"\x02\x49\x7a\x41\x00\x00",
"Ī": b"\x44\x45\x7d\x45\x44\x00",
"ī": b"\x00\x45\x7d\x41\x00\x00",
"Ĭ": b"\x44\x45\x7e\x45\x44\x00",
"ĭ": b"\x00\x45\x7e\x41\x00\x00",
"Į": b"\x00\x41\x7f\xc1\x00\x00",
"į": b"\x00\x44\x7d\xc0\x00\x00",
"İ": b"\x44\x44\x7d\x44\x44\x00",
"ı": b"\x00\x44\x7c\x40\x00\x00",
"ij": b"\x44\x7d\x40\x44\x3d\x00",
"Ĵ": b"\x20\x40\x46\x3d\x06\x00",
"ĵ": b"\x00\x20\x46\x3d\x02\x00",
"Ķ": b"\x1f\x44\x2a\x11\x00\x00",
"ķ": b"\x1f\x44\x2a\x11\x00\x00",
"ĸ": b"\x7c\x10\x28\x44\x00\x00",
"Ĺ": b"\x7c\x40\x42\x41\x40\x00",
"Ľ": b"\x7c\x40\x42\x41\x40\x00",
"ĺ": b"\x00\x44\x7e\x41\x00\x00",
"Ļ": b"\x1f\x50\x30\x10\x10\x00",
"ļ": b"\x00\x51\x3f\x10\x00\x00",
"ľ": b"\x00\x41\x7f\x40\x03\x00",
"Ŀ": b"\x7f\x40\x40\x48\x40\x00",
"ŀ": b"\x00\x41\x7f\x40\x08\x00",
"Ł": b"\x10\x7F\x48\x44\x40\x00",
"ł": b"\x00\x49\x7F\x44\x00\x00",
"Ń": b"\x7c\x08\x12\x21\x7c\x00",
"ń": b"\x7c\x08\x06\x05\x78\x00",
"Ņ": b"\x1f\x42\x24\x08\x1f\x00",
"ņ": b"\x1f\x42\x21\x01\x1e\x00",
"Ň": b"\x7c\x09\x12\x21\x7c\x00",
"ň": b"\x7c\x09\x06\x05\x78\x00",
"Ō": b"\x38\x45\x45\x45\x38\x00",
"ō": b"\x38\x45\x45\x45\x38\x00",
"Ŏ": b"\x38\x45\x46\x45\x38\x00",
"ŏ": b"\x38\x45\x46\x45\x38\x00",
"ő": b"\x38\x45\x44\x45\x38\x00",
"Œ": b"\x3e\x41\x7f\x49\x49\x00",
"œ": b"\x38\x44\x7c\x54\x58\x00",
"Ŕ": b"\x7c\x14\x16\x15\x68\x00",
"ŕ": b"\x7c\x08\x06\x05\x08\x00",
"Ŗ": b"\x1f\x45\x25\x05\x1a\x00",
"ŗ": b"\x1f\x42\x21\x01\x02\x00",
"Ř": b"\x7c\x15\x16\x15\x68\x00",
"ř": b"\x7c\x09\x06\x05\x08\x00",
"Ś": b"\x08\x54\x56\x55\x20\x00",
"ś": b"\x48\x54\x56\x55\x24\x00",
"Ŝ": b"\x08\x56\x55\x56\x20\x00",
"ŝ": b"\x48\x56\x55\x56\x24\x00",
"Ş": b"\x02\x55\x35\x15\x08\x00",
"ş": b"\x12\x55\x35\x15\x09\x00",
"Š": b"\x08\x55\x56\x55\x20\x00",
"š": b"\x48\x55\x56\x55\x24\x00",
"Ţ": b"\x01\x41\x3f\x01\x01\x00",
"ţ": b"\x02\x4f\x32\x10\x08\x00",
"Ť": b"\x04\x05\x7e\x05\x04\x00",
"ť": b"\x04\x3e\x44\x40\x23\x00",
"Ŧ": b"\x01\x09\x7f\x09\x01\x00",
"ŧ": b"\x14\x3e\x54\x40\x20\x00",
"Ū": b"\x3c\x41\x41\x41\x3c\x00",
"ū": b"\x3c\x41\x41\x21\x7c\x00",
"Ŭ": b"\x3c\x41\x42\x41\x3c\x00",
"ŭ": b"\x3c\x41\x41\x21\x7c\x00",
"Ů": b"\x3c\x40\x41\x40\x3c\x00",
"ů": b"\x3c\x41\x41\x21\x7c\x00",
"Ŵ": b"\x3c\x42\x39\x42\x3c\x00",
"ŵ": b"\x3c\x42\x31\x42\x3c\x00",
"Ŷ": b"\x04\x0a\x71\x0a\x04\x00",
"ŷ": b"\x04\x4a\x31\x12\x0c\x00",
"Ÿ": b"\x04\x09\x70\x09\x04\x00",
"Ź": b"\x44\x64\x56\x4d\x44\x00",
"ź": b"\x44\x64\x56\x4d\x44\x00",
"Ż": b"\x44\x64\x55\x4c\x44\x00",
"ż": b"\x44\x64\x55\x4c\x44\x00",
"Ž": b"\x44\x65\x56\x4d\x44\x00",
"ž": b"\x44\x65\x56\x4d\x44\x00",
"ſ": b"\x00\x04\x7e\x01\x01\x00",
}
return font
def get_small_font_map_greek() -> Dict[str, bytes]:
font = {
# U+0370..U+03FF Greek and Coptic
"Έ": b"\x03\x7F\x49\x49\x49\x41",
"Α": b"\x7e\x09\x09\x09\x7e\x00",
"Β": b"\x7f\x49\x49\x49\x36\x00",
"Γ": b"\x7f\x01\x01\x01\x01\x00",
"Δ": b"\x70\x4C\x43\x4C\x70\x00",
"Ε": b"\x7f\x49\x49\x49\x41\x00",
"Ζ": b"\x61\x51\x49\x45\x43\x00",
"Η": b"\x7f\x08\x08\x08\x7f\x00",
"Θ": b"\x3E\x49\x49\x49\x3E\x00",
"Ι": b"\x00\x41\x7f\x41\x00\x00",
"Κ": b"\x7f\x08\x14\x22\x41\x00",
"Λ": b"\x70\x0C\x03\x0C\x70\x00",
"Μ": b"\x7f\x02\x0c\x02\x7f\x00",
"Ν": b"\x7f\x04\x08\x10\x7f\x00",
"Ξ": b"\x41\x49\x49\x49\x41\x00",
"Ο": b"\x3e\x41\x41\x41\x3e\x00",
"Π": b"\x7F\x01\x01\x01\x7F\x00",
"Ρ": b"\x7f\x09\x09\x09\x06\x00",
"Σ": b"\x63\x55\x49\x41\x41\x00",
"Τ": b"\x01\x01\x7f\x01\x01\x00",
"Υ": b"\x07\x08\x70\x08\x07\x00",
"Φ": b"\x0c\x12\x7f\x12\x0c\x00",
"Χ": b"\x63\x14\x08\x14\x63\x00",
"Ψ": b"\x07\x08\x7F\x08\x07\x00",
"Ω": b"\x5E\x61\x01\x61\x5E\x00",
"ά": b"\x38\x45\x45\x38\x7C\x40",
"έ": b"\x28\x55\x55\x44\x28\x00",
"ή": b"\x04\x79\x05\x04\xF8\x00",
"ί": b"\x04\x3D\x41\x40\x00\x00",
"α": b"\x38\x44\x44\x38\x7C\x40",
"β": b"\x7E\x21\x25\x25\x1A\x00",
"γ": b"\x0C\x10\x60\x10\x0C\x00",
"δ": b"\x30\x4B\x45\x49\x30\x00",
"ε": b"\x28\x54\x54\x44\x28\x00",
"ζ": b"\x00\x31\x49\x45\xC3\x00",
"η": b"\x04\x78\x04\x04\xF8\x00",
"θ": b"\x3E\x49\x49\x49\x3E\x00",
"ι": b"\x04\x3C\x40\x40\x00\x00",
"κ": b"\x00\x7C\x10\x28\x44\x00",
"λ": b"\x70\x0A\x04\x08\x70\x00",
"μ": b"\xFC\x10\x10\x3C\x20\x00",
"ν": b"\x1C\x20\x40\x20\x1C\x00",
"ξ": b"\x36\x49\x49\xC9\x00\x00",
"ο": b"\x38\x44\x44\x44\x38\x00",
"π": b"\x04\x7C\x04\x7C\x44\x00",
"ρ": b"\xF8\x24\x24\x24\x18\x00",
"ς": b"\x38\x44\x44\xC4\x04\x00",
"σ": b"\x38\x44\x44\x44\x3C\x04",
"τ": b"\x04\x3C\x44\x44\x00\x00",
"υ": b"\x3C\x40\x40\x40\x3C\x00",
"φ": b"\x18\x24\x7e\x24\x18\x00",
"χ": b"\x44\x24\x38\x48\x44\x00",
"ψ": b"\x1C\x20\x7C\x20\x1C\x00",
"ω": b"\x38\x44\x30\x44\x38\x00",
"ό": b"\x38\x45\x45\x44\x38\x00",
"ύ": b"\x3C\x41\x41\x40\x3C\x00",
"ώ": b"\x38\x45\x31\x44\x38\x00",
}
return font
def get_small_font_map_cyrillic() -> Dict[str, bytes]:
font = {
# U+0400..U+04FF Cyrillic
"Ѐ": b"\x7c\x55\x56\x44\x44\x00",
"Ё": b"\x7c\x55\x54\x45\x44\x00",
"Ђ": b"\x01\x7f\x09\x49\x31\x00",
"Ѓ": b"\x7c\x04\x06\x05\x04\x00",
"Є": b"\x3e\x49\x49\x41\x00\x00",
"Ѕ": b"\x06\x49\x49\x49\x30\x00",
"І": b"\x41\x41\x7f\x41\x41\x00",
"Ї": b"\x44\x45\x7c\x45\x44\x00",
"Ј": b"\x20\x40\x41\x3f\x01\x00",
"Љ": b"\x7f\x01\x7f\x48\x30\x00",
"Њ": b"\x7f\x08\x7f\x48\x30\x00",
"Ћ": b"\x01\x01\x7f\x09\x71\x00",
"Ќ": b"\x7c\x12\x29\x44\x00\x00",
"Ѝ": b"\x7c\x21\x12\x08\x7c\x00",
"Ў": b"\x44\x49\x32\x09\x04\x00",
"Џ": b"\x3f\x20\x60\x20\x3f\x00",
"А": b"\x7e\x09\x09\x09\x7e\x00",
"Б": b"\x7f\x49\x49\x49\x31\x00",
"В": b"\x7f\x49\x49\x49\x36\x00",
"Г": b"\x7f\x01\x01\x01\x01\x00",
"Ґ": b"\x7E\x02\x02\x02\x03\x00",
"Д": b"\x60\x3f\x21\x3f\x60\x00",
"Е": b"\x7f\x49\x49\x49\x41\x00",
"Ж": b"\x77\x08\x7f\x08\x77\x00",
"З": b"\x00\x41\x49\x49\x36\x00",
"И": b"\x7f\x10\x08\x04\x7f\x00",
"Й": b"\x7c\x21\x12\x09\x7c\x00",
"К": b"\x7f\x08\x14\x22\x41\x00",
"Л": b"\x40\x3f\x01\x01\x7f\x00",
"М": b"\x7f\x02\x04\x02\x7f\x00",
"Н": b"\x7f\x08\x08\x08\x7f\x00",
"О": b"\x3e\x41\x41\x41\x3e\x00",
"П": b"\x7f\x01\x01\x01\x7f\x00",
"Р": b"\x7f\x09\x09\x09\x06\x00",
"С": b"\x3e\x41\x41\x41\x22\x00",
"Т": b"\x01\x01\x7f\x01\x01\x00",
"У": b"\x47\x48\x30\x08\x07\x00",
"Ф": b"\x0c\x12\x7f\x12\x0c\x00",
"Х": b"\x63\x14\x08\x14\x63\x00",
"Ц": b"\x3f\x20\x20\x3f\x60\x00",
"Ч": b"\x07\x08\x08\x08\x7f\x00",
"Ш": b"\x7F\x40\x7F\x40\x7F\x00",
"Щ": b"\x7F\x40\x7F\x40\x7F\xC0",
"Ъ": b"\x01\x7f\x48\x48\x30\x00",
"Ы": b"\x7f\x48\x30\x00\x7f\x00",
"Ь": b"\x00\x7f\x48\x48\x30\x00",
"Э": b"\x22\x49\x49\x2a\x1c\x00",
"Ю": b"\x7f\x08\x3e\x41\x3e\x00",
"Я": b"\x46\x29\x19\x09\x7f\x00",
"а": b"\x20\x54\x54\x54\x78\x00",
"б": b"\x3c\x4a\x4a\x4a\x30\x00",
"в": b"\x7c\x54\x54\x54\x28\x00",
"г": b"\x7c\x04\x04\x04\x04\x00",
"ґ": b"\x7C\x04\x04\x04\x06\x00",
"д": b"\x40\x3c\x24\x3c\x60\x00",
"е": b"\x38\x54\x54\x54\x18\x00",
"ж": b"\x6c\x10\x7c\x10\x6c\x00",
"з": b"\x28\x44\x54\x54\x28\x00",
"и": b"\x7c\x20\x10\x08\x7c\x00",
"й": b"\x7c\x21\x12\x09\x7c\x00",
"к": b"\x7c\x10\x28\x44\x00\x00",
"л": b"\x40\x3c\x04\x04\x7c\x00",
"м": b"\x7c\x08\x10\x08\x7c\x00",
"н": b"\x7c\x10\x10\x10\x7c\x00",
"о": b"\x38\x44\x44\x44\x38\x00",
"п": b"\x7c\x04\x04\x04\x7c\x00",
"р": b"\x7c\x14\x14\x14\x08\x00",
"с": b"\x38\x44\x44\x44\x20\x00",
"т": b"\x04\x04\x7c\x04\x04\x00",
"у": b"\x4c\x50\x20\x10\x0c\x00",
"ф": b"\x18\x24\x7e\x24\x18\x00",
"х": b"\x44\x28\x10\x28\x44\x00",
"ц": b"\x3c\x20\x20\x3c\x60\x00",
"ч": b"\x0c\x10\x10\x10\x7c\x00",
"ш": b"\x7C\x40\x7C\x40\x7C\x00",
"щ": b"\x7C\x40\x7C\x40\xFC\x00",
"ъ": b"\x04\x7c\x50\x20\x00\x00",
"ы": b"\x7c\x50\x20\x00\x7c\x00",
"ь": b"\x00\x7c\x50\x20\x00\x00",
"э": b"\x28\x44\x54\x54\x28\x00",
"ю": b"\x7c\x10\x38\x44\x38\x00",
"я": b"\x48\x34\x14\x14\x7c\x00",
"ѐ": b"\x38\x55\x56\x54\x08\x00",
"ё": b"\x38\x55\x54\x55\x08\x00",
"ђ": b"\x02\x3f\x12\x48\x30\x00",
"ѓ": b"\x7c\x04\x06\x05\x04\x00",
"є": b"\x38\x54\x54\x44\x28\x00",
"ѕ": b"\x08\x54\x54\x54\x20\x00",
"і": b"\x00\x44\x7d\x40\x00\x00",
"ї": b"\x00\x45\x7c\x41\x00\x00",
"ј": b"\x20\x40\x44\x3d\x00\x00",
"љ": b"\x7c\x04\x7c\x50\x20\x00",
"њ": b"\x7c\x10\x7c\x50\x20\x00",
"ћ": b"\x04\x7e\x14\x10\x60\x00",
"ќ": b"\x7c\x12\x29\x44\x00\x00",
"ѝ": b"\x7c\x21\x12\x08\x7c\x00",
"ў": b"\x4c\x51\x22\x11\x0c\x00",
"џ": b"\x3c\x20\x60\x20\x3c\x00",
}
return font
NAME_ASCII_BASIC: Final = "ascii_basic"
NAME_LATIN_EXTENDED: Final = "latin_extended"
NAME_CYRILLIC: Final = "cyrillic"
NAME_CJK: Final = "cjk"
NAME_GREEK: Final = "greek"
def get_font_maps_for_name(
font_name: str,
) -> Tuple[Dict[str, bytes], Dict[str, bytes]]:
if font_name == NAME_ASCII_BASIC:
return get_font_map_ascii_basic(), get_small_font_map_ascii_basic()
elif font_name == NAME_LATIN_EXTENDED:
return get_font_map_latin_extended(), get_small_font_map_latin_extended()
elif font_name == NAME_CYRILLIC:
return get_font_map_cyrillic(), get_small_font_map_cyrillic()
elif font_name == NAME_GREEK:
return get_font_map_greek(), get_small_font_map_greek()
else:
raise ValueError("Invalid font name")
|