50
47
47
47
49
49
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
57
58
57
55
53
53
53
53
53
54
58
60
60
61
61
62
62
62
63
64
64
64
64
64
66
65
63
62
62
62
62
62
62
64
61
61
61
61
61
61
61
61
62
65
66
66
65
64
65
65
66
66
66
66
66
66
66
64
63
65
65
65
64
64
64
64
64
64
64
68
69
70
70
70
70
70
70
71
71
71
72
73
73
73
73
73
73
73
73
74
75
76
76
76
76
77
77
75
75
75
75
75
75
75
76
77
77
78
79
79
79
79
78
78
79
80
83
85
85
85
85
85
85
85
85
85
85
85
86
87
87
88
91
92
94
95
96
97
100
101
101
101
101
102
102
102
102
103
104
104
104
104
105
107
107
109
109
110
111
111
111
116
116
120
120
121
121
121
121
122
122
122
123
123
123
127
128
128
128
128
128
128
128
128
128
128
128
128
128
130
134
134
136
136
136
136
138
141
141
141
141
141
141
141
141
141
141
145
146
146
148
148
149
149
149
150
151
151
153
153
153
154
155
156
157
159
160
161
161
161
161
164
164
165
165
166
166
166
166
167
169
170
170
171
171
172
172
176
177
177
178
178
178
179
180
180
180
181
182
183
184
186
187
191
193
193
193
193
196
198
200
200
199
200
201
201
203
200
198
196
195
195
195
195
195
196
201
204
207
217
224
229
235
230
226
223
200
200
199
196
197
200
202
204
206
208
210
211
211
212
212
213
213
213
213
213
213
212
212
212
212
212
213
213
213
213
213
213
214
215
216
217
217
217
218
222
225
226
227
227
227
227
227
228
228
228
228
229
227
224
223
223
224
225
229
230
230
231
231
232
232
233
232
232
232
229
224
224
224
224
224
224
224
224
229
231
231
232
234
233
232
231
230
231
233
234
234
235
236
237
238
239
239
239
244
246
249
252
254
264
266
268
271
270
268
267
264
262
262
265
269
272
277
283
284
280
275
275
275
274
270
266
269
269
268
273
275
273
271
276
278
279
281
284
284
284
284
285
286
287
287
287
288
289
291
294
298
301
303
305
304
303
302
302
303
303
303
306
307
309
310
309
308
307
313
307
308
313
316
318
319
323
323
324
324
325
325
326
327
327
331
330
329
328
332
336
344
346
347
350
351
353
355
356
359
359
362
363
364
364
365
366
367
369
370
371
374
375
376
377
379
381
385
390
394
398
400
403
404
406
405
405
404
403
403
402
402
402
404
407
409
411
413
418
418
419
420
422
424
425
426
428
430
434
438
441
442
448
447
447
447
446
444
443
442
440
437
437
437
436
436
436
434
433
433
432
432
431
430
429
429
427
425
425
421
420
419
418
417
416
416
416
415
415
415
415
414
414
413
409
408
407
407
408
409
409
410
413
415
419
422
422
421
420
419
418
417
415
414
413
410
412
414
416
418
423
425
424
423
423
423
422
422
426
429
434
439
445
474
469
464
464
461
451
446
442
435
433
431
431
431
432
432
433
433
433
433
433
433
432
432
433
434
435
436
440
440
442
443
443
444
444
445
445
445
444
443
443
442
442
446
449
453
456
457
456
454
451
449
448
450
454
456
452
451
451
457
459
461
461
461
462
463
464
464
465
469
486
493
497
494
489
488
489
489
489
489
484
483
481
479
477
469
471
475
477
487
491
486
477
473
470
468
466
465
464
458
457
457
457
460
452
446
446
447
448
450
450
451
451
452
451
451
450
448
447
447
446
446
445
444
434
432
432
432
433
434
434
434
433
431
431
432
433
435
436
438
439
441
442
445
450
452
454
462
465
466
465
463
462
456
455
454
455
458
460
461
463
465
466
467
468
469
470
472
471
467
463
460
456
452
453
459
465
471
477
480
481
476
473
471
469
469
470
471
471
472
474
475
476
478
480
482
485
488
490
492
491
490
489
488
487
487
488
489
490
492
494
494
493
491
489
488
487
486
486
487
491
493
494
493
493
492
490
489
488
487
487
487
486
486
486
486
486
486
486
486
486
483
482
481
480
478
477
476
476
475
475
475
475
475
475
475
475
476
476
477
477
477
477
477
477
477
477
478
479
481
483
485
491
493
494
496
496
491
489
486
477
477
477
478
480
483
487
489
485
484
492
494
499
504
508
510
510
510
510
516
522
524
525
526
527
528
529
530
531
532
535
539
541
542
546
546
546
546
546
546
546
547
551
552
555
556
557
558
556
554
553
551
550
549
548
548
549
549
550
550
551
551
552
559
567
578
584
584
584
584
584
584
584
585
585
585
585
585
585
585
585
585
578
564
554
547
551
553
554
556
558
561
563
564
562
560
556
553
549
545
542
541
542
542
544
544
546
546
546
545
545
544
543
542
541
540
540
539
539
538
537
537
537
536
535
534
533
533
534
534
535
536
537
538
541
545
558
568
569
567
565
563
563
562
563
568
567
565
565
562
559
556
554
552
549
533
530
529
529
529
529
532
533
533
534
535
537
538
543
544
544
543
539
537
536
538
539
542
545
547
548
551
555
558
558
556
551
549
549
550
553
555
556
557
561
562
563
564
565
566
567
568
568
569
570
570
570
570
568
567
566
565
566
567
568
569
570
571
572
573
574
574
574
573
575
581
587
600
605
608
608
608
610
611
613
615
616
617
618
618
617
617
616
616
615
615
610
608
606
602
601
605
605
606
607
607
607
607
607
613
615
617
619
622
622
618
616
614
613
613
613
613
615
616
618
622
623
624
626
632
633
634
635
642
647
653
658
661
667
677
677
674
666
662
654
654
654
654
662
665
672
673
674
674
675
675
675
675
675
675
675
675
677
683
685
687
688
690
692
696
700
704
709
714
714
716
716
718
722
726
728
737
730
727
722
710
706
697
697
698
702
702
704
709
715
718
728
733
739
744
748
752
758
777
789
800
811
812
800
793
786
781
775
767
759
759
759
768
772
774
778
784
784
784
784
784
784
785
786
787
788
789
789
789
792
802
805
810
816
823
842
848
849
848
848
846
844
846
850
849
849
848
847
847
848
851
855
856
859
861
863
865
870
874
876
878
881
883
883
880
876
872
871
869
871
876
880
885
898
904
891
891
891
889
885
883
880
875
869
863
853
850
853
855
858
863
867
870
868
863
861
859
861
864
866
868
870
874
874
875
875
875
877
880
882
884
887
890
893
896
899
902
905
907
911
916
915
915
914
914
917
928
944
947
947
947
945
945
944
944
944
952
954
956
958
961
963
964
955
952
950
949
947
944
942
938
938
938
938
941
943
945
946
947
947
947
951
952
961
963
966
982
992
995
1000
1003
1004
1002
999
997
991
985
976
972
969
973
982
983
987
993
993
993
992
991
991
997
998
999
1001
1003
1006
1008
1010
1018
1025
1024
1022
1019
1018
1018
1015
1016
1019
1024
1038
1042
1046
1047
1048
1050
1050
1051
1051
1052
1055
1057
1061
1064
1070
1071
1071
1071
1071
1076
1078
1079
1084
1081
1076
1073
1077
1080
1083
1086
1089
1089
1093
1107
1112
1114
1116
1118
1120
1122
1124
1125
1126
1127
1127
1126
1126
1125
1125
1125
1125
1129
1130
1132
1133
1134
1135
1144
1149
1155
1158
1163
1167
1170
1177
1178
1179
1183
1185
1186
1184
1182
1180
1177
1175
1173
1171
1171
1170
1169
1169
1168
1167
1162
1157
1149
1138
1146
1150
1155
1161
1167
1179
1183
1187
1192
1198
1201
1203
1209
1211
1213
1215
1209
1203
1192
1180
1184
1186
1188
1190
1191
1191
1191
1191
1193
1200
1207
1207
1208
1209
1209
1210
1210
1212
1215
1217
1219
1221
1232
1235
1249
1258
1265
1270
1273
1276
1280
1272
1265
1259
1253
1250
1246
1243
1239
1240
1254
1258
1268
1271
1273
1274
1279
1285
1282
1276
1271
1267
1263
1259
1256
1260
1263
1269
1277
1282
1284
1286
1289
1292
1293
1298
1298
1297
1296
1295
1294
1293
1298
1317
1324
1328
1332
1329
1327
1325
1323
1321
1319
1317
1313
1311
1308
1327
1337
1353
1367
1368
1369
1376
1381
1384
1389
1392
1394
1395
1396
1399
1400
1403
1407
1410
1411
1411
1412
1413
1413
1413
1413
1414
1414
1415
1417
1419
1425
1427
1429
1437
1438
1438
1438
1440
1441
1441
1443
1444
1444
1445
1448
1449
1450
1450
1450
1450
1447
1447
1447
1446
1446
1445
1445
1445
1445
1446
1462
1466
1470
1466
1465
1463
1461
1462
1463
1463
1464
1456
1453
1451
1449
1447
1442
1444
1453
1455
1456
1458
1469
1470
1471
1475
1476
1476
1473
1473
1472
1471
1470
1470
1486
1488
1495
1495
1491
1490
1490
1495
1497
1504
1505
1507
1510
1511
1513
1513
1517
1518
1518
1519
1517
1515
1514
1508
1507
1506
1506
1515
1515
1515
1515
1515
1515
1516
1516
1518
1518
1521
1521
1521
1521
1521
1521
1521
1521
1521
1520
1520
1519
1519
1517
1516
1515
1514
1513
1513
1513
1512
1512
1513
1513
1515
1515
1515
1514
1512
1510
1503
1503
1504
1504
1504
1504
1489
1488
1487
1487
1487
1487
1487
1488
1488
1488
1488
1488
1486
1483
1482
1480
1479
1478
1478
1478
1478
1478
1478
1478
1478
1478
1479
1480
1486
1486
1483
1480
1478
1474
1472
1479
1483
1486
1486
1485
1484
1483
1483
1482
1481
1478
1478
1478
1477
1476
1476
1475
1475
1473
1471
1468
1466
1464
1460
1459
1458
1458
1454
1453
1451
1447
1445
1440
1434
1432
1427
1425
1425
1425
1425
1421
1410
1409
1409
1409
1408
1408
1408
1408
1406
1404
1403
1401
1399
1398
1398
1398
1399
1399
1399
1399
1399
1397
1396
1393
1392
1392
1389
1388
1386
1384
1381
1378
1375
1372
1370
1367
1365
1361
1358
1355
1349
1348
1349
1349
1350
1350
1350
1346
1345
1341
1341
1342
1344
1346
1347
1349
1351
1351
1351
1350
1350
1351
1352
1353
1356
1360
1362
1363
1364
1364
1364
1363
1362
1362
1361
1361
1361
1361
1362
1362
1364
1364
1364
1365
1365
1365
1366
1366
1366
1367
1368
1368
1368
1368
1367
1367
1367
1366
1366
1365
1365
1365
1366
1366
1367
1367
1368
1368
1369
1367
1371
1374
1376
1378
1379
1379
1376
1375
1374
1371
1370
1369
1367
1366
1362
1360
1359
1358
1358
1358
1357
1357
1361
1380
1382
1388
1391
1393
1410
1411
1413
1415
1416
1417
1418
1419
1421
1423
1442
1444
1445
1445
1445
1451
1455
1457
1459
1460
1461
1466
1468
1469
1470
1471
1472
1467
1462
1455
1452
1450
1448
1441
1439
1438
1438
1436
1435
1433
1432
1432
1431
1432
1433
1435
1438
1442
1443
1445
1448
1451
1450
1448
1445
1442
1437
1437
1436
1436
1436
1434
1433
1433
1433
1432
1430
1429
1426
1425
1425
1425
1425
1424
1423
1423
1422
1416
1413
1406
1406
1415
1420
1421
1421
1420
1420
1418
1418
1417
1416
1415
1412
1409
1407
1404
1401
1399
1398
1393
1392
1391
1390
1389
1389
1389
1388
1388
1388
1388
1387
1387
1387
1386
1385
1385
1385
1384
1384
1384
1384
1384
1384
1384
1384
1384
1383
1382
1382
1380
1378
1376
1375
1373
1372
1369
1368
1366
1364
1359
1359
1358
1354
1354
1355
1355
1355
1356
1357
1357
1366
1369
1375
1377
1377
1376
1376
1374
1374
1373
1373
1372
1370
1368
1367
1365
1364
1363
1361
1369
1371
1377
1381
1383
1385
1390
1394
1400
1400
1401
1402
1402
1403
1402
1401
1400
1399
1398
1397
1397
1398
1404
1405
1405
1404
1402
1402
1401
1401
1398
1398
1397
1396
1392
1391
1390
1388
1387
1387
1388
1388
1388
1388
1387
1386
1383
1382
1381
1381
1380
1379
1379
1378
1378
1378
1378
1378
1378
1378
1378
1378
1378
1378
1379
1379
1380
1380
1381
1381
1381
1382
1382
1382
1381
1378
1376
1373
1372
1371
1370
1369
1369
1368
1364
1362
1360
1358
1353
1348
1346
1345
1344
1343
1342
1341
1341
1338
1337
1335
1334
1332
1330
1323
1319
1318
1317
1316
1315
1309
1305
1304
1303
1301
1300
1298
1298
1297
1297
1296
1292
1292
1291
1290
1289
1289
1286
1285
1284
1284
1269
1266
1264
1263
1261
1258
1257
1256
1255
1253
1251
1251
1251
1251
1251
1251
1251
1252
1253
1254
1254
1255
1258
1259
1262
1259
1258
1255
1255
1253
1248
1233
1214
1186
1173
1169
1162
1157
1149
1082
1053
1045
1025
1015
988
975
951
948
947
946
944
943
949
951
953
954
958
960
960
959
959
956
953
951
950
948
946
945
941
939
936
934
930
926
922
915
905
905
904
903
896
886
879
876
874
873
872
871
868
865
861
859
851
849
847
846
844
831
825
821
813
808
802
786
784
786
789
790
793
793
789
785
781
777
772
761
756
752
749
748
740
739
738
733
732
727
726
726
723
721
721
721
721
722
723
725
726
726
727
727
727
726
726
726
724
725
726
727
731
733
735
737
739
739
739
738
738
737
736
735
734
734
743
745
746
755
755
755
755
755
755
754
752
751
750
750
748
750
753
756
757
758
765
766
766
769
770
770
770
771
771
772
772
772
773
774
774
775
781
782
783
785
786
787
788
790
793
792
792
790
787
786
785
784
783
794
796
797
799
808
809
809
809
809
809
809
809
809
809
809
809
805
804
803
802
801
801
801
802
807
811
817
818
821
822
823
825
830
831
831
831
832
832
832
832
832
833
835
836
837
839
842
844
845
846
847
847
848
849
853
854
855
855
856
859
860
856
855
854
849
849
850
858
860
862
864
868
870
876
880
882
882
881
881
880
880
880
880
880
879
879
879
879
879
883
885
887
889
891
894
895
899
900
900
902
903
903
904
904
906
903
901
899
898
894
893
892
890
887
888
888
888
889
889
889
889
890
890
891
893
893
903
903
903
903
903
902
901
901
902
902
902
903
903
903
904
904
906
909
910
911
915
916
918
918
919
922
923
924
925
929
930
930
930
931
931
932
933
934
934
934
935
935
935
936
936
937
941
941
942
945
947
948
949
951
952
954
955
956
958
959
959
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
960
959
958
957
957
956
956
956
958
959
960
965
966
966
965
963
955
952
939
936
926
925
921
911
902
898
888
890
892
895
897
901
913
915
914
909
906
902
900
896
894
893
891
886
885
884
883
880
877
875
867
863
861
862
862
863
863
864
863
862
859
852
848
848
848
848
848
848
848
848
840
836
828
818
817
818
819
820
821
823
824
825
825
825
825
825
825
824
824
824
824
824
823
823
822
821
818
817
816
815
813
808
807
803
801
800
799
798
797
795
793
790
790
788
786
783
777
775
763
761
761
761
761
761
761
758
756
754
752
750
748
747
744
741
729
728
727
727
727
727
728
728
729
730
731
736
738
739
740
742
745
747
747
745
735
733
731
727
725
722
719
717
710
707
705
703
703
703
702
702
702
702
701
697
695
691
689
685
685
685
685
684
683
683
682
682
682
681
681
678
675
661
659
657
649
646
643
639
637
634
633
631
629
630
631
632
633
635
636
633
627
626
625
614
611
610
610
607
605
603
602
604
605
606
607
608
609
610
611
614
616
617
615
610
605
603
602
600
598
594
593
591
589
588
584
569
563
559
554
552
550
550
548
547
547
546
546
542
539
537
535
533
529
524
520
518
515
511
492
488
489
491
492
494
495
496
494
489
485
482
475
474
472
471
468
467
462
459
458
457
456
452
450
449
441
439
437
434
434
433
432
432
431
429
426
424
421
421
420
418
416
407
404
398
395
392
390
387
382
380
379
378
374
370
366
365
365
365
365
365
365
355
352
350
347
341
338
338
338
339
339
339
339
337
336
334
333
332
331
328
327
329
330
332
335
334
334
333
332
332
331
329
327
308
304
300
294
292
287
285
284
282
281
281
276
271
266
274
279
274
269
243
237
236
236
235
235
235
236
238
238
239
240
234
231
225
208
200
197
195
193
189
188
184
183
180
177
176
175
175
175
176
180
185
195
194
178
170
163
158
155
154
162
170
161
110
107
103
100
97
92
92
92
92
93
93
95
95
96
93
92
88
85
82
80
78
79
79
81
81
81
81
81
78
78
75
72
70
68
68
73
73
73
73
73
73
73
73
73
73
71
71
70
66
65
65
66
66
68
67
66
64
62
63
64
64
65
66
67
74
69
63
64
67
69
71
77
89
84
78
75
70
70
69
65
63
69
70
72
73
76
73
70
62
58
56
56
56
56
56
47
46
47
48
49
49
49
47
45
41
42
50
46
37
37
37
39
40
43
45
54
52
58
60
53
44
38
35
28
28
28
28
28
28
27
27
27
27
26
26
26
26
25
25
25
25
24
20
20
18
20
21
21
20
25
36
36
35
35
35
35
35
33
33
33
28
27
26
27
28
30
31
32
33
33
32
22
19
17
15
12
15
18
26
29
28
22
18
16
15
14
11
11
11
11
17
17
20
25
26
26
26
26
26
26
26
25
25
24
23
23
25
27
32
28
22
17
14
12
13
23
19
16
16
16
14
12
10
7
7
8
8
8
8
7
7
6
6
5
5
5
5
5
3
1
1
2
7
7
7
7
7
6
6
5
5
4
4
4
1
1
1
1
1
2
2
2
2
5
5
5
5
5
4
3
1
1
1
1
1
1
0
0
2
4
7
8
8
8
8
8
4
5
8
15
16
16
19
27
32
35
39
41
46
50
54
57
61
65
78
84
90
99
107
115
118
122
120
119
116
111
106
112
126
139
148
148
154
154
155
155
150
147
147
147
147
147
151
168
175
177
179
181
187
191
196
202
200
198
191
187
183
183
183
183
184
185
185
186
186
182
180
175
175
175
175
174
172
170
162
172
173
168
159
155
154
154
154
154
153
151
148
146
144
142
139
138
134
131
129
100
91
86
81
72
71
72
76
61
54
51
49
48
48
47
47
48
53
56
59
63
75
76
78
78
77
74
66
63
61
60
58
53
50
49
47
46
45
43
41
36
31
31
31
31
31
31
32
32
32
32
33
33
33
33
30
29
28
26
27
28
28
29
30
33
34
34
35
36
37
37
36
24
24
26
27
28
29
57
61
69
88
93
100
109
81
76
72
65
61
52
42
45
48
51
54
58
72
70
68
67
65
62
59
58
57
55
58
60
65
67
56
50
42
29
28
29
30
31
33
34
35
35
34
31
25
21
23
28
30
34
42
39
36
33
29
27
19
14
14
14
13
12
11
11
9
8
7
6
7
9
9
12
15
18
21
25
25
22
19
17
18
19
20
19
14
13
12
7
7
6
4
3
2
2
1
1
1
1
1
1
1
2
2
3
4
3
3
2
2
2
2
2
2
2
2
3
6
7
8
12
12
14
19
20
24
25
27
27
29
29
29
29
30
30
30
31
32
36
39
40
44
45
47
48
49
52
55
57
59
73
77
81
81
81
82
83
83
84
84
85
85
85
86
96
103
112
123
123
122
122
122
122
122
125
126
130
132
138
147
148
149
152
153
156
157
158
161
161
162
162
163
163
164
165
169
176
183
183
184
184
184
182
181
181
179
179
177
173
167
163
162
161
160
158
156
156
156
155
154
152
151
150
149
150
151
152
153
153
154
155
155
155
157
159
159
160
162
164
164
164
164
163
162
162
160
159
159
159
158
155
152
151
151
147
144
144
143
142
140
139
138
131
129
127
126
126
127
128
131
133
134
134
134
134
134
134
134
135
139
141
143
143
143
144
144
145
145
145
145
145
145
143
144
145
149
150
151
153
154
157
158
160
160
161
162
166
167
167
166
165
155
153
149
151
156
159
161
162
165
166
166
168
168
170
170
171
176
179
180
180
180
180
180
180
189
192
193
203
214
216
220
223
226
233
239
241
244
245
245
244
244
243
228
226
225
225
227
230
231
235
237
238
240
241
242
257
258
259
259
259
258
257
257
251
250
248
247
249
252
254
261
263
266
268
270
273
275
276
278
281
285
285
285
285
285
285
285
277
276
264
262
261
259
253
251
247
244
242
251
252
255
259
257
250
247
243
242
241
241
238
235
233
230
229
227
226
222
220
220
222
224
227
229
231
234
239
253
260
270
274
273
270
265
255
251
248
247
250
259
272
279
276
274
272
263
260
258
257
255
254
252
249
246
244
242
240
239
238
237
231
230
229
227
226
226