3
3
3
5
5
5
5
6
6
6
6
6
6
6
5
5
5
5
5
5
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
7
6
2
2
3
6
7
8
9
9
10
10
10
10
9
7
6
6
5
4
4
3
3
3
3
3
3
3
3
2
1
0
2
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
2
1
1
1
1
1
1
1
1
2
2
2
2
1
2
2
3
8
8
11
13
15
15
16
16
17
17
17
17
19
21
24
25
25
25
26
26
27
28
28
29
29
28
28
26
26
26
26
26
27
27
27
27
27
27
29
29
30
31
31
32
34
34
35
35
35
37
38
40
38
38
38
38
38
39
40
43
43
47
56
58
59
69
71
73
75
76
77
80
80
82
88
88
88
88
88
88
88
87
86
86
85
85
85
84
84
84
84
84
79
78
76
75
74
71
70
65
65
67
67
70
75
74
72
72
72
72
72
69
69
69
69
69
69
69
70
70
70
73
73
73
74
74
74
74
74
75
75
75
75
76
76
78
81
84
84
85
85
90
92
93
94
95
97
98
100
104
108
112
119
121
126
129
130
130
129
129
129
129
130
130
129
130
131
131
131
130
132
132
131
126
123
118
117
117
115
111
111
111
111
111
111
111
111
114
116
120
120
120
121
122
122
122
121
121
120
119
118
114
113
113
112
111
106
109
111
112
113
114
117
117
118
119
119
119
119
120
121
121
121
122
122
123
124
124
125
125
126
126
127
129
130
130
131
133
134
134
134
137
137
137
137
137
137
137
138
153
160
164
165
169
172
176
179
182
182
183
186
188
189
191
193
193
192
191
191
190
190
190
190
190
190
188
187
187
185
184
183
182
179
178
178
178
180
180
182
187
192
193
195
196
196
194
192
191
193
195
198
200
201
201
201
202
202
202
202
204
217
228
230
232
234
237
237
234
228
224
219
214
222
226
235
248
252
253
258
258
259
259
259
259
257
256
255
255
255
255
255
256
257
259
263
265
266
260
259
267
270
288
290
300
303
304
304
304
304
309
310
311
313
317
321
323
324
325
337
339
347
348
352
354
355
357
358
364
366
368
371
370
370
370
366
365
365
366
371
373
379
380
383
392
394
397
400
401
401
402
402
402
403
403
403
403
402
399
397
397
397
402
403
405
406
407
407
411
411
411
411
411
411
411
413
415
415
416
416
417
417
419
422
424
429
430
431
439
453
454
455
465
466
467
469
474
481
481
493
495
492
480
471
471
465
466
468
469
470
470
471
467
465
465
465
465
483
489
494
500
510
518
525
535
539
533
445
431
427
420
423
435
440
448
469
491
491
490
489
489
489
488
487
487
487
487
490
490
490
490
491
492
493
502
502
501
500
496
492
491
491
492
492
493
493
493
493
498
498
499
500
506
506
504
503
502
502
501
501
508
518
520
522
523
532
536
538
542
542
545
546
547
547
547
547
547
551
553
555
557
567
590
592
592
592
592
593
593
593
593
595
595
595
595
592
590
589
570
570
571
578
580
578
575
572
571
571
570
570
567
566
564
563
560
559
560
562
565
571
576
578
584
585
587
588
590
591
595
596
597
608
616
620
630
631
632
633
633
636
637
638
640
646
650
655
657
658
662
663
663
662
661
660
659
657
656
654
649
647
645
644
643
641
640
640
641
644
645
645
649
658
660
663
666
673
680
680
680
681
681
677
671
661
660
657
656
654
652
651
650
649
649
649
649
649
650
651
652
637
634
632
631
632
634
637
638
645
646
647
647
646
643
641
640
636
636
635
634
631
621
620
619
619
618
617
617
617
617
617
617
617
617
618
621
622
622
622
621
619
619
620
623
624
625
627
628
629
627
628
628
629
633
632
632
629
627
625
624
616
614
607
606
606
605
604
588
587
588
589
590
591
592
593
595
595
596
597
600
601
605
606
606
604
604
602
591
584
553
545
546
546
550
550
551
551
550
548
543
539
537
533
533
531
531
531
531
532
532
534
536
536
537
530
520
523
533
538
555
550
546
544
540
544
549
553
556
558
559
571
581
583
584
589
591
594
596
593
592
591
591
585
579
575
567
562
557
555
553
551
549
548
547
544
540
538
536
534
531
522
519
516
519
521
523
528
536
533
531
529
526
524
523
510
511
515
525
530
539
543
545
546
548
551
553
554
556
554
544
543
542
542
542
542
542
542
542
542
542
543
543
543
543
543
543
549
569
572
577
580
591
593
596
601
601
602
603
603
602
601
599
597
590
601
604
607
611
689
688
687
686
686
686
688
687
735
742
740
739
735
727
716
707
695
695
695
693
677
657
650
643
640
638
636
636
635
632
625
625
621
622
624
628
629
631
632
640
642
644
645
648
650
652
653
654
657
658
659
662
663
663
665
666
668
668
669
671
673
675
682
684
685
685
689
690
692
694
705
706
707
712
713
714
725
733
751
754
756
767
768
768
768
768
772
774
775
776
784
785
785
785
785
785
780
779
778
776
775
774
777
787
797
816
823
829
835
859
865
870
875
881
887
894
874
864
850
849
848
848
848
843
841
832
829
833
836
838
863
866
869
871
873
873
874
874
874
870
873
896
891
890
879
879
879
896
901
918
933
932
926
931
936
941
946
954
812
813
813
815
815
822
814
805
805
791
791
789
789
788
792
798
807
812
816
826
827
830
828
818
814
810
812
818
822
829
829
829
829
828
828
828
828
821
818
816
814
812
808
806
804
802
800
792
790
789
787
785
775
773
770
765
741
738
737
734
731
724
723
721
719
718
709
691
689
688
686
685
685
685
685
685
695
698
700
705
711
715
720
724
730
730
730
729
708
704
700
700
700
700
700
700
700
699
697
696
694
679
679
679
679
678
678
678
678
677
677
676
675
675
674
673
668
666
651
646
641
635
621
619
606
603
582
582
584
607
608
623
630
623
622
608
602
566
562
561
559
551
553
556
554
552
550
548
546
536
532
527
533
535
536
538
541
544
559
562
564
566
564
562
558
556
560
561
568
571
533
530
528
516
515
515
512
510
508
505
503
486
483
480
474
471
467
473
476
478
480
481
484
485
487
488
476
474
472
470
465
439
427
424
427
430
439
443
435
432
430
426
423
410
406
398
393
391
390
393
396
399
402
404
411
411
402
399
393
391
385
383
385
387
389
387
385
381
378
377
378
380
383
386
401
410
416
421
424
424
423
422
420
406
400
399
398
385
380
349
347
348
321
319
319
320
324
324
324
324
323
320
319
316
314
303
291
289
288
287
282
282
280
279
279
278
276
272
269
267
265
259
256
254
252
252
252
252
252
253
253
253
253
253
253
251
250
248
246
237
236
234
232
230
229
229
228
228
227
223
222
219
219
217
220
224
225
220
217
213
205
201
197
195
192
188
187
185
173
170
164
161
159
154
151
151
151
151
150
150
150
150
150
148
148
145
145
144
143
127
124
121
116
111
111
111
111
111
111
110
110
109
107
108
110
112
119
120
112
110
107
105
103
101
99
95
96
96
96
96
95
94
92
90
89
78
74
73
71
69
67
65
61
51
49
47
47
47
48
48
49
49
49
49
52
52
53
54
54
54
55
50
49
48
46
46
46
44
43
38
37
36
36
35
25
22
21
16
16
15
14
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
17
19
20
23
23
24
25
25
26
26
26
26
27
29
31
32
32
32
32
32
32
32
29
30
30
30
30
30
30
31
31
35
36
36
36
37
39
39
39
40
40
40
40
42
42
42
42
43
45
47
49
53
56
58
58
59
69
71
72
72
72
73
73
74
74
75
76
76
76
79
80
81
81
83
84
85
86
87
91
92
93
97
98
100
104
106
107
110
110
120
124
124
123
123
122
121
120
120
119
119
117
116
115
114
105
98
100
100
105
109
109
109
111
119
128
130
137
146
148
150
154
156
156
160
164
174
177
181
180
175
165
165
166
175
188
190
197
200
200
209
216
218
220
228
222
210
208
206
197
194
192
188
190
196
198
199
200
201
204
213
219
222
221
221
222
223
223
227
227
228
231
233
238
243
252
250
249
248
247
247
236
238
239
239
240
242
243
243
243
243
242
242
242
241
239
236
238
243
246
247
248
248
248
248
247
246
244
248
259
277
289
301
324
343
351
361
364
353
346
344
342
340
338
331
324
325
325
326
329
335
333
332
331
329
325
321
322
323
324
330
335
332
331
330
328
325
324
325
326
327
330
334
339
341
343
345
345
345
346
346
348
349
350
352
352
352
352
354
360
379
385
392
386
385
384
383
381
370
372
374
376
377
378
381
383
392
395
398
401
404
404
404
404
404
404
404
404
404
404
404
405
405
405
405
406
406
407
407
411
412
412
413
414
415
422
424
424
426
434
437
438
439
441
446
450
451
453
455
461
464
464
461
459
458
457
456
454
452
453
453
453
453
453
454
454
454
454
454
463
464
464
464
467
469
471
472
472
472
472
472
469
470
471
472
473
478
479
480
480
482
483
487
489
504
500
495
492
492
490
490
490
490
488
486
486
485
485
484
480
478
476
475
475
475
477
478
478
478
483
483
477
475
474
473
468
465
462
462
463
464
464
465
469
471
474
472
470
468
466
456
451
443
442
442
441
439
439
439
439
439
439
439
439
439
439
438
437
430
429
428
428
427
420
420
419
419
415
415
415
415
415
415
415
414
412
412
411
410
406
394
393
393
393
393
393
393
393
392
390
389
389
389
388
388
388
388
388
382
380
373
373
373
373
372
372
372
372
372
372
373
373
373
373
367
363
359
355
352
348
345
342
338
337
336
335
334
333
332
332
332
329
329
329
329
329
329
328
328
328
326
325
325
328
330
328
328
327
326
330
331
325
319
305
304
301
294
297
297
297
298
294
291
289
288
287
285
283
273
271
271
270
270
270
269
269
268
268
267
266
263
263
261
257
255
255
254
253
253
250
249
249
248
248
248
247
247
244
232
231
230
229
229
227
225
223
202
202
200
195
193
189
186
179
179
177
172
170
170
170
170
170
170
170
170
171
174
181
181
181
183
184
187
189
189
192
199
201
209
213
215
217
217
217
218
206
200
190
188
188
185
184
160
160
157
127
127
127
127
127
127
127
127
127
127
127
128
128
128
128
129
129
128
131
136
141
140
134
136
136
131
125
125
127
125
125
127
128
129
130
132
132
132
132
132
128
127
126
126
126
129
132
132
132
131
131
131
131
131
131
131
131
131
131
131
131
131
130
128
128
128
128
128
129
129
128
128
128
129
130
130
130
130
130
130
130
129
128
128
127
125
125
123
123
123
123
123
123
124
124
123
121
121
121
123
123
123
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
123
124
124
124
124
124
125
126
126
127
127
126
126
125
126
126
126
126
125
125
124
124
124
124
124
124
123
122
122
122
121
120
120
120
118
116
115
115
115
112
111
112
112
112
112
112
114
116
117
116
108
108
107
107
106
104
104
102
102
102
102
102
102
102
102
102
102
100
100
101
97
96
96
96
95
94
93
94
94
94
94
94
92
91
90
90
90
90
90
90
90
91
91
88
90
90
90
90
90
88
86
84
84
84
87
87
89
86
86
86
86
86
86
88
86
88
88
88
88
88
89
87
85
81
81
82
80
80
78
75
74
73
71
68
68
69
63
63
64
64
64
64
65
65
66
67
68
68
68
69
69
69
67
65
63
62
59
57
56
55
55
54
50
50
47
47
47
46
45
44
44
44
46
44
42
39
38
38
38
37
35
35
34
34
34
34
34
31
30
27
26
26
24
22
22
20
20
20
21
22
23
23
23
17
17
17
17
17
17
20
23
24
24
25
29
32
34
37
41
44
47
51
51
53
56
61
63
62
60
60
61
62
61
58
57
56
55
54
53
53
50
45
41
37
29
27
15
14
15
15
15
15
17
18
16
16
14
14
8
8
4
4
1
1
1
1
1
1
1
2
2
2
2
1
1
1
2
1
1
1
1
1
1
1
1
2
1
1
0
0
1
1
1
1
6
7
8
21
21
21
21
19
19
19
17
10
9
7
7
6
5
4
5
6
7
7
7
7
5
12
10
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
5
3
2
1
3
5
5
7
7
6
5
5
4
3
3
3
3
3
3
3
3
5
5
5
7
7
4
4
5
5
5
6
6
6
6
6
10
10
7
4
4
4
4
3
3
3
3
2
2
2
2
2
2
1