320
319
318
317
316
315
313
311
309
308
307
306
305
305
305
305
305
305
305
305
305
306
306
307
307
307
312
314
313
312
311
311
311
312
312
311
311
313
315
308
298
301
304
307
307
306
306
305
305
302
298
295
290
291
292
293
293
293
292
284
286
288
287
288
293
296
295
294
293
292
291
292
291
289
288
287
285
282
281
281
281
282
283
285
288
289
289
283
280
291
286
286
287
289
290
292
280
278
277
280
284
288
296
306
309
300
292
300
305
302
296
291
286
281
278
280
289
291
291
293
296
297
299
298
293
285
282
278
267
265
263
262
260
257
257
257
258
259
259
263
264
271
280
289
295
301
304
306
310
313
317
329
332
332
332
334
337
341
345
350
355
359
424
441
450
458
461
473
492
503
512
522
530
538
548
553
563
565
565
565
566
564
560
561
563
564
567
568
568
569
570
571
573
579
582
585
589
589
594
616
618
620
623
627
630
634
637
639
640
642
654
655
656
657
657
657
656
655
665
669
679
680
679
677
675
675
675
675
675
675
676
677
679
680
682
686
687
689
690
694
697
699
703
707
722
724
726
727
728
729
729
732
734
740
741
742
743
747
749
752
756
778
781
783
785
786
790
792
792
792
791
791
790
790
790
790
790
790
791
792
793
793
794
794
794
794
795
795
795
798
802
803
805
807
806
802
801
799
798
796
791
789
789
793
792
792
792
792
792
791
793
795
796
797
798
801
803
812
817
824
830
834
834
833
830
827
824
821
818
852
859
864
876
876
875
870
870
872
871
870
870
871
881
885
885
885
885
888
891
893
894
894
894
894
892
889
890
890
890
890
894
900
912
913
915
917
918
920
921
926
928
929
931
940
967
980
984
985
985
985
988
1001
1014
1014
1014
1015
1018
1020
1025
1027
1024
1022
1019
1014
1009
1008
1006
975
975
975
975
975
975
975
976
977
978
979
977
977
977
978
979
981
982
984
988
989
990
1018
1023
1033
1037
1038
1037
1044
1044
1042
1036
1037
1039
1041
1043
1053
1054
1053
1050
1048
1046
1035
1035
1035
1035
1035
1035
1035
1035
1035
1033
1032
1031
1029
1028
1028
1024
1024
1023
1023
1023
1023
1023
1023
1023
1010
1009
995
988
979
969
966
966
959
951
947
918
917
916
916
912
909
907
903
901
901
901
901
901
901
900
899
899
899
897
896
896
877
876
879
880
881
880
879
878
877
877
876
875
875
875
877
879
880
880
880
880
880
880
880
879
879
878
877
878
878
879
879
878
877
875
874
874
873
873
874
875
879
879
879
879
880
880
880
880
879
878
878
894
898
906
908
913
917
918
918
918
918
918
920
921
925
926
929
934
938
941
947
948
948
946
946
945
944
944
944
945
946
948
948
949
950
951
956
955
955
954
953
953
953
953
953
952
952
952
951
950
950
949
948
947
946
945
943
943
943
943
943
942
941
940
937
931
926
925
923
920
919
918
914
913
913
906
906
906
906
906
905
905
904
901
901
901
901
901
902
903
903
904
905
906
907
910
892
886
883
878
869
863
861
858
855
850
853
858
859
861
863
865
868
865
864
865
865
865
864
862
853
853
853
854
854
855
858
872
870
876
884
887
888
889
890
891
891
894
891
890
887
885
881
880
879
879
880
880
882
882
882
880
883
884
885
885
885
882
880
879
879
878
878
878
877
880
882
887
893
909
912
914
915
915
916
916
916
917
915
912
908
904
901
894
898
900
903
910
914
921
922
921
920
932
930
922
916
915
914
909
901
900
899
898
889
886
879
868
858
854
848
847
847
847
846
846
846
839
835
830
825
822
818
814
813
813
813
812
812
812
811
810
809
808
807
805
799
781
773
770
769
768
768
765
764
762
761
761
761
760
758
756
756
754
753
752
751
751
749
746
745
743
739
737
734
731
726
723
718
717
715
714
714
713
711
708
703
696
691
689
688
687
675
672
670
666
664
664
663
661
657
653
647
645
640
638
635
627
623
615
615
615
608
606
599
595
594
590
580
576
576
572
572
572
572
571
571
574
575
575
575
575
575
575
576
575
574
571
571
571
571
571
570
569
568
568
568
568
569
570
570
571
571
571
571
571
570
569
568
567
567
566
567
567
566
566
566
566
567
568
568
569
570
570
571
571
571
571
571
571
570
569
569
571
572
573
573
567
565
569
577
576
575
571
570
568
564
565
567
568
570
575
579
578
577
573
573
572
571
570
570
569
571
575
577
580
581
579
575
575
577
576
572
572
573
577
577
577
577
576
576
575
569
569
568
568
569
569
570
571
577
576
576
576
574
574
573
570
570
570
570
570
570
571
571
570
569
569
573
574
576
576
576
576
568
568
568
569
573
575
575
575
575
575
575
573
570
570
570
570
570
570
570
570
570
570
570
571
574
574
575
576
576
576
573
570
567
567
566
565
565
566
566
568
571
571
572
572
572
573
574
575
575
575
573
572
569
567
561
561
562
564
566
570
572
573
576
577
576
576
575
575
575
574
574
576
578
580
580
582
583
584
583
581
572
570
568
568
568
568
568
568
568
568
568
568
568
567
567
566
565
567
568
569
570
570
568
564
560
558
558
564
565
567
568
569
570
571
572
570
570
569
569
568
562
559
558
558
559
560
561
562
564
566
570
571
574
576
580
580
579
578
576
574
572
571
565
565
565
565
565
566
566
565
565
563
562
563
566
567
568
569
568
567
565
565
556
561
566
567
568
569
570
572
575
581
582
577
574
570
564
560
557
555
557
559
564
565
566
567
568
576
577
577
577
577
577
577
578
579
580
582
583
586
584
583
580
578
576
571
569
566
565
565
565
565
565
565
565
566
566
566
566
570
574
575
576
587
591
594
597
596
595
594
593
592
589
588
588
591
591
591
591
591
591
591
591
591
590
589
588
588
588
588
588
588
604
614
624
635
693
698
693
679
668
695
697
698
694
691
689
686
684
682
679
681
685
692
695
698
704
705
705
705
705
707
711
715
723
730
729
728
728
727
726
724
722
718
696
691
685
682
680
677
674
672
669
669
670
668
664
662
660
661
662
663
666
662
657
656
656
656
656
656
656
659
661
665
662
670
670
670
669
671
678
686
686
676
676
672
670
667
663
663
669
680
676
680
679
678
664
651
651
651
651
651
651
659
651
652
656
660
650
652
675
681
669
656
655
660
666
659
635
634
630
621
621
619
618
618
617
616
615
614
615
617
619
621
622
626
628
632
630
628
626
623
621
620
617
617
618
618
617
590
577
579
581
580
584
585
589
587
580
575
568
565
562
561
561
560
560
560
574
575
577
565
557
549
544
523
514
504
503
498
499
501
508
518
525
532
535
540
541
541
541
536
524
517
513
519
520
523
527
529
531
532
530
522
515
491
484
482
478
485
499
511
515
521
525
514
507
502
485
482
471
470
463
461
462
463
467
471
474
476
470
453
446
431
421
420
419
416
415
414
411
408
405
405
404
404
404
407
408
409
410
411
417
425
432
437
440
441
439
426
414
412
411
410
412
417
422
423
422
419
418
432
436
438
418
413
394
385
385
385
382
379
376
368
362
359
367
370
374
374
375
376
377
375
372
369
366
363
356
356
356
357
360
362
366
365
362
360
361
361
342
335
326
326
329
331
335
335
325
326
337
340
340
340
340
339
339
338
336
335
328
317
324
328
334
335
333
332
330
328
327
325
324
322
321
316
313
311
310
307
302
290
288
285
290
300
309
303
299
296
310
313
310
303
292
291
289
288
289
292
292
297
299
300
302
302
300
271
268
265
259
263
267
271
263
260
252
241
236
231
231
222
219
211
208
208
208
208
208
208
208
208
207
206
203
204
204
204
204
204
203
203
203
203
203
203
203
203
202
201
200
198
198
205
216
213
203
209
215
204
202
207
209
212
219
226
172
169
161
151
150
150
148
147
146
139
123
121
118
104
98
91
82
82
81
80
78
77
74
72
72
71
61
61
61
57
55
53
54
57
59
45
45
44
43
41
38
38
38
37
37
37
36
36
34
34
33
32
31
30
29
28
27
27
27
18
18
18
18
16
14
14
12
12
12
12
12
12
12
12
13
14
15
16
16
14
11
10
7
7
7
6
6
6
7
8
8
8
6
3
3
2
0
0
0
0
0
0
0
0
0
0
0
2
12
23
29
40
94
147
177
185
194
199
211
223
233
237
241
240
237
181
162
148
64
69
68
68
66
62
57
57
51
50
48
42
40
39
37
37
39
39
39
38
37
37
37
37
37
38
39
38
38
38
38
38
39
40
41
42
42
42
42
43
43
41
39
38
38
38
38
38
39
39
38
38
37
37
37
37
38
38
39
41
41
42
42
42
41
40
40
38
38
38
38
38
38
38
38
39
39
39
40
40
41
41
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
45
45
48
52
53
54
56
58
55
55
54
53
52
52
52
52
52
52
53
54
55
57
58
61
62
64
64
66
69
75
80
81
82
82
87
89
90
94
101
107
114
120
134
140
140
141
142
142
139
139
139
140
141
148
154
157
163
167
170
167
166
164
159
159
159
158
149
139
126
128
131
133
135
137
140
143
145
146
147
148
145
139
136
133
135
139
140
138
147
156
159
165
170
178
181
182
176
174
177
179
182
180
177
175
170
171
193
203
204
194
194
197
203
204
203
197
195
190
166
161
166
188
192
199
201
197
191
190
195
197
198
199
200
201
202
209
211
216
188
202
224
218
240
245
217
190
165
155
148
146
142
131
127
123
119
119
117
113
112
110
110
110
111
110
111
113
114
113
112
109
111
114
113
111
111
111
111
111
112
113
121
123
130
131
133
134
141
143
143
143
143
143
143
141
140
124
116
115
115
115
115
115
115
115
114
113
118
123
128
124
120
113
111
111
111
111
111
111
111
111
111
112
112
112
112
113
113
113
113
113
113
113
113
113
115
119
119
119
119
119
118
118
117
117
116
116
108
105
102
100
98
96
95
94
91
91
91
91
91
91
91
90
90
90
90
90
90
90
90
90
95
96
96
97
98
96
95
94
94
93
91
90
88
88
88
90
92
93
93
93
91
88
87
86
85
85
85
85
84
84
84
83
86
93
94
95
96
105
109
115
114
113
111
107
106
94
93
88
88
86
84
82
80
73
71
68
66
64
62
59
58
58
58
58
58
58
54
54
54
54
54
53
53
53
52
48
44
45
46
47
48
50
50
51
57
61
58
55
47
47
47
48
48
48
50
50
50
50
45
45
44
48
51
50
49
48
44
44
44
41
36
34
33
33
31
23
22
22
23
30
35
37
42
42
41
41
41
42
42
40
38
28
24
22
20
19
17
15
14
12
10
7
6
6
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
8
9
12
16
17
19
26
33
34
36
43
46
48
52
55
56
56
56
56
57
56
55
55
54
51
51
49
46
45
44
43
43
41
40
39
39
37
37
32
31
30
29
29
28
25
23
22
21
20
20
20
20
20
20
20
21
21
21
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
21
20
19
19
19
19
19
19
19
22
26
30
33
34
34
33
33
33
33
33
31
30
28
27
27
27
27
27
27
27
25
22
19
18
18
17
17
17
17
17
17
16
14
13
13
13
13
14
15
15
15
15
15
15
16
15
14
14
14
14
15
15
15
13
12
12
11
10
10
10
12
14
16
17
14
11
10
9
9
8
7
7
6
6
4
4
3
3
3
3
3
3
3
3
3
3
4
4
4
5
5
5
4
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
4
4
4
5
6
6
6
10
12
13
13
13
12
12
12
10
9
6
5
6
6
6
6
7
7
8
10
10
10
10
10
10
10
10
10
11
12
13
13
14
14
13
16
18
19
19
19
18
18
22
22
23
23
23
23
23
23
23
23
22
22
22
21