-
Notifications
You must be signed in to change notification settings - Fork 12
/
spheremap.h
4133 lines (4124 loc) · 483 KB
/
spheremap.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
/*
* Copyright (C) 2001-2010 Terence M. Welsh
*
* This file is part of Helios.
*
* Helios is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published
* by the Free Software Foundation; either version 2 of the License,
* or (at your option) any later version.
*
* Helios is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef TEXTURE_H
#define TEXTURE_H
#define TEXSIZE 256
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wmissing-braces"
unsigned char spheremap[TEXSIZE][TEXSIZE][3] = {
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,1,6,4,3,11,8,6,14,10,7,22,14,9,
22,14,10,6,12,8,1,12,8,4,16,10,8,21,14,11,24,16,13,26,18,17,28,20,21,31,22,25,35,24,24,37,26,16,38,26,10,41,28,8,38,27,9,40,28,9,44,33,
9,45,36,10,45,37,12,45,35,12,46,37,13,48,39,13,48,39,12,46,38,12,46,38,12,45,36,11,44,36,12,42,34,11,39,32,9,36,29,8,31,24,8,30,23,7,24,19,
6,20,16,4,17,13,4,16,12,3,12,10,2,8,6,1,3,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,1,8,1,1,16,3,3,28,5,6,35,6,7,48,13,12,57,19,16,72,27,23,79,34,27,88,39,31,
97,44,35,78,42,32,72,43,32,83,50,37,92,55,41,97,58,43,104,60,45,113,63,48,115,65,50,105,64,49,92,60,47,68,57,43,45,52,38,34,49,37,36,49,37,34,49,39,
34,48,40,27,48,39,10,45,37,10,46,38,10,47,40,10,47,41,9,47,42,10,49,43,10,48,43,11,49,44,13,50,45,14,50,45,14,50,45,13,48,44,12,47,41,11,45,39,
11,44,37,11,42,36,11,39,33,10,38,31,9,36,29,7,28,23,5,21,18,4,15,13,3,11,10,2,8,7,1,4,4,0,2,2,0,1,1,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,2,0,0,9,2,2,20,4,4,28,6,6,38,8,8,61,13,13,73,17,17,89,22,22,104,31,29,109,37,31,118,44,36,128,52,42,137,61,48,143,65,53,148,67,54,
152,71,59,153,70,61,157,72,64,162,72,67,166,72,72,166,73,74,169,74,78,170,75,86,168,74,88,159,71,86,152,69,85,142,66,84,125,61,80,121,61,82,122,61,85,120,61,85,
119,62,84,107,60,82,84,57,79,70,54,74,64,53,73,59,53,72,52,53,68,46,52,65,37,51,60,25,50,55,16,50,51,12,50,50,13,51,51,14,51,51,15,52,53,14,52,52,
14,52,51,15,52,51,15,52,50,14,51,48,14,50,47,14,49,46,13,46,42,11,42,37,11,39,34,8,34,29,7,28,24,6,23,19,4,16,14,2,9,9,1,5,5,1,3,3,
0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,12,2,2,30,6,6,
51,11,11,70,16,16,97,23,23,109,25,26,115,28,28,132,34,33,152,42,40,160,51,46,166,58,51,163,63,52,160,66,59,167,70,69,175,75,79,178,77,88,179,76,93,178,76,100,
182,76,107,185,77,110,187,77,117,188,77,118,190,77,122,185,74,122,177,72,123,176,72,125,177,70,126,178,71,129,175,73,126,175,73,127,175,74,130,172,73,127,166,72,129,165,76,131,
162,77,129,167,79,138,149,76,125,136,73,117,135,74,120,138,75,124,135,75,123,131,75,122,124,73,118,93,66,97,59,60,75,29,55,58,19,54,53,17,54,54,15,54,54,14,54,54,
15,54,54,16,55,55,16,55,56,16,55,56,16,55,56,16,55,56,16,55,55,16,55,54,15,53,52,14,50,49,13,48,46,12,44,41,10,39,35,8,33,29,7,27,25,5,21,19,
4,15,13,1,4,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,1,1,23,5,5,46,10,10,73,17,17,108,25,25,136,34,34,
157,39,39,174,45,45,186,49,49,187,53,51,186,60,54,187,65,55,192,70,59,185,72,59,181,74,61,182,76,74,190,79,101,198,81,120,203,81,129,201,80,131,194,75,127,188,71,123,
188,69,122,193,69,121,194,73,120,194,75,121,187,72,111,179,73,106,171,72,111,163,73,101,164,74,102,163,76,104,158,78,99,155,77,98,156,77,99,152,76,101,137,72,95,131,72,91,
130,73,90,147,78,110,138,76,100,120,72,84,117,72,85,118,73,87,120,74,91,126,74,97,129,75,100,120,73,97,101,69,84,77,64,69,56,59,57,55,60,58,47,58,56,35,56,54,
27,55,54,18,55,54,16,54,54,16,54,54,16,55,55,17,55,56,17,56,56,17,56,56,17,56,56,17,56,57,17,56,56,17,55,56,16,54,54,15,52,52,14,49,47,12,44,42,
10,37,33,7,26,22,4,17,14,3,11,8,1,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,2,2,26,5,5,60,13,13,100,24,24,145,37,37,178,47,47,193,52,52,202,56,56,206,58,57,
206,59,57,206,62,58,204,66,59,200,73,62,195,78,66,187,77,68,185,77,69,184,76,74,185,74,77,190,71,88,195,70,102,197,69,107,197,68,105,190,66,96,180,64,87,176,65,83,
175,67,83,175,71,85,166,72,79,160,72,80,157,72,78,151,72,78,148,73,86,143,74,83,144,73,83,138,71,83,121,68,78,102,62,70,102,59,71,99,57,70,98,56,69,103,58,75,
98,59,72,102,61,74,101,60,74,99,59,72,89,58,64,76,57,56,74,56,52,76,57,52,77,57,53,71,56,52,51,53,49,48,53,48,51,53,47,56,56,51,61,56,51,63,56,51,
47,54,49,26,52,48,15,51,48,14,51,49,15,51,49,15,53,51,16,53,52,17,54,54,17,55,55,17,56,56,17,56,56,17,57,56,17,57,57,17,57,57,17,57,57,17,56,56,
16,55,55,15,52,51,13,47,45,10,40,37,7,28,26,4,14,14,1,4,4,0,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,8,2,2,31,6,6,69,16,16,110,27,27,150,38,38,184,49,49,205,57,57,216,61,61,220,63,64,218,64,63,213,66,62,207,68,61,
200,69,60,197,73,62,196,76,65,195,78,78,190,75,86,186,70,82,186,64,76,187,61,77,185,58,74,184,57,70,186,60,71,182,65,72,177,70,71,173,73,67,173,76,72,171,78,75,
167,78,70,157,76,67,143,71,70,141,68,83,142,66,92,143,67,95,144,66,99,148,68,100,148,67,100,139,65,99,125,63,99,114,59,99,112,57,97,114,56,96,124,59,104,121,60,108,
110,59,110,107,58,107,103,54,104,104,53,103,97,52,98,90,50,94,90,51,92,91,52,89,88,52,85,79,50,79,48,44,67,34,41,58,31,39,52,24,39,47,26,38,42,25,38,37,
21,38,34,15,39,33,8,38,33,10,40,36,10,42,38,11,42,38,11,42,39,12,44,42,13,47,44,14,50,47,15,52,51,16,54,53,17,55,54,17,56,56,17,56,56,17,56,57,
17,57,57,17,57,57,17,57,57,17,56,56,16,54,53,13,47,47,10,35,35,5,20,20,2,8,8,0,2,2,0,0,0,1,2,2,1,2,2,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,3,0,0,29,5,5,66,15,15,111,27,27,160,41,41,195,52,52,209,58,58,217,62,62,219,63,63,218,62,62,215,62,62,209,62,60,202,65,59,197,70,60,190,69,58,
186,66,58,181,63,56,180,58,54,180,55,60,177,52,59,179,52,61,177,57,66,171,60,62,168,66,64,165,68,62,169,73,62,167,74,62,163,73,60,160,73,58,159,72,58,156,72,59,
155,71,59,150,69,59,145,67,68,155,67,95,159,67,109,160,68,111,165,71,114,166,71,112,164,71,110,164,73,112,162,74,110,157,72,109,160,73,112,160,72,112,161,73,114,145,69,111,
135,65,111,129,62,108,128,60,108,130,61,109,114,57,104,99,54,104,87,52,104,86,51,105,85,50,106,87,47,104,84,44,102,79,40,97,77,35,94,69,33,87,67,33,84,60,33,77,
50,35,69,42,36,62,26,33,44,13,32,30,9,33,30,7,33,28,6,31,27,6,33,29,8,34,30,8,36,31,10,39,35,11,43,39,12,47,44,14,49,48,15,52,50,16,54,53,
17,55,54,17,56,56,17,56,56,17,57,57,17,57,57,17,57,57,17,57,57,16,53,54,13,46,46,9,34,34,5,19,19,2,10,10,1,7,7,1,6,6,1,4,4,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
29,7,7,96,24,24,157,41,41,193,53,53,216,61,61,222,65,65,222,65,65,219,63,63,216,62,62,212,62,62,205,62,60,197,61,58,187,60,55,182,61,54,184,59,54,179,54,51,
168,48,46,165,46,43,164,48,44,159,51,44,157,56,45,158,61,49,155,66,53,155,70,55,156,72,56,152,70,54,152,68,54,150,66,53,146,65,54,147,66,56,152,67,59,149,66,59,
151,66,60,153,67,62,152,67,67,159,70,80,158,70,81,156,71,79,157,74,78,156,74,75,152,72,71,151,73,70,152,74,69,144,71,69,153,72,83,165,74,96,164,74,96,155,70,94,
148,65,92,145,61,89,145,60,89,147,60,90,136,57,88,130,56,90,114,52,90,110,52,90,104,47,86,100,43,85,93,36,82,85,32,80,70,27,78,68,27,81,69,26,83,70,27,83,
76,31,92,72,29,82,54,27,59,31,24,31,35,26,34,34,25,34,21,23,26,17,23,25,10,25,23,7,28,24,5,26,20,5,28,23,6,33,27,9,35,31,9,38,34,10,39,36,
11,41,40,13,45,45,15,51,51,16,54,54,17,56,56,17,56,56,17,57,57,17,57,57,17,57,57,17,57,57,15,53,53,12,44,44,9,33,33,5,22,22,2,11,12,2,6,6,
1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,43,10,10,111,28,28,
178,49,49,217,62,62,227,67,67,225,67,67,224,67,67,222,65,65,217,63,63,210,61,60,200,61,58,192,61,57,185,59,54,180,55,51,177,52,49,176,50,47,170,49,46,161,50,44,
153,52,43,154,58,46,150,62,47,144,63,48,139,63,47,132,62,46,145,64,49,143,61,48,141,56,47,140,54,46,135,54,46,131,56,50,130,60,53,141,66,58,148,68,60,147,69,62,
147,70,63,146,70,64,145,70,64,142,69,64,147,72,69,150,74,75,152,75,79,151,74,81,152,74,85,154,74,88,157,75,92,153,73,104,155,72,111,163,71,120,158,69,116,156,67,115,
154,62,112,147,58,105,143,55,99,143,53,97,139,49,92,144,50,98,151,53,108,150,53,107,147,50,100,141,48,95,141,48,95,130,46,91,104,40,82,93,35,78,88,34,78,80,32,76,
71,29,71,61,25,61,42,18,37,27,14,21,24,7,13,26,6,14,20,6,12,29,10,19,33,11,25,34,15,28,23,15,19,18,19,18,14,24,19,8,27,18,7,29,21,7,28,22,
6,24,19,6,26,23,8,33,31,11,42,40,13,46,46,14,49,49,15,53,53,17,55,55,17,56,56,17,57,57,17,57,57,17,57,57,17,56,56,15,51,52,11,40,40,7,27,27,
5,17,17,2,10,10,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,2,2,72,18,18,148,40,40,202,57,57,227,67,67,
229,68,68,226,67,67,223,66,66,219,64,64,212,61,61,205,58,58,197,54,54,187,50,50,177,52,49,167,49,46,160,45,42,160,44,41,157,47,41,149,53,42,130,53,39,115,55,39,
114,56,39,117,55,39,111,53,39,99,49,37,91,43,33,89,40,30,112,42,34,124,42,37,116,44,36,117,52,43,115,56,48,121,63,61,125,67,68,135,70,76,142,72,82,144,72,88,
152,74,101,155,73,107,156,73,110,162,75,115,168,78,121,171,78,123,175,79,131,177,78,134,175,75,131,173,72,127,176,72,133,179,72,149,180,70,157,182,69,162,178,67,154,177,66,153,
178,65,154,181,67,151,175,64,141,174,60,141,173,56,137,174,56,139,176,56,139,174,56,136,174,56,137,164,53,125,157,54,117,151,55,114,143,52,111,137,51,106,130,49,101,122,48,96,
118,42,91,113,37,87,106,36,82,92,29,68,75,21,53,61,16,43,45,11,30,34,7,21,22,5,13,20,3,11,24,5,13,28,8,17,32,10,21,12,10,11,2,12,7,5,16,10,
5,20,12,6,22,14,6,25,17,7,27,20,7,30,24,7,30,27,8,32,32,11,40,40,14,49,49,16,54,54,17,56,56,17,56,56,17,57,57,17,57,57,17,57,57,16,54,54,
13,47,47,10,39,39,6,25,25,2,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,6,6,93,24,24,171,46,46,218,63,63,232,69,69,229,69,69,225,68,68,
222,66,66,217,63,63,206,58,58,193,52,52,178,47,47,169,43,44,159,40,40,147,38,37,133,36,33,115,34,28,106,36,26,108,40,27,97,43,28,76,45,29,45,38,22,32,31,17,
46,27,17,69,28,20,76,31,23,77,33,25,79,36,28,96,45,36,110,50,46,115,55,52,112,59,57,115,64,68,118,66,75,135,71,96,139,71,102,135,69,101,135,69,103,133,66,103,
138,68,108,137,68,110,136,68,109,142,70,109,144,68,104,140,65,100,137,62,101,133,57,95,133,52,91,136,48,86,138,47,91,145,48,104,147,47,112,150,50,114,147,48,111,145,47,111,
153,50,113,159,52,115,151,50,108,148,48,102,148,47,103,139,44,98,132,42,89,139,44,99,147,46,107,149,47,108,149,46,108,154,43,110,161,46,118,165,49,126,158,47,117,149,46,107,
142,40,98,132,35,94,120,33,91,124,36,94,125,37,94,120,37,92,114,34,87,105,29,79,93,28,68,72,22,53,46,13,33,18,5,12,3,1,2,0,0,0,0,0,0,0,0,0,
1,3,2,2,7,4,3,13,8,5,17,10,5,21,13,6,24,15,5,20,13,5,20,16,6,26,24,9,34,34,12,44,44,14,50,51,17,54,55,17,56,56,17,57,57,17,57,57,
17,57,57,17,56,57,15,51,51,11,40,40,6,22,22,1,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,7,7,108,28,28,185,52,52,225,66,66,232,69,69,229,69,69,225,68,68,220,65,65,211,60,60,
198,54,54,181,48,48,165,42,42,154,38,38,144,37,36,130,39,32,112,36,28,89,31,22,65,29,16,43,26,12,29,22,8,27,23,10,17,22,10,10,19,9,14,12,7,30,13,8,
59,20,14,81,35,24,101,49,42,113,57,56,126,64,71,119,65,70,112,63,70,113,63,78,111,63,80,113,63,85,116,63,88,122,64,93,120,62,93,116,60,88,116,59,85,112,57,81,
112,57,77,113,57,71,115,56,73,115,54,66,117,52,67,115,48,64,115,46,61,116,43,60,125,42,62,141,44,64,144,45,68,146,46,70,146,50,73,147,53,75,147,53,73,145,52,71,
147,53,71,146,53,70,144,51,73,144,47,81,136,42,77,114,36,64,101,33,53,99,32,51,100,33,55,98,32,52,92,30,50,93,27,52,101,29,59,111,31,68,118,32,74,127,34,82,
133,35,86,129,33,89,122,30,93,120,29,96,112,28,86,107,27,82,112,29,86,117,30,89,114,32,86,105,32,81,90,28,70,58,20,45,30,15,23,18,10,15,8,5,6,0,2,1,
0,0,0,0,0,0,0,0,0,0,1,0,1,5,3,3,9,6,4,15,8,5,19,11,5,19,11,6,21,15,7,28,24,8,33,32,10,40,39,13,46,47,15,53,53,17,56,56,
17,56,56,17,56,57,17,57,57,17,57,57,16,53,53,12,42,42,6,23,23,1,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,9,9,121,32,32,193,54,54,229,67,67,232,69,69,228,68,68,225,68,68,220,65,65,205,58,57,184,50,48,168,43,46,
147,36,37,120,29,29,105,27,25,108,32,26,97,35,24,72,34,19,49,29,13,28,23,8,12,18,5,5,13,3,2,7,1,0,4,1,21,8,5,49,19,11,76,31,22,92,41,34,
96,49,40,92,54,42,93,58,53,84,56,53,84,56,60,83,56,64,80,55,63,101,58,79,115,62,85,113,61,76,106,58,65,99,54,52,102,53,55,109,55,64,110,51,62,109,50,62,
108,48,60,117,48,60,133,51,71,133,51,71,128,49,69,127,46,68,128,46,75,123,44,70,123,46,70,130,49,71,136,50,76,133,50,73,134,50,73,142,52,75,149,53,76,151,53,75,
152,53,79,151,52,74,153,51,81,158,47,93,163,45,113,160,43,116,149,40,104,142,38,93,140,38,92,135,37,82,121,33,73,108,30,68,107,31,72,100,30,65,89,27,54,77,24,46,
84,26,52,88,27,64,92,29,68,93,27,68,95,28,72,98,27,76,103,27,80,102,26,80,91,22,68,75,17,49,57,13,30,50,13,28,53,15,36,48,16,33,49,18,36,33,13,24,
24,12,18,13,8,9,1,5,2,0,2,1,0,0,0,0,0,0,0,0,0,1,3,2,2,9,5,4,17,11,6,24,17,7,28,21,7,30,24,7,31,28,9,36,35,12,45,45,
15,52,52,17,55,55,17,56,56,17,56,57,17,57,57,17,57,58,16,55,55,12,42,43,6,21,21,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,30,7,7,121,32,32,203,57,57,232,68,68,231,69,69,227,68,68,225,68,68,220,64,64,204,57,56,179,48,46,159,40,46,139,34,45,133,33,54,
94,26,34,48,17,12,34,14,7,41,18,10,26,18,7,14,19,5,6,14,3,3,9,2,2,4,1,2,2,1,6,6,2,14,12,4,40,24,10,57,35,18,70,44,33,66,46,36,
49,43,32,32,40,22,24,38,16,26,39,17,38,41,27,55,47,39,55,47,34,74,49,35,85,50,33,82,44,28,77,41,28,74,40,31,79,40,43,97,44,65,91,42,61,85,41,61,
84,42,62,86,45,60,90,48,58,86,49,55,78,48,53,71,44,46,69,40,47,68,40,45,66,39,41,71,41,40,94,46,46,99,44,46,100,39,41,110,35,42,124,35,46,135,37,49,
135,37,49,133,36,47,134,35,51,142,36,73,149,38,95,148,37,95,140,35,88,137,34,86,138,34,89,139,34,92,141,35,99,147,37,114,153,39,129,153,39,128,141,35,121,121,30,109,
110,27,104,111,29,107,108,29,105,101,27,94,94,28,83,81,24,69,65,22,61,67,23,62,65,22,53,59,19,28,52,13,9,52,11,7,49,10,11,46,10,14,49,11,24,42,11,27,
53,14,38,54,16,38,39,16,29,14,11,12,4,8,5,1,5,3,0,2,1,0,0,0,0,0,0,0,0,0,1,3,2,3,10,7,5,19,14,6,25,19,7,28,22,7,30,27,
9,36,35,11,44,43,14,49,49,16,54,54,17,56,56,17,56,57,17,57,57,17,57,58,16,55,55,11,41,41,5,17,17,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,25,5,5,106,27,27,193,54,54,232,69,69,231,69,69,227,68,68,225,68,68,220,64,64,205,58,57,172,45,44,134,32,38,113,26,40,114,28,49,102,28,48,59,20,28,
25,12,11,0,4,0,0,1,0,2,3,1,1,6,1,2,6,1,2,2,1,5,4,1,11,11,3,16,19,5,17,23,8,16,25,11,16,26,13,17,30,16,19,34,17,16,34,13,
18,35,12,22,36,10,25,37,10,28,39,10,29,38,10,25,36,9,23,34,9,29,33,10,45,33,24,64,35,45,62,36,47,58,37,47,54,39,45,49,42,42,43,42,39,34,40,32,
30,40,29,23,36,24,24,34,22,35,33,27,41,33,30,40,27,29,59,28,34,75,30,33,77,29,33,85,30,36,101,34,41,101,32,39,102,28,39,115,29,42,132,31,49,141,34,56,
141,35,56,143,36,57,141,37,53,143,38,58,144,38,60,146,38,64,143,38,61,141,37,60,138,37,60,138,35,60,137,35,65,140,36,81,143,36,96,145,37,104,146,36,112,142,35,120,
140,35,127,142,35,134,141,35,138,138,35,137,134,33,134,123,31,127,98,28,116,77,26,104,60,22,86,45,18,62,37,12,36,37,8,19,44,10,11,51,11,9,31,6,2,10,1,1,
12,2,6,29,6,19,42,9,28,29,8,21,7,6,5,1,7,3,2,7,5,2,7,4,1,4,3,0,0,0,0,0,0,0,0,0,0,0,0,1,5,4,3,11,8,4,16,12,
6,22,17,6,28,24,8,34,31,10,41,40,14,48,48,16,53,53,17,56,56,17,57,57,17,57,57,17,58,58,16,55,55,10,37,37,3,12,12,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,2,2,
94,23,23,186,52,52,229,67,67,232,69,69,227,68,68,226,68,68,221,66,65,204,57,57,169,44,43,133,32,40,101,23,39,80,20,41,66,19,37,40,15,19,19,10,8,1,3,0,
0,0,0,0,0,0,0,0,0,0,1,0,3,2,1,7,7,1,13,14,4,18,23,7,18,25,10,14,25,12,10,25,13,9,24,12,12,27,12,18,33,12,23,36,11,28,39,10,
30,40,10,29,38,10,25,34,8,21,29,7,17,27,8,15,30,11,15,32,15,16,35,17,21,37,22,35,42,31,32,44,29,28,44,25,22,41,21,19,39,17,15,34,13,11,26,9,
7,18,6,4,14,4,9,10,5,16,10,9,19,11,10,22,12,12,26,12,12,43,16,14,47,17,15,47,19,18,59,22,37,67,23,55,66,17,54,74,20,55,95,26,70,110,30,90,
117,30,98,119,30,99,121,36,100,122,37,97,125,38,95,138,41,95,143,43,91,146,43,91,149,46,90,146,43,79,145,43,72,145,44,68,144,42,63,143,41,63,144,41,65,139,38,63,
135,36,66,134,36,75,136,35,89,137,35,102,140,35,116,141,34,125,140,34,136,141,38,152,137,39,157,122,37,149,101,33,133,75,26,107,54,19,79,39,13,49,24,7,23,3,1,5,
0,0,0,0,0,0,2,0,0,4,1,2,0,0,0,0,0,0,1,1,1,1,4,3,1,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,4,3,3,11,8,5,19,15,6,26,21,8,32,29,10,38,38,13,46,46,15,53,53,17,55,55,17,56,56,17,57,57,17,58,58,15,52,52,9,32,32,2,8,8,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,63,15,15,165,45,45,
225,65,65,231,69,69,227,68,68,225,67,67,221,66,65,204,57,56,170,45,45,128,31,37,102,24,42,83,20,45,61,19,35,31,13,17,9,7,4,2,3,0,0,0,0,0,0,0,
0,0,0,0,0,0,3,3,0,10,10,3,17,19,6,18,24,9,17,26,11,12,21,10,8,18,9,9,22,11,16,29,12,23,35,11,28,39,10,31,40,10,32,41,10,30,40,11,
24,35,9,18,29,7,13,25,7,14,27,11,17,34,17,23,42,25,26,45,25,27,46,23,27,45,21,23,41,16,20,36,12,18,31,10,14,25,6,12,21,5,9,16,3,6,11,2,
3,7,2,5,9,3,4,10,4,4,12,4,3,15,5,3,17,6,2,17,7,2,18,8,3,18,8,3,19,9,14,23,28,26,24,46,25,20,44,26,19,43,34,23,54,58,28,84,
64,24,90,69,21,95,72,23,96,75,25,101,80,25,102,93,26,102,114,30,111,124,34,122,135,37,130,144,40,129,148,41,129,147,42,125,148,42,118,148,43,111,144,42,99,142,42,88,
137,41,73,135,41,63,132,40,53,123,36,47,113,33,48,118,34,57,119,33,74,120,32,96,123,33,120,135,35,139,137,38,153,131,40,159,122,40,157,108,36,144,87,29,121,59,21,90,
34,13,56,15,6,26,1,1,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,2,1,2,9,6,5,18,14,6,27,24,8,34,31,10,39,38,13,46,46,16,52,52,17,55,55,17,56,56,17,57,57,17,58,58,14,49,49,7,25,25,
1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,8,8,134,35,35,213,60,60,232,69,69,
227,68,68,225,68,68,221,65,65,204,58,57,167,43,42,128,31,37,101,23,42,76,18,40,55,16,32,28,14,15,10,9,2,0,2,0,0,0,0,0,0,0,0,0,0,1,1,0,
5,5,1,12,13,4,17,19,9,19,25,11,15,25,11,7,18,9,5,13,7,8,14,5,16,22,7,24,32,9,29,38,10,32,42,11,30,41,12,27,39,14,24,38,17,23,36,18,
20,35,16,21,37,18,24,42,25,28,46,28,31,48,30,30,46,27,27,43,20,24,37,12,19,30,8,14,22,5,9,15,3,8,13,3,7,14,4,7,15,6,7,18,8,7,20,9,
9,23,11,10,26,13,11,27,14,10,25,13,7,22,11,6,18,10,12,17,13,12,15,13,11,13,11,13,12,12,14,12,12,14,10,12,13,9,11,13,8,12,15,9,16,20,10,22,
22,8,27,30,9,41,38,12,54,42,13,59,41,13,61,42,13,61,47,14,64,63,19,82,83,23,98,104,26,104,125,30,115,129,33,121,132,33,125,136,34,128,142,36,133,147,38,140,
153,40,145,155,41,144,151,41,131,139,38,115,123,35,94,117,33,74,105,31,53,91,27,36,85,28,37,85,26,50,83,26,71,78,27,98,92,33,125,114,38,146,125,40,158,122,39,155,
104,35,138,78,26,109,54,20,83,31,12,51,12,5,24,2,1,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,3,13,11,6,26,22,9,33,30,10,37,35,11,42,41,14,48,48,15,52,52,17,55,55,17,56,56,18,57,57,17,57,57,
12,43,44,5,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,4,4,95,24,24,193,54,54,232,68,68,229,68,68,226,68,68,
224,67,66,211,60,59,175,46,46,131,32,36,99,22,37,92,22,52,74,19,46,32,13,16,9,8,2,2,4,1,2,2,7,1,1,3,0,0,1,0,0,0,5,4,1,11,12,4,
18,19,10,17,21,15,11,14,16,6,11,10,4,10,5,6,9,3,15,16,4,23,26,6,27,34,8,27,38,10,26,39,14,24,37,16,23,37,20,24,39,24,28,43,29,32,46,31,
30,47,30,30,47,29,30,46,26,27,42,21,25,36,15,18,27,8,14,22,6,11,18,4,9,17,5,9,18,7,12,22,10,15,26,12,17,29,14,17,31,15,14,29,14,12,28,13,
13,28,12,13,26,11,12,24,9,9,19,7,4,10,4,10,6,8,26,6,16,30,7,19,34,8,22,33,7,21,30,6,18,26,5,16,30,6,18,30,6,17,28,6,16,31,6,18,
21,4,10,33,7,23,36,8,30,38,8,32,43,10,37,53,12,40,58,14,41,59,14,44,69,16,49,91,21,60,94,22,64,97,23,67,99,24,74,104,25,85,110,27,97,116,29,108,
122,31,118,132,33,130,141,36,141,146,37,146,152,40,154,157,42,157,149,39,145,129,34,114,117,30,88,102,27,64,67,20,37,26,12,18,13,13,25,28,18,51,55,26,84,79,28,108,
87,29,117,91,30,122,97,32,130,92,30,125,75,26,107,50,18,77,26,9,42,9,4,17,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,5,4,15,14,6,25,23,8,31,30,9,36,36,12,43,43,14,48,48,16,52,53,17,56,56,17,56,57,
16,57,58,16,55,55,10,36,36,3,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,1,4,70,17,17,168,45,44,224,65,65,230,69,69,227,68,68,226,68,67,216,62,62,
178,48,48,125,31,35,99,23,35,97,22,51,86,22,54,58,19,34,22,10,11,3,4,1,1,2,4,2,2,9,1,2,8,2,2,1,5,5,1,11,11,4,16,16,9,13,14,15,
9,10,14,4,5,10,4,4,5,8,8,3,16,16,3,22,25,6,24,32,8,24,35,11,23,37,17,23,39,23,24,39,26,28,41,28,31,43,29,33,46,29,33,46,29,29,44,25,
26,40,19,25,36,14,24,32,9,22,28,6,20,26,7,16,23,8,15,24,11,16,27,13,18,31,15,19,32,15,19,31,14,18,30,12,15,26,10,13,24,9,11,20,6,9,16,5,
8,14,3,7,11,3,5,8,2,3,5,1,1,2,0,3,1,2,5,0,2,4,1,2,4,1,2,5,1,2,3,1,2,1,0,1,2,1,1,2,1,1,2,1,1,3,1,1,
1,0,1,4,1,2,4,1,0,4,1,2,21,6,21,44,11,39,62,15,37,67,15,34,72,16,37,76,18,38,75,17,37,79,19,40,81,19,44,88,21,52,98,24,71,104,25,85,
105,26,87,102,25,86,99,24,87,105,25,95,119,30,117,141,37,144,151,41,156,153,41,157,155,40,155,150,39,148,130,33,127,98,24,90,54,13,43,25,7,16,9,7,8,5,5,13,
10,5,23,27,10,45,52,18,76,76,25,106,93,31,125,97,32,130,88,29,120,66,22,94,33,12,52,13,5,24,2,1,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,5,3,13,13,6,25,25,9,34,34,10,38,38,11,43,43,14,49,49,16,53,54,
16,55,55,16,56,56,17,56,57,13,49,49,7,27,27,2,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,2,5,62,14,32,144,37,53,210,59,59,231,69,69,227,68,68,225,67,67,219,64,63,188,51,50,128,32,32,
72,16,27,68,15,42,82,20,50,66,20,41,34,14,18,7,7,2,0,2,3,2,2,8,2,2,7,2,2,6,6,6,5,11,11,6,15,15,9,12,14,14,9,9,14,5,4,12,
4,3,5,10,10,3,16,17,3,21,26,5,24,33,8,23,35,12,21,36,19,22,37,26,26,42,34,31,46,38,34,47,35,33,45,29,30,43,23,25,38,17,23,33,12,23,29,8,
23,29,7,25,28,7,24,29,8,26,33,14,29,37,20,27,37,21,23,34,18,18,30,12,17,28,10,15,26,8,15,25,9,15,26,10,12,23,10,7,15,7,4,7,3,2,2,1,
1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,2,1,4,14,4,15,23,5,18,27,6,20,31,6,25,35,8,26,43,10,29,48,11,32,54,12,37,66,15,45,73,17,55,83,20,66,
92,22,76,88,21,74,82,19,68,83,19,67,87,20,74,99,24,92,108,26,107,117,29,116,128,33,130,138,36,141,147,39,147,145,37,143,134,33,126,120,29,107,96,22,82,61,13,48,
27,6,18,2,0,1,0,0,2,10,5,21,32,11,51,58,20,85,81,26,111,88,28,118,69,23,97,52,18,77,38,14,58,19,7,33,5,3,12,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,4,12,13,7,26,26,7,33,33,9,35,35,11,41,41,13,48,48,
14,50,50,16,53,53,16,54,55,15,55,55,15,55,55,11,41,41,4,18,18,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,9,2,0,34,7,13,111,26,51,193,53,76,227,67,75,228,68,69,225,68,68,223,66,66,206,58,56,149,38,36,83,19,26,58,12,32,
69,16,47,68,19,44,42,15,22,9,7,3,0,2,1,1,2,5,2,2,9,2,2,7,2,2,7,11,12,17,16,17,20,14,15,18,9,10,15,6,4,13,8,3,14,15,11,12,
17,18,6,20,25,5,21,30,8,21,33,13,20,35,21,23,38,29,27,41,34,33,45,37,35,47,37,33,46,33,28,41,24,24,34,14,22,28,7,21,24,7,25,27,9,28,33,15,
29,35,18,29,35,18,29,35,20,30,37,24,31,38,26,26,34,22,19,29,13,14,25,9,15,26,10,15,27,12,14,26,13,11,21,9,7,13,5,2,4,1,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,1,1,0,3,1,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,5,1,5,9,2,8,14,3,12,21,4,17,32,7,27,
56,14,57,77,19,81,79,20,82,81,19,79,79,19,72,79,18,69,79,18,68,83,19,71,90,21,82,102,25,100,111,27,112,118,29,117,124,31,121,132,34,130,138,35,136,138,35,130,
119,30,112,76,20,79,32,10,45,5,3,13,0,0,0,1,1,7,16,6,29,30,11,46,34,12,54,46,16,70,58,19,84,56,19,83,36,13,57,8,3,16,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,5,6,4,15,15,6,23,23,7,28,28,9,35,35,11,43,43,
12,46,46,13,47,48,14,50,50,15,53,53,15,55,55,15,54,55,14,50,50,8,31,32,3,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,2,0,0,27,6,7,87,20,34,159,41,64,215,61,76,229,68,71,225,68,67,224,67,67,218,63,63,189,51,50,130,32,38,91,21,51,79,18,58,71,18,49,
49,16,29,16,9,6,1,3,0,0,2,4,2,2,9,2,2,7,2,2,6,3,4,13,7,8,23,13,16,27,10,13,23,6,6,16,6,2,14,9,4,15,14,12,14,22,25,12,
22,31,10,20,35,17,21,38,28,24,39,31,29,42,35,34,45,37,35,46,35,31,44,28,25,37,19,22,31,11,21,25,7,23,26,7,26,29,13,29,33,19,31,37,25,32,39,29,
33,39,28,31,37,25,30,36,25,29,37,25,29,36,24,24,33,19,16,28,15,13,25,14,12,24,15,11,23,16,9,19,14,5,10,6,2,3,1,0,1,0,0,2,1,1,4,3,
1,5,3,2,8,4,2,9,6,3,10,7,3,11,7,1,6,4,0,1,1,0,2,1,1,2,2,1,4,3,1,4,3,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,
26,8,37,51,15,66,60,18,77,68,19,81,73,20,88,78,23,97,79,25,100,80,23,91,88,23,90,100,25,99,105,25,106,102,24,101,103,25,102,99,24,100,105,27,108,118,30,119,
130,33,132,131,35,137,113,31,124,77,22,92,40,13,58,16,6,29,1,1,5,0,0,0,0,0,0,8,3,15,22,8,37,43,15,65,53,17,76,33,11,51,9,4,19,0,0,1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,2,8,8,4,17,17,6,24,24,8,33,33,
10,41,41,11,45,45,12,46,46,13,48,48,15,52,52,15,54,54,15,55,55,14,51,52,11,41,41,5,21,21,1,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,4,1,0,49,10,14,127,31,53,192,52,77,224,66,75,227,68,67,225,68,66,221,65,65,202,56,54,166,43,43,124,30,44,99,24,64,100,25,78,71,20,49,26,10,12,
7,11,6,0,7,8,5,6,13,8,3,11,2,1,6,2,3,10,5,6,19,8,10,27,8,13,30,9,15,28,10,11,22,10,6,16,12,9,13,16,19,10,18,28,11,20,35,18,
21,39,30,24,42,38,30,45,42,34,47,41,33,46,34,30,42,25,24,35,16,21,27,8,22,25,6,25,27,10,29,32,17,31,36,23,32,39,28,33,39,30,33,39,30,36,41,30,
36,41,27,33,39,24,27,35,20,22,33,18,18,30,17,14,25,17,10,23,18,7,20,18,6,18,17,5,16,17,4,14,14,3,11,10,2,11,8,4,15,12,5,18,15,4,16,12,
4,17,11,5,18,12,5,19,14,5,19,14,4,16,11,3,13,8,3,12,8,3,14,9,3,15,10,5,16,11,4,16,10,2,10,6,1,5,3,1,3,2,1,3,2,1,3,3,
1,3,2,1,5,3,1,4,3,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,8,3,13,12,4,21,8,3,14,4,2,8,0,1,3,
3,1,8,14,5,24,22,8,35,31,10,46,41,15,66,57,23,98,65,28,114,71,29,116,83,31,123,100,33,131,110,33,133,110,31,125,109,29,116,104,25,105,97,24,96,94,22,93,
98,24,97,106,27,110,114,29,118,109,28,113,90,26,107,73,23,97,52,18,77,28,10,45,9,3,17,0,0,0,0,0,0,5,2,9,19,7,33,34,12,52,36,12,55,23,8,38,
10,4,18,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,3,3,10,10,5,19,19,
7,27,27,9,36,36,11,42,42,11,45,45,13,47,47,14,50,51,15,53,53,16,54,54,15,53,53,12,44,44,7,28,28,3,11,12,0,2,2,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
23,5,5,79,18,34,152,38,65,207,58,79,226,67,71,225,68,68,224,67,75,217,64,69,183,50,53,136,34,41,114,28,56,106,26,73,88,24,65,42,15,27,13,12,5,2,12,9,
5,16,21,19,16,27,35,12,30,19,6,18,4,5,15,7,9,25,8,12,30,9,14,30,11,18,29,14,19,28,14,17,23,13,17,11,16,26,10,20,35,18,22,40,30,25,43,38,
29,45,42,31,46,41,30,45,35,27,40,25,26,35,15,24,29,12,25,26,12,26,30,18,32,36,26,34,38,31,35,40,31,36,41,31,36,42,31,37,43,30,37,43,30,34,41,29,
27,35,20,20,31,18,16,29,19,14,27,20,11,25,20,8,23,20,7,24,21,8,24,21,9,23,19,11,25,20,9,24,20,7,25,22,7,26,24,7,29,26,8,29,27,7,26,23,
7,26,22,6,26,22,6,26,23,6,24,20,5,21,15,5,20,13,5,20,13,5,20,13,5,19,13,5,18,13,4,18,12,3,13,9,2,9,5,2,7,4,2,8,5,2,7,5,
2,7,4,2,7,5,1,6,4,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,2,11,28,9,39,46,15,63,44,14,61,39,13,56,33,11,49,
25,9,38,16,6,27,9,4,19,5,3,13,6,4,19,15,9,43,25,14,62,36,19,80,51,24,100,63,28,114,75,31,124,87,33,131,101,35,136,110,35,136,112,32,128,105,28,114,
92,23,98,81,22,91,84,22,93,82,22,93,73,23,98,69,25,106,74,26,109,75,25,104,61,21,87,37,13,57,14,6,25,1,0,2,0,0,0,4,2,9,18,7,30,33,11,50,
39,13,57,26,9,40,8,3,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,5,5,
3,13,13,6,26,26,9,35,35,11,41,41,11,44,44,12,46,45,13,47,47,14,50,50,15,53,53,15,52,52,13,46,47,8,33,33,5,18,18,2,7,7,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,6,6,
118,29,56,190,51,94,216,62,77,226,67,68,225,68,68,224,67,83,213,62,89,178,51,81,134,38,68,115,31,78,101,25,78,65,18,47,31,16,17,3,10,5,3,15,15,17,20,30,
36,23,41,42,19,39,22,9,25,8,8,23,8,11,30,10,15,33,11,17,31,14,19,29,17,20,29,15,18,20,12,20,10,14,26,15,21,37,31,28,43,41,29,44,43,29,45,41,
27,41,34,23,35,22,23,29,13,28,30,13,32,33,21,34,36,30,34,38,35,34,39,38,37,41,39,40,43,38,42,45,35,42,45,32,39,44,30,35,42,30,29,39,28,22,35,26,
16,31,25,12,31,27,12,31,28,10,30,26,10,29,24,13,31,25,17,34,27,19,35,28,19,34,28,19,33,28,14,32,29,9,32,29,8,31,29,8,31,28,8,31,28,8,29,26,
7,27,24,6,26,22,6,24,21,5,21,16,4,15,10,3,13,9,3,11,8,3,10,7,2,9,6,2,8,6,2,9,7,2,5,4,1,2,2,1,1,1,1,1,1,1,1,1,
1,1,1,0,0,0,0,0,0,0,1,1,4,2,6,10,4,15,6,3,11,5,2,8,3,1,6,3,1,5,3,1,5,18,6,27,34,11,48,38,13,54,44,14,59,47,15,64,
47,15,64,50,16,68,47,15,64,40,13,57,39,13,56,39,13,59,24,10,45,15,8,37,12,8,37,16,11,48,26,15,66,46,23,93,73,30,122,95,37,140,101,37,143,100,36,137,
91,31,125,79,28,114,76,26,107,74,23,97,67,21,91,57,22,92,55,22,95,61,24,101,71,26,109,76,26,108,65,21,89,28,10,44,3,2,8,0,0,0,0,0,0,3,2,8,
17,7,29,33,11,49,25,8,39,8,3,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,2,2,3,14,14,7,29,29,9,35,35,11,40,40,12,44,44,12,45,45,15,46,47,12,47,47,14,51,50,14,51,51,13,46,46,10,35,35,5,21,21,2,7,7,1,2,2,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,53,12,19,135,33,67,
201,56,103,221,64,77,224,67,65,225,67,73,222,66,85,204,58,92,173,50,97,153,46,103,133,38,97,90,23,70,44,13,30,12,10,6,4,14,9,10,18,24,27,23,36,36,21,37,
29,14,29,8,7,20,7,10,27,11,13,34,11,17,35,13,20,33,16,20,30,19,20,27,19,20,21,15,25,17,17,33,26,24,39,39,30,43,45,32,44,44,29,41,38,24,34,27,
22,28,14,26,28,13,33,33,21,36,38,32,36,39,38,36,40,41,37,40,40,40,42,39,43,45,38,44,46,35,42,45,33,39,43,30,34,41,29,29,39,30,21,36,30,13,33,30,
11,33,31,14,35,32,17,36,32,19,36,30,19,37,30,21,36,30,20,37,31,17,35,31,14,34,31,12,33,30,10,32,29,8,31,27,7,27,24,6,24,20,5,21,17,4,18,14,
4,16,12,3,13,10,3,10,8,2,8,7,2,8,8,2,9,10,2,9,9,2,8,9,3,9,10,3,10,11,3,10,11,2,6,7,1,2,2,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,9,3,13,20,6,30,17,6,27,17,6,27,19,7,29,20,7,31,14,6,24,15,5,24,15,5,26,15,6,26,15,6,27,18,7,32,
23,8,36,28,9,42,35,11,50,44,14,60,58,19,79,74,23,97,75,24,99,68,22,91,57,21,87,38,17,71,22,12,51,18,10,46,39,17,71,63,25,101,79,31,120,90,35,134,
94,37,141,91,37,140,88,37,140,84,34,131,79,29,118,75,25,104,67,22,93,59,21,89,53,22,93,55,24,97,66,24,101,56,19,83,39,13,56,18,6,30,4,2,8,0,0,0,
0,0,0,4,2,8,9,3,15,6,2,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,1,2,2,3,13,14,6,26,26,8,34,34,9,39,38,12,43,43,27,46,53,30,47,55,17,47,48,12,50,50,14,50,50,13,47,47,9,34,34,4,16,16,2,8,8,
1,4,4,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,3,0,69,16,27,161,41,86,211,59,102,
223,66,77,224,66,66,223,66,76,217,63,87,192,55,92,163,48,98,154,47,109,138,39,99,84,21,62,25,7,22,3,7,5,0,14,12,18,20,30,38,23,41,34,17,33,10,8,17,
5,8,21,12,12,32,18,18,40,18,21,38,17,21,33,18,20,29,19,20,23,19,24,22,20,31,29,25,38,40,30,41,45,31,42,45,28,37,41,25,31,33,26,30,26,30,33,25,
34,37,29,34,37,34,34,38,38,36,40,41,37,40,39,40,42,39,43,44,38,43,45,36,41,44,32,38,43,29,35,42,30,30,40,30,25,38,31,19,37,33,18,36,33,20,38,34,
24,39,34,27,40,35,28,40,34,24,38,33,19,36,32,17,36,32,13,33,31,9,32,30,8,31,27,7,28,23,6,24,19,5,21,17,4,19,15,4,18,14,4,16,13,5,17,14,
5,20,17,5,20,19,4,17,18,4,16,18,4,17,18,3,14,16,2,9,9,2,8,8,2,7,7,2,7,6,2,6,5,2,3,3,0,1,1,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,2,2,1,3,3,1,5,5,2,8,7,2,13,10,3,16,11,4,18,16,6,25,17,6,27,20,7,31,
20,7,31,16,6,27,12,5,23,15,6,26,20,7,35,28,11,45,43,14,62,56,18,78,71,25,100,80,29,113,78,28,113,65,25,101,50,21,85,38,17,73,38,17,72,60,23,95,
85,31,122,97,36,138,100,40,148,98,42,153,92,40,148,87,37,139,82,32,125,78,27,109,67,22,92,42,15,68,33,14,64,44,19,81,56,21,89,54,19,80,39,13,58,18,7,28,
2,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,
1,4,4,1,5,5,0,1,1,2,7,7,5,19,19,7,30,30,9,36,36,17,41,44,40,48,62,39,49,61,19,48,50,12,49,47,13,49,49,12,45,45,9,35,35,5,21,21,
2,9,9,1,6,6,1,4,4,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,4,2,85,20,35,174,45,91,213,60,94,222,65,72,
224,66,66,222,66,84,209,60,93,176,51,90,148,46,96,145,43,103,121,33,87,62,15,47,15,5,18,3,9,13,8,17,22,26,23,37,44,24,46,23,13,28,6,6,18,8,9,28,
16,16,38,20,21,40,21,23,39,18,19,33,15,12,24,15,15,21,18,27,25,23,37,36,30,41,45,34,41,46,32,36,43,25,27,35,23,24,28,29,29,28,35,38,34,36,41,39,
33,40,42,33,39,41,36,41,41,42,44,40,43,44,38,44,45,38,42,45,37,39,44,34,36,42,32,28,39,31,21,36,31,19,37,33,23,38,34,29,40,35,35,42,36,35,41,35,
31,40,34,27,39,34,23,37,33,18,36,32,15,34,30,13,32,28,8,27,24,6,24,21,5,23,19,5,22,19,6,23,21,7,26,25,9,28,27,11,29,28,10,29,26,7,26,23,
6,25,22,6,23,20,4,15,14,3,12,11,2,11,9,2,10,8,1,8,5,2,8,5,2,9,6,2,9,6,2,5,3,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,3,1,6,
7,2,12,16,6,26,24,9,39,25,9,39,21,8,34,12,5,23,12,5,23,15,5,27,30,12,48,61,20,84,77,26,104,82,28,112,81,29,114,78,28,113,66,25,102,64,25,101,
69,25,104,76,27,110,85,31,121,95,36,136,101,40,147,99,42,152,95,42,152,89,38,143,80,32,126,63,23,95,44,14,64,33,12,53,33,14,63,44,18,79,54,21,90,37,14,62,
9,3,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,
2,6,6,4,13,14,3,10,10,0,2,2,1,4,4,5,19,19,7,29,29,8,35,35,13,39,42,35,47,59,41,51,63,24,49,52,11,45,44,12,47,47,12,46,46,10,39,39,
6,24,24,3,12,12,2,8,8,2,5,5,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,4,10,16,3,9,35,8,12,118,28,61,185,49,96,217,62,91,223,65,68,223,66,70,
220,66,94,206,59,103,169,49,99,141,44,92,129,38,85,97,26,68,42,10,35,8,5,14,3,11,16,16,20,29,43,26,46,43,22,43,20,12,29,10,8,26,12,13,35,19,19,43,
22,22,41,20,22,36,17,16,30,14,8,22,12,11,20,17,27,31,26,39,42,33,42,46,35,38,44,27,27,37,23,22,30,28,29,31,34,38,35,36,41,39,34,42,42,33,40,42,
36,41,42,41,43,41,43,45,38,43,45,37,41,45,37,40,44,37,37,43,37,33,41,35,26,38,33,21,36,32,24,38,33,33,41,36,37,42,35,38,42,35,36,41,34,30,38,33,
24,37,32,21,37,31,18,34,29,13,29,25,7,24,21,5,23,20,6,24,22,7,26,24,9,29,28,12,31,30,15,32,31,18,32,29,20,31,28,20,30,23,14,24,18,6,17,12,
4,14,9,3,13,8,3,11,7,2,12,8,2,11,7,2,11,7,2,10,6,2,10,6,2,9,6,2,9,6,2,7,5,1,4,2,1,3,3,1,3,3,1,4,4,1,4,4,
1,3,3,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,4,1,7,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,3,2,6,14,5,23,19,7,30,20,7,32,24,9,38,30,11,47,26,10,42,27,10,43,43,14,61,57,19,78,62,20,84,69,25,99,77,28,113,84,31,122,84,31,123,
83,31,120,78,29,115,74,27,110,73,27,109,80,29,116,91,33,128,100,39,143,100,41,152,97,43,155,90,39,146,71,30,119,57,21,88,45,14,64,34,12,54,30,14,59,16,12,52,
9,8,34,2,2,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,4,4,4,13,12,5,20,19,4,14,14,3,9,9,4,16,16,6,22,23,7,29,30,7,33,34,11,38,40,27,46,54,50,54,69,33,49,57,11,44,44,12,45,45,12,45,45,
10,39,39,7,26,25,3,14,13,2,9,9,2,7,7,1,5,5,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,21,5,13,28,6,16,60,13,26,146,37,87,201,55,116,221,64,92,223,65,65,222,66,74,217,64,97,
200,58,109,165,49,100,142,46,93,133,40,83,90,25,57,28,8,27,5,6,13,6,14,18,25,23,36,44,26,47,31,18,36,13,9,27,11,10,30,16,16,39,21,22,43,22,23,39,
19,20,33,16,12,28,15,7,24,14,14,25,17,29,34,29,40,44,35,40,45,33,32,43,25,21,35,23,22,30,31,36,35,37,44,42,34,42,43,33,40,43,35,41,42,39,42,40,
43,44,38,42,44,36,41,44,36,39,44,37,37,43,37,32,41,35,27,38,34,25,38,33,29,39,33,35,41,33,39,42,34,39,42,35,35,41,35,31,39,35,26,38,34,21,36,32,
20,33,26,18,32,23,17,30,23,13,28,24,9,27,25,11,30,29,14,32,31,17,32,30,20,31,28,21,31,25,22,29,23,21,28,19,18,24,13,16,22,11,9,18,11,4,13,10,
4,14,11,4,15,12,4,16,14,4,16,15,3,14,12,3,11,9,3,11,9,3,12,10,3,12,10,3,11,9,3,11,9,2,9,8,2,9,8,2,9,8,2,10,8,2,10,8,
2,9,7,2,7,5,1,5,3,1,5,3,1,6,3,1,6,4,1,4,2,0,1,0,8,3,12,18,6,28,19,6,29,15,5,25,13,5,21,10,4,17,6,3,11,4,1,7,
1,1,3,0,0,1,0,0,0,0,0,1,2,1,4,6,3,11,25,9,38,37,13,56,36,13,57,40,14,61,40,15,63,45,15,66,54,20,83,61,25,101,68,29,113,76,31,120,
81,32,122,87,32,124,84,31,122,81,30,118,74,28,111,68,25,102,76,28,112,90,35,133,102,42,151,101,44,157,82,40,148,62,34,132,55,27,109,54,20,85,45,14,63,31,10,47,
15,9,41,7,8,35,4,5,23,1,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,1,4,3,4,14,11,5,21,18,4,18,18,4,18,18,4,19,19,5,23,23,7,27,27,7,32,31,8,37,37,28,46,54,45,52,66,31,50,57,12,44,44,11,44,44,
11,43,43,9,36,36,7,24,24,4,14,14,2,9,9,2,7,7,2,8,8,1,5,5,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,5,15,36,8,21,64,14,27,151,38,92,201,55,114,217,63,82,222,65,63,219,64,72,214,63,105,197,57,118,
165,50,104,139,44,91,133,41,82,90,25,54,32,10,26,6,8,16,11,17,24,35,25,43,45,25,46,23,14,31,13,9,29,14,14,37,19,19,43,21,22,42,21,22,37,18,17,31,
16,9,26,17,10,26,19,20,33,21,31,39,27,36,44,34,36,45,29,25,38,24,19,34,25,28,34,28,37,38,28,40,42,30,39,42,34,40,42,39,43,41,42,43,39,41,43,35,
39,42,34,38,42,36,36,42,36,31,40,35,26,38,34,25,38,32,29,39,33,35,40,31,38,41,30,38,41,32,37,41,36,32,40,36,25,38,34,21,36,32,21,35,29,22,33,26,
18,30,23,16,30,26,17,32,30,16,32,31,18,32,30,20,32,28,21,31,25,21,28,21,20,27,18,17,25,17,15,23,16,11,22,15,8,19,13,6,17,15,5,18,17,5,19,18,
6,20,20,6,21,21,6,23,22,6,23,22,6,22,19,5,21,17,6,22,17,6,23,17,6,22,16,5,19,13,4,17,12,3,13,9,2,12,8,3,12,8,3,13,8,3,11,7,
2,10,6,2,10,6,2,9,6,2,10,6,2,10,6,2,9,6,2,6,4,1,2,1,1,1,2,2,1,5,6,2,11,8,3,13,10,4,17,13,5,22,15,6,25,18,6,28,
18,6,28,14,5,22,10,3,17,7,3,12,3,1,5,0,0,0,1,1,2,7,3,12,16,6,25,25,8,38,31,11,49,38,13,59,38,15,62,39,17,70,37,19,78,56,23,96,
77,29,115,90,34,129,88,34,129,86,33,125,76,29,114,57,24,97,53,23,92,64,26,105,89,33,129,100,39,143,92,40,146,83,40,147,70,38,142,58,32,128,56,26,106,54,19,81,
45,15,63,27,11,47,11,8,36,7,7,32,4,4,18,1,1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,1,1,0,2,8,7,4,16,14,5,20,19,4,22,21,4,19,20,5,22,22,6,28,28,7,32,32,7,36,35,20,43,48,43,52,65,38,51,61,16,47,46,
12,47,44,10,42,42,9,33,33,7,26,26,4,16,17,2,9,9,2,7,7,2,7,7,2,7,7,2,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,3,1,1,25,5,16,33,7,17,74,17,35,160,41,98,202,56,116,214,62,77,219,64,63,218,64,77,211,62,104,196,58,128,174,54,119,
147,47,94,130,39,81,80,22,51,24,7,22,7,10,18,24,21,37,47,29,54,44,24,48,18,12,28,11,9,30,16,16,41,21,22,45,22,23,42,20,21,35,18,15,31,16,8,26,
19,13,30,21,26,37,23,33,42,27,33,44,28,26,43,26,20,37,24,23,34,26,33,37,27,38,40,23,36,40,25,35,38,34,38,37,41,42,38,42,43,36,39,41,33,36,39,30,
34,40,31,31,40,33,26,38,33,25,37,31,29,37,28,36,40,28,38,40,28,37,40,29,35,40,31,30,39,34,25,38,34,22,36,31,22,34,27,25,34,26,26,34,27,22,32,27,
16,30,28,17,30,28,19,32,28,22,31,26,22,30,23,19,27,21,16,25,19,12,22,16,9,20,16,6,18,16,5,18,17,5,19,18,5,21,20,6,22,21,6,24,23,7,25,22,
7,26,21,7,26,21,7,25,20,7,26,20,6,25,19,6,24,18,6,24,18,6,24,19,6,23,18,6,22,17,4,19,15,4,15,10,3,14,9,3,14,9,3,12,8,2,7,5,
1,3,1,1,2,1,1,1,1,1,2,1,1,2,1,1,2,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,3,1,5,
6,2,10,9,3,14,13,5,22,18,6,27,19,6,29,14,5,23,8,3,15,4,1,7,0,0,1,0,0,0,3,1,6,11,4,17,24,8,36,34,12,52,36,14,58,38,15,62,
53,20,81,71,25,100,83,30,116,90,34,127,84,32,124,66,28,110,57,25,100,60,24,100,81,28,114,92,31,123,96,34,130,106,38,141,110,41,150,90,40,148,68,36,135,53,27,111,
51,20,86,51,16,72,31,10,44,9,5,22,4,5,23,7,7,31,3,3,15,0,0,1,0,0,0,0,0,0,4,1,3,17,4,13,20,4,15,1,0,1,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,1,4,3,5,18,14,6,26,21,5,21,20,4,21,21,6,27,27,7,31,31,8,32,32,6,35,34,16,41,43,41,50,63,45,54,66,
19,50,50,12,48,45,11,43,42,10,35,35,6,27,27,5,17,17,3,9,10,2,7,7,2,7,7,2,5,5,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,1,0,0,26,6,15,42,9,23,73,17,32,157,40,93,203,55,108,214,62,77,218,64,68,217,65,87,213,63,114,200,59,135,177,57,125,151,48,93,
122,35,73,75,20,51,19,7,21,7,12,20,31,24,41,55,30,58,41,22,46,17,10,30,12,11,32,22,19,45,22,23,45,22,23,39,20,19,34,18,13,32,17,10,30,28,19,37,
28,29,42,25,34,43,28,31,44,26,22,40,24,19,35,24,29,35,26,37,38,24,37,41,23,35,39,27,35,36,34,37,32,39,40,33,39,41,33,37,40,31,34,38,28,31,37,27,
28,37,29,28,38,31,30,38,28,35,37,21,36,37,18,37,39,23,37,40,30,32,40,32,28,38,31,25,36,29,25,35,27,26,34,26,24,33,26,22,33,28,20,32,28,20,30,28,
21,30,25,21,29,23,19,29,21,16,26,19,11,22,16,7,19,15,5,16,15,4,16,16,4,20,19,5,22,21,6,23,22,6,24,20,5,23,19,6,23,18,7,24,19,7,24,18,
6,24,19,6,24,19,6,24,19,6,23,19,6,23,19,6,23,19,6,22,19,6,23,19,6,23,18,6,22,18,6,21,16,6,20,15,5,19,13,4,18,12,4,16,12,3,14,9,
3,11,7,3,11,8,3,11,7,3,10,8,3,10,7,3,10,7,2,9,6,2,7,5,2,6,4,2,5,3,2,4,3,2,4,3,1,3,2,1,3,1,1,3,1,0,2,0,
0,0,0,0,0,0,0,0,0,1,1,3,3,1,7,7,3,13,12,5,20,15,5,24,18,6,27,12,5,21,8,3,13,1,1,4,0,0,0,15,5,24,38,12,54,45,16,67,
41,16,67,39,15,65,47,18,73,62,23,91,79,28,112,86,32,122,87,33,125,85,33,125,79,32,119,78,31,114,85,30,115,97,33,126,109,37,137,116,40,146,108,40,148,83,35,134,
59,28,113,47,22,94,25,12,55,3,2,11,0,0,0,3,3,16,6,6,26,2,2,5,0,0,0,0,0,0,2,1,1,24,6,19,51,11,39,34,8,25,7,1,4,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,4,5,19,14,5,24,19,6,24,22,7,26,26,8,32,33,8,33,33,8,32,32,7,34,33,11,40,41,35,49,59,
36,52,61,19,52,49,13,50,46,11,44,43,9,35,36,8,27,28,5,20,20,3,12,12,2,5,5,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,2,1,1,26,6,17,64,14,39,104,25,55,171,45,110,201,55,107,212,60,71,216,64,69,215,66,95,212,64,122,202,62,137,185,59,132,157,50,102,124,36,77,
84,22,60,33,11,32,15,16,27,39,28,48,54,31,57,36,19,42,13,9,28,17,11,34,41,23,56,39,28,55,23,22,38,19,17,33,17,12,32,22,12,33,39,22,43,51,30,54,
41,31,51,27,26,42,25,19,37,24,23,34,25,32,36,23,34,38,21,33,39,24,33,38,31,35,35,37,39,32,37,39,31,36,39,30,34,38,28,31,37,26,27,35,26,27,36,28,
31,38,27,36,39,22,38,39,18,37,38,20,36,39,26,34,39,31,32,39,31,31,38,29,31,37,28,32,37,29,29,35,27,22,31,25,19,30,26,20,30,26,20,28,22,19,25,19,
15,21,16,12,20,14,8,19,16,5,17,15,4,16,16,4,18,17,5,19,17,6,21,19,6,23,19,6,22,18,5,20,16,5,20,15,5,20,16,5,22,17,6,23,19,6,23,20,
6,23,20,6,22,18,6,22,18,6,22,17,6,22,17,6,22,18,7,23,18,6,24,18,6,25,19,7,24,19,6,24,19,6,23,18,6,22,17,5,21,17,5,21,17,5,21,17,
5,21,16,6,21,17,6,21,17,5,19,16,4,16,13,3,14,9,3,11,7,2,6,4,1,4,2,1,4,3,2,5,3,2,6,4,2,6,4,2,6,4,2,7,5,2,7,4,
1,4,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,4,2,8,11,4,18,15,5,24,17,6,27,13,5,22,20,6,30,38,12,51,48,15,64,
47,15,65,43,15,63,43,15,66,42,16,68,49,21,84,61,26,101,76,30,114,90,34,125,94,36,130,89,36,128,81,33,120,78,32,115,87,33,119,97,35,127,110,39,141,116,40,147,
104,39,143,76,32,126,48,24,99,27,14,61,3,4,18,0,0,0,0,0,0,1,1,2,0,0,0,0,0,0,0,0,0,5,2,7,26,7,28,52,13,43,48,11,36,17,4,13,
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,7,4,3,14,8,4,17,12,5,24,18,6,26,23,7,29,28,8,33,33,9,34,34,8,32,32,8,35,35,12,41,43,
26,46,52,41,52,63,23,52,51,12,49,44,11,42,41,9,36,36,8,29,30,5,17,17,2,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,1,0,0,32,8,21,66,15,38,112,27,62,178,47,114,200,55,114,209,59,74,215,64,72,214,66,97,209,64,125,199,62,141,181,59,129,151,48,95,123,35,78,77,20,54,
49,16,45,50,24,52,53,32,58,51,29,54,27,16,37,11,9,28,24,14,40,48,24,58,48,31,59,28,24,43,21,17,36,18,11,33,24,15,36,50,26,52,51,29,53,37,25,46,
26,17,38,24,18,34,24,27,35,24,34,37,21,31,37,19,28,35,24,30,34,31,34,33,36,38,32,36,39,31,34,38,30,31,36,26,27,32,23,25,31,24,29,35,25,33,37,22,
35,37,18,37,39,18,38,39,25,37,40,31,33,40,33,32,38,29,32,37,27,32,36,27,30,34,27,27,33,27,23,30,24,20,28,22,19,26,19,17,23,15,16,21,13,12,18,13,
5,13,12,4,14,14,3,17,17,5,19,18,6,22,19,5,21,17,6,21,16,5,20,15,5,20,15,5,21,17,5,22,19,6,23,19,6,23,20,6,23,21,7,24,21,7,25,22,
7,24,20,7,24,19,7,24,20,7,25,21,7,26,21,7,25,21,7,25,20,6,24,19,6,23,18,5,20,16,4,19,15,4,18,14,4,17,14,4,17,13,4,16,12,4,16,12,
4,16,12,4,16,13,3,16,12,3,13,11,2,10,8,2,8,6,2,7,4,1,4,3,1,3,2,1,2,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,2,1,
1,2,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,0,3,1,1,4,0,1,3,2,1,5,9,4,16,17,6,27,27,10,43,40,13,57,
43,14,59,48,15,66,48,16,70,47,17,71,48,18,77,47,21,86,49,24,94,55,25,101,73,29,112,88,33,125,93,35,131,88,36,129,80,33,120,68,29,105,82,29,104,107,34,125,
116,40,144,114,41,148,107,39,143,93,33,129,53,22,90,16,9,41,0,2,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,8,15,6,21,42,11,38,48,11,38,
28,6,21,3,1,2,0,0,0,0,0,0,0,0,0,1,1,1,1,8,5,4,18,11,4,20,13,4,22,16,5,26,22,7,29,28,8,31,31,8,33,33,8,33,34,8,36,36,
10,41,40,35,47,58,50,52,68,27,51,51,12,46,40,10,41,39,9,36,36,7,27,27,3,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,0,0,27,6,16,63,14,40,101,24,56,186,49,125,204,56,122,209,60,83,212,62,69,213,65,99,210,65,127,202,63,143,180,59,127,140,45,87,115,33,73,72,19,52,45,16,39,
68,30,63,73,37,72,56,29,59,25,15,36,12,10,31,31,17,46,56,29,65,45,30,57,26,22,41,23,16,38,21,12,37,31,20,42,52,28,55,45,28,51,29,21,41,23,14,35,
24,20,33,25,32,36,23,35,38,19,29,36,21,27,34,25,28,32,31,33,30,35,37,31,35,38,31,32,36,26,26,31,22,24,29,22,35,40,24,50,53,23,40,41,17,35,37,17,
37,39,24,37,40,30,35,40,31,35,38,28,34,37,26,32,35,25,28,32,24,24,28,22,22,27,21,20,26,20,18,25,18,16,22,15,16,21,14,17,22,16,15,22,18,10,19,19,
5,17,17,4,18,16,5,20,16,6,21,16,5,19,14,4,17,14,5,18,16,6,22,18,6,23,20,6,23,20,6,24,21,6,23,20,6,23,20,7,24,21,7,25,22,7,27,23,
7,27,23,7,25,21,6,24,20,6,22,18,6,20,16,5,19,14,4,17,13,4,16,11,4,15,11,4,15,10,4,15,10,4,16,11,4,16,11,4,15,11,4,15,10,4,15,10,
4,15,10,4,15,10,3,14,9,3,13,8,3,13,8,3,13,9,3,13,9,3,12,8,2,7,5,1,4,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,2,1,4,10,4,16,11,4,19,9,3,14,19,5,20,30,7,30,33,9,38,25,8,34,12,4,19,3,2,7,0,0,1,3,1,6,15,6,24,
18,7,30,21,10,41,36,16,68,48,21,85,51,20,85,50,19,79,49,19,79,45,21,84,45,23,90,54,25,99,72,29,112,93,34,126,97,36,132,82,33,123,71,28,102,81,26,93,
96,29,104,110,35,126,120,41,147,124,43,152,111,39,143,72,27,108,27,13,59,5,5,23,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,6,3,13,28,9,30,
49,12,42,38,9,28,9,2,7,0,0,0,0,0,0,0,0,0,2,4,5,3,15,11,8,24,16,17,25,18,10,22,17,5,25,20,7,28,26,8,30,31,9,33,34,9,34,34,
8,35,35,10,40,39,29,46,54,44,51,64,24,50,49,12,46,39,10,42,39,9,36,36,8,27,28,3,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
22,5,14,58,13,34,110,26,61,189,50,135,209,58,140,203,56,77,208,60,67,213,66,103,210,65,132,206,65,143,188,62,126,140,44,82,98,28,60,69,19,54,53,18,49,77,33,72,
96,42,87,53,28,55,19,13,33,13,11,33,36,20,51,56,31,67,41,29,54,25,21,40,22,15,37,23,12,37,43,23,50,49,28,52,40,27,48,25,18,38,23,14,34,24,25,34,
25,35,37,21,33,38,19,28,35,21,27,34,26,27,30,30,30,25,32,33,26,31,35,27,27,29,18,22,24,13,31,34,19,49,51,24,58,58,21,50,51,17,40,42,20,37,40,27,
37,40,31,35,38,28,33,36,22,31,33,17,27,29,16,22,25,18,20,24,19,19,24,17,16,22,16,15,19,12,14,17,9,16,19,11,20,24,19,17,23,21,8,18,18,4,13,13,
3,10,9,3,13,9,4,14,10,4,16,13,4,16,15,4,17,15,5,19,17,6,22,19,6,23,20,6,23,20,6,23,19,6,23,20,7,24,21,6,23,20,5,20,16,4,17,13,
4,14,10,4,13,10,4,15,10,3,16,11,4,16,11,4,17,12,5,19,13,5,19,14,5,20,15,5,21,15,5,21,15,5,21,16,5,21,15,5,19,14,4,18,13,5,18,13,
4,18,13,4,17,12,4,14,9,3,12,9,3,12,8,3,12,8,3,12,8,3,10,7,1,4,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,2,1,4,12,4,20,24,8,37,30,10,44,46,14,56,58,16,63,62,16,66,57,14,61,48,12,53,40,11,47,34,9,38,32,7,32,32,7,29,
17,4,14,6,3,15,10,10,42,25,17,70,40,23,91,61,26,101,72,24,97,63,20,84,51,19,79,41,19,79,35,19,79,67,27,102,96,33,123,103,36,132,95,35,131,85,33,120,
76,27,96,87,26,86,111,32,112,126,41,141,121,43,149,106,38,139,78,28,114,44,18,78,15,9,39,5,2,12,21,5,18,16,3,12,1,0,0,2,1,1,14,3,11,17,5,18,
27,8,29,49,13,44,49,12,38,17,4,11,0,0,0,0,0,0,13,4,10,17,15,21,24,21,24,49,31,25,54,33,27,23,28,22,5,29,22,6,29,26,9,33,33,8,35,35,
11,35,36,10,35,36,9,39,38,24,44,51,39,50,61,26,51,51,11,47,40,10,42,39,9,37,37,8,28,28,3,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,5,13,
59,14,41,106,26,62,183,49,129,206,57,141,202,56,90,201,57,65,207,62,99,212,67,142,208,66,153,189,62,123,147,48,81,102,30,64,68,19,57,55,19,53,87,36,80,92,41,81,
54,28,55,19,13,34,15,11,35,37,21,52,50,31,63,29,27,46,20,19,38,21,14,37,25,12,38,50,21,52,50,27,53,34,24,43,23,16,36,23,16,34,25,28,35,23,34,36,
17,30,35,15,24,32,19,23,32,25,24,27,27,25,22,27,27,20,28,30,19,30,30,12,24,23,6,39,39,10,61,62,20,56,57,18,41,42,18,36,38,22,35,39,25,34,38,25,
34,36,22,32,34,18,30,30,14,23,25,9,16,20,10,11,18,14,14,20,16,15,19,12,15,16,7,15,16,6,17,18,10,16,19,14,15,20,15,17,23,14,21,25,9,9,10,3,
1,2,1,2,7,4,3,11,9,4,15,14,4,16,15,5,19,17,6,21,18,6,22,18,6,22,18,5,20,17,4,17,15,4,15,13,4,13,11,3,10,8,2,8,5,2,9,6,
4,14,9,5,18,14,6,21,16,6,21,15,5,21,15,5,21,15,5,20,14,5,19,14,4,18,13,4,17,12,4,16,12,4,16,11,4,16,11,4,15,9,3,14,10,3,14,9,
3,14,9,3,14,10,3,13,9,3,10,6,2,7,5,2,7,4,2,7,4,1,5,3,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,2,1,4,9,2,13,18,5,25,28,9,37,44,15,54,57,19,68,65,20,74,65,19,73,66,19,73,72,19,77,79,20,79,78,20,76,
65,16,64,45,11,47,31,11,47,31,14,61,32,17,71,37,21,82,60,25,100,76,27,106,76,25,99,65,21,86,56,20,85,49,21,85,59,24,93,81,29,111,100,34,127,104,37,133,
92,35,128,80,29,107,96,29,97,118,35,110,124,38,129,119,40,142,113,39,142,92,33,127,60,24,96,32,14,60,38,11,49,47,11,44,27,5,21,14,3,10,42,9,32,60,14,46,
46,11,37,28,8,29,42,11,40,50,12,41,22,5,17,1,0,0,15,6,13,47,22,40,53,24,46,61,29,36,80,38,37,65,39,34,26,32,25,6,30,22,7,33,31,7,36,35,
28,40,49,38,39,53,16,35,37,7,38,36,28,44,53,47,51,65,28,51,53,11,47,39,10,42,39,9,37,36,8,28,29,3,11,11,0,1,1,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,4,11,56,13,36,
101,24,59,175,47,121,208,58,151,199,55,99,192,54,59,202,60,95,210,65,141,212,68,161,193,64,130,149,48,84,103,30,67,64,18,54,58,20,57,80,35,74,106,45,86,80,33,60,
28,13,33,17,11,36,46,23,59,48,30,61,24,25,43,18,18,35,19,12,36,30,13,41,50,16,49,47,18,47,27,16,38,24,14,36,23,18,32,24,31,34,21,31,34,12,24,28,
7,19,26,9,14,23,16,14,21,19,17,20,20,21,18,32,32,14,52,52,13,59,58,13,58,58,14,57,56,14,46,46,16,36,39,21,34,38,24,33,38,23,33,36,19,33,33,16,
30,31,14,26,28,12,22,25,10,16,21,11,11,18,15,8,14,10,14,17,9,20,19,8,19,20,10,15,17,9,14,16,7,20,21,7,31,32,8,34,34,8,26,25,6,5,7,3,
1,5,5,3,10,9,4,14,13,4,17,15,5,19,17,6,22,18,5,20,16,4,16,13,3,11,10,2,8,7,2,7,5,2,9,6,3,11,8,3,14,10,4,17,12,5,19,14,
6,21,16,6,21,16,5,20,15,4,17,12,4,15,10,4,15,10,4,14,10,4,14,10,4,15,11,4,15,12,4,16,12,4,17,12,4,17,13,4,18,13,5,18,13,5,18,14,
5,18,14,5,19,14,5,19,14,5,18,13,4,15,11,3,14,10,3,13,10,3,11,8,2,8,6,1,6,4,1,5,3,1,4,3,1,4,3,0,2,2,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,6,1,5,26,6,23,36,8,33,33,8,31,27,9,31,26,11,37,33,14,45,45,18,57,58,20,70,70,23,83,76,25,89,83,26,91,
90,27,96,87,25,93,75,21,82,64,18,75,55,18,74,46,18,74,39,21,81,44,25,94,68,28,107,87,30,113,89,28,109,82,26,102,68,25,95,53,24,87,63,25,94,98,33,120,
113,36,131,97,34,125,83,31,115,94,32,107,112,34,105,129,39,123,135,42,140,126,41,143,100,35,131,72,27,106,47,17,67,44,12,46,51,13,49,41,10,36,51,12,43,77,20,65,
84,21,70,58,14,47,29,7,26,34,10,35,56,14,45,40,9,27,1,1,3,20,11,24,52,25,49,62,28,54,73,32,49,85,40,45,70,40,36,31,33,26,7,31,22,7,34,29,
18,38,41,47,44,61,49,41,59,18,36,40,8,35,34,29,40,49,48,50,66,24,50,50,10,45,36,9,39,35,9,36,37,8,29,29,3,11,11,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,3,8,51,12,31,93,22,53,
158,41,104,204,57,151,196,54,103,190,53,63,200,59,97,208,64,134,212,68,162,193,64,132,151,48,85,125,36,84,84,23,68,60,21,57,84,35,77,106,44,85,92,36,60,53,18,40,
27,12,38,44,22,57,46,30,60,23,24,43,17,17,35,22,13,36,34,13,43,49,15,48,38,12,38,23,10,34,22,10,34,17,16,32,15,27,31,13,27,28,10,19,23,5,13,18,
4,8,16,8,6,14,10,10,17,17,18,16,39,39,14,67,66,16,89,89,22,84,84,21,57,57,17,39,39,18,34,37,23,33,38,24,33,37,20,33,34,17,32,32,15,30,30,13,
24,26,10,17,22,10,15,19,10,24,27,10,36,39,13,27,27,9,22,22,11,20,21,11,19,20,9,26,27,7,33,32,7,32,32,7,21,21,6,10,12,6,3,8,7,2,9,9,
3,12,11,4,16,15,5,19,17,5,18,16,4,16,14,3,11,10,2,7,6,1,6,4,2,7,4,2,10,6,3,14,10,5,18,13,5,19,13,4,17,12,5,16,11,3,15,11,
4,15,11,4,15,11,3,15,11,3,15,11,4,16,12,4,17,14,5,19,15,6,20,17,6,21,18,6,21,18,6,21,18,6,21,17,6,20,16,6,20,16,6,20,16,6,20,16,
6,20,16,6,20,16,6,20,16,5,20,15,5,19,14,5,18,13,4,17,12,4,17,12,4,15,10,3,13,9,3,12,8,2,12,7,2,11,7,2,9,6,1,4,3,0,1,0,
0,0,0,0,0,0,0,0,0,0,0,0,3,1,3,24,6,23,42,11,43,49,13,49,49,12,50,44,13,51,36,12,49,27,10,39,25,10,37,34,14,46,50,19,63,67,24,80,
88,31,99,94,32,105,92,30,102,90,28,99,87,26,96,85,25,94,73,24,93,56,24,94,49,26,99,66,29,107,93,33,117,107,34,121,103,32,117,84,26,102,60,23,86,69,24,91,
97,31,110,115,35,123,102,33,123,87,32,120,84,30,109,110,34,106,135,42,120,141,45,133,125,38,134,103,34,128,80,27,104,52,17,61,41,13,42,48,13,48,59,15,55,80,22,73,
104,28,90,108,29,87,82,20,61,33,9,29,42,11,37,77,20,55,44,10,31,1,2,7,16,11,24,52,24,51,64,32,58,72,38,51,85,40,45,73,40,39,32,33,27,6,31,22,
6,34,29,22,39,47,60,47,72,52,44,62,19,37,37,8,34,32,25,40,47,45,48,64,24,47,47,9,42,32,9,38,33,9,36,37,7,27,27,2,10,10,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,2,5,48,10,30,86,20,49,155,40,102,
202,56,154,193,53,109,184,51,63,196,57,90,210,64,139,212,67,160,195,65,133,151,50,86,129,38,82,116,32,79,79,25,60,83,35,76,100,42,79,91,36,59,60,19,40,31,12,39,
46,20,56,47,26,59,20,22,40,18,16,34,22,12,36,36,14,43,50,15,48,33,10,36,22,9,33,21,9,34,15,18,31,9,24,28,5,20,22,4,15,17,3,11,16,4,6,13,
18,16,16,21,21,19,28,29,17,52,51,14,79,79,19,92,92,24,85,85,22,61,62,19,44,52,23,38,46,26,33,37,23,32,35,18,33,33,17,31,31,14,28,29,10,24,26,11,
18,21,11,23,25,9,40,40,11,56,56,16,53,53,17,29,30,13,19,20,9,27,28,7,34,34,8,29,29,6,16,17,5,6,9,5,2,7,7,1,8,10,3,12,11,4,14,13,
4,14,13,4,15,13,3,12,11,2,7,6,0,3,2,0,3,2,2,8,5,3,13,8,3,13,9,3,13,9,3,11,8,3,11,7,3,11,7,2,11,7,2,11,9,3,12,9,
3,15,12,5,17,14,7,20,16,9,23,17,8,21,16,5,18,15,5,19,16,5,19,15,5,19,15,5,19,15,5,19,14,5,18,14,4,17,12,4,17,12,5,17,13,4,16,12,
4,17,12,5,18,13,5,18,13,4,17,12,4,16,11,4,16,11,4,16,11,4,16,11,4,16,11,5,16,11,8,17,19,8,17,18,6,14,14,4,13,11,3,10,7,1,5,2,
0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,4,2,6,14,7,18,23,10,28,35,12,40,46,16,58,55,19,72,56,19,74,49,16,65,35,12,47,25,9,35,31,11,42,
54,20,64,76,27,86,88,31,99,93,33,104,98,34,107,104,34,110,102,33,110,92,29,105,76,28,104,60,28,103,59,29,105,81,33,113,102,36,121,112,36,123,104,32,117,81,27,102,
71,25,92,89,29,101,110,34,118,113,34,124,94,31,115,81,27,100,107,33,107,137,44,120,141,46,124,131,40,129,123,37,132,103,31,118,66,19,77,42,14,45,51,15,51,76,21,74,
101,28,92,125,36,99,133,37,98,104,26,76,70,17,58,54,15,45,82,21,58,57,14,40,14,4,15,25,10,28,47,24,48,65,35,61,74,40,55,83,40,45,74,39,38,40,37,31,
10,34,25,5,34,30,25,40,49,58,48,70,50,48,59,20,41,37,9,36,32,28,39,48,42,47,61,22,46,44,9,42,31,9,38,33,9,32,32,6,21,22,2,7,7,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,2,43,9,28,75,17,41,138,35,84,195,53,147,
199,56,132,177,48,73,186,53,83,204,62,131,213,68,163,196,65,139,152,49,88,133,39,82,129,35,82,105,32,66,88,37,73,90,41,74,91,36,60,56,18,40,27,11,36,46,20,56,
43,19,55,15,11,32,17,13,32,24,12,38,39,14,44,42,12,40,29,9,33,23,8,34,21,10,34,14,19,30,8,25,28,5,19,20,4,14,16,2,10,16,3,5,8,24,24,12,
56,57,25,67,67,24,69,68,17,91,91,22,91,91,23,69,68,18,46,50,13,49,64,24,51,70,30,39,49,23,29,30,15,30,31,15,30,30,12,27,30,8,28,36,9,31,37,12,
41,42,12,56,56,15,55,55,18,40,40,17,29,30,12,34,35,9,43,44,10,30,30,7,14,14,3,7,8,3,2,8,8,1,9,10,2,11,11,3,12,11,4,13,12,3,12,11,
2,7,7,1,4,3,0,2,2,0,3,2,1,5,3,1,8,5,2,10,7,3,11,7,5,11,5,4,7,3,1,3,2,1,4,3,3,8,6,7,14,10,11,20,13,15,24,15,
19,26,15,21,28,16,22,29,15,23,28,15,15,21,11,5,14,9,3,13,10,3,13,9,4,14,11,4,16,11,4,16,12,4,15,11,4,15,11,4,14,11,3,14,11,3,13,9,
3,12,9,3,13,10,3,13,10,3,13,10,3,13,9,3,13,10,3,13,10,4,13,10,4,13,9,4,13,9,8,15,18,12,17,25,12,17,26,13,17,25,12,16,23,9,12,17,
5,9,12,3,8,7,1,6,4,1,5,2,1,3,2,8,4,9,15,6,16,8,5,12,6,5,12,12,7,19,30,14,44,50,21,71,62,25,84,63,24,84,55,20,74,42,15,57,
30,11,43,30,12,42,48,18,58,70,26,82,87,32,97,97,36,106,104,38,111,106,36,112,103,34,111,93,32,108,76,29,105,59,30,104,61,32,106,92,36,117,117,40,128,118,38,130,
99,33,117,78,27,100,78,28,96,100,32,109,114,34,116,101,29,106,88,26,99,109,32,112,136,43,124,143,46,124,142,45,130,136,42,139,118,34,129,87,25,97,64,18,65,66,20,66,
85,25,85,114,33,98,136,40,106,142,40,108,130,35,101,83,21,69,57,15,48,75,20,56,72,18,56,55,13,44,35,11,34,48,22,49,62,34,60,71,38,53,93,41,52,101,46,49,
62,43,40,10,35,26,4,34,29,25,39,48,66,52,75,54,50,61,22,41,38,10,36,32,30,39,50,46,46,63,19,46,42,10,41,32,9,35,31,7,25,25,3,13,13,0,2,2,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,7,18,69,15,36,130,32,78,187,51,135,194,53,133,
175,47,94,179,50,99,193,57,124,208,66,162,202,67,152,158,52,97,132,40,85,142,39,90,127,36,81,106,39,82,82,38,66,77,33,50,58,19,42,34,13,41,39,18,53,34,17,49,
14,7,30,16,9,30,25,13,38,44,15,48,43,12,38,21,7,25,17,7,30,18,9,31,12,17,28,23,39,28,25,38,23,6,14,16,2,8,15,7,8,7,30,30,7,59,62,19,
80,84,24,85,86,21,97,97,25,85,84,22,54,55,14,45,54,14,50,68,19,47,64,20,41,48,18,31,31,15,28,28,13,28,28,10,28,35,8,35,46,11,47,56,13,58,60,16,
58,58,18,45,45,18,30,30,12,33,33,10,49,49,12,59,59,14,47,47,12,19,19,4,18,18,4,26,28,10,9,17,12,2,11,11,2,10,10,2,8,9,0,4,5,0,2,2,
0,1,1,0,3,3,1,6,4,1,8,6,4,10,5,9,12,5,16,17,5,23,23,7,30,28,10,23,24,10,14,17,10,17,20,11,20,23,12,21,25,13,21,26,12,19,24,11,
16,21,10,12,17,8,9,15,8,7,14,9,4,11,8,2,9,8,2,8,7,1,7,6,2,7,6,2,8,6,2,8,6,2,6,4,1,5,4,1,5,4,1,5,3,1,5,3,
1,4,3,1,4,3,1,4,3,1,4,3,1,4,3,1,4,3,2,5,4,1,4,3,1,4,3,1,5,3,2,6,5,3,10,8,5,13,12,6,14,15,8,15,18,12,14,23,
20,15,30,22,14,31,16,14,26,10,11,18,9,11,15,21,12,22,33,13,32,32,9,29,25,6,22,16,4,15,11,6,17,21,15,38,40,23,60,50,25,71,59,27,81,63,26,86,
61,23,82,48,18,66,34,13,49,31,15,53,46,20,69,70,27,84,92,34,100,103,38,109,106,38,111,107,37,113,108,36,115,97,32,112,72,29,106,59,30,105,74,34,112,104,39,123,
122,41,132,117,39,129,95,31,112,76,26,96,86,29,99,110,33,110,112,33,111,103,30,105,106,31,108,129,40,121,142,47,125,144,48,130,141,45,139,133,40,140,117,33,120,98,28,92,
78,24,76,82,25,83,113,33,100,136,40,107,145,43,113,137,39,110,94,24,78,60,15,51,84,22,66,110,29,88,79,19,65,35,10,34,46,20,45,76,37,64,89,45,62,113,49,60,
115,50,55,60,46,43,16,39,34,18,36,38,29,40,51,64,51,74,55,51,62,18,41,36,10,35,33,32,40,50,43,46,62,16,44,39,8,41,31,7,31,27,4,16,16,1,4,4,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,6,14,64,15,40,99,23,56,176,47,126,193,53,139,173,46,101,
169,47,106,191,56,136,206,64,161,201,65,155,167,55,106,139,42,87,144,40,94,147,41,98,126,38,93,96,36,70,80,32,52,69,23,46,57,18,54,54,21,59,35,17,49,12,6,29,
23,23,30,39,40,41,51,30,50,38,11,33,17,5,22,14,6,25,12,7,23,10,14,21,26,36,22,37,45,20,16,20,13,1,2,10,10,11,6,39,38,8,66,67,16,88,96,24,
101,113,29,100,105,27,73,73,18,43,46,11,45,58,16,49,70,18,43,55,14,42,44,13,52,51,18,42,42,15,29,33,9,32,41,10,42,52,12,55,59,14,63,62,18,52,52,18,
35,35,15,33,34,11,50,50,12,65,66,17,63,66,17,50,51,13,39,39,10,40,40,10,45,47,14,28,33,14,6,13,10,1,7,8,0,3,4,1,3,2,7,9,3,12,15,6,
9,15,7,7,13,7,9,14,5,18,19,6,27,26,8,36,33,11,42,40,15,42,42,16,40,38,16,30,30,13,19,20,9,14,15,6,10,13,6,6,12,7,4,10,5,2,7,5,
1,5,3,0,3,2,0,3,2,0,2,3,0,2,2,0,1,1,0,1,1,0,1,1,1,2,2,1,4,2,2,5,3,2,6,4,2,7,4,3,9,6,3,11,7,3,11,8,
3,12,8,3,12,8,3,12,9,3,12,8,3,12,8,3,12,8,3,12,8,3,9,6,2,8,5,2,7,5,2,7,4,2,7,4,2,7,4,1,8,4,3,8,8,11,10,17,
26,14,33,36,16,40,36,16,40,32,16,38,27,16,35,25,16,35,26,15,35,28,12,34,31,9,33,33,8,32,31,8,28,28,12,29,35,18,41,39,22,50,39,23,57,49,26,71,
62,30,85,69,30,92,67,26,88,54,21,77,40,17,67,34,17,62,52,21,72,81,31,92,99,36,105,105,39,111,108,41,116,113,41,120,111,38,118,93,33,113,67,31,108,59,31,106,
88,37,117,120,43,130,127,42,135,110,36,124,77,26,96,72,25,88,98,31,105,108,33,107,100,29,97,97,28,98,118,36,116,140,45,126,145,49,129,144,47,137,143,45,141,134,40,126,
113,32,101,83,25,78,78,24,79,107,32,97,131,39,105,145,44,115,141,41,115,120,32,101,93,24,78,110,31,92,121,34,102,75,19,65,41,11,34,78,29,56,108,49,76,108,53,72,
117,51,62,114,51,58,72,50,57,53,46,60,27,39,44,22,39,46,73,54,77,67,53,64,19,41,36,12,35,32,29,35,45,30,39,49,19,45,40,12,40,31,5,26,22,2,10,10,
0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,5,12,65,15,43,76,17,46,146,38,108,191,52,140,168,45,105,161,44,107,
183,53,130,203,62,156,204,67,161,170,57,111,136,41,85,141,40,90,147,41,95,136,37,100,100,28,69,78,26,48,64,20,44,65,20,59,70,25,70,39,18,50,13,6,28,20,21,26,
46,58,42,68,62,54,44,21,33,12,4,17,13,6,25,10,7,20,6,14,16,29,36,16,34,36,12,10,11,9,0,0,6,19,19,6,55,60,13,79,86,20,94,105,26,110,125,33,
104,118,32,70,74,19,42,48,11,52,71,19,55,78,20,41,49,13,45,46,16,62,62,22,62,63,19,46,53,13,40,51,12,52,58,14,62,62,17,67,66,21,64,64,23,54,54,17,
49,50,13,62,63,16,79,83,21,77,84,22,58,65,17,49,50,13,52,52,15,56,59,20,48,51,21,25,28,13,4,7,6,2,3,2,12,14,3,27,30,9,41,45,14,46,50,15,
40,43,13,34,33,10,36,33,9,41,36,10,42,38,11,37,36,14,28,29,12,18,19,8,9,10,4,3,5,2,0,4,2,0,3,2,0,3,3,0,3,2,0,2,2,0,0,0,
0,0,0,1,2,1,3,4,2,4,6,3,7,10,4,10,12,5,12,14,6,14,16,7,15,19,8,16,22,11,17,23,12,17,23,12,18,24,11,13,20,11,4,14,10,4,14,11,
4,15,11,4,15,11,4,15,10,4,15,11,4,16,12,4,16,12,4,16,12,4,16,11,4,15,11,4,15,10,4,14,9,3,13,9,3,13,9,3,12,8,8,12,16,15,13,29,
24,15,41,31,16,44,33,15,43,36,14,44,38,15,44,37,16,42,33,16,40,30,17,39,26,15,37,25,14,35,28,13,35,32,12,35,36,13,37,40,16,41,39,18,42,42,21,51,
53,28,71,62,33,83,67,34,89,70,32,92,67,28,90,58,23,80,46,19,71,42,21,73,61,27,88,85,33,99,100,37,106,107,41,113,114,43,120,117,42,123,108,39,121,83,33,113,
61,30,106,70,34,110,105,42,123,128,45,135,117,38,127,79,25,95,64,21,81,86,28,98,105,33,107,102,30,99,96,28,97,117,35,116,141,45,130,145,48,128,146,49,128,147,47,134,
142,44,132,126,37,113,98,29,90,80,24,80,103,30,96,138,41,109,149,46,116,151,45,127,137,38,119,104,28,92,111,32,95,120,34,103,84,22,72,65,17,46,103,37,68,118,53,82,
113,55,72,117,52,63,116,52,63,88,53,72,55,48,64,20,37,39,38,41,54,94,58,86,65,53,64,14,37,31,11,27,25,40,33,48,51,46,56,34,48,42,14,39,29,5,24,20,
2,9,9,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,2,5,48,11,30,75,17,46,133,33,97,181,49,137,173,47,114,156,42,106,169,48,122,
196,59,147,204,66,159,178,60,122,143,44,90,141,40,91,147,41,94,138,38,97,103,29,73,75,20,45,62,17,42,63,19,56,68,23,68,36,16,48,13,7,29,20,21,27,45,58,40,
63,59,48,42,24,30,9,2,12,9,4,20,9,6,18,6,13,14,28,36,15,37,42,12,17,26,12,5,7,8,26,27,7,68,78,18,96,114,28,108,124,32,113,129,35,99,112,30,
61,68,17,42,52,13,57,81,22,63,89,24,53,65,18,54,54,19,64,64,22,57,59,17,50,59,15,59,67,17,72,74,19,70,69,20,69,69,24,74,75,25,77,78,22,77,78,19,
79,82,22,81,87,24,80,85,23,70,72,19,58,58,15,55,55,14,58,60,20,52,55,19,38,39,13,23,23,6,19,19,4,31,31,7,46,47,13,57,59,17,62,62,18,60,58,16,
59,56,14,57,52,14,41,37,9,25,23,6,13,12,3,5,6,3,1,2,1,0,0,0,0,0,0,0,2,1,3,5,2,7,8,3,14,12,4,15,14,3,9,8,2,11,9,2,
14,13,3,16,16,6,18,20,8,17,20,8,17,20,8,16,20,9,15,18,8,13,15,7,12,14,6,10,14,6,10,13,6,10,13,6,9,12,6,5,9,5,1,7,4,2,7,4,
2,7,5,2,7,4,2,7,4,2,8,5,4,11,9,4,11,10,4,12,10,3,12,9,3,11,8,2,12,7,3,12,7,3,12,8,3,13,8,3,13,9,7,14,15,13,17,27,
20,20,39,22,21,43,25,20,45,30,18,50,37,18,56,39,16,56,40,15,51,39,14,46,38,15,44,34,16,41,29,16,39,27,16,38,28,15,37,29,14,36,33,13,37,40,15,42,
47,21,54,54,29,66,58,32,75,61,34,82,65,35,88,71,34,92,76,31,93,66,26,86,49,24,84,45,25,84,61,26,87,83,31,93,99,38,105,108,43,115,114,43,121,116,42,123,
100,37,118,71,31,109,60,31,106,88,38,116,117,43,128,120,41,129,96,30,108,68,21,83,77,25,91,101,32,106,106,32,102,100,29,98,116,35,113,136,43,125,145,48,121,147,48,118,
151,49,132,148,47,137,137,41,125,108,31,98,80,25,80,105,32,96,140,42,109,151,47,119,154,48,132,139,41,124,107,30,94,109,32,94,122,35,105,92,28,80,78,25,58,109,39,72,
129,55,87,118,56,74,117,52,63,114,53,66,84,54,75,58,49,65,19,36,37,52,48,61,105,70,89,56,55,57,9,33,26,24,28,31,77,42,60,88,53,62,44,47,40,8,35,25,
5,21,19,2,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,1,2,42,9,27,54,12,31,122,30,88,182,49,143,168,44,127,149,40,111,158,45,116,183,54,129,
197,62,147,178,60,124,153,49,98,148,44,100,147,42,94,138,38,98,104,29,72,82,23,48,68,19,44,58,19,52,62,21,63,41,20,50,14,11,27,20,20,25,45,58,40,68,63,54,
38,23,28,2,0,8,11,8,20,12,11,16,9,10,7,28,30,10,42,49,14,33,54,19,28,55,17,41,51,12,74,85,20,102,123,31,116,137,36,118,136,37,92,104,28,54,60,14,
58,68,18,74,98,27,63,87,23,54,65,18,60,61,22,64,64,20,52,58,15,57,65,16,81,85,22,91,91,25,83,85,27,78,82,28,82,83,26,88,88,24,89,90,24,86,91,25,
81,87,24,74,77,21,66,67,17,63,62,15,58,56,14,51,50,13,41,41,12,32,33,8,38,38,9,52,53,13,62,62,16,63,62,16,65,63,17,66,64,17,59,56,15,53,48,13,
49,45,12,37,34,9,13,13,3,2,2,1,7,6,1,16,15,4,23,21,5,24,23,6,23,22,6,24,23,6,29,26,7,35,32,8,39,35,9,34,31,9,22,20,5,14,12,3,
10,9,2,7,8,3,5,7,3,3,4,2,2,2,1,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,4,4,2,7,6,2,7,6,2,8,7,3,9,7,2,9,7,
2,8,7,2,8,6,2,9,6,2,9,6,7,12,15,10,14,21,10,14,21,9,14,20,8,14,19,8,13,17,7,13,16,5,12,13,5,12,11,4,12,10,3,11,8,4,12,10,
5,13,14,8,15,20,12,17,27,19,20,37,27,23,50,33,23,56,35,22,58,38,19,58,42,18,59,45,17,59,44,16,53,41,15,48,44,17,48,36,17,45,29,16,37,26,14,31,
31,14,35,39,19,45,46,23,54,53,28,64,57,32,74,61,34,81,67,35,88,75,35,94,77,33,96,65,29,92,45,24,83,41,23,79,64,28,87,85,33,97,96,37,106,109,41,116,
116,42,121,111,40,121,87,34,114,59,30,105,71,33,109,109,41,124,127,45,133,115,37,121,85,25,94,80,23,88,96,30,98,106,33,98,100,30,94,104,31,98,131,41,117,147,48,121,
150,49,119,150,49,129,146,47,133,139,42,127,113,32,102,81,24,80,103,32,94,138,42,108,149,46,118,155,48,133,140,42,125,107,29,94,111,32,95,120,37,106,87,30,78,76,25,56,
117,40,77,138,57,89,123,57,76,121,54,68,112,53,68,87,55,78,52,47,61,31,46,39,97,77,74,116,85,90,44,50,51,9,33,26,55,34,45,106,49,71,88,53,60,35,44,36,
6,34,24,8,20,16,11,12,6,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,36,8,22,57,13,35,84,20,54,174,46,138,174,46,135,148,39,127,152,43,125,176,52,125,194,60,144,
175,55,123,151,47,100,160,47,116,159,46,103,145,40,104,113,31,80,92,25,50,74,20,43,59,18,51,64,21,63,36,16,45,24,35,29,36,52,31,47,60,40,65,60,52,42,25,31,
2,0,5,10,10,18,28,41,22,29,44,13,39,44,9,39,43,10,35,60,20,41,73,23,61,82,20,84,98,23,105,125,31,115,136,36,116,133,36,83,92,24,53,58,15,77,88,23,
96,114,31,77,93,25,56,62,16,59,58,17,62,65,20,52,61,16,67,75,19,96,98,26,103,102,29,98,101,33,92,100,33,91,96,28,97,98,27,97,100,28,87,92,26,77,81,22,
69,70,19,68,68,18,73,72,19,70,70,18,58,57,15,44,44,11,42,42,10,60,60,15,73,74,19,77,77,20,74,73,19,67,65,18,59,56,15,47,44,11,34,30,8,24,21,6,
16,15,4,13,13,3,19,19,4,29,28,7,41,38,10,48,45,12,49,46,13,42,40,10,37,33,9,38,35,9,37,35,9,33,32,8,30,30,7,27,27,7,20,20,5,7,7,1,
2,3,0,4,4,1,1,1,0,0,0,0,1,0,0,1,1,0,3,3,1,3,4,2,1,3,2,3,5,8,8,9,17,9,12,19,9,11,18,9,10,18,9,10,18,8,11,18,
8,11,18,8,11,18,8,10,18,7,10,17,9,12,19,10,14,22,12,15,25,12,15,25,10,15,23,10,14,23,10,14,22,9,14,22,13,15,26,16,16,31,16,16,30,12,13,23,
7,10,15,4,9,11,2,10,8,5,12,13,14,18,29,22,22,42,25,23,48,29,24,52,35,25,58,41,25,64,46,24,67,47,21,64,49,19,61,49,16,56,45,16,49,34,14,36,
24,11,24,23,9,24,29,12,33,39,18,48,47,23,56,53,27,64,58,32,76,62,36,85,69,38,92,77,38,99,71,34,96,42,24,84,26,21,79,51,26,88,79,31,96,90,34,104,
102,39,113,114,43,120,115,41,121,98,38,117,67,30,107,73,32,109,105,40,122,125,45,131,125,41,128,104,30,106,82,22,83,91,27,82,106,33,94,99,31,92,101,30,95,129,40,119,
149,49,127,150,49,119,149,48,126,148,48,135,141,43,129,116,33,105,80,24,80,99,30,94,136,41,108,150,46,118,155,48,133,143,42,128,110,30,96,114,32,94,120,36,105,89,31,81,
83,30,62,135,47,85,152,62,94,131,62,79,120,56,67,114,55,71,97,59,82,55,50,61,41,50,41,109,83,80,112,80,87,39,46,47,15,34,29,76,39,60,112,52,76,75,49,52,
23,41,31,17,38,22,47,42,15,23,18,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,5,12,55,13,34,73,16,46,144,36,109,183,50,146,157,41,131,149,41,129,170,50,123,194,59,141,178,54,126,
145,43,93,156,46,111,164,47,112,159,45,114,129,35,91,110,30,58,109,30,52,80,23,55,64,20,62,38,15,45,24,31,30,46,70,35,60,84,44,67,65,51,47,27,35,4,0,6,
5,7,10,28,45,16,45,76,20,59,80,17,44,53,13,32,56,19,48,79,23,70,89,21,89,104,25,105,126,32,116,137,36,116,130,35,79,87,22,56,63,16,84,97,26,101,119,33,
89,101,26,69,71,18,64,62,16,65,74,19,67,86,23,83,93,24,101,101,27,103,103,30,100,105,31,98,104,32,100,104,30,100,103,29,95,100,29,84,90,26,72,75,21,69,69,18,
73,72,19,76,75,20,71,71,19,62,62,16,63,63,16,73,73,19,83,83,22,84,84,23,76,75,20,67,65,17,59,57,15,50,51,13,37,38,10,20,18,4,12,11,3,17,16,4,
32,30,7,48,46,12,56,54,15,53,50,14,46,43,12,39,37,9,32,30,8,27,26,7,26,26,6,26,26,6,26,26,6,26,26,6,25,26,6,26,27,6,26,27,6,24,24,6,
25,25,6,23,22,6,15,14,4,14,13,3,17,15,4,19,17,4,21,20,6,15,15,5,3,5,2,2,3,5,4,6,10,4,6,10,4,6,10,4,7,10,4,8,10,5,10,12,
5,11,13,6,11,14,6,12,14,6,12,15,8,13,17,13,15,26,20,18,36,22,19,39,21,19,38,21,19,38,20,18,35,17,17,32,17,16,32,18,17,34,18,17,36,19,17,37,
19,15,36,19,13,34,16,12,29,11,12,22,10,13,23,13,16,28,16,18,32,22,20,39,26,22,44,28,23,50,32,26,56,38,27,62,43,27,66,47,25,66,48,22,63,49,17,56,
45,13,46,34,9,33,25,7,25,24,9,32,32,13,44,39,17,51,48,23,61,56,30,75,60,35,82,64,38,91,66,39,96,59,35,95,46,27,89,36,24,86,50,26,91,72,30,96,
85,33,100,96,37,108,106,40,115,112,41,119,98,38,117,78,32,111,75,32,111,94,36,114,119,42,124,128,43,130,111,33,113,84,23,82,87,25,78,104,33,93,103,32,94,100,31,94,
126,40,117,148,48,128,150,49,120,149,48,122,148,48,129,142,43,129,117,33,107,86,26,84,102,32,95,136,41,107,150,46,118,159,51,136,151,45,129,120,33,99,117,33,98,133,44,118,
89,39,83,98,36,69,153,52,93,159,67,99,129,64,80,122,58,68,122,60,79,97,61,84,52,49,57,58,58,47,124,88,90,101,72,81,25,41,37,21,30,29,72,37,52,91,48,56,
63,48,45,20,39,26,47,49,22,55,41,15,12,10,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,2,6,52,11,33,65,14,40,115,28,82,171,45,133,160,43,133,144,39,129,164,48,126,191,58,138,190,58,140,156,47,103,
151,44,103,162,47,107,163,46,115,152,42,121,123,34,84,114,31,53,86,24,51,76,23,67,57,19,57,35,30,37,44,67,32,59,84,39,67,68,51,51,30,39,6,1,6,4,7,8,
25,43,14,44,77,17,63,86,20,50,63,15,35,60,20,60,87,26,93,108,27,105,117,30,110,130,34,116,137,36,116,130,35,86,92,23,67,77,19,94,114,31,104,122,34,86,95,25,
69,70,17,65,66,17,67,80,20,79,100,27,99,112,31,105,108,30,101,104,30,98,104,30,95,101,28,101,104,29,103,106,30,94,98,29,78,80,23,70,70,19,76,75,20,83,83,22,
76,75,20,65,65,17,64,65,16,75,75,20,85,85,23,88,88,24,84,83,23,70,69,18,58,56,15,48,49,12,36,40,9,23,26,6,16,17,3,23,21,5,40,38,10,55,53,15,
61,59,16,58,56,15,50,48,12,42,40,10,35,34,9,27,27,6,25,25,6,25,25,6,26,26,6,27,28,6,29,29,7,33,32,8,36,35,9,38,37,10,39,37,10,40,37,10,
36,34,9,29,26,7,22,20,5,20,19,5,19,18,5,17,16,5,15,16,5,9,10,4,3,4,2,1,4,3,1,5,4,1,6,4,1,6,4,1,6,4,2,7,5,2,8,5,
2,8,5,2,8,5,2,10,6,2,10,6,3,11,8,6,13,14,13,16,25,17,17,32,19,18,35,24,20,41,28,22,46,28,22,46,28,22,46,24,21,42,20,20,37,18,19,34,
20,19,35,28,20,41,33,19,44,31,18,43,27,17,40,21,16,36,17,16,33,24,17,34,31,18,40,30,19,41,27,19,43,26,21,45,29,24,51,36,27,59,41,28,64,45,27,66,
48,24,65,49,19,59,45,15,48,36,10,35,25,7,28,24,9,34,33,13,47,43,20,60,53,26,72,60,33,81,61,37,88,57,39,93,57,39,98,53,33,94,41,26,86,41,25,86,
61,28,93,80,30,97,89,34,102,98,38,110,106,40,116,101,39,117,86,34,113,72,29,106,82,30,103,111,39,114,127,44,126,115,36,117,87,24,86,84,23,76,101,31,90,103,33,95,
98,31,94,122,38,114,146,47,128,150,48,118,148,49,116,149,48,128,142,44,130,127,37,116,102,29,95,107,33,99,136,41,107,155,49,120,168,56,138,156,50,130,117,32,96,123,37,106,
125,45,114,90,41,84,113,43,77,159,59,100,155,67,97,129,63,80,122,60,70,121,63,80,94,61,83,71,55,58,88,70,60,125,90,91,80,65,70,14,34,26,28,27,28,78,40,50,
88,48,54,48,41,39,22,35,25,59,52,26,47,36,12,4,4,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,6,1,3,42,9,26,61,13,37,97,23,65,159,41,120,160,43,131,143,40,133,146,42,116,179,53,124,195,60,147,173,52,126,157,47,111,
162,47,108,162,46,108,161,45,135,140,39,115,123,34,71,85,23,45,64,20,57,71,21,64,72,38,65,74,68,54,63,84,41,61,69,44,49,30,36,5,0,3,17,29,8,34,56,17,
44,76,17,63,87,20,49,62,15,34,59,19,60,88,26,106,119,30,125,135,36,121,138,37,115,136,36,110,124,33,84,90,22,77,89,23,103,126,35,106,130,36,87,98,26,67,67,16,
65,68,17,68,85,22,84,104,28,106,115,32,108,111,32,101,105,31,95,103,29,95,100,27,101,103,29,105,107,32,97,100,30,78,80,22,72,71,20,82,81,22,89,88,24,79,78,21,
66,65,17,72,72,19,84,84,23,86,86,24,82,82,22,78,77,22,68,67,18,52,53,14,39,41,10,25,27,7,17,19,4,28,27,6,46,45,12,61,58,16,65,63,17,56,53,15,
45,44,11,43,41,11,44,44,11,46,46,12,43,43,11,36,36,9,31,30,7,36,36,9,42,41,11,46,45,12,47,45,13,49,45,13,49,45,13,43,39,12,33,30,9,24,22,6,
17,17,4,10,11,3,7,9,3,4,7,3,3,5,2,1,4,2,0,2,2,0,2,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,3,0,0,4,1,1,5,2,2,7,5,4,9,9,5,10,13,6,11,16,10,14,22,15,16,30,19,18,35,22,19,38,24,20,41,26,21,43,26,21,43,
26,21,43,29,21,43,31,21,43,33,20,42,34,20,43,34,20,44,31,19,43,30,18,43,29,18,39,30,15,37,31,15,38,31,16,40,29,17,41,26,20,43,28,22,48,33,25,56,
41,28,64,45,28,66,47,26,65,47,20,57,39,13,41,22,6,22,17,5,20,26,9,35,46,17,58,58,23,71,58,27,75,59,33,83,59,38,92,57,40,97,56,38,96,45,28,84,
38,24,83,51,26,90,74,30,96,85,31,98,90,35,104,100,38,111,104,38,116,88,36,113,65,28,100,67,25,92,102,34,106,121,42,121,115,37,118,91,25,91,82,22,75,98,30,87,
98,31,89,92,29,88,118,37,111,144,47,129,145,47,117,148,48,116,149,48,128,144,45,133,132,39,121,103,30,97,108,33,98,138,41,109,158,53,125,169,60,139,153,49,127,115,32,96,
122,38,107,123,46,114,84,42,79,118,50,81,162,63,102,151,66,95,126,64,76,133,67,75,128,65,87,108,63,86,91,62,60,116,90,71,133,98,93,60,52,54,11,31,22,41,30,34,
86,43,52,85,47,51,34,35,33,30,41,26,60,51,24,35,26,8,14,4,3,5,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,1,0,0,28,6,17,58,13,36,79,18,50,142,35,105,155,41,131,146,40,135,143,40,129,158,47,115,190,58,140,176,53,133,163,49,122,164,49,116,
161,46,108,163,45,135,147,41,127,130,36,89,91,25,48,66,20,54,79,23,71,80,34,70,93,78,69,76,94,49,54,74,38,40,31,29,10,1,6,16,26,4,48,81,19,58,95,22,
66,90,21,51,64,14,34,58,14,61,89,25,106,119,30,127,136,35,127,143,38,115,136,36,109,126,33,83,92,23,77,91,23,105,130,36,107,130,36,86,97,25,66,66,16,65,70,18,
70,88,24,90,108,30,108,115,32,106,108,31,100,104,30,95,101,29,96,100,28,104,107,31,104,107,32,91,94,28,78,79,23,77,77,21,87,87,24,85,85,23,72,72,19,70,70,18,
80,81,22,87,87,24,82,83,22,74,74,20,66,66,17,58,58,15,46,49,13,29,31,8,21,21,5,32,31,8,54,52,14,67,66,19,66,65,18,57,55,15,47,46,12,43,42,11,
44,44,11,47,47,12,46,46,12,45,46,11,44,44,11,47,46,12,51,49,14,56,54,16,55,53,15,51,47,14,45,41,12,39,36,10,32,29,8,22,20,6,11,11,3,9,8,2,
11,10,3,13,12,4,10,10,4,2,3,1,1,1,1,3,3,2,5,4,3,7,6,5,9,7,6,8,6,7,6,4,7,6,3,7,6,4,7,6,4,8,7,5,9,7,4,9,
5,3,9,3,1,7,3,1,6,2,1,4,2,1,3,1,1,3,1,3,3,0,5,3,0,6,4,1,7,6,5,9,13,9,12,21,11,13,24,12,14,25,14,15,28,17,17,32,
20,18,36,23,19,40,26,21,43,28,21,45,30,21,44,31,21,43,32,20,42,32,19,42,31,18,40,29,17,38,27,16,37,28,14,36,30,14,37,31,15,39,29,16,40,28,18,42,
35,22,51,40,26,58,39,27,61,38,26,60,33,21,52,24,12,36,22,7,23,17,4,17,25,7,27,38,13,47,41,15,56,47,20,64,57,28,78,60,36,89,57,40,95,51,38,94,
44,30,84,36,23,79,43,24,86,64,28,93,72,28,91,76,28,93,92,34,105,105,39,114,91,36,111,61,28,99,59,24,89,92,30,98,117,40,117,119,40,122,94,27,93,78,21,69,
87,25,73,88,26,74,88,27,83,116,36,109,140,44,127,142,45,115,146,48,115,148,48,127,136,43,126,123,36,113,103,29,96,107,32,99,139,43,111,159,54,125,170,61,140,152,48,128,
112,32,94,113,38,98,111,45,101,88,44,79,127,54,86,164,65,103,150,73,94,141,82,79,145,74,81,124,64,91,115,67,86,116,82,63,144,108,85,127,88,93,40,43,43,10,28,20,
58,36,40,115,65,57,91,59,50,30,40,30,40,47,27,68,51,24,54,23,14,34,7,11,4,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,18,4,11,52,12,34,64,14,40,124,30,88,157,40,129,131,36,130,145,42,142,162,48,127,186,56,141,182,55,140,159,48,125,166,50,130,165,47,111,
168,48,140,161,45,150,138,38,107,105,29,58,71,20,49,70,18,58,77,29,68,98,81,74,94,120,57,69,108,43,29,42,23,4,1,4,13,21,3,49,78,18,64,102,25,73,99,24,
56,71,16,40,63,14,69,101,25,110,127,32,128,136,36,126,142,38,118,137,36,111,129,35,92,108,28,85,102,27,105,129,35,105,127,35,85,96,24,67,69,17,62,69,18,68,89,23,
92,109,30,109,114,32,103,105,30,98,104,30,95,101,28,99,102,28,107,108,32,106,109,34,89,91,26,76,75,21,82,82,23,89,89,25,79,80,21,68,68,17,75,75,20,86,87,25,
86,86,24,77,77,21,67,67,18,61,63,16,51,53,14,31,34,8,21,22,5,31,30,7,53,51,13,67,65,18,68,67,19,58,57,16,47,47,12,44,44,11,46,46,11,48,49,13,
50,50,13,47,47,12,46,46,12,50,48,13,54,53,15,56,53,16,54,51,15,48,45,13,39,36,10,28,26,7,22,20,5,19,17,4,18,17,4,20,17,5,22,19,5,26,23,6,
30,26,8,31,28,8,28,25,7,26,23,9,29,26,17,33,30,22,35,30,23,35,31,24,35,29,24,31,27,23,26,21,22,20,16,20,19,17,22,20,18,25,24,19,30,25,20,32,
20,15,30,16,11,29,16,12,28,15,11,27,14,10,26,12,9,24,10,9,19,5,8,10,3,7,7,3,7,5,5,8,10,9,10,18,10,11,21,10,11,21,11,11,21,10,11,22,
10,12,22,11,13,24,14,14,28,17,16,33,22,18,39,25,20,42,28,20,44,29,20,44,30,19,42,29,17,37,29,17,37,29,16,38,28,15,37,27,14,36,30,14,37,31,15,38,
32,16,42,35,19,46,34,21,48,31,21,47,28,21,48,27,21,51,25,17,45,23,11,33,20,7,24,19,7,24,21,8,30,35,12,49,48,17,65,55,24,73,58,31,83,53,37,91,
45,36,91,45,30,89,40,24,82,38,23,83,53,26,90,64,25,89,70,25,88,88,32,101,101,37,111,85,33,107,53,26,93,51,19,78,81,25,82,110,37,110,116,39,119,91,27,90,
70,19,61,76,20,60,83,24,70,89,27,83,115,36,108,139,44,126,140,45,113,146,47,112,144,47,123,134,42,124,123,36,112,101,29,95,110,34,100,142,43,111,161,54,126,170,60,142,
144,46,121,101,33,83,122,45,97,118,49,102,93,47,80,138,59,91,168,75,106,160,92,98,152,90,82,139,70,84,136,68,100,137,76,91,136,93,72,147,108,90,104,75,80,26,35,32,
25,34,24,96,61,51,135,85,63,99,75,51,32,44,28,51,51,26,80,48,28,65,19,23,23,3,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,1,0,0,37,8,23,55,12,34,81,18,52,145,36,112,138,37,130,138,40,143,155,45,132,175,53,130,186,56,142,161,47,124,163,48,132,165,47,114,167,47,130,
169,49,160,157,54,142,121,36,80,75,20,47,66,18,55,78,24,67,93,70,74,100,122,57,82,126,43,47,75,29,3,5,4,9,14,2,46,72,17,63,101,24,76,104,25,71,93,22,
47,76,18,72,105,26,119,140,37,134,148,40,129,145,39,114,134,35,110,128,34,93,109,29,91,109,28,107,131,36,103,124,33,82,93,23,72,78,20,68,81,21,66,88,23,85,102,27,
98,103,28,101,103,29,97,103,30,96,101,29,101,104,29,107,110,33,104,106,33,87,88,26,77,76,22,87,86,25,87,87,24,73,73,19,69,68,18,82,82,23,91,91,28,86,87,26,
72,72,19,62,62,16,60,62,16,48,49,13,26,27,7,28,26,7,50,47,13,66,65,17,64,63,17,49,49,13,39,39,10,40,40,10,46,47,11,47,48,12,47,48,12,50,50,13,
51,51,14,52,50,14,52,50,14,50,47,14,45,42,12,39,36,10,29,27,7,22,20,5,19,17,4,20,18,5,23,21,6,27,24,7,31,28,8,35,31,10,39,35,11,40,38,11,
42,40,12,42,39,12,41,38,12,39,36,14,39,36,20,38,35,21,35,32,19,32,30,18,30,28,16,24,23,14,15,16,11,7,12,12,7,14,17,8,16,20,12,17,24,14,18,26,
13,18,28,13,18,28,14,18,29,14,19,29,15,18,31,17,19,33,17,18,31,14,16,27,12,15,24,11,14,22,10,12,19,9,12,18,8,11,18,9,11,18,9,11,18,10,11,20,
10,11,21,11,11,22,10,11,21,10,11,21,11,12,22,13,13,25,18,15,32,21,17,38,22,18,39,20,16,34,20,14,29,24,13,31,28,14,35,29,15,38,28,15,38,26,14,35,
28,14,34,31,15,38,32,16,42,31,17,41,30,16,40,28,18,43,26,20,46,21,18,42,20,14,39,24,12,42,23,9,33,19,7,27,29,11,42,45,16,61,52,20,69,54,26,78,
45,31,85,43,35,92,46,35,94,43,27,86,37,23,82,47,25,88,63,25,89,69,25,87,80,29,95,88,32,103,78,30,101,48,21,81,41,14,58,66,18,66,98,31,99,108,36,113,
84,25,83,63,17,55,75,20,59,83,24,68,86,26,80,113,35,107,136,43,123,134,41,102,141,44,102,145,46,123,132,41,122,121,35,110,100,29,93,113,34,99,144,44,113,163,55,131,
170,60,141,139,45,117,117,40,88,143,53,105,117,52,102,95,52,80,149,65,96,172,82,109,161,95,95,150,86,80,146,71,90,152,74,107,147,81,89,139,98,74,145,107,95,102,63,72,
42,32,24,52,40,33,121,76,61,143,95,67,78,68,46,26,38,22,68,52,32,85,44,37,65,21,23,13,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,5,1,3,33,7,21,48,10,27,117,28,82,144,38,127,135,38,139,151,45,140,155,46,118,176,53,131,166,48,126,157,45,125,167,48,120,166,46,117,169,45,156,
157,61,149,138,77,111,87,35,60,47,13,43,62,17,53,90,58,77,104,116,68,88,129,46,54,87,30,20,15,13,26,12,15,46,63,18,60,99,23,71,101,24,77,99,24,61,93,22,
76,110,27,117,140,37,137,151,41,131,147,40,117,137,37,108,126,33,89,106,27,90,109,29,107,131,36,103,123,33,83,93,23,71,77,19,68,82,21,68,92,24,84,101,26,92,98,26,
94,98,28,96,102,29,96,102,29,104,109,32,109,113,35,97,99,31,78,79,23,79,78,22,89,89,25,84,84,23,66,66,17,67,66,18,83,82,24,88,88,27,82,83,25,71,72,19,
62,64,16,55,57,15,34,36,10,22,21,5,40,38,10,62,60,16,66,64,17,51,51,13,33,33,8,28,29,6,32,33,8,40,40,10,44,44,11,43,43,11,48,46,13,53,50,14,
52,49,14,47,44,13,38,35,10,29,27,7,21,20,5,19,18,4,20,18,5,24,21,6,29,25,8,34,30,9,37,34,10,40,37,11,41,38,11,42,40,12,42,39,12,38,36,11,
35,33,10,32,29,8,29,26,7,26,24,7,24,23,9,18,18,7,12,14,6,11,12,8,10,11,10,9,8,10,6,5,9,4,3,9,4,5,11,5,7,13,5,8,14,6,9,15,
7,12,19,8,15,22,8,16,22,8,17,22,9,17,23,13,19,28,16,20,31,17,20,32,17,20,32,16,20,32,16,19,31,15,19,30,14,17,29,13,16,26,11,14,22,10,13,19,
7,12,15,6,11,15,8,12,17,10,12,21,11,12,22,10,11,21,10,11,21,11,12,21,11,12,23,11,11,24,12,11,24,13,11,25,15,10,22,20,11,24,27,14,33,29,14,36,
22,10,27,19,8,22,26,11,30,31,14,39,32,16,42,31,16,41,28,16,38,22,14,33,16,14,33,18,16,43,24,15,49,25,13,41,19,8,28,23,9,33,39,14,54,49,17,66,
43,20,70,43,28,82,44,35,93,45,35,96,42,30,87,36,22,80,43,24,86,60,25,87,65,24,84,71,26,90,83,30,99,81,28,98,50,20,76,38,13,54,56,15,57,85,27,88,
101,32,107,83,24,83,63,16,54,59,16,46,58,16,46,76,22,69,117,36,109,131,40,115,129,39,92,142,45,104,144,45,124,132,41,123,120,34,110,97,28,92,114,35,99,148,45,113,
166,56,134,167,58,140,143,45,115,136,48,96,144,59,110,103,52,95,104,56,82,157,69,102,170,85,107,156,94,87,150,83,82,145,70,96,152,74,107,148,88,83,149,109,81,159,99,100,
104,52,59,42,30,23,69,48,41,139,88,68,130,90,63,50,48,33,31,33,19,84,56,34,101,56,38,47,15,18,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,19,4,12,43,9,26,88,21,57,145,36,119,135,38,136,147,43,145,148,44,117,162,48,118,166,49,125,154,44,123,164,47,124,165,46,111,170,46,150,162,53,155,
147,82,128,99,59,69,53,19,46,47,11,42,82,42,73,119,111,96,107,135,73,66,102,42,20,26,12,41,9,27,75,66,47,66,102,31,70,103,25,79,102,24,61,92,22,72,108,26,
114,138,36,134,150,40,124,143,39,108,132,34,107,126,33,88,106,27,88,108,28,107,131,36,103,124,33,83,93,23,70,77,19,65,80,20,68,91,24,86,102,26,91,96,26,94,97,28,
96,103,29,91,98,26,99,106,31,109,114,35,91,93,28,67,66,18,78,78,22,91,90,26,80,80,22,64,62,17,69,68,19,80,80,23,81,83,24,70,72,20,62,63,17,59,61,15,
45,47,12,21,22,6,19,19,4,44,43,11,61,60,16,52,52,14,36,36,9,28,28,6,32,32,8,36,36,8,38,38,9,39,39,10,42,40,10,46,43,12,49,46,14,45,41,12,
35,31,9,24,23,6,19,18,4,20,18,5,23,19,6,26,22,6,32,28,8,37,34,10,41,39,12,42,40,11,41,39,11,39,38,11,37,35,11,34,33,10,31,29,8,25,24,6,
22,21,5,21,21,5,20,19,5,18,18,5,16,16,4,10,9,3,6,4,2,10,5,8,13,7,15,13,5,16,13,5,16,14,7,16,15,8,16,15,8,16,13,7,16,12,7,16,
14,8,17,14,9,18,13,9,18,13,11,21,13,12,23,14,13,26,15,15,27,15,16,28,15,17,29,14,18,28,14,18,28,14,19,29,15,20,31,16,21,31,15,18,28,13,14,24,
8,12,17,3,10,9,2,10,7,4,10,9,6,11,12,8,12,17,10,12,21,11,13,23,11,12,21,9,10,18,8,7,16,7,6,15,3,4,8,2,3,3,8,5,9,18,9,20,
23,8,24,21,7,23,19,6,19,20,8,22,27,12,32,32,15,40,32,16,42,26,12,33,19,8,22,14,9,25,16,14,38,22,18,51,25,15,49,22,9,34,19,8,26,33,12,46,
47,19,66,46,25,75,43,27,82,38,31,88,35,32,91,38,26,86,36,21,78,38,21,76,56,23,82,64,24,83,62,25,84,77,28,95,82,30,99,53,21,78,37,13,56,51,14,53,
80,24,82,98,31,105,81,24,80,47,13,41,27,8,17,44,12,35,93,26,84,122,38,113,129,40,113,125,37,87,138,43,100,140,44,122,131,41,122,115,33,107,86,25,82,108,32,87,
150,46,116,166,57,134,164,56,138,140,47,112,140,56,99,143,61,111,95,53,88,115,58,84,165,73,105,167,90,103,156,94,86,149,81,84,148,69,102,152,76,101,141,93,76,163,116,97,
159,88,102,89,43,49,38,31,22,96,59,50,145,88,66,108,76,53,27,29,19,49,34,21,103,65,43,94,45,36,29,10,11,2,2,0,1,1,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,9,2,4,27,6,14,61,13,36,141,34,108,139,37,131,138,41,146,139,41,126,146,43,108,168,49,125,157,45,124,157,44,122,162,46,107,169,47,137,166,48,160,156,78,140,
121,73,95,68,25,59,39,8,37,69,26,54,130,98,107,135,140,107,88,117,64,26,38,15,32,6,19,79,62,54,81,120,69,76,122,57,79,105,30,62,91,22,66,101,24,107,133,35,
135,150,41,121,141,38,87,118,30,86,113,28,83,102,26,87,106,27,106,130,35,102,124,33,89,101,26,75,86,21,58,73,17,57,80,20,84,99,26,92,97,26,94,99,28,94,102,28,
90,97,26,96,103,29,103,108,33,82,85,26,52,51,14,71,69,19,90,90,25,84,83,23,69,66,18,75,72,21,80,80,24,75,77,22,63,65,18,49,53,13,42,47,11,30,31,8,
17,17,4,29,29,7,50,50,13,52,52,13,38,38,9,29,29,7,31,31,8,36,36,9,38,38,9,37,37,9,38,37,9,44,42,12,48,44,12,42,38,11,30,28,8,18,17,5,
16,15,4,21,19,5,26,21,6,28,23,7,31,27,8,34,31,9,38,36,11,39,38,11,39,37,11,37,34,10,33,31,9,29,28,8,27,26,7,25,25,6,24,24,6,24,24,6,
25,25,6,27,24,7,26,23,7,24,21,6,25,21,7,26,21,7,26,21,7,27,22,10,25,20,14,22,18,13,21,16,12,21,17,12,21,17,13,18,14,14,12,9,13,10,7,11,
11,7,11,11,7,12,11,8,12,11,8,17,11,9,21,12,11,22,13,11,23,14,11,24,13,12,24,12,12,22,9,12,19,9,12,20,10,14,21,11,15,23,12,17,26,14,17,27,
16,16,27,14,14,22,10,11,17,6,9,10,3,9,7,3,9,6,4,10,9,6,12,13,9,13,19,11,13,22,11,11,22,9,8,19,5,4,10,0,1,2,0,0,0,1,1,1,
8,3,8,17,6,18,23,7,23,18,6,19,11,4,13,20,7,22,28,12,33,27,12,32,22,8,24,20,5,19,16,6,21,12,10,27,10,11,35,18,12,46,20,10,37,9,6,21,
25,11,38,46,22,67,49,26,76,34,24,75,24,24,80,25,24,87,35,24,86,35,20,75,35,19,70,50,22,79,49,20,75,46,19,74,73,27,93,80,29,97,45,19,74,37,14,57,
50,13,53,65,19,71,86,27,90,76,23,72,32,9,27,10,3,8,58,16,52,104,30,95,125,38,115,121,37,103,112,32,75,131,40,98,137,43,121,131,40,121,101,29,94,64,17,55,
112,31,85,154,48,118,166,58,134,157,55,132,134,50,102,146,61,102,136,61,112,89,52,84,130,62,89,172,80,109,170,103,101,162,107,87,148,77,87,148,67,103,149,80,96,145,102,81,
170,114,107,150,75,92,78,40,38,59,44,29,125,74,56,148,93,64,77,56,40,19,18,11,79,50,32,123,69,50,94,46,33,54,35,13,9,9,2,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
3,1,1,30,6,18,54,12,33,112,26,79,143,36,123,136,40,142,132,40,137,120,36,102,155,45,123,166,48,139,155,45,130,154,45,105,160,45,117,165,44,155,164,68,153,155,89,132,
103,48,95,54,13,60,58,18,48,121,86,93,146,141,110,107,131,76,45,60,31,31,8,22,74,54,48,94,132,75,87,147,91,95,137,83,72,102,33,65,99,22,101,129,33,133,149,40,
125,144,38,90,120,30,81,111,28,73,96,23,73,91,22,100,123,33,104,125,33,89,102,26,80,91,23,60,75,19,52,73,17,79,93,24,89,95,25,93,97,27,94,101,28,88,96,26,
92,98,28,101,105,32,77,80,24,46,45,12,63,62,17,81,81,22,79,79,21,74,72,20,79,77,23,80,81,24,68,70,20,53,55,15,44,49,12,34,40,10,17,18,5,12,12,3,
37,37,9,55,55,14,44,44,11,30,30,7,30,30,7,36,36,9,37,37,9,35,35,8,35,34,9,34,33,8,38,35,10,41,38,10,34,32,9,17,16,4,3,3,1,5,5,2,
18,15,5,26,21,6,30,26,8,31,29,8,34,32,9,32,31,8,29,27,8,28,27,7,27,26,7,26,25,6,25,24,6,25,24,6,26,25,6,28,26,7,29,27,8,31,29,8,
32,30,9,32,31,10,33,30,11,31,29,12,31,29,13,31,29,14,30,28,16,29,26,17,25,24,18,22,21,17,20,20,17,22,22,18,24,23,22,21,20,24,17,17,23,14,14,19,
15,14,20,15,16,22,14,16,22,14,15,22,14,16,22,13,15,21,12,14,21,12,12,20,11,11,19,11,10,19,9,10,18,8,9,17,9,9,17,8,10,17,9,11,18,11,12,19,
17,14,25,22,17,29,21,15,28,18,12,24,14,10,20,9,10,15,5,9,9,1,8,6,2,9,6,5,11,10,7,12,15,10,12,21,10,10,20,3,5,8,0,1,1,0,0,0,
0,0,0,2,0,1,9,3,8,13,4,13,3,1,5,3,2,9,12,5,19,21,7,24,25,8,26,23,8,23,20,6,20,15,4,15,5,2,6,4,5,19,10,10,41,10,11,44,
6,6,27,17,7,29,42,18,59,47,24,74,29,21,70,19,20,74,23,23,85,34,24,87,34,20,75,27,17,67,42,20,72,41,18,66,43,17,67,68,23,83,66,24,84,38,18,68,
36,14,57,42,11,46,57,16,55,86,26,83,76,23,71,27,8,26,15,5,18,65,18,61,107,31,98,123,37,114,106,31,88,99,28,63,130,39,98,136,42,120,128,39,119,88,25,82,
68,17,56,120,34,91,150,47,111,159,54,123,148,53,121,131,51,95,148,63,106,123,58,105,98,55,82,154,70,99,176,91,111,175,118,99,165,105,85,148,68,93,150,69,106,148,87,85,
155,112,88,180,110,113,147,69,80,83,54,35,88,68,38,158,103,65,137,91,62,42,34,27,34,24,16,122,68,50,140,72,55,98,55,34,36,27,8,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
12,3,7,34,8,19,83,19,54,147,36,116,136,38,134,137,41,145,116,34,111,136,39,109,167,49,144,171,48,154,161,59,131,152,55,103,153,40,137,155,53,147,165,88,143,138,78,125,
89,46,100,56,18,55,103,64,74,155,150,115,130,153,91,66,86,44,44,20,36,86,60,72,99,130,83,93,156,90,97,144,90,77,111,49,61,96,22,92,122,30,129,147,39,128,145,39,
97,125,32,86,119,30,86,115,29,75,95,23,89,109,27,99,121,32,90,103,26,79,91,23,60,75,18,51,73,17,79,94,23,89,94,25,89,94,25,91,99,27,88,96,26,88,95,27,
91,97,28,75,81,24,51,54,15,65,64,18,79,79,21,71,71,18,66,63,18,71,70,20,74,75,23,63,65,19,50,52,14,42,48,11,28,32,8,13,13,4,18,18,4,35,35,9,
42,42,10,29,29,7,21,21,5,31,31,8,40,39,10,35,35,9,25,24,6,27,25,7,33,31,8,31,29,8,22,21,5,13,12,3,4,4,1,0,0,0,0,0,0,3,3,1,
21,19,5,33,31,9,35,33,9,29,28,7,25,24,6,23,23,6,23,22,6,24,24,6,26,26,7,29,27,7,29,28,8,30,28,8,31,30,9,32,31,10,33,31,13,32,30,14,
32,30,16,31,29,16,30,28,16,28,26,15,27,25,14,24,23,14,20,21,16,15,17,15,12,14,13,9,12,12,8,11,11,10,13,11,12,14,15,14,14,19,14,13,19,13,13,19,