0
0
2
2
2
4
4
4
4
4
4
4
4
4
4
4
4
4
4
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
12
12
15
18
18
27
47
47
47
48
48
48
49
49
49
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
57
57
57
57
58
58
58
58
58
58
58
58
59
59
59
61
61
61
61
61
61
63
63
63
65
65
65
67
67
67
70
70
70
70
70
70
71
71
71
71
71
76
85
85
85
85
85
85
85
95
97
103
133
144
144
144
144
144
144
144
144
144
144
145
145
145
145
145
145
145
145
145
145
145
148
151
151
151
151
151
151
151
151
151
151
151
151
151
151
154
154
154
154
154
154
154
154
154
154
154
154
154
154
157
157
165
165
178
184
193
198
200
204
205
205
205
205
207
208
208
208
208
210
211
212
213
216
218
220
220
220
222
222
222
222
225
225
228
228
228
231
232
233
234
234
237
240
240
240
244
244
244
246
248
250
254
259
264
272
278
280
291
304
311
325
343
370
397
434
434
434
435
435
435
438
438
438
439
439
439
443
443
443
443
443
443
444
444
444
444
444
444
447
447
449
449
449
449
452
452
455
455
456
459
462
463
465
469
473
478
481
481
484
486
486
489
489
489
490
490
491
494
499
501
505
509
509
509
512
512
512
512
512
515
515
516
520
524
525
529
533
533
533
536
536
536
536
539
542
545
546
547
550
553
556
559
559
562
565
567
567
567
567
567
569
570
572
574
574
574
577
579
582
586
590
590
600
611
614
627
633
647
657
669
682
694
694
694
702
708
722
737
737
737
737
737
749
762
762
768
768
768
768
778
804
831
845
878
910
910
910
910
910
910
910
910
912
915
920
920
920
920
920
921
923
923
923
923
924
929
934
934
935
935
935
935
937
937
937
937
937
937
942
947
952
952
955
955
955
955
959
959
959
959
959
959
962
966
976
976
991
991
1006
1021
1036
1041
1046
1051
