0
0
0
0
0
0
1
1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
17
18
18
20
22
25
29
31
33
36
41
46
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
48
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
52
53
53
53
54
54
54
55
56
56
56
56
57
57
58
58
58
58
60
60
63
63
63
63
63
63
63
68
68
68
68
73
73
75
75
79
83
85
88
90
93
93
93
98
101
101
115
126
133
139
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
149
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
151
151
151
151
151
151
151
151
152
153
153
153
153
153
153
153
153
153
153
153
154
154
154
155
156
156
156
157
158
158
158
158
159
160
161
161
161
162
163
168
168
168
170
172
175
180
183
188
193
198
203
208
208
209
210
211
212
213
214
215
216
217
218
218
218
218
218
218
219
219
219
220
221
222
223
224
225
226
227
228
229
230
231
232
234
237
238
238
241
243
246
250
254
257
263
273
282
293
293
293
293
293
293
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
294
295
296
296
296
296
296
296
297
297
297
297
297
297
297
297
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
299
299
299
299
299
299
300
301
301
301
302
302
303
304
305
305
305
305
306
306
307
307
307
307
309
309
312
312
312
312
312
312
312
317
317
317
317
322
322
324
324
328
332
334
337
340
343
343
343
348
353
353
367
381
390
398
408
408
408
408
408
408
408
408
408
408
408
409
409
409
409
409
409
409
409
409
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
411
411
411
411
411
411
411
411
412
413
413
413
413
413
413
413
413
413
413
413
414
414
414
415
416
416
416
417
418
418
418
418
419
420
421
421
421
422
423
428
428
428
430
432
435
440
443
448
453
458
463
468
468
469
470
471
472
473
474
475
476
477
478
478
479
480
480
480
481
481
481
482
483
484
485
486
487
488
489
490
491
492
493
494
496
499
500
500
503
505
508
512
516
519
526
536
545
556
556
556
556
557
557
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
558
559
559
560
561
562
562
562
563
563
563
564
564
564
564
564
564
564
564
565
565
565
565
565
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
567
567
567
567
568
569
570
571
571
572
573
573
574
575
576
576
576
576
577
577
578
578
578
578
580
581
584
584
584
584
584
584
584
589
589
589
589
594
594
596
598
602
607
609
613
617
620
620
621
626
631
631
645
659
670
678
688
688
688
688
688
688
688
688
688
688
688
689
689
689
689
689
689
689
689
689
690
690
690
690
690
690
690
690
690
690
690
690
690
690
690
690
690
690
690
690
691
691
691
691
691
691
691
691
692
693
693
693
693
693
693
693
693
693
693
693
694
694
694
695
696
696
696
697
698
698
698
698
699
700
701
701
701
702
703
708
708
708
710
712
715
720
723
728
733
738
743
748
748
749
750
751
752
753
754
755
756
757
758
758
759
760
760
760
761
761
761
762
763
764
765
766
767
768
769
770
771
772
773
775
777
781
784
784
787
789
792
796
800
806
816
827
836
847
847
847
848
849
849
850
850
850
850
851
851
851
851
851
851
851
851
852
852
852
852
852
852
852
852
853
853
853
853
853
854
855
856
857
858
859
860
861
862
863
864
865
865
865
865
865
865
865
866
866
866
866
866
867
867
867
867
867
867
867
867
867
867
867
867
867
867
868
868
869
869
869
870
871
872
873
874
874
875
876
876
877
878
879
879
880
880
881
881
882
882
882
885
890
892
897
897
897
900
900
900
900
905
905
908
911
916
921
924
928
933
937
940
945
949
952
955
960
965
970
979
993
1005
1014
1023
1033
1033
1033
1033
1033
1033
1033
1033
1033
1034
1035
1036
1037
1038
1038
1038
1038
1038
1038
1038
1039
1039
1039
1039
1040
1041
1041
1041
1042
1042
1042
1042
1043
1043
1043
1043
1043
1043
1043
1043
1044
1044
1044
1044
1045
1046
1046
1046
1047
1048
1048
1048
1049
1049
1050
1051
1052
1053
1053
1054
1055
1056
1056
1057
1058
1059
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1068
1069
1070
1075
1080
1085
1088
1091
1096
1101
1106
1111
1116
1121
1126
1131
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
