-
Notifications
You must be signed in to change notification settings - Fork 0
/
scm_colormaps.h
2960 lines (2932 loc) · 222 KB
/
scm_colormaps.h
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
// The Scientific Colour Maps are licensed under a MIT License
//
// Copyright (c) 2020, Fabio Crameri
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the ”Software”), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions: The above copyright
// notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED ”AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
const uint8_t acton[] = {
46, 33, 77, 46, 33, 77, 47, 34, 77, 47, 34, 77, 48, 35, 78,
48, 35, 78, 49, 36, 79, 49, 36, 79, 50, 37, 80, 50, 37, 80,
51, 38, 81, 51, 38, 81, 52, 38, 82, 52, 38, 82, 53, 39, 83,
53, 39, 83, 54, 40, 84, 54, 40, 84, 55, 41, 85, 55, 41, 85,
56, 42, 86, 56, 42, 86, 57, 43, 87, 57, 43, 87, 58, 44, 88,
58, 44, 88, 59, 45, 88, 59, 45, 88, 60, 46, 89, 60, 46, 89,
61, 47, 90, 61, 47, 90, 62, 48, 91, 62, 48, 91, 63, 48, 92,
63, 48, 92, 65, 49, 93, 65, 49, 93, 66, 50, 94, 66, 50, 94,
67, 51, 95, 67, 51, 95, 68, 52, 96, 68, 52, 96, 69, 53, 97,
69, 53, 97, 70, 54, 98, 70, 54, 98, 71, 55, 99, 71, 55, 99,
72, 56, 100, 72, 56, 100, 73, 57, 100, 73, 57, 100, 74, 58, 101,
74, 58, 101, 75, 59, 102, 75, 59, 102, 76, 60, 103, 76, 60, 103,
77, 61, 104, 77, 61, 104, 79, 61, 105, 79, 61, 105, 80, 62, 106,
80, 62, 106, 81, 63, 107, 81, 63, 107, 82, 64, 108, 82, 64, 108,
83, 65, 109, 83, 65, 109, 84, 66, 110, 84, 66, 110, 85, 67, 111,
85, 67, 111, 86, 68, 112, 86, 68, 112, 88, 69, 113, 88, 69, 113,
89, 70, 114, 89, 70, 114, 90, 71, 114, 90, 71, 114, 91, 72, 115,
91, 72, 115, 92, 73, 116, 92, 73, 116, 94, 73, 117, 94, 73, 117,
95, 74, 118, 95, 74, 118, 96, 75, 119, 96, 75, 119, 97, 76, 120,
97, 76, 120, 99, 77, 121, 99, 77, 121, 100, 78, 122, 100, 78, 122,
101, 79, 123, 101, 79, 123, 102, 80, 123, 102, 80, 123, 104, 80, 124,
104, 80, 124, 105, 81, 125, 105, 81, 125, 106, 82, 126, 106, 82, 126,
107, 83, 127, 107, 83, 127, 109, 84, 128, 109, 84, 128, 110, 84, 128,
110, 84, 128, 111, 85, 129, 111, 85, 129, 113, 86, 130, 113, 86, 130,
114, 87, 131, 114, 87, 131, 115, 87, 131, 115, 87, 131, 117, 88, 132,
117, 88, 132, 118, 89, 133, 118, 89, 133, 119, 90, 134, 119, 90, 134,
121, 90, 134, 121, 90, 134, 122, 91, 135, 122, 91, 135, 123, 91, 136,
123, 91, 136, 125, 92, 136, 125, 92, 136, 126, 93, 137, 126, 93, 137,
127, 93, 137, 127, 93, 137, 129, 94, 138, 129, 94, 138, 130, 94, 139,
130, 94, 139, 131, 95, 139, 131, 95, 139, 133, 95, 140, 133, 95, 140,
134, 96, 140, 134, 96, 140, 135, 96, 141, 135, 96, 141, 136, 97, 141,
136, 97, 141, 138, 97, 142, 138, 97, 142, 139, 97, 142, 139, 97, 142,
140, 98, 142, 140, 98, 142, 141, 98, 143, 141, 98, 143, 143, 98, 143,
143, 98, 143, 144, 99, 144, 144, 99, 144, 145, 99, 144, 145, 99, 144,
146, 99, 144, 146, 99, 144, 148, 100, 144, 148, 100, 144, 149, 100, 145,
149, 100, 145, 150, 100, 145, 150, 100, 145, 151, 100, 145, 151, 100, 145,
152, 100, 145, 152, 100, 145, 153, 101, 146, 153, 101, 146, 155, 101, 146,
155, 101, 146, 156, 101, 146, 156, 101, 146, 157, 101, 146, 157, 101, 146,
158, 101, 146, 158, 101, 146, 159, 101, 147, 159, 101, 147, 160, 101, 147,
160, 101, 147, 161, 101, 147, 161, 101, 147, 162, 102, 147, 162, 102, 147,
164, 102, 147, 164, 102, 147, 165, 102, 147, 165, 102, 147, 166, 102, 148,
166, 102, 148, 167, 102, 148, 167, 102, 148, 168, 102, 148, 168, 102, 148,
169, 102, 148, 169, 102, 148, 170, 102, 148, 170, 102, 148, 171, 102, 148,
171, 102, 148, 172, 102, 148, 172, 102, 148, 173, 103, 149, 173, 103, 149,
175, 103, 149, 175, 103, 149, 176, 103, 149, 176, 103, 149, 177, 103, 149,
177, 103, 149, 178, 103, 149, 178, 103, 149, 179, 103, 149, 179, 103, 149,
180, 104, 150, 180, 104, 150, 181, 104, 150, 181, 104, 150, 183, 104, 150,
183, 104, 150, 184, 105, 150, 184, 105, 150, 185, 105, 151, 185, 105, 151,
186, 105, 151, 186, 105, 151, 187, 106, 152, 187, 106, 152, 189, 106, 152,
189, 106, 152, 190, 107, 152, 190, 107, 152, 191, 107, 153, 191, 107, 153,
192, 108, 153, 192, 108, 153, 193, 109, 154, 193, 109, 154, 195, 109, 154,
195, 109, 154, 196, 110, 155, 196, 110, 155, 197, 111, 156, 197, 111, 156,
198, 112, 156, 198, 112, 156, 199, 112, 157, 199, 112, 157, 200, 113, 158,
200, 113, 158, 201, 114, 158, 201, 114, 158, 202, 115, 159, 202, 115, 159,
203, 116, 160, 203, 116, 160, 204, 117, 161, 204, 117, 161, 205, 118, 161,
205, 118, 161, 206, 119, 162, 206, 119, 162, 207, 120, 163, 207, 120, 163,
208, 121, 164, 208, 121, 164, 208, 122, 164, 208, 122, 164, 209, 123, 165,
209, 123, 165, 209, 124, 166, 209, 124, 166, 210, 125, 167, 210, 125, 167,
210, 126, 167, 210, 126, 167, 211, 127, 168, 211, 127, 168, 211, 128, 169,
211, 128, 169, 211, 129, 170, 211, 129, 170, 212, 130, 170, 212, 130, 170,
212, 131, 171, 212, 131, 171, 212, 132, 172, 212, 132, 172, 212, 133, 172,
212, 133, 172, 212, 134, 173, 212, 134, 173, 213, 135, 174, 213, 135, 174,
213, 136, 174, 213, 136, 174, 213, 137, 175, 213, 137, 175, 213, 138, 176,
213, 138, 176, 213, 139, 176, 213, 139, 176, 213, 140, 177, 213, 140, 177,
213, 140, 178, 213, 140, 178, 213, 141, 178, 213, 141, 178, 213, 142, 179,
213, 142, 179, 213, 143, 179, 213, 143, 179, 213, 144, 180, 213, 144, 180,
212, 145, 181, 212, 145, 181, 212, 145, 181, 212, 145, 181, 212, 146, 182,
212, 146, 182, 212, 147, 182, 212, 147, 182, 212, 148, 183, 212, 148, 183,
212, 149, 184, 212, 149, 184, 212, 149, 184, 212, 149, 184, 212, 150, 185,
212, 150, 185, 212, 151, 185, 212, 151, 185, 212, 152, 186, 212, 152, 186,
212, 153, 187, 212, 153, 187, 212, 154, 187, 212, 154, 187, 212, 154, 188,
212, 154, 188, 212, 155, 188, 212, 155, 188, 212, 156, 189, 212, 156, 189,
211, 157, 189, 211, 157, 189, 211, 158, 190, 211, 158, 190, 211, 159, 191,
211, 159, 191, 211, 159, 191, 211, 159, 191, 211, 160, 192, 211, 160, 192,
211, 161, 193, 211, 161, 193, 211, 162, 193, 211, 162, 193, 211, 163, 194,
211, 163, 194, 211, 164, 194, 211, 164, 194, 211, 165, 195, 211, 165, 195,
211, 166, 196, 211, 166, 196, 212, 166, 196, 212, 166, 196, 212, 167, 197,
212, 167, 197, 212, 168, 197, 212, 168, 197, 212, 169, 198, 212, 169, 198,
212, 170, 199, 212, 170, 199, 212, 171, 199, 212, 171, 199, 212, 172, 200,
212, 172, 200, 212, 173, 201, 212, 173, 201, 212, 174, 201, 212, 174, 201,
212, 175, 202, 212, 175, 202, 213, 175, 203, 213, 175, 203, 213, 176, 203,
213, 176, 203, 213, 177, 204, 213, 177, 204, 213, 178, 205, 213, 178, 205,
213, 179, 205, 213, 179, 205, 213, 180, 206, 213, 180, 206, 214, 181, 206,
214, 181, 206, 214, 182, 207, 214, 182, 207, 214, 183, 208, 214, 183, 208,
214, 184, 208, 214, 184, 208, 214, 185, 209, 214, 185, 209, 215, 186, 210,
215, 186, 210, 215, 187, 210, 215, 187, 210, 215, 188, 211, 215, 188, 211,
215, 189, 212, 215, 189, 212, 216, 190, 213, 216, 190, 213, 216, 191, 213,
216, 191, 213, 216, 192, 214, 216, 192, 214, 217, 193, 215, 217, 193, 215,
217, 194, 215, 217, 194, 215, 217, 195, 216, 217, 195, 216, 218, 196, 217,
218, 196, 217, 218, 197, 217, 218, 197, 217, 218, 198, 218, 218, 198, 218,
218, 199, 219, 218, 199, 219, 219, 200, 219, 219, 200, 219, 219, 201, 220,
219, 201, 220, 219, 202, 221, 219, 202, 221, 220, 203, 221, 220, 203, 221,
220, 204, 222, 220, 204, 222, 221, 205, 223, 221, 205, 223, 221, 206, 224,
221, 206, 224, 221, 207, 224, 221, 207, 224, 222, 208, 225, 222, 208, 225,
222, 209, 226, 222, 209, 226, 222, 210, 226, 222, 210, 226, 223, 211, 227,
223, 211, 227, 223, 212, 228, 223, 212, 228, 223, 213, 228, 223, 213, 228,
224, 214, 229, 224, 214, 229, 224, 215, 230, 224, 215, 230, 225, 216, 231,
225, 216, 231, 225, 217, 231, 225, 217, 231, 225, 218, 232, 225, 218, 232,
226, 219, 233, 226, 219, 233, 226, 220, 233, 226, 220, 233, 227, 221, 234,
227, 221, 234, 227, 222, 235, 227, 222, 235, 227, 223, 235, 227, 223, 235,
228, 224, 236, 228, 224, 236, 228, 225, 237, 228, 225, 237, 228, 226, 238,
228, 226, 238, 229, 227, 238, 229, 227, 238, 229, 228, 239, 229, 228, 239,
230, 230, 240, 230, 230, 240};
const uint8_t bamako[] = {
0, 64, 77, 0, 64, 77, 1, 64, 76, 1, 64, 76, 2, 65, 76,
2, 65, 76, 2, 65, 75, 2, 65, 75, 3, 65, 75, 3, 65, 75,
4, 66, 75, 4, 66, 75, 4, 66, 74, 4, 66, 74, 5, 66, 74,
5, 66, 74, 6, 67, 74, 6, 67, 74, 6, 67, 73, 6, 67, 73,
7, 68, 73, 7, 68, 73, 8, 68, 73, 8, 68, 73, 9, 68, 72,
9, 68, 72, 9, 69, 72, 9, 69, 72, 10, 69, 71, 10, 69, 71,
11, 70, 71, 11, 70, 71, 11, 70, 71, 11, 70, 71, 12, 70, 70,
12, 70, 70, 13, 71, 70, 13, 71, 70, 13, 71, 70, 13, 71, 70,
14, 72, 69, 14, 72, 69, 15, 72, 69, 15, 72, 69, 15, 72, 68,
15, 72, 68, 16, 73, 68, 16, 73, 68, 17, 73, 68, 17, 73, 68,
17, 74, 67, 17, 74, 67, 18, 74, 67, 18, 74, 67, 18, 74, 67,
18, 74, 67, 19, 75, 66, 19, 75, 66, 20, 75, 66, 20, 75, 66,
20, 76, 65, 20, 76, 65, 21, 76, 65, 21, 76, 65, 21, 76, 65,
21, 76, 65, 22, 77, 64, 22, 77, 64, 23, 77, 64, 23, 77, 64,
23, 78, 64, 23, 78, 64, 24, 78, 63, 24, 78, 63, 25, 79, 63,
25, 79, 63, 25, 79, 62, 25, 79, 62, 26, 79, 62, 26, 79, 62,
26, 80, 62, 26, 80, 62, 27, 80, 61, 27, 80, 61, 28, 81, 61,
28, 81, 61, 28, 81, 60, 28, 81, 60, 29, 82, 60, 29, 82, 60,
30, 82, 60, 30, 82, 60, 30, 82, 59, 30, 82, 59, 31, 83, 59,
31, 83, 59, 32, 83, 58, 32, 83, 58, 32, 84, 58, 32, 84, 58,
33, 84, 58, 33, 84, 58, 34, 85, 57, 34, 85, 57, 34, 85, 57,
34, 85, 57, 35, 85, 56, 35, 85, 56, 36, 86, 56, 36, 86, 56,
36, 86, 55, 36, 86, 55, 37, 87, 55, 37, 87, 55, 38, 87, 55,
38, 87, 55, 38, 88, 54, 38, 88, 54, 39, 88, 54, 39, 88, 54,
40, 89, 53, 40, 89, 53, 40, 89, 53, 40, 89, 53, 41, 90, 52,
41, 90, 52, 42, 90, 52, 42, 90, 52, 43, 90, 52, 43, 90, 52,
43, 91, 51, 43, 91, 51, 44, 91, 51, 44, 91, 51, 45, 92, 50,
45, 92, 50, 45, 92, 50, 45, 92, 50, 46, 93, 49, 46, 93, 49,
47, 93, 49, 47, 93, 49, 48, 94, 49, 48, 94, 49, 48, 94, 48,
48, 94, 48, 49, 95, 48, 49, 95, 48, 50, 95, 47, 50, 95, 47,
51, 96, 47, 51, 96, 47, 51, 96, 46, 51, 96, 46, 52, 97, 46,
52, 97, 46, 53, 97, 45, 53, 97, 45, 54, 98, 45, 54, 98, 45,
54, 98, 45, 54, 98, 45, 55, 99, 44, 55, 99, 44, 56, 99, 44,
56, 99, 44, 57, 100, 43, 57, 100, 43, 57, 100, 43, 57, 100, 43,
58, 101, 42, 58, 101, 42, 59, 101, 42, 59, 101, 42, 60, 102, 41,
60, 102, 41, 61, 102, 41, 61, 102, 41, 61, 103, 40, 61, 103, 40,
62, 103, 40, 62, 103, 40, 63, 104, 39, 63, 104, 39, 64, 104, 39,
64, 104, 39, 65, 105, 39, 65, 105, 39, 65, 105, 38, 65, 105, 38,
66, 106, 38, 66, 106, 38, 67, 106, 37, 67, 106, 37, 68, 107, 37,
68, 107, 37, 69, 107, 36, 69, 107, 36, 70, 108, 36, 70, 108, 36,
70, 109, 35, 70, 109, 35, 71, 109, 35, 71, 109, 35, 72, 110, 34,
72, 110, 34, 73, 110, 34, 73, 110, 34, 74, 111, 33, 74, 111, 33,
75, 111, 33, 75, 111, 33, 76, 112, 32, 76, 112, 32, 76, 113, 32,
76, 113, 32, 77, 113, 31, 77, 113, 31, 78, 114, 31, 78, 114, 31,
79, 114, 30, 79, 114, 30, 80, 115, 29, 80, 115, 29, 81, 115, 29,
81, 115, 29, 82, 116, 28, 82, 116, 28, 83, 117, 28, 83, 117, 28,
84, 117, 27, 84, 117, 27, 85, 118, 27, 85, 118, 27, 86, 119, 26,
86, 119, 26, 87, 119, 26, 87, 119, 26, 88, 120, 25, 88, 120, 25,
89, 120, 25, 89, 120, 25, 90, 121, 24, 90, 121, 24, 91, 122, 23,
91, 122, 23, 92, 122, 23, 92, 122, 23, 93, 123, 22, 93, 123, 22,
94, 124, 22, 94, 124, 22, 95, 124, 21, 95, 124, 21, 96, 125, 21,
96, 125, 21, 97, 126, 20, 97, 126, 20, 98, 126, 19, 98, 126, 19,
99, 127, 19, 99, 127, 19, 100, 128, 18, 100, 128, 18, 101, 128, 18,
101, 128, 18, 103, 129, 17, 103, 129, 17, 104, 130, 16, 104, 130, 16,
105, 130, 16, 105, 130, 16, 106, 131, 15, 106, 131, 15, 107, 132, 14,
107, 132, 14, 108, 132, 14, 108, 132, 14, 110, 133, 13, 110, 133, 13,
111, 134, 12, 111, 134, 12, 112, 134, 12, 112, 134, 12, 113, 135, 11,
113, 135, 11, 115, 136, 10, 115, 136, 10, 116, 136, 9, 116, 136, 9,
117, 137, 9, 117, 137, 9, 118, 137, 8, 118, 137, 8, 120, 138, 7,
120, 138, 7, 121, 138, 7, 121, 138, 7, 122, 139, 6, 122, 139, 6,
124, 139, 6, 124, 139, 6, 125, 140, 5, 125, 140, 5, 126, 140, 5,
126, 140, 5, 128, 141, 4, 128, 141, 4, 129, 141, 4, 129, 141, 4,
130, 141, 4, 130, 141, 4, 131, 142, 3, 131, 142, 3, 133, 142, 3,
133, 142, 3, 134, 142, 3, 134, 142, 3, 135, 142, 3, 135, 142, 3,
137, 143, 3, 137, 143, 3, 138, 143, 3, 138, 143, 3, 139, 143, 3,
139, 143, 3, 141, 143, 3, 141, 143, 3, 142, 144, 3, 142, 144, 3,
143, 144, 3, 143, 144, 3, 145, 144, 4, 145, 144, 4, 146, 145, 4,
146, 145, 4, 147, 145, 5, 147, 145, 5, 149, 145, 6, 149, 145, 6,
150, 146, 6, 150, 146, 6, 152, 146, 7, 152, 146, 7, 153, 147, 8,
153, 147, 8, 155, 147, 9, 155, 147, 9, 156, 148, 11, 156, 148, 11,
158, 149, 12, 158, 149, 12, 160, 149, 13, 160, 149, 13, 161, 150, 15,
161, 150, 15, 163, 151, 16, 163, 151, 16, 165, 152, 17, 165, 152, 17,
166, 153, 19, 166, 153, 19, 168, 154, 20, 168, 154, 20, 170, 155, 22,
170, 155, 22, 171, 156, 24, 171, 156, 24, 173, 157, 25, 173, 157, 25,
175, 158, 27, 175, 158, 27, 176, 159, 28, 176, 159, 28, 178, 160, 30,
178, 160, 30, 180, 161, 32, 180, 161, 32, 182, 163, 33, 182, 163, 33,
183, 164, 35, 183, 164, 35, 185, 165, 37, 185, 165, 37, 187, 166, 39,
187, 166, 39, 188, 168, 41, 188, 168, 41, 190, 169, 42, 190, 169, 42,
192, 170, 44, 192, 170, 44, 193, 171, 46, 193, 171, 46, 195, 173, 48,
195, 173, 48, 197, 174, 50, 197, 174, 50, 198, 175, 52, 198, 175, 52,
200, 176, 54, 200, 176, 54, 201, 178, 56, 201, 178, 56, 203, 179, 58,
203, 179, 58, 204, 180, 59, 204, 180, 59, 205, 181, 61, 205, 181, 61,
207, 183, 63, 207, 183, 63, 208, 184, 65, 208, 184, 65, 209, 185, 67,
209, 185, 67, 211, 186, 69, 211, 186, 69, 212, 187, 71, 212, 187, 71,
213, 188, 73, 213, 188, 73, 214, 189, 75, 214, 189, 75, 216, 190, 77,
216, 190, 77, 217, 191, 79, 217, 191, 79, 218, 192, 81, 218, 192, 81,
219, 193, 82, 219, 193, 82, 220, 194, 84, 220, 194, 84, 221, 195, 86,
221, 195, 86, 222, 196, 88, 222, 196, 88, 223, 197, 90, 223, 197, 90,
224, 198, 92, 224, 198, 92, 225, 199, 94, 225, 199, 94, 226, 200, 95,
226, 200, 95, 227, 201, 97, 227, 201, 97, 228, 202, 99, 228, 202, 99,
229, 203, 101, 229, 203, 101, 230, 204, 103, 230, 204, 103, 231, 205, 104,
231, 205, 104, 231, 206, 106, 231, 206, 106, 232, 207, 108, 232, 207, 108,
233, 208, 110, 233, 208, 110, 234, 208, 111, 234, 208, 111, 235, 209, 113,
235, 209, 113, 236, 210, 115, 236, 210, 115, 237, 211, 117, 237, 211, 117,
238, 212, 118, 238, 212, 118, 239, 213, 120, 239, 213, 120, 239, 214, 122,
239, 214, 122, 240, 215, 124, 240, 215, 124, 241, 216, 125, 241, 216, 125,
242, 216, 127, 242, 216, 127, 243, 217, 129, 243, 217, 129, 244, 218, 131,
244, 218, 131, 245, 219, 132, 245, 219, 132, 246, 220, 134, 246, 220, 134,
246, 221, 136, 246, 221, 136, 247, 222, 137, 247, 222, 137, 248, 223, 139,
248, 223, 139, 249, 223, 141, 249, 223, 141, 250, 224, 143, 250, 224, 143,
251, 225, 144, 251, 225, 144, 252, 226, 146, 252, 226, 146, 252, 227, 148,
252, 227, 148, 253, 228, 150, 253, 228, 150, 254, 229, 151, 254, 229, 151,
255, 229, 153, 255, 229, 153};
const uint8_t batlow[] = {
1, 25, 89, 1, 25, 89, 2, 27, 89, 2, 27, 89, 3, 28, 90,
3, 28, 90, 4, 30, 90, 4, 30, 90, 5, 31, 90, 5, 31, 90,
6, 33, 91, 6, 33, 91, 7, 34, 91, 7, 34, 91, 7, 36, 91,
7, 36, 91, 8, 37, 91, 8, 37, 91, 9, 39, 92, 9, 39, 92,
10, 40, 92, 10, 40, 92, 10, 42, 92, 10, 42, 92, 11, 43, 92,
11, 43, 92, 11, 45, 93, 11, 45, 93, 12, 46, 93, 12, 46, 93,
12, 47, 93, 12, 47, 93, 13, 49, 93, 13, 49, 93, 13, 50, 94,
13, 50, 94, 13, 51, 94, 13, 51, 94, 14, 53, 94, 14, 53, 94,
14, 54, 94, 14, 54, 94, 14, 55, 94, 14, 55, 94, 15, 56, 95,
15, 56, 95, 15, 57, 95, 15, 57, 95, 15, 59, 95, 15, 59, 95,
15, 60, 95, 15, 60, 95, 16, 61, 95, 16, 61, 95, 16, 62, 95,
16, 62, 95, 16, 63, 96, 16, 63, 96, 16, 64, 96, 16, 64, 96,
17, 65, 96, 17, 65, 96, 17, 66, 96, 17, 66, 96, 17, 67, 96,
17, 67, 96, 17, 68, 96, 17, 68, 96, 18, 69, 97, 18, 69, 97,
18, 70, 97, 18, 70, 97, 18, 71, 97, 18, 71, 97, 18, 72, 97,
18, 72, 97, 19, 73, 97, 19, 73, 97, 19, 74, 97, 19, 74, 97,
19, 75, 97, 19, 75, 97, 20, 76, 98, 20, 76, 98, 20, 77, 98,
20, 77, 98, 20, 78, 98, 20, 78, 98, 21, 79, 98, 21, 79, 98,
21, 79, 98, 21, 79, 98, 22, 80, 98, 22, 80, 98, 22, 81, 98,
22, 81, 98, 23, 82, 98, 23, 82, 98, 23, 83, 98, 23, 83, 98,
24, 84, 98, 24, 84, 98, 24, 85, 98, 24, 85, 98, 25, 86, 98,
25, 86, 98, 25, 87, 98, 25, 87, 98, 26, 87, 98, 26, 87, 98,
27, 88, 98, 27, 88, 98, 27, 89, 98, 27, 89, 98, 28, 90, 98,
28, 90, 98, 29, 91, 98, 29, 91, 98, 30, 92, 98, 30, 92, 98,
30, 93, 98, 30, 93, 98, 31, 93, 97, 31, 93, 97, 32, 94, 97,
32, 94, 97, 33, 95, 97, 33, 95, 97, 34, 96, 97, 34, 96, 97,
35, 96, 96, 35, 96, 96, 36, 97, 96, 36, 97, 96, 37, 98, 96,
37, 98, 96, 38, 99, 95, 38, 99, 95, 39, 99, 95, 39, 99, 95,
40, 100, 95, 40, 100, 95, 42, 101, 94, 42, 101, 94, 43, 101, 94,
43, 101, 94, 44, 102, 93, 44, 102, 93, 45, 103, 93, 45, 103, 93,
47, 103, 92, 47, 103, 92, 48, 104, 92, 48, 104, 92, 49, 105, 91,
49, 105, 91, 51, 105, 90, 51, 105, 90, 52, 106, 90, 52, 106, 90,
53, 106, 89, 53, 106, 89, 55, 107, 88, 55, 107, 88, 56, 108, 88,
56, 108, 88, 58, 108, 87, 58, 108, 87, 59, 109, 86, 59, 109, 86,
60, 109, 86, 60, 109, 86, 62, 110, 85, 62, 110, 85, 63, 110, 84,
63, 110, 84, 65, 111, 83, 65, 111, 83, 66, 111, 82, 66, 111, 82,
68, 112, 82, 68, 112, 82, 69, 112, 81, 69, 112, 81, 71, 113, 80,
71, 113, 80, 72, 113, 79, 72, 113, 79, 74, 114, 78, 74, 114, 78,
76, 114, 77, 76, 114, 77, 77, 115, 77, 77, 115, 77, 79, 115, 76,
79, 115, 76, 80, 116, 75, 80, 116, 75, 82, 116, 74, 82, 116, 74,
83, 117, 73, 83, 117, 73, 85, 117, 72, 85, 117, 72, 87, 118, 71,
87, 118, 71, 88, 118, 70, 88, 118, 70, 90, 119, 69, 90, 119, 69,
91, 119, 69, 91, 119, 69, 93, 120, 68, 93, 120, 68, 95, 120, 67,
95, 120, 67, 96, 121, 66, 96, 121, 66, 98, 121, 65, 98, 121, 65,
99, 122, 64, 99, 122, 64, 101, 122, 63, 101, 122, 63, 103, 123, 62,
103, 123, 62, 104, 123, 62, 104, 123, 62, 106, 123, 61, 106, 123, 61,
108, 124, 60, 108, 124, 60, 109, 124, 59, 109, 124, 59, 111, 125, 58,
111, 125, 58, 113, 125, 57, 113, 125, 57, 115, 126, 56, 115, 126, 56,
116, 126, 56, 116, 126, 56, 118, 127, 55, 118, 127, 55, 120, 127, 54,
120, 127, 54, 121, 128, 53, 121, 128, 53, 123, 128, 52, 123, 128, 52,
125, 129, 52, 125, 129, 52, 127, 129, 51, 127, 129, 51, 129, 130, 50,
129, 130, 50, 130, 130, 49, 130, 130, 49, 132, 131, 49, 132, 131, 49,
134, 131, 48, 134, 131, 48, 136, 132, 47, 136, 132, 47, 138, 132, 47,
138, 132, 47, 140, 133, 46, 140, 133, 46, 142, 133, 46, 142, 133, 46,
143, 134, 45, 143, 134, 45, 145, 134, 45, 145, 134, 45, 147, 135, 44,
147, 135, 44, 149, 135, 44, 149, 135, 44, 151, 136, 44, 151, 136, 44,
153, 136, 44, 153, 136, 44, 155, 137, 43, 155, 137, 43, 157, 137, 43,
157, 137, 43, 159, 137, 43, 159, 137, 43, 161, 138, 43, 161, 138, 43,
163, 138, 44, 163, 138, 44, 165, 139, 44, 165, 139, 44, 167, 139, 44,
167, 139, 44, 169, 140, 44, 169, 140, 44, 171, 140, 45, 171, 140, 45,
173, 140, 45, 173, 140, 45, 175, 141, 46, 175, 141, 46, 177, 141, 47,
177, 141, 47, 179, 142, 47, 179, 142, 47, 181, 142, 48, 181, 142, 48,
183, 142, 49, 183, 142, 49, 185, 143, 50, 185, 143, 50, 187, 143, 51,
187, 143, 51, 189, 143, 52, 189, 143, 52, 190, 144, 53, 190, 144, 53,
192, 144, 54, 192, 144, 54, 194, 144, 55, 194, 144, 55, 196, 145, 56,
196, 145, 56, 198, 145, 58, 198, 145, 58, 200, 145, 59, 200, 145, 59,
202, 146, 60, 202, 146, 60, 203, 146, 62, 203, 146, 62, 205, 146, 63,
205, 146, 63, 207, 147, 64, 207, 147, 64, 209, 147, 66, 209, 147, 66,
210, 147, 67, 210, 147, 67, 212, 148, 69, 212, 148, 69, 214, 148, 70,
214, 148, 70, 216, 148, 72, 216, 148, 72, 217, 149, 74, 217, 149, 74,
219, 149, 75, 219, 149, 75, 221, 149, 77, 221, 149, 77, 222, 150, 79,
222, 150, 79, 224, 150, 81, 224, 150, 81, 225, 151, 82, 225, 151, 82,
227, 151, 84, 227, 151, 84, 228, 151, 86, 228, 151, 86, 230, 152, 88,
230, 152, 88, 231, 152, 90, 231, 152, 90, 233, 153, 92, 233, 153, 92,
234, 153, 94, 234, 153, 94, 235, 154, 96, 235, 154, 96, 237, 154, 98,
237, 154, 98, 238, 155, 100, 238, 155, 100, 239, 155, 103, 239, 155, 103,
240, 156, 105, 240, 156, 105, 241, 157, 107, 241, 157, 107, 242, 157, 109,
242, 157, 109, 243, 158, 112, 243, 158, 112, 244, 159, 114, 244, 159, 114,
245, 159, 116, 245, 159, 116, 246, 160, 119, 246, 160, 119, 247, 161, 121,
247, 161, 121, 248, 161, 123, 248, 161, 123, 248, 162, 126, 248, 162, 126,
249, 163, 128, 249, 163, 128, 249, 163, 130, 249, 163, 130, 250, 164, 133,
250, 164, 133, 250, 165, 135, 250, 165, 135, 251, 166, 137, 251, 166, 137,
251, 166, 140, 251, 166, 140, 252, 167, 142, 252, 167, 142, 252, 168, 144,
252, 168, 144, 252, 169, 147, 252, 169, 147, 252, 169, 149, 252, 169, 149,
253, 170, 151, 253, 170, 151, 253, 171, 154, 253, 171, 154, 253, 172, 156,
253, 172, 156, 253, 172, 158, 253, 172, 158, 253, 173, 160, 253, 173, 160,
253, 174, 162, 253, 174, 162, 253, 175, 165, 253, 175, 165, 253, 175, 167,
253, 175, 167, 253, 176, 169, 253, 176, 169, 253, 177, 171, 253, 177, 171,
253, 178, 173, 253, 178, 173, 253, 178, 175, 253, 178, 175, 253, 179, 177,
253, 179, 177, 253, 180, 180, 253, 180, 180, 253, 180, 182, 253, 180, 182,
253, 181, 184, 253, 181, 184, 253, 182, 186, 253, 182, 186, 253, 183, 188,
253, 183, 188, 253, 183, 190, 253, 183, 190, 253, 184, 192, 253, 184, 192,
253, 185, 194, 253, 185, 194, 253, 186, 196, 253, 186, 196, 253, 186, 199,
253, 186, 199, 253, 187, 201, 253, 187, 201, 253, 188, 203, 253, 188, 203,
253, 188, 205, 253, 188, 205, 252, 189, 207, 252, 189, 207, 252, 190, 209,
252, 190, 209, 252, 191, 211, 252, 191, 211, 252, 191, 214, 252, 191, 214,
252, 192, 216, 252, 192, 216, 252, 193, 218, 252, 193, 218, 252, 194, 220,
252, 194, 220, 252, 195, 223, 252, 195, 223, 252, 195, 225, 252, 195, 225,
252, 196, 227, 252, 196, 227, 252, 197, 229, 252, 197, 229, 251, 198, 232,
251, 198, 232, 251, 198, 234, 251, 198, 234, 251, 199, 236, 251, 199, 236,
251, 200, 239, 251, 200, 239, 251, 201, 241, 251, 201, 241, 251, 202, 243,
251, 202, 243, 251, 202, 246, 251, 202, 246, 250, 203, 248, 250, 203, 248,
250, 204, 250, 250, 204, 250};
const uint8_t berlin[] = {
158, 176, 255, 158, 176, 255, 156, 176, 254, 156, 176, 254, 154, 176, 253,
154, 176, 253, 152, 175, 252, 152, 175, 252, 149, 175, 251, 149, 175, 251,
147, 175, 250, 147, 175, 250, 145, 174, 249, 145, 174, 249, 142, 174, 247,
142, 174, 247, 140, 174, 246, 140, 174, 246, 138, 174, 245, 138, 174, 245,
135, 173, 244, 135, 173, 244, 133, 173, 243, 133, 173, 243, 130, 173, 242,
130, 173, 242, 128, 172, 241, 128, 172, 241, 126, 172, 240, 126, 172, 240,
123, 172, 238, 123, 172, 238, 121, 171, 237, 121, 171, 237, 118, 171, 236,
118, 171, 236, 116, 170, 235, 116, 170, 235, 113, 170, 233, 113, 170, 233,
111, 169, 232, 111, 169, 232, 108, 169, 230, 108, 169, 230, 106, 168, 229,
106, 168, 229, 103, 168, 227, 103, 168, 227, 101, 167, 226, 101, 167, 226,
98, 166, 224, 98, 166, 224, 96, 165, 223, 96, 165, 223, 93, 165, 221,
93, 165, 221, 91, 164, 219, 91, 164, 219, 88, 163, 217, 88, 163, 217,
86, 162, 215, 86, 162, 215, 84, 160, 213, 84, 160, 213, 81, 159, 211,
81, 159, 211, 79, 158, 209, 79, 158, 209, 77, 157, 207, 77, 157, 207,
75, 155, 205, 75, 155, 205, 72, 154, 202, 72, 154, 202, 70, 152, 200,
70, 152, 200, 68, 151, 198, 68, 151, 198, 67, 149, 195, 67, 149, 195,
65, 148, 193, 65, 148, 193, 63, 146, 190, 63, 146, 190, 62, 144, 188,
62, 144, 188, 60, 142, 185, 60, 142, 185, 59, 141, 183, 59, 141, 183,
57, 139, 180, 57, 139, 180, 56, 137, 178, 56, 137, 178, 55, 135, 175,
55, 135, 175, 54, 133, 173, 54, 133, 173, 53, 132, 170, 53, 132, 170,
51, 130, 168, 51, 130, 168, 50, 128, 166, 50, 128, 166, 50, 126, 163,
50, 126, 163, 49, 124, 161, 49, 124, 161, 48, 122, 158, 48, 122, 158,
47, 120, 156, 47, 120, 156, 46, 118, 153, 46, 118, 153, 45, 117, 151,
45, 117, 151, 44, 115, 148, 44, 115, 148, 44, 113, 146, 44, 113, 146,
43, 111, 143, 43, 111, 143, 42, 109, 141, 42, 109, 141, 41, 107, 139,
41, 107, 139, 41, 105, 136, 41, 105, 136, 40, 104, 134, 40, 104, 134,
39, 102, 131, 39, 102, 131, 39, 100, 129, 39, 100, 129, 38, 98, 127,
38, 98, 127, 37, 96, 124, 37, 96, 124, 36, 94, 122, 36, 94, 122,
36, 93, 120, 36, 93, 120, 35, 91, 117, 35, 91, 117, 34, 89, 115,
34, 89, 115, 34, 87, 113, 34, 87, 113, 33, 85, 110, 33, 85, 110,
32, 84, 108, 32, 84, 108, 32, 82, 106, 32, 82, 106, 31, 80, 104,
31, 80, 104, 30, 78, 101, 30, 78, 101, 30, 77, 99, 30, 77, 99,
29, 75, 97, 29, 75, 97, 28, 73, 95, 28, 73, 95, 28, 71, 92,
28, 71, 92, 27, 70, 90, 27, 70, 90, 26, 68, 88, 26, 68, 88,
26, 66, 86, 26, 66, 86, 25, 65, 83, 25, 65, 83, 25, 63, 81,
25, 63, 81, 24, 61, 79, 24, 61, 79, 23, 60, 77, 23, 60, 77,
23, 58, 75, 23, 58, 75, 22, 56, 73, 22, 56, 73, 22, 55, 71,
22, 55, 71, 21, 53, 68, 21, 53, 68, 21, 51, 66, 21, 51, 66,
20, 50, 64, 20, 50, 64, 20, 48, 62, 20, 48, 62, 19, 47, 60,
19, 47, 60, 19, 45, 58, 19, 45, 58, 18, 44, 56, 18, 44, 56,
18, 42, 54, 18, 42, 54, 18, 41, 52, 18, 41, 52, 17, 39, 50,
17, 39, 50, 17, 38, 48, 17, 38, 48, 17, 36, 46, 17, 36, 46,
17, 35, 44, 17, 35, 44, 17, 33, 42, 17, 33, 42, 17, 32, 40,
17, 32, 40, 16, 31, 38, 16, 31, 38, 16, 29, 37, 16, 29, 37,
16, 28, 35, 16, 28, 35, 17, 27, 33, 17, 27, 33, 17, 26, 32,
17, 26, 32, 17, 25, 30, 17, 25, 30, 17, 24, 28, 17, 24, 28,
17, 22, 27, 17, 22, 27, 17, 21, 25, 17, 21, 25, 17, 20, 24,
17, 20, 24, 17, 19, 23, 17, 19, 23, 18, 18, 21, 18, 18, 21,
18, 18, 20, 18, 18, 20, 19, 17, 18, 19, 17, 18, 20, 16, 17,
20, 16, 17, 20, 15, 16, 20, 15, 16, 21, 14, 14, 21, 14, 14,
22, 14, 13, 22, 14, 13, 23, 13, 11, 23, 13, 11, 24, 12, 10,
24, 12, 10, 25, 12, 9, 25, 12, 9, 26, 12, 8, 26, 12, 8,
27, 11, 7, 27, 11, 7, 28, 11, 6, 28, 11, 6, 29, 11, 5,
29, 11, 5, 30, 11, 4, 30, 11, 4, 32, 11, 4, 32, 11, 4,
33, 11, 3, 33, 11, 3, 34, 12, 2, 34, 12, 2, 35, 12, 2,
35, 12, 2, 36, 12, 2, 36, 12, 2, 37, 12, 1, 37, 12, 1,
38, 13, 1, 38, 13, 1, 39, 13, 1, 39, 13, 1, 40, 13, 1,
40, 13, 1, 42, 14, 1, 42, 14, 1, 43, 14, 1, 43, 14, 1,
44, 14, 0, 44, 14, 0, 45, 14, 0, 45, 14, 0, 47, 14, 0,
47, 14, 0, 48, 15, 0, 48, 15, 0, 49, 15, 0, 49, 15, 0,
51, 15, 0, 51, 15, 0, 52, 15, 0, 52, 15, 0, 53, 16, 0,
53, 16, 0, 55, 16, 0, 55, 16, 0, 56, 16, 0, 56, 16, 0,
57, 17, 0, 57, 17, 0, 59, 17, 0, 59, 17, 0, 60, 17, 1,
60, 17, 1, 62, 18, 1, 62, 18, 1, 63, 18, 1, 63, 18, 1,
65, 18, 1, 65, 18, 1, 66, 19, 1, 66, 19, 1, 68, 19, 1,
68, 19, 1, 69, 20, 1, 69, 20, 1, 71, 20, 1, 71, 20, 1,
72, 21, 2, 72, 21, 2, 74, 21, 2, 74, 21, 2, 75, 22, 2,
75, 22, 2, 77, 22, 2, 77, 22, 2, 79, 23, 3, 79, 23, 3,
80, 24, 3, 80, 24, 3, 82, 24, 4, 82, 24, 4, 84, 25, 5,
84, 25, 5, 86, 26, 5, 86, 26, 5, 87, 27, 6, 87, 27, 6,
89, 28, 7, 89, 28, 7, 91, 29, 8, 91, 29, 8, 93, 30, 9,
93, 30, 9, 95, 31, 10, 95, 31, 10, 97, 32, 11, 97, 32, 11,
99, 33, 12, 99, 33, 12, 101, 35, 14, 101, 35, 14, 104, 36, 15,
104, 36, 15, 106, 37, 16, 106, 37, 16, 108, 39, 17, 108, 39, 17,
110, 40, 19, 110, 40, 19, 112, 42, 20, 112, 42, 20, 115, 43, 22,
115, 43, 22, 117, 45, 23, 117, 45, 23, 119, 47, 25, 119, 47, 25,
121, 48, 27, 121, 48, 27, 123, 50, 28, 123, 50, 28, 125, 52, 30,
125, 52, 30, 128, 54, 32, 128, 54, 32, 130, 55, 34, 130, 55, 34,
132, 57, 36, 132, 57, 36, 134, 59, 38, 134, 59, 38, 136, 61, 40,
136, 61, 40, 138, 63, 42, 138, 63, 42, 140, 64, 44, 140, 64, 44,
142, 66, 46, 142, 66, 46, 144, 68, 48, 144, 68, 48, 146, 70, 50,
146, 70, 50, 148, 72, 52, 148, 72, 52, 150, 74, 54, 150, 74, 54,
152, 76, 57, 152, 76, 57, 154, 77, 59, 154, 77, 59, 156, 79, 61,
156, 79, 61, 158, 81, 63, 158, 81, 63, 160, 83, 65, 160, 83, 65,
162, 85, 68, 162, 85, 68, 164, 87, 70, 164, 87, 70, 166, 89, 72,
166, 89, 72, 168, 90, 74, 168, 90, 74, 170, 92, 76, 170, 92, 76,
172, 94, 79, 172, 94, 79, 174, 96, 81, 174, 96, 81, 176, 98, 83,
176, 98, 83, 178, 100, 85, 178, 100, 85, 180, 102, 88, 180, 102, 88,
182, 104, 90, 182, 104, 90, 184, 106, 92, 184, 106, 92, 186, 107, 95,
186, 107, 95, 188, 109, 97, 188, 109, 97, 190, 111, 99, 190, 111, 99,
192, 113, 101, 192, 113, 101, 194, 115, 104, 194, 115, 104, 196, 117, 106,
196, 117, 106, 198, 119, 108, 198, 119, 108, 200, 121, 111, 200, 121, 111,
202, 123, 113, 202, 123, 113, 204, 125, 115, 204, 125, 115, 206, 127, 118,
206, 127, 118, 208, 129, 120, 208, 129, 120, 210, 131, 122, 210, 131, 122,
213, 133, 125, 213, 133, 125, 215, 135, 127, 215, 135, 127, 217, 137, 130,
217, 137, 130, 219, 139, 132, 219, 139, 132, 221, 141, 134, 221, 141, 134,
223, 143, 137, 223, 143, 137, 225, 145, 139, 225, 145, 139, 227, 147, 142,
227, 147, 142, 229, 149, 144, 229, 149, 144, 231, 151, 146, 231, 151, 146,
234, 153, 149, 234, 153, 149, 236, 155, 151, 236, 155, 151, 238, 157, 154,
238, 157, 154, 240, 159, 156, 240, 159, 156, 242, 161, 159, 242, 161, 159,
244, 163, 161, 244, 163, 161, 246, 165, 163, 246, 165, 163, 249, 167, 166,
249, 167, 166, 251, 169, 168, 251, 169, 168, 253, 171, 171, 253, 171, 171,
255, 173, 173, 255, 173, 173};
const uint8_t bilbao[] = {
255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 252, 252, 252,
252, 252, 252, 251, 251, 251, 251, 251, 251, 250, 250, 250, 250, 250, 250,
248, 248, 248, 248, 248, 248, 247, 247, 247, 247, 247, 247, 246, 246, 246,
246, 246, 246, 245, 245, 244, 245, 245, 244, 243, 243, 243, 243, 243, 243,
242, 242, 242, 242, 242, 242, 241, 241, 240, 241, 241, 240, 239, 239, 239,
239, 239, 239, 238, 238, 238, 238, 238, 238, 237, 237, 236, 237, 237, 236,
236, 236, 235, 236, 236, 235, 234, 234, 234, 234, 234, 234, 233, 233, 232,
233, 233, 232, 232, 232, 231, 232, 232, 231, 231, 230, 230, 231, 230, 230,
229, 229, 228, 229, 229, 228, 228, 228, 227, 228, 228, 227, 227, 227, 225,
227, 227, 225, 226, 225, 224, 226, 225, 224, 225, 224, 223, 225, 224, 223,
223, 223, 221, 223, 223, 221, 222, 222, 220, 222, 222, 220, 221, 220, 218,
221, 220, 218, 220, 219, 217, 220, 219, 217, 219, 218, 216, 219, 218, 216,
218, 217, 214, 218, 217, 214, 217, 216, 213, 217, 216, 213, 215, 215, 211,
215, 215, 211, 214, 213, 210, 214, 213, 210, 213, 212, 208, 213, 212, 208,
212, 211, 207, 212, 211, 207, 211, 210, 205, 211, 210, 205, 210, 209, 204,
210, 209, 204, 210, 208, 202, 210, 208, 202, 209, 207, 201, 209, 207, 201,
208, 206, 199, 208, 206, 199, 207, 205, 198, 207, 205, 198, 206, 204, 196,
206, 204, 196, 205, 203, 195, 205, 203, 195, 205, 202, 194, 205, 202, 194,
204, 201, 192, 204, 201, 192, 203, 200, 191, 203, 200, 191, 202, 200, 189,
202, 200, 189, 202, 199, 188, 202, 199, 188, 201, 198, 186, 201, 198, 186,
201, 197, 185, 201, 197, 185, 200, 196, 184, 200, 196, 184, 199, 196, 182,
199, 196, 182, 199, 195, 181, 199, 195, 181, 198, 194, 179, 198, 194, 179,
198, 194, 178, 198, 194, 178, 197, 193, 177, 197, 193, 177, 197, 192, 175,
197, 192, 175, 196, 192, 174, 196, 192, 174, 196, 191, 173, 196, 191, 173,
195, 190, 171, 195, 190, 171, 195, 190, 170, 195, 190, 170, 194, 189, 169,
194, 189, 169, 194, 188, 167, 194, 188, 167, 194, 188, 166, 194, 188, 166,
193, 187, 165, 193, 187, 165, 193, 187, 163, 193, 187, 163, 192, 186, 162,
192, 186, 162, 192, 185, 161, 192, 185, 161, 192, 185, 159, 192, 185, 159,
191, 184, 158, 191, 184, 158, 191, 184, 157, 191, 184, 157, 190, 183, 156,
190, 183, 156, 190, 183, 154, 190, 183, 154, 190, 182, 153, 190, 182, 153,
189, 181, 152, 189, 181, 152, 189, 181, 150, 189, 181, 150, 189, 180, 149,
189, 180, 149, 188, 179, 148, 188, 179, 148, 188, 179, 146, 188, 179, 146,
187, 178, 145, 187, 178, 145, 187, 177, 144, 187, 177, 144, 187, 177, 143,
187, 177, 143, 186, 176, 141, 186, 176, 141, 186, 175, 140, 186, 175, 140,
185, 175, 139, 185, 175, 139, 185, 174, 137, 185, 174, 137, 185, 173, 136,
185, 173, 136, 184, 172, 135, 184, 172, 135, 184, 171, 133, 184, 171, 133,
183, 171, 132, 183, 171, 132, 183, 170, 131, 183, 170, 131, 182, 169, 129,
182, 169, 129, 182, 168, 128, 182, 168, 128, 181, 167, 127, 181, 167, 127,
181, 166, 126, 181, 166, 126, 181, 165, 124, 181, 165, 124, 180, 164, 123,
180, 164, 123, 180, 163, 122, 180, 163, 122, 179, 162, 121, 179, 162, 121,
179, 161, 120, 179, 161, 120, 178, 160, 119, 178, 160, 119, 178, 159, 118,
178, 159, 118, 178, 158, 117, 178, 158, 117, 177, 157, 116, 177, 157, 116,
177, 156, 115, 177, 156, 115, 177, 155, 114, 177, 155, 114, 176, 154, 113,
176, 154, 113, 176, 153, 112, 176, 153, 112, 175, 152, 112, 175, 152, 112,
175, 151, 111, 175, 151, 111, 175, 150, 110, 175, 150, 110, 174, 149, 109,
174, 149, 109, 174, 148, 109, 174, 148, 109, 174, 147, 108, 174, 147, 108,
173, 146, 108, 173, 146, 108, 173, 145, 107, 173, 145, 107, 173, 144, 106,
173, 144, 106, 172, 144, 106, 172, 144, 106, 172, 143, 105, 172, 143, 105,
172, 142, 105, 172, 142, 105, 172, 141, 104, 172, 141, 104, 171, 140, 104,
171, 140, 104, 171, 139, 104, 171, 139, 104, 171, 138, 103, 171, 138, 103,
171, 137, 103, 171, 137, 103, 170, 136, 102, 170, 136, 102, 170, 135, 102,
170, 135, 102, 170, 134, 101, 170, 134, 101, 169, 134, 101, 169, 134, 101,
169, 133, 101, 169, 133, 101, 169, 132, 100, 169, 132, 100, 169, 131, 100,
169, 131, 100, 168, 130, 99, 168, 130, 99, 168, 129, 99, 168, 129, 99,
168, 128, 99, 168, 128, 99, 168, 127, 98, 168, 127, 98, 167, 126, 98,
167, 126, 98, 167, 126, 98, 167, 126, 98, 167, 125, 97, 167, 125, 97,
167, 124, 97, 167, 124, 97, 166, 123, 96, 166, 123, 96, 166, 122, 96,
166, 122, 96, 166, 121, 96, 166, 121, 96, 166, 120, 95, 166, 120, 95,
165, 119, 95, 165, 119, 95, 165, 119, 94, 165, 119, 94, 165, 118, 94,
165, 118, 94, 165, 117, 94, 165, 117, 94, 164, 116, 93, 164, 116, 93,
164, 115, 93, 164, 115, 93, 164, 114, 93, 164, 114, 93, 164, 113, 92,
164, 113, 92, 163, 112, 92, 163, 112, 92, 163, 112, 91, 163, 112, 91,
163, 111, 91, 163, 111, 91, 163, 110, 91, 163, 110, 91, 162, 109, 90,
162, 109, 90, 162, 108, 90, 162, 108, 90, 162, 107, 89, 162, 107, 89,
162, 106, 89, 162, 106, 89, 161, 105, 89, 161, 105, 89, 161, 104, 88,
161, 104, 88, 161, 104, 88, 161, 104, 88, 160, 103, 87, 160, 103, 87,
160, 102, 87, 160, 102, 87, 160, 101, 87, 160, 101, 87, 159, 100, 86,
159, 100, 86, 159, 99, 86, 159, 99, 86, 159, 98, 85, 159, 98, 85,
158, 97, 85, 158, 97, 85, 158, 96, 84, 158, 96, 84, 158, 95, 84,
158, 95, 84, 157, 94, 83, 157, 94, 83, 157, 93, 83, 157, 93, 83,
157, 92, 82, 157, 92, 82, 156, 91, 82, 156, 91, 82, 156, 90, 81,
156, 90, 81, 155, 89, 81, 155, 89, 81, 155, 88, 80, 155, 88, 80,
154, 87, 79, 154, 87, 79, 154, 86, 79, 154, 86, 79, 153, 85, 78,
153, 85, 78, 153, 84, 77, 153, 84, 77, 152, 83, 77, 152, 83, 77,
151, 82, 76, 151, 82, 76, 151, 81, 75, 151, 81, 75, 150, 80, 75,
150, 80, 75, 150, 79, 74, 150, 79, 74, 149, 78, 73, 149, 78, 73,
148, 77, 72, 148, 77, 72, 147, 75, 71, 147, 75, 71, 147, 74, 71,
147, 74, 71, 146, 73, 70, 146, 73, 70, 145, 72, 69, 145, 72, 69,
144, 71, 68, 144, 71, 68, 143, 70, 67, 143, 70, 67, 142, 69, 66,
142, 69, 66, 141, 67, 65, 141, 67, 65, 140, 66, 64, 140, 66, 64,
139, 65, 63, 139, 65, 63, 139, 64, 62, 139, 64, 62, 138, 63, 61,
138, 63, 61, 137, 62, 60, 137, 62, 60, 136, 60, 59, 136, 60, 59,
135, 59, 58, 135, 59, 58, 133, 58, 57, 133, 58, 57, 132, 57, 56,
132, 57, 56, 131, 56, 55, 131, 56, 55, 130, 55, 54, 130, 55, 54,
129, 54, 52, 129, 54, 52, 128, 52, 51, 128, 52, 51, 127, 51, 50,
127, 51, 50, 126, 50, 49, 126, 50, 49, 125, 49, 48, 125, 49, 48,
124, 48, 47, 124, 48, 47, 123, 47, 46, 123, 47, 46, 122, 46, 45,
122, 46, 45, 120, 44, 44, 120, 44, 44, 119, 43, 43, 119, 43, 43,
118, 42, 42, 118, 42, 42, 117, 41, 40, 117, 41, 40, 116, 40, 39,
116, 40, 39, 115, 39, 38, 115, 39, 38, 114, 38, 37, 114, 38, 37,
112, 37, 36, 112, 37, 36, 111, 35, 35, 111, 35, 35, 110, 34, 34,
110, 34, 34, 109, 33, 33, 109, 33, 33, 108, 32, 32, 108, 32, 32,
107, 31, 31, 107, 31, 31, 105, 30, 30, 105, 30, 30, 104, 29, 29,
104, 29, 29, 103, 28, 28, 103, 28, 28, 102, 26, 27, 102, 26, 27,
101, 25, 26, 101, 25, 26, 100, 24, 25, 100, 24, 25, 98, 23, 24,
98, 23, 24, 97, 22, 23, 97, 22, 23, 96, 21, 22, 96, 21, 22,
95, 19, 21, 95, 19, 21, 93, 18, 20, 93, 18, 20, 92, 17, 19,
92, 17, 19, 91, 16, 18, 91, 16, 18, 90, 14, 17, 90, 14, 17,
89, 13, 16, 89, 13, 16, 87, 12, 15, 87, 12, 15, 86, 10, 13,
86, 10, 13, 85, 9, 12, 85, 9, 12, 84, 7, 11, 84, 7, 11,
83, 6, 9, 83, 6, 9, 81, 5, 8, 81, 5, 8, 80, 4, 6,
80, 4, 6, 79, 3, 4, 79, 3, 4, 78, 1, 3, 78, 1, 3,
77, 0, 1, 77, 0, 1};
const uint8_t broc[] = {
44, 26, 76, 44, 26, 76, 44, 27, 78, 44, 27, 78, 44, 29, 79,
44, 29, 79, 43, 30, 81, 43, 30, 81, 43, 32, 82, 43, 32, 82,
43, 33, 84, 43, 33, 84, 43, 35, 85, 43, 35, 85, 43, 36, 87,
43, 36, 87, 43, 38, 88, 43, 38, 88, 43, 39, 90, 43, 39, 90,
43, 41, 91, 43, 41, 91, 43, 42, 93, 43, 42, 93, 42, 44, 94,
42, 44, 94, 42, 45, 96, 42, 45, 96, 42, 46, 97, 42, 46, 97,
42, 48, 99, 42, 48, 99, 42, 49, 100, 42, 49, 100, 42, 51, 102,
42, 51, 102, 41, 53, 103, 41, 53, 103, 41, 54, 105, 41, 54, 105,
41, 56, 106, 41, 56, 106, 41, 57, 108, 41, 57, 108, 41, 59, 109,
41, 59, 109, 41, 60, 111, 41, 60, 111, 41, 62, 113, 41, 62, 113,
40, 63, 114, 40, 63, 114, 40, 65, 116, 40, 65, 116, 40, 67, 117,
40, 67, 117, 40, 68, 119, 40, 68, 119, 40, 70, 120, 40, 70, 120,
40, 71, 122, 40, 71, 122, 41, 73, 124, 41, 73, 124, 41, 75, 125,
41, 75, 125, 41, 76, 127, 41, 76, 127, 41, 78, 128, 41, 78, 128,
42, 80, 130, 42, 80, 130, 42, 81, 131, 42, 81, 131, 43, 83, 133,
43, 83, 133, 44, 85, 134, 44, 85, 134, 45, 87, 136, 45, 87, 136,
46, 88, 137, 46, 88, 137, 47, 90, 139, 47, 90, 139, 48, 92, 140,
48, 92, 140, 49, 94, 142, 49, 94, 142, 51, 95, 143, 51, 95, 143,
52, 97, 145, 52, 97, 145, 54, 99, 146, 54, 99, 146, 55, 101, 147,
55, 101, 147, 57, 102, 149, 57, 102, 149, 59, 104, 150, 59, 104, 150,
61, 106, 151, 61, 106, 151, 63, 107, 153, 63, 107, 153, 65, 109, 154,
65, 109, 154, 67, 111, 155, 67, 111, 155, 69, 113, 156, 69, 113, 156,
71, 114, 158, 71, 114, 158, 73, 116, 159, 73, 116, 159, 75, 118, 160,
75, 118, 160, 77, 120, 161, 77, 120, 161, 80, 121, 163, 80, 121, 163,
82, 123, 164, 82, 123, 164, 84, 125, 165, 84, 125, 165, 86, 127, 166,
86, 127, 166, 88, 128, 167, 88, 128, 167, 91, 130, 169, 91, 130, 169,
93, 132, 170, 93, 132, 170, 95, 133, 171, 95, 133, 171, 97, 135, 172,
97, 135, 172, 100, 137, 173, 100, 137, 173, 102, 139, 175, 102, 139, 175,
104, 140, 176, 104, 140, 176, 107, 142, 177, 107, 142, 177, 109, 144, 178,
109, 144, 178, 111, 146, 179, 111, 146, 179, 113, 147, 181, 113, 147, 181,
116, 149, 182, 116, 149, 182, 118, 151, 183, 118, 151, 183, 120, 153, 184,
120, 153, 184, 123, 155, 186, 123, 155, 186, 125, 156, 187, 125, 156, 187,
127, 158, 188, 127, 158, 188, 130, 160, 189, 130, 160, 189, 132, 162, 190,
132, 162, 190, 134, 163, 192, 134, 163, 192, 137, 165, 193, 137, 165, 193,
139, 167, 194, 139, 167, 194, 141, 169, 195, 141, 169, 195, 144, 170, 197,
144, 170, 197, 146, 172, 198, 146, 172, 198, 148, 174, 199, 148, 174, 199,
151, 176, 200, 151, 176, 200, 153, 178, 202, 153, 178, 202, 155, 179, 203,
155, 179, 203, 158, 181, 204, 158, 181, 204, 160, 183, 205, 160, 183, 205,
162, 185, 206, 162, 185, 206, 165, 187, 208, 165, 187, 208, 167, 188, 209,
167, 188, 209, 170, 190, 210, 170, 190, 210, 172, 192, 211, 172, 192, 211,
174, 194, 213, 174, 194, 213, 177, 196, 214, 177, 196, 214, 179, 197, 215,
179, 197, 215, 181, 199, 216, 181, 199, 216, 184, 201, 218, 184, 201, 218,
186, 203, 219, 186, 203, 219, 189, 205, 220, 189, 205, 220, 191, 207, 221,
191, 207, 221, 194, 208, 223, 194, 208, 223, 196, 210, 224, 196, 210, 224,
198, 212, 225, 198, 212, 225, 201, 214, 226, 201, 214, 226, 203, 216, 228,
203, 216, 228, 206, 217, 229, 206, 217, 229, 208, 219, 230, 208, 219, 230,
210, 221, 231, 210, 221, 231, 213, 223, 232, 213, 223, 232, 215, 224, 233,
215, 224, 233, 217, 226, 234, 217, 226, 234, 220, 228, 235, 220, 228, 235,
222, 229, 236, 222, 229, 236, 224, 231, 236, 224, 231, 236, 226, 232, 237,
226, 232, 237, 228, 234, 237, 228, 234, 237, 230, 235, 237, 230, 235, 237,
231, 236, 237, 231, 236, 237, 233, 237, 237, 233, 237, 237, 234, 238, 236,
234, 238, 236, 235, 238, 236, 235, 238, 236, 236, 239, 235, 236, 239, 235,
237, 239, 233, 237, 239, 233, 237, 239, 232, 237, 239, 232, 238, 239, 231,
238, 239, 231, 238, 239, 229, 238, 239, 229, 238, 239, 227, 238, 239, 227,
237, 238, 225, 237, 238, 225, 237, 238, 223, 237, 238, 223, 236, 237, 221,
236, 237, 221, 236, 236, 219, 236, 236, 219, 235, 235, 217, 235, 235, 217,
234, 234, 214, 234, 234, 214, 233, 233, 212, 233, 233, 212, 232, 232, 210,
232, 232, 210, 231, 231, 207, 231, 231, 207, 230, 230, 205, 230, 230, 205,
229, 229, 203, 229, 229, 203, 228, 228, 200, 228, 228, 200, 227, 226, 198,
227, 226, 198, 225, 225, 196, 225, 225, 196, 224, 224, 193, 224, 224, 193,
223, 223, 191, 223, 223, 191, 222, 222, 189, 222, 222, 189, 221, 221, 186,
221, 221, 186, 220, 219, 184, 220, 219, 184, 218, 218, 181, 218, 218, 181,
217, 217, 179, 217, 217, 179, 216, 216, 177, 216, 216, 177, 215, 215, 174,
215, 215, 174, 213, 213, 172, 213, 213, 172, 212, 212, 170, 212, 212, 170,
211, 211, 167, 211, 211, 167, 210, 210, 165, 210, 210, 165, 208, 208, 162,
208, 208, 162, 207, 207, 160, 207, 207, 160, 206, 206, 158, 206, 206, 158,
204, 204, 155, 204, 204, 155, 203, 203, 153, 203, 203, 153, 201, 201, 150,
201, 201, 150, 200, 200, 148, 200, 200, 148, 198, 198, 145, 198, 198, 145,
197, 197, 143, 197, 197, 143, 195, 195, 140, 195, 195, 140, 193, 193, 138,
193, 193, 138, 192, 191, 135, 192, 191, 135, 190, 190, 133, 190, 190, 133,
188, 188, 131, 188, 188, 131, 186, 186, 128, 186, 186, 128, 184, 184, 126,
184, 184, 126, 182, 182, 124, 182, 182, 124, 180, 180, 121, 180, 180, 121,
178, 178, 119, 178, 178, 119, 176, 176, 117, 176, 176, 117, 174, 174, 115,
174, 174, 115, 172, 172, 113, 172, 172, 113, 170, 170, 111, 170, 170, 111,
168, 168, 109, 168, 168, 109, 166, 166, 107, 166, 166, 107, 163, 163, 105,
163, 163, 105, 161, 161, 103, 161, 161, 103, 159, 159, 101, 159, 159, 101,
157, 157, 99, 157, 157, 99, 155, 155, 98, 155, 155, 98, 153, 153, 96,
153, 153, 96, 151, 151, 94, 151, 151, 94, 149, 149, 92, 149, 149, 92,
147, 147, 91, 147, 147, 91, 145, 145, 89, 145, 145, 89, 143, 143, 87,
143, 143, 87, 141, 141, 86, 141, 141, 86, 139, 139, 84, 139, 139, 84,
137, 137, 82, 137, 137, 82, 135, 135, 81, 135, 135, 81, 133, 133, 79,
133, 133, 79, 131, 131, 77, 131, 131, 77, 129, 129, 76, 129, 129, 76,
127, 127, 74, 127, 127, 74, 125, 125, 72, 125, 125, 72, 123, 123, 71,
123, 123, 71, 121, 121, 69, 121, 121, 69, 119, 119, 68, 119, 119, 68,
117, 117, 66, 117, 117, 66, 116, 116, 64, 116, 116, 64, 114, 114, 63,
114, 114, 63, 112, 112, 61, 112, 112, 61, 110, 110, 60, 110, 110, 60,
108, 108, 58, 108, 108, 58, 106, 106, 56, 106, 106, 56, 104, 104, 55,
104, 104, 55, 102, 102, 53, 102, 102, 53, 100, 100, 52, 100, 100, 52,
98, 98, 50, 98, 98, 50, 97, 96, 49, 97, 96, 49, 95, 95, 47,
95, 95, 47, 93, 93, 45, 93, 93, 45, 91, 91, 44, 91, 91, 44,
89, 89, 42, 89, 89, 42, 87, 87, 41, 87, 87, 41, 85, 85, 39,
85, 85, 39, 84, 84, 38, 84, 84, 38, 82, 82, 36, 82, 82, 36,
80, 80, 35, 80, 80, 35, 78, 78, 33, 78, 78, 33, 76, 76, 32,
76, 76, 32, 75, 75, 31, 75, 75, 31, 73, 73, 29, 73, 73, 29,
71, 71, 28, 71, 71, 28, 69, 69, 26, 69, 69, 26, 67, 67, 25,
67, 67, 25, 66, 66, 24, 66, 66, 24, 64, 64, 22, 64, 64, 22,
62, 62, 21, 62, 62, 21, 60, 61, 20, 60, 61, 20, 59, 59, 18,
59, 59, 18, 57, 57, 17, 57, 57, 17, 55, 56, 16, 55, 56, 16,
54, 54, 15, 54, 54, 15, 52, 52, 14, 52, 52, 14, 50, 51, 12,
50, 51, 12, 49, 49, 11, 49, 49, 11, 47, 48, 10, 47, 48, 10,
46, 46, 8, 46, 46, 8, 44, 44, 7, 44, 44, 7, 43, 43, 5,
43, 43, 5, 41, 41, 4, 41, 41, 4, 40, 40, 2, 40, 40, 2,
38, 38, 0, 38, 38, 0};
const uint8_t broco[] = {
55, 47, 56, 55, 47, 56, 54, 47, 57, 54, 47, 57, 54, 47, 58,
54, 47, 58, 54, 47, 59, 54, 47, 59, 54, 47, 60, 54, 47, 60,
54, 48, 61, 54, 48, 61, 54, 48, 63, 54, 48, 63, 54, 48, 64,
54, 48, 64, 54, 48, 65, 54, 48, 65, 54, 49, 67, 54, 49, 67,
54, 49, 68, 54, 49, 68, 54, 50, 70, 54, 50, 70, 54, 50, 71,
54, 50, 71, 54, 51, 73, 54, 51, 73, 54, 51, 74, 54, 51, 74,
54, 52, 76, 54, 52, 76, 54, 53, 78, 54, 53, 78, 54, 53, 80,
54, 53, 80, 54, 54, 81, 54, 54, 81, 54, 55, 83, 54, 55, 83,
54, 56, 85, 54, 56, 85, 54, 57, 87, 54, 57, 87, 55, 58, 89,
55, 58, 89, 55, 59, 91, 55, 59, 91, 55, 60, 92, 55, 60, 92,
55, 61, 94, 55, 61, 94, 55, 63, 96, 55, 63, 96, 56, 64, 98,
56, 64, 98, 56, 65, 100, 56, 65, 100, 56, 67, 102, 56, 67, 102,
57, 68, 104, 57, 68, 104, 57, 69, 106, 57, 69, 106, 58, 71, 108,
58, 71, 108, 58, 72, 111, 58, 72, 111, 59, 74, 113, 59, 74, 113,
59, 76, 115, 59, 76, 115, 60, 77, 117, 60, 77, 117, 61, 79, 119,
61, 79, 119, 62, 81, 121, 62, 81, 121, 62, 82, 123, 62, 82, 123,
63, 84, 124, 63, 84, 124, 64, 86, 126, 64, 86, 126, 65, 87, 128,
65, 87, 128, 66, 89, 130, 66, 89, 130, 67, 91, 132, 67, 91, 132,
68, 93, 134, 68, 93, 134, 69, 94, 136, 69, 94, 136, 71, 96, 138,
71, 96, 138, 72, 98, 139, 72, 98, 139, 73, 100, 141, 73, 100, 141,
74, 102, 143, 74, 102, 143, 76, 103, 144, 76, 103, 144, 77, 105, 146,
77, 105, 146, 79, 107, 148, 79, 107, 148, 80, 109, 149, 80, 109, 149,
82, 111, 151, 82, 111, 151, 83, 112, 153, 83, 112, 153, 85, 114, 154,
85, 114, 154, 86, 116, 156, 86, 116, 156, 88, 118, 157, 88, 118, 157,
90, 120, 159, 90, 120, 159, 91, 121, 160, 91, 121, 160, 93, 123, 162,
93, 123, 162, 95, 125, 163, 95, 125, 163, 97, 127, 165, 97, 127, 165,
99, 129, 166, 99, 129, 166, 100, 130, 167, 100, 130, 167, 102, 132, 169,
102, 132, 169, 104, 134, 170, 104, 134, 170, 106, 136, 171, 106, 136, 171,
108, 137, 173, 108, 137, 173, 110, 139, 174, 110, 139, 174, 112, 141, 175,
112, 141, 175, 114, 143, 177, 114, 143, 177, 116, 144, 178, 116, 144, 178,
118, 146, 179, 118, 146, 179, 120, 148, 180, 120, 148, 180, 122, 150, 182,
122, 150, 182, 124, 151, 183, 124, 151, 183, 126, 153, 184, 126, 153, 184,
128, 155, 185, 128, 155, 185, 130, 157, 186, 130, 157, 186, 132, 158, 187,
132, 158, 187, 134, 160, 189, 134, 160, 189, 136, 162, 190, 136, 162, 190,
138, 163, 191, 138, 163, 191, 140, 165, 192, 140, 165, 192, 142, 167, 193,
142, 167, 193, 145, 168, 194, 145, 168, 194, 147, 170, 195, 147, 170, 195,
149, 172, 196, 149, 172, 196, 151, 173, 197, 151, 173, 197, 153, 175, 198,
153, 175, 198, 155, 177, 199, 155, 177, 199, 157, 178, 200, 157, 178, 200,
159, 180, 200, 159, 180, 200, 161, 181, 201, 161, 181, 201, 163, 183, 202,
163, 183, 202, 165, 184, 203, 165, 184, 203, 167, 186, 204, 167, 186, 204,
169, 187, 204, 169, 187, 204, 171, 189, 205, 171, 189, 205, 173, 190, 205,
173, 190, 205, 175, 192, 206, 175, 192, 206, 177, 193, 206, 177, 193, 206,
179, 194, 207, 179, 194, 207, 181, 196, 207, 181, 196, 207, 183, 197, 208,
183, 197, 208, 184, 198, 208, 184, 198, 208, 186, 200, 208, 186, 200, 208,
188, 201, 208, 188, 201, 208, 189, 202, 208, 189, 202, 208, 191, 203, 208,
191, 203, 208, 193, 204, 208, 193, 204, 208, 194, 205, 208, 194, 205, 208,
196, 206, 208, 196, 206, 208, 197, 207, 207, 197, 207, 207, 198, 207, 207,
198, 207, 207, 199, 208, 206, 199, 208, 206, 201, 209, 206, 201, 209, 206,
202, 209, 205, 202, 209, 205, 203, 210, 204, 203, 210, 204, 203, 210, 203,
203, 210, 203, 204, 211, 203, 204, 211, 203, 205, 211, 202, 205, 211, 202,
206, 211, 200, 206, 211, 200, 206, 211, 199, 206, 211, 199, 207, 211, 198,
207, 211, 198, 207, 211, 197, 207, 211, 197, 207, 211, 195, 207, 211, 195,
207, 211, 194, 207, 211, 194, 207, 211, 192, 207, 211, 192, 207, 211, 190,
207, 211, 190, 207, 210, 189, 207, 210, 189, 207, 210, 187, 207, 210, 187,
207, 209, 185, 207, 209, 185, 206, 208, 183, 206, 208, 183, 206, 208, 181,
206, 208, 181, 205, 207, 179, 205, 207, 179, 205, 206, 177, 205, 206, 177,
204, 205, 175, 204, 205, 175, 203, 204, 173, 203, 204, 173, 202, 203, 171,
202, 203, 171, 201, 202, 169, 201, 202, 169, 200, 201, 166, 200, 201, 166,
199, 200, 164, 199, 200, 164, 198, 198, 162, 198, 198, 162, 197, 197, 160,
197, 197, 160, 196, 196, 157, 196, 196, 157, 194, 194, 155, 194, 194, 155,
193, 193, 153, 193, 193, 153, 191, 191, 150, 191, 191, 150, 190, 190, 148,
190, 190, 148, 188, 188, 146, 188, 188, 146, 187, 187, 144, 187, 187, 144,
185, 185, 141, 185, 185, 141, 184, 183, 139, 184, 183, 139, 182, 182, 137,
182, 182, 137, 180, 180, 134, 180, 180, 134, 179, 178, 132, 179, 178, 132,
177, 176, 130, 177, 176, 130, 175, 175, 127, 175, 175, 127, 173, 173, 125,
173, 173, 125, 171, 171, 123, 171, 171, 123, 170, 169, 121, 170, 169, 121,
168, 167, 119, 168, 167, 119, 166, 165, 116, 166, 165, 116, 164, 164, 114,
164, 164, 114, 162, 162, 112, 162, 162, 112, 160, 160, 110, 160, 160, 110,
158, 158, 108, 158, 158, 108, 157, 156, 106, 157, 156, 106, 155, 154, 104,
155, 154, 104, 153, 152, 102, 153, 152, 102, 151, 150, 100, 151, 150, 100,
149, 148, 98, 149, 148, 98, 147, 146, 96, 147, 146, 96, 145, 145, 94,
145, 145, 94, 143, 143, 92, 143, 143, 92, 141, 141, 90, 141, 141, 90,
139, 139, 89, 139, 139, 89, 137, 137, 87, 137, 137, 87, 136, 135, 85,
136, 135, 85, 134, 133, 83, 134, 133, 83, 132, 131, 81, 132, 131, 81,
130, 129, 80, 130, 129, 80, 128, 127, 78, 128, 127, 78, 126, 126, 76,
126, 126, 76, 124, 124, 75, 124, 124, 75, 123, 122, 73, 123, 122, 73,
121, 120, 72, 121, 120, 72, 119, 118, 70, 119, 118, 70, 117, 116, 69,
117, 116, 69, 115, 114, 67, 115, 114, 67, 114, 113, 66, 114, 113, 66,
112, 111, 65, 112, 111, 65, 110, 109, 63, 110, 109, 63, 108, 107, 62,
108, 107, 62, 107, 105, 61, 107, 105, 61, 105, 104, 59, 105, 104, 59,
103, 102, 58, 103, 102, 58, 102, 100, 57, 102, 100, 57, 100, 98, 56,
100, 98, 56, 98, 97, 55, 98, 97, 55, 97, 95, 54, 97, 95, 54,
95, 93, 53, 95, 93, 53, 94, 92, 52, 94, 92, 52, 92, 90, 51,
92, 90, 51, 91, 89, 50, 91, 89, 50, 89, 87, 49, 89, 87, 49,
88, 85, 48, 88, 85, 48, 86, 84, 47, 86, 84, 47, 85, 82, 46,
85, 82, 46, 84, 81, 46, 84, 81, 46, 82, 79, 45, 82, 79, 45,
81, 78, 45, 81, 78, 45, 80, 77, 44, 80, 77, 44, 79, 75, 43,
79, 75, 43, 77, 74, 43, 77, 74, 43, 76, 72, 43, 76, 72, 43,
75, 71, 42, 75, 71, 42, 74, 70, 42, 74, 70, 42, 73, 69, 42,
73, 69, 42, 72, 67, 41, 72, 67, 41, 71, 66, 41, 71, 66, 41,
70, 65, 41, 70, 65, 41, 69, 64, 41, 69, 64, 41, 68, 63, 41,
68, 63, 41, 67, 62, 41, 67, 62, 41, 66, 61, 41, 66, 61, 41,
66, 60, 41, 66, 60, 41, 65, 59, 41, 65, 59, 41, 64, 58, 41,
64, 58, 41, 63, 57, 41, 63, 57, 41, 63, 56, 41, 63, 56, 41,
62, 56, 42, 62, 56, 42, 62, 55, 42, 62, 55, 42, 61, 54, 42,
61, 54, 42, 60, 53, 43, 60, 53, 43, 60, 53, 43, 60, 53, 43,
59, 52, 43, 59, 52, 43, 59, 52, 44, 59, 52, 44, 59, 51, 44,
59, 51, 44, 58, 51, 45, 58, 51, 45, 58, 50, 46, 58, 50, 46,
57, 50, 46, 57, 50, 46, 57, 49, 47, 57, 49, 47, 57, 49, 48,
57, 49, 48, 56, 48, 48, 56, 48, 48, 56, 48, 49, 56, 48, 49,
56, 48, 50, 56, 48, 50, 56, 48, 51, 56, 48, 51, 55, 47, 52,
55, 47, 52, 55, 47, 53, 55, 47, 53, 55, 47, 54, 55, 47, 54,
55, 47, 55, 55, 47, 55};
const uint8_t buda[] = {
179, 1, 179, 179, 1, 179, 179, 3, 178, 179, 3, 178, 179, 5, 177,
179, 5, 177, 179, 7, 176, 179, 7, 176, 179, 9, 175, 179, 9, 175,
179, 11, 174, 179, 11, 174, 179, 13, 174, 179, 13, 174, 179, 15, 173,
179, 15, 173, 179, 17, 172, 179, 17, 172, 179, 18, 171, 179, 18, 171,
179, 20, 170, 179, 20, 170, 179, 22, 169, 179, 22, 169, 179, 23, 169,
179, 23, 169, 179, 24, 168, 179, 24, 168, 179, 26, 167, 179, 26, 167,
179, 27, 166, 179, 27, 166, 179, 28, 166, 179, 28, 166, 179, 30, 165,
179, 30, 165, 179, 31, 164, 179, 31, 164, 179, 32, 164, 179, 32, 164,
179, 33, 163, 179, 33, 163, 179, 35, 162, 179, 35, 162, 179, 36, 162,
179, 36, 162, 179, 37, 161, 179, 37, 161, 179, 38, 160, 179, 38, 160,
179, 39, 160, 179, 39, 160, 179, 40, 159, 179, 40, 159, 179, 41, 159,
179, 41, 159, 179, 43, 158, 179, 43, 158, 179, 44, 158, 179, 44, 158,
179, 45, 157, 179, 45, 157, 179, 46, 157, 179, 46, 157, 179, 47, 156,
179, 47, 156, 179, 48, 156, 179, 48, 156, 180, 49, 155, 180, 49, 155,
180, 50, 155, 180, 50, 155, 180, 51, 154, 180, 51, 154, 180, 52, 154,
180, 52, 154, 180, 53, 153, 180, 53, 153, 180, 54, 153, 180, 54, 153,
181, 55, 152, 181, 55, 152, 181, 56, 152, 181, 56, 152, 181, 57, 152,
181, 57, 152, 181, 58, 151, 181, 58, 151, 182, 59, 151, 182, 59, 151,
182, 60, 150, 182, 60, 150, 182, 61, 150, 182, 61, 150, 182, 62, 150,
182, 62, 150, 183, 63, 149, 183, 63, 149, 183, 64, 149, 183, 64, 149,
183, 65, 149, 183, 65, 149, 184, 66, 148, 184, 66, 148, 184, 67, 148,
184, 67, 148, 184, 68, 148, 184, 68, 148, 184, 69, 147, 184, 69, 147,
185, 70, 147, 185, 70, 147, 185, 71, 147, 185, 71, 147, 185, 72, 146,
185, 72, 146, 186, 73, 146, 186, 73, 146, 186, 74, 146, 186, 74, 146,
186, 75, 145, 186, 75, 145, 187, 75, 145, 187, 75, 145, 187, 76, 145,
187, 76, 145, 187, 77, 144, 187, 77, 144, 188, 78, 144, 188, 78, 144,
188, 79, 144, 188, 79, 144, 188, 80, 143, 188, 80, 143, 188, 81, 143,
188, 81, 143, 189, 82, 143, 189, 82, 143, 189, 83, 143, 189, 83, 143,
189, 84, 142, 189, 84, 142, 190, 85, 142, 190, 85, 142, 190, 85, 142,
190, 85, 142, 190, 86, 141, 190, 86, 141, 191, 87, 141, 191, 87, 141,
191, 88, 141, 191, 88, 141, 191, 89, 140, 191, 89, 140, 191, 90, 140,
191, 90, 140, 192, 91, 140, 192, 91, 140, 192, 92, 140, 192, 92, 140,
192, 92, 139, 192, 92, 139, 193, 93, 139, 193, 93, 139, 193, 94, 139,
193, 94, 139, 193, 95, 138, 193, 95, 138, 194, 96, 138, 194, 96, 138,
194, 97, 138, 194, 97, 138, 194, 98, 138, 194, 98, 138, 194, 99, 137,
194, 99, 137, 195, 99, 137, 195, 99, 137, 195, 100, 137, 195, 100, 137,
195, 101, 136, 195, 101, 136, 196, 102, 136, 196, 102, 136, 196, 103, 136,
196, 103, 136, 196, 104, 136, 196, 104, 136, 196, 105, 135, 196, 105, 135,
197, 105, 135, 197, 105, 135, 197, 106, 135, 197, 106, 135, 197, 107, 134,
197, 107, 134, 198, 108, 134, 198, 108, 134, 198, 109, 134, 198, 109, 134,
198, 110, 134, 198, 110, 134, 198, 110, 133, 198, 110, 133, 199, 111, 133,
199, 111, 133, 199, 112, 133, 199, 112, 133, 199, 113, 132, 199, 113, 132,
199, 114, 132, 199, 114, 132, 200, 115, 132, 200, 115, 132, 200, 115, 132,
200, 115, 132, 200, 116, 131, 200, 116, 131, 201, 117, 131, 201, 117, 131,
201, 118, 131, 201, 118, 131, 201, 119, 131, 201, 119, 131, 201, 120, 130,
201, 120, 130, 202, 121, 130, 202, 121, 130, 202, 121, 130, 202, 121, 130,
202, 122, 129, 202, 122, 129, 202, 123, 129, 202, 123, 129, 203, 124, 129,
203, 124, 129, 203, 125, 129, 203, 125, 129, 203, 126, 128, 203, 126, 128,
203, 126, 128, 203, 126, 128, 204, 127, 128, 204, 127, 128, 204, 128, 128,
204, 128, 128, 204, 129, 127, 204, 129, 127, 204, 130, 127, 204, 130, 127,
205, 131, 127, 205, 131, 127, 205, 132, 127, 205, 132, 127, 205, 132, 126,
205, 132, 126, 205, 133, 126, 205, 133, 126, 206, 134, 126, 206, 134, 126,
206, 135, 126, 206, 135, 126, 206, 136, 126, 206, 136, 126, 206, 137, 125,
206, 137, 125, 207, 138, 125, 207, 138, 125, 207, 138, 125, 207, 138, 125,
207, 139, 125, 207, 139, 125, 207, 140, 124, 207, 140, 124, 207, 141, 124,
207, 141, 124, 208, 142, 124, 208, 142, 124, 208, 143, 124, 208, 143, 124,
208, 144, 124, 208, 144, 124, 208, 145, 123, 208, 145, 123, 209, 145, 123,
209, 145, 123, 209, 146, 123, 209, 146, 123, 209, 147, 123, 209, 147, 123,
209, 148, 122, 209, 148, 122, 209, 149, 122, 209, 149, 122, 210, 150, 122,
210, 150, 122, 210, 151, 122, 210, 151, 122, 210, 151, 122, 210, 151, 122,
210, 152, 121, 210, 152, 121, 210, 153, 121, 210, 153, 121, 211, 154, 121,
211, 154, 121, 211, 155, 121, 211, 155, 121, 211, 156, 120, 211, 156, 120,
211, 157, 120, 211, 157, 120, 212, 158, 120, 212, 158, 120, 212, 158, 120,
212, 158, 120, 212, 159, 120, 212, 159, 120, 212, 160, 119, 212, 160, 119,
212, 161, 119, 212, 161, 119, 213, 162, 119, 213, 162, 119, 213, 163, 119,
213, 163, 119, 213, 164, 119, 213, 164, 119, 213, 165, 118, 213, 165, 118,
214, 165, 118, 214, 165, 118, 214, 166, 118, 214, 166, 118, 214, 167, 118,
214, 167, 118, 214, 168, 117, 214, 168, 117, 214, 169, 117, 214, 169, 117,
215, 170, 117, 215, 170, 117, 215, 171, 117, 215, 171, 117, 215, 172, 117,
215, 172, 117, 215, 173, 116, 215, 173, 116, 216, 173, 116, 216, 173, 116,
216, 174, 116, 216, 174, 116, 216, 175, 116, 216, 175, 116, 216, 176, 115,
216, 176, 115, 216, 177, 115, 216, 177, 115, 217, 178, 115, 217, 178, 115,
217, 179, 115, 217, 179, 115, 217, 180, 115, 217, 180, 115, 217, 181, 114,
217, 181, 114, 218, 181, 114, 218, 181, 114, 218, 182, 114, 218, 182, 114,
218, 183, 114, 218, 183, 114, 218, 184, 113, 218, 184, 113, 218, 185, 113,
218, 185, 113, 219, 186, 113, 219, 186, 113, 219, 187, 113, 219, 187, 113,
219, 188, 113, 219, 188, 113, 219, 189, 112, 219, 189, 112, 220, 190, 112,
220, 190, 112, 220, 191, 112, 220, 191, 112, 220, 191, 112, 220, 191, 112,
220, 192, 111, 220, 192, 111, 221, 193, 111, 221, 193, 111, 221, 194, 111,
221, 194, 111, 221, 195, 111, 221, 195, 111, 221, 196, 110, 221, 196, 110,
221, 197, 110, 221, 197, 110, 222, 198, 110, 222, 198, 110, 222, 199, 110,
222, 199, 110, 222, 200, 110, 222, 200, 110, 222, 201, 109, 222, 201, 109,
223, 202, 109, 223, 202, 109, 223, 202, 109, 223, 202, 109, 223, 203, 109,
223, 203, 109, 223, 204, 108, 223, 204, 108, 224, 205, 108, 224, 205, 108,
224, 206, 108, 224, 206, 108, 224, 207, 108, 224, 207, 108, 224, 208, 107,
224, 208, 107, 224, 209, 107, 224, 209, 107, 225, 210, 107, 225, 210, 107,
225, 211, 107, 225, 211, 107, 225, 212, 107, 225, 212, 107, 226, 213, 106,
226, 213, 106, 226, 214, 106, 226, 214, 106, 226, 215, 106, 226, 215, 106,
226, 216, 106, 226, 216, 106, 227, 217, 105, 227, 217, 105, 227, 218, 105,
227, 218, 105, 227, 219, 105, 227, 219, 105, 228, 220, 105, 228, 220, 105,
228, 221, 105, 228, 221, 105, 229, 222, 104, 229, 222, 104, 229, 223, 104,
229, 223, 104, 229, 224, 104, 229, 224, 104, 230, 225, 104, 230, 225, 104,
231, 226, 104, 231, 226, 104, 231, 227, 104, 231, 227, 104, 232, 228, 103,
232, 228, 103, 232, 229, 103, 232, 229, 103, 233, 230, 103, 233, 230, 103,
234, 231, 103, 234, 231, 103, 235, 232, 103, 235, 232, 103, 235, 233, 103,
235, 233, 103, 236, 235, 103, 236, 235, 103, 237, 236, 103, 237, 236, 103,
238, 237, 103, 238, 237, 103, 239, 238, 102, 239, 238, 102, 240, 239, 102,
240, 239, 102, 241, 240, 102, 241, 240, 102, 242, 242, 102, 242, 242, 102,
243, 243, 102, 243, 243, 102, 244, 244, 102, 244, 244, 102, 246, 245, 102,
246, 245, 102, 247, 246, 102, 247, 246, 102, 248, 248, 102, 248, 248, 102,
249, 249, 102, 249, 249, 102, 250, 250, 102, 250, 250, 102, 251, 251, 102,
251, 251, 102, 253, 253, 102, 253, 253, 102, 254, 254, 102, 254, 254, 102,
255, 255, 102, 255, 255, 102};
const uint8_t cork[] = {
44, 26, 76, 44, 26, 76, 44, 27, 78, 44, 27, 78, 44, 29, 79,
44, 29, 79, 44, 30, 81, 44, 30, 81, 44, 31, 82, 44, 31, 82,
44, 33, 83, 44, 33, 83, 44, 34, 85, 44, 34, 85, 43, 36, 86,
43, 36, 86, 43, 37, 88, 43, 37, 88, 43, 39, 89, 43, 39, 89,
43, 40, 91, 43, 40, 91, 43, 41, 92, 43, 41, 92, 43, 43, 93,
43, 43, 93, 43, 44, 95, 43, 44, 95, 43, 46, 96, 43, 46, 96,
43, 47, 98, 43, 47, 98, 42, 49, 99, 42, 49, 99, 42, 50, 101,
42, 50, 101, 42, 52, 102, 42, 52, 102, 42, 53, 104, 42, 53, 104,
42, 54, 105, 42, 54, 105, 42, 56, 107, 42, 56, 107, 42, 57, 108,
42, 57, 108, 42, 59, 110, 42, 59, 110, 42, 60, 111, 42, 60, 111,
42, 62, 113, 42, 62, 113, 42, 63, 114, 42, 63, 114, 42, 65, 116,
42, 65, 116, 42, 67, 117, 42, 67, 117, 42, 68, 119, 42, 68, 119,
42, 70, 120, 42, 70, 120, 42, 71, 122, 42, 71, 122, 42, 73, 123,
42, 73, 123, 43, 74, 125, 43, 74, 125, 43, 76, 126, 43, 76, 126,
43, 78, 128, 43, 78, 128, 44, 79, 129, 44, 79, 129, 45, 81, 131,
45, 81, 131, 45, 82, 132, 45, 82, 132, 46, 84, 133, 46, 84, 133,
47, 86, 135, 47, 86, 135, 48, 87, 136, 48, 87, 136, 49, 89, 138,
49, 89, 138, 50, 91, 139, 50, 91, 139, 51, 92, 141, 51, 92, 141,
52, 94, 142, 52, 94, 142, 54, 96, 143, 54, 96, 143, 55, 98, 145,
55, 98, 145, 57, 99, 146, 57, 99, 146, 58, 101, 147, 58, 101, 147,
60, 103, 149, 60, 103, 149, 61, 104, 150, 61, 104, 150, 63, 106, 151,
63, 106, 151, 65, 108, 153, 65, 108, 153, 67, 109, 154, 67, 109, 154,
69, 111, 155, 69, 111, 155, 70, 113, 156, 70, 113, 156, 72, 114, 158,
72, 114, 158, 74, 116, 159, 74, 116, 159, 76, 118, 160, 76, 118, 160,
78, 119, 161, 78, 119, 161, 80, 121, 162, 80, 121, 162, 82, 123, 164,
82, 123, 164, 84, 124, 165, 84, 124, 165, 87, 126, 166, 87, 126, 166,
89, 128, 167, 89, 128, 167, 91, 129, 168, 91, 129, 168, 93, 131, 169,
93, 131, 169, 95, 133, 171, 95, 133, 171, 97, 135, 172, 97, 135, 172,
99, 136, 173, 99, 136, 173, 101, 138, 174, 101, 138, 174, 103, 140, 175,
103, 140, 175, 106, 141, 176, 106, 141, 176, 108, 143, 178, 108, 143, 178,
110, 145, 179, 110, 145, 179, 112, 146, 180, 112, 146, 180, 114, 148, 181,
114, 148, 181, 117, 150, 182, 117, 150, 182, 119, 151, 183, 119, 151, 183,
121, 153, 185, 121, 153, 185, 123, 155, 186, 123, 155, 186, 125, 156, 187,
125, 156, 187, 128, 158, 188, 128, 158, 188, 130, 160, 189, 130, 160, 189,
132, 161, 190, 132, 161, 190, 134, 163, 192, 134, 163, 192, 136, 165, 193,
136, 165, 193, 139, 167, 194, 139, 167, 194, 141, 168, 195, 141, 168, 195,
143, 170, 196, 143, 170, 196, 145, 172, 197, 145, 172, 197, 148, 173, 199,
148, 173, 199, 150, 175, 200, 150, 175, 200, 152, 177, 201, 152, 177, 201,
154, 179, 202, 154, 179, 202, 157, 180, 203, 157, 180, 203, 159, 182, 205,
159, 182, 205, 161, 184, 206, 161, 184, 206, 163, 185, 207, 163, 185, 207,
166, 187, 208, 166, 187, 208, 168, 189, 209, 168, 189, 209, 170, 191, 211,
170, 191, 211, 172, 192, 212, 172, 192, 212, 175, 194, 213, 175, 194, 213,
177, 196, 214, 177, 196, 214, 179, 198, 215, 179, 198, 215, 182, 199, 216,
182, 199, 216, 184, 201, 218, 184, 201, 218, 186, 203, 219, 186, 203, 219,
188, 204, 220, 188, 204, 220, 191, 206, 221, 191, 206, 221, 193, 208, 222,
193, 208, 222, 195, 210, 223, 195, 210, 223, 197, 211, 224, 197, 211, 224,
199, 213, 225, 199, 213, 225, 201, 215, 226, 201, 215, 226, 203, 216, 227,
203, 216, 227, 205, 218, 228, 205, 218, 228, 207, 220, 228, 207, 220, 228,
209, 221, 229, 209, 221, 229, 211, 223, 229, 211, 223, 229, 213, 224, 230,
213, 224, 230, 214, 225, 230, 214, 225, 230, 215, 226, 230, 215, 226, 230,
216, 228, 230, 216, 228, 230, 217, 229, 230, 217, 229, 230, 218, 229, 229,
218, 229, 229, 219, 230, 229, 219, 230, 229, 219, 231, 228, 219, 231, 228,
219, 231, 227, 219, 231, 227, 219, 231, 226, 219, 231, 226, 218, 231, 225,
218, 231, 225, 218, 231, 223, 218, 231, 223, 217, 231, 222, 217, 231, 222,
216, 231, 220, 216, 231, 220, 214, 230, 219, 214, 230, 219, 213, 230, 217,
213, 230, 217, 212, 229, 215, 212, 229, 215, 210, 228, 213, 210, 228, 213,
208, 227, 211, 208, 227, 211, 207, 226, 209, 207, 226, 209, 205, 225, 207,
205, 225, 207, 203, 224, 206, 203, 224, 206, 201, 223, 204, 201, 223, 204,
199, 222, 202, 199, 222, 202, 197, 221, 200, 197, 221, 200, 195, 220, 198,
195, 220, 198, 193, 219, 196, 193, 219, 196, 191, 218, 194, 191, 218, 194,
189, 216, 192, 189, 216, 192, 187, 215, 190, 187, 215, 190, 185, 214, 188,
185, 214, 188, 183, 213, 186, 183, 213, 186, 181, 212, 184, 181, 212, 184,
179, 211, 182, 179, 211, 182, 177, 209, 180, 177, 209, 180, 175, 208, 178,
175, 208, 178, 173, 207, 176, 173, 207, 176, 171, 206, 174, 171, 206, 174,
169, 205, 172, 169, 205, 172, 167, 203, 170, 167, 203, 170, 165, 202, 168,
165, 202, 168, 163, 201, 166, 163, 201, 166, 161, 200, 164, 161, 200, 164,
159, 199, 162, 159, 199, 162, 157, 198, 160, 157, 198, 160, 155, 196, 158,
155, 196, 158, 153, 195, 156, 153, 195, 156, 151, 194, 154, 151, 194, 154,
149, 193, 153, 149, 193, 153, 147, 192, 151, 147, 192, 151, 145, 190, 149,
145, 190, 149, 143, 189, 147, 143, 189, 147, 141, 188, 145, 141, 188, 145,
139, 187, 143, 139, 187, 143, 137, 186, 141, 137, 186, 141, 135, 185, 139,
135, 185, 139, 133, 183, 137, 133, 183, 137, 131, 182, 135, 131, 182, 135,
129, 181, 133, 129, 181, 133, 127, 180, 131, 127, 180, 131, 125, 179, 129,
125, 179, 129, 123, 178, 127, 123, 178, 127, 121, 176, 125, 121, 176, 125,
119, 175, 124, 119, 175, 124, 117, 174, 122, 117, 174, 122, 115, 173, 120,
115, 173, 120, 113, 172, 118, 113, 172, 118, 111, 170, 116, 111, 170, 116,
109, 169, 114, 109, 169, 114, 107, 168, 112, 107, 168, 112, 105, 167, 110,
105, 167, 110, 103, 165, 108, 103, 165, 108, 101, 164, 106, 101, 164, 106,
99, 163, 104, 99, 163, 104, 97, 161, 102, 97, 161, 102, 96, 160, 100,
96, 160, 100, 94, 159, 98, 94, 159, 98, 92, 157, 96, 92, 157, 96,
90, 156, 93, 90, 156, 93, 88, 155, 91, 88, 155, 91, 86, 153, 89,
86, 153, 89, 85, 152, 87, 85, 152, 87, 83, 150, 85, 83, 150, 85,
81, 148, 83, 81, 148, 83, 80, 147, 80, 80, 147, 80, 78, 145, 78,
78, 145, 78, 77, 144, 76, 77, 144, 76, 75, 142, 74, 75, 142, 74,
74, 140, 72, 74, 140, 72, 73, 139, 69, 73, 139, 69, 72, 137, 67,
72, 137, 67, 71, 135, 65, 71, 135, 65, 70, 133, 63, 70, 133, 63,
69, 132, 61, 69, 132, 61, 68, 130, 59, 68, 130, 59, 67, 128, 57,
67, 128, 57, 67, 127, 55, 67, 127, 55, 66, 125, 53, 66, 125, 53,
66, 123, 51, 66, 123, 51, 65, 122, 49, 65, 122, 49, 65, 120, 48,
65, 120, 48, 65, 118, 46, 65, 118, 46, 65, 117, 44, 65, 117, 44,
65, 115, 43, 65, 115, 43, 65, 114, 41, 65, 114, 41, 64, 112, 39,
64, 112, 39, 64, 111, 38, 64, 111, 38, 64, 109, 36, 64, 109, 36,
64, 108, 35, 64, 108, 35, 65, 107, 34, 65, 107, 34, 65, 105, 32,
65, 105, 32, 65, 104, 31, 65, 104, 31, 65, 102, 29, 65, 102, 29,
65, 101, 28, 65, 101, 28, 65, 100, 27, 65, 100, 27, 65, 99, 25,
65, 99, 25, 65, 97, 24, 65, 97, 24, 65, 96, 23, 65, 96, 23,
65, 95, 22, 65, 95, 22, 65, 93, 20, 65, 93, 20, 66, 92, 19,
66, 92, 19, 66, 91, 18, 66, 91, 18, 66, 90, 16, 66, 90, 16,
66, 88, 15, 66, 88, 15, 66, 87, 14, 66, 87, 14, 66, 86, 12,
66, 86, 12, 66, 85, 11, 66, 85, 11, 66, 84, 10, 66, 84, 10,
66, 82, 8, 66, 82, 8, 66, 81, 7, 66, 81, 7, 66, 80, 6,
66, 80, 6, 66, 79, 5, 66, 79, 5, 66, 78, 4, 66, 78, 4,
66, 77, 3, 66, 77, 3};
const uint8_t corko[] = {
63, 62, 58, 63, 62, 58, 63, 62, 59, 63, 62, 59, 63, 62, 60,
63, 62, 60, 63, 61, 61, 63, 61, 61, 62, 61, 62, 62, 61, 62,
62, 61, 63, 62, 61, 63, 62, 61, 64, 62, 61, 64, 62, 61, 65,
62, 61, 65, 62, 61, 66, 62, 61, 66, 62, 61, 67, 62, 61, 67,
62, 61, 68, 62, 61, 68, 62, 61, 69, 62, 61, 69, 62, 61, 70,
62, 61, 70, 62, 61, 71, 62, 61, 71, 62, 61, 72, 62, 61, 72,
62, 61, 73, 62, 61, 73, 62, 61, 75, 62, 61, 75, 62, 61, 76,
62, 61, 76, 62, 62, 77, 62, 62, 77, 62, 62, 79, 62, 62, 79,
62, 63, 80, 62, 63, 80, 62, 63, 82, 62, 63, 82, 62, 64, 83,
62, 64, 83, 62, 64, 85, 62, 64, 85, 62, 65, 86, 62, 65, 86,
62, 65, 88, 62, 65, 88, 62, 66, 90, 62, 66, 90, 62, 67, 91,
62, 67, 91, 62, 68, 93, 62, 68, 93, 62, 69, 95, 62, 69, 95,
63, 70, 97, 63, 70, 97, 63, 71, 98, 63, 71, 98, 63, 72, 100,
63, 72, 100, 64, 73, 102, 64, 73, 102, 64, 74, 104, 64, 74, 104,
64, 75, 106, 64, 75, 106, 65, 76, 108, 65, 76, 108, 65, 78, 110,
65, 78, 110, 66, 79, 112, 66, 79, 112, 66, 80, 114, 66, 80, 114,
67, 82, 116, 67, 82, 116, 68, 83, 118, 68, 83, 118, 68, 85, 120,
68, 85, 120, 69, 86, 122, 69, 86, 122, 70, 88, 124, 70, 88, 124,
71, 89, 126, 71, 89, 126, 71, 91, 128, 71, 91, 128, 72, 93, 130,
72, 93, 130, 73, 94, 132, 73, 94, 132, 74, 96, 134, 74, 96, 134,
75, 98, 135, 75, 98, 135, 77, 99, 137, 77, 99, 137, 78, 101, 139,
78, 101, 139, 79, 103, 141, 79, 103, 141, 80, 105, 143, 80, 105, 143,
81, 106, 145, 81, 106, 145, 83, 108, 146, 83, 108, 146, 84, 110, 148,
84, 110, 148, 86, 112, 150, 86, 112, 150, 87, 113, 151, 87, 113, 151,
88, 115, 153, 88, 115, 153, 90, 117, 155, 90, 117, 155, 92, 119, 156,
92, 119, 156, 93, 120, 158, 93, 120, 158, 95, 122, 159, 95, 122, 159,
96, 124, 161, 96, 124, 161, 98, 126, 162, 98, 126, 162, 100, 127, 164,
100, 127, 164, 101, 129, 165, 101, 129, 165, 103, 131, 166, 103, 131, 166,
105, 133, 168, 105, 133, 168, 106, 134, 169, 106, 134, 169, 108, 136, 171,
108, 136, 171, 110, 138, 172, 110, 138, 172, 112, 140, 173, 112, 140, 173,
114, 141, 174, 114, 141, 174, 115, 143, 176, 115, 143, 176, 117, 145, 177,
117, 145, 177, 119, 146, 178, 119, 146, 178, 121, 148, 179, 121, 148, 179,
123, 150, 180, 123, 150, 180, 124, 151, 182, 124, 151, 182, 126, 153, 183,