481
480
480
480
480
479
477
476
476
475
475
473
471
451
448
439
436
425
424
422
420
419
418
418
417
410
409
408
408
407
406
406
405
404
403
401
401
401
401
401
401
401
401
402
402
403
403
403
404
404
405
405
406
406
406
406
406
406
406
407
407
407
407
408
408
408
408
408
409
409
410
410
410
410
410
410
410
410
411
411
411
411
411
411
411
411
411
411
413
413
413
413
413
413
413
413
413
413
413
413
413
413
413
414
414
414
414
414
414
415
415
415
416
416
416
416
416
417
418
418
418
419
419
419
420
420
420
420
420
421
421
421
422
425
428
428
429
430
429
429
428
428
428
428
427
427
427
427
427
427
427
427
429
431
432
432
432
432
431
431
430
430
430
430
431
431
432
432
433
433
433
434
434
434
435
435
435
434
434
434
434
435
435
435
436
436
436
436
436
437
437
437
437
437
437
438
438
439
440
441
442
442
446
447
447
447
448
448
448
448
448
448
447
447
447
447
447
449
449
450
450
450
450
449
449
449
449
448
448
448
448
447
447
447
446
445
445
445
445
446
447
450
450
450
450
450
450
450
450
450
450
450
450
452
452
452
453
454
459
464
465
468
474
459
459
456
455
455
455
455
455
455
455
456
457
458
458
459
459
459
459
459
459
459
460
460
460
460
461
461
462
462
463
463
463
463
463
463
464
464
464
465
465
466
469
470
471
471
471
471
471
471
471
472
473
473
474
474
474
474
474
474
474
475
475
475
475
474
474
473
473
473
473
473
473
473
473
474
475
476
477
478
478
479
479
480
480
480
480
480
480
481
481
482
482
483
483
484
485
485
485
485
485
486
486
486
487
488
488
489
489
490
490
490
489
489
489
489
490
491
501
502
501
496
493
494
495
496
496
496
496
496
496
496
496
497
497
498
498
499
499
501
501
503
503
505
506
511
515
516
517
517
517
517
516
515
515
514
514
511
510
511
514
515
515
517
518
518
521
524
530
533
536
537
546
544
543
541
539
537
531
530
529
530
529
528
527
526
526
526
526
526
526
528
528
528
528
528
529
530
531
533
535
538
539
539
539
539
538
538
538
538
538
538
538
538
538
538
538
537
537
535
534
534
534
534
533
533
533
533
533
533
533
534
534
534
534
534
534
534
534
535
536
537
537
538
538
540
541
542
543
545
547
549
551
554
555
556
557
560
562
563
565
566
568
570
572
576
578
579
581
583
584
586
588
589
591
592
597
600
601
602
606
614
616
622
623
624
625
626
627
627
634
635
636
636
637
638
639
643
648
657
663
665
670
671
673
682
694
697
701
703
707
711
714
717
722
726
727
731
731
731
731
730
729
729
730
733
732
731
731
731
731
734
736
738
747
747
747
747
746
746
745
745
745
745
744
743
742
741
739
736
736
735
733
732
731
730
729
727
727
725
725
724
722
722
721
720
720
715
714
713
712
703
701
699
693
692
692
687
685
685
686
687
687
687
687
688
692
692
692
693
694
694
694
694
695
695
696
696
696
697
697
697
700
705
705
707
708
710
710
710
711
711
712
713
714
714
715
715
716
716
717
717
718
719
719
719
719
719
719
719
721
721
721
722
727
728
729
730
730
728
727
727
726
727
731
734
734
734
734
734
733
733
733
733
733
733
733
733
733
733
733
733
733
733
733
733
732
732
732
730
729
728
727
727
727
727
726
726
726
726
726
728
728
729
729
729
730
731
731
733
734
734
735
735
734
734
732
730
727
727
727
726
726
726
726
727
727
727
727
727
726
726
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
726
726
726
726
726
726
726
726
726
726
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
725
724
724
724
724
724
724
724
724
724
724
724
724
724
724
725
725
726
726
727
728
738
744
745
745
745
745
747
751
753
758
759
765
764
758
758
758
758
758
757
757
756
756
756
756
755
755
755
754
754
754
754
754
755
759
760
760
761
761
762
763
767
771
772
775
776
776
777
778
780
781
781
783
785
792
792
792
789
781
781
781
781
781
781
780
777
772
772
770
770
770
770
769
767
766
765
763
763
762
761
761
761
761
760
762
762
762
765
765
765
765
765
763
762
760
756
755
754
751
748
745
742
741
739
737
736
733
733
731
731
731
728
728
726
723
720
719
719
718
718
716
715
707
705
704
703
701
699
697
695
691
687
671
668
665
663
659
654
651
647
644
639
637
636
632
632
626
613
609
604
603
601
599
598
593
592
590
589
587
574
572
571
568
567
563
561
560
560
559
558
557
557
556
556
555
554
548
541
539
535
534
529
528
526
525
523
518
514
512
509
508
507
506
505
504
502
493
492
491
490
489
486
486
483
482
476
475
475
474
474
473
473
472
470
469
469
469
469
469
469
469
468
466
464
463
462
461
461
460
459
459
458
458
458
458
458
458
458
458
458
458
458
458
458
456
456
455
451
451
450
449
449
449
449
449
449
449
449
450
450
450
451
452
453
453
454
454
454
455
455
455
454
454
453
453
453
453
453
453
452
452
451
451
451
451
450
449
449
448
448
447
447
447
447
447
447
447
447
447
447
447
447
447
447
447
447
447
446
446
446
446
446
446
446
446
446
446
446
447
447
447
448
448
450
450
450
450
450
448
445
444
443
443
442
441
441
441
440
440
439
439
439
439
439
439
439
439
438
438
438
438
438
438
438
438
438
437
437
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
436
441
447
449
455
465
464
461
460
456
453
451
448
457
475
476
477
478
479
479
479
479
479
479
469
472
467
460
458
458
458
459
459
459
458
452
450
448
446
443
440
446
460
522
508
495
478
468
461
463
466
468
474
476
477
477
469
460
482
488
498
503
475
469
465
462
451
449
448
451
452
454
460
461
461
459
458
449
450
450
450
451
452
454
457
460
461
462
467
472
477
494
503
517
523
531
519
494
486
467
469
474
474
473
472
472
474
476
479
484
486
489
491
492
492
491
495
495
497
498
498
499
500
496
495
491
486
488
494
497
500
498
496
494
492
489
485
478
476
474
472
471
467
462
458
443
443
446
454
459
464
473
482
481
479
476
474
471
470
469
468
467
467
466
465
465
465
464
464
463
463
462
460
459
458
458
457
457
455
454
453
452
451
451
451
449
448
448
448
447
447
447
446
446
442
441
440
439
438
437
436
436
436
436
436
435
435
434
434
434
434
434
434
434
434
434
434
434
434
435
435
436
436
436
436
434
434
434
434
434
434
434
435
435
435
435
435
435
435
435
435
435
435
435
435
436
437
437
437
437
437
439
439
439
439
439
439
439
439
439
439
440
441
442
442
446
447
447
447
448
448
448
448
448
448
448
449
450
450
451
451
452
452
452
452
452
452
452
453
453
453
453
453
451
451
451
451
451
452
452
452
452
452
452
452
452
452
453
453
453
453
454
454
454
454
454
454
456
456
457
457
457
458
458
459
459
459
459
459
460
461
462
463
463
463
463
464
464
465
465
465
466
466
466
466
466
467
467
467
467
468
468
469
470
470
473
474
475
476
477
477
477
477
477
477
477
478
478
473
473
473
474
477
478
478
483
485
486
490
493
496
502
503
503
506
508
509
509
509
508
507
506
505
500
499
497
497
498
499
499
499
499
499
498
497
497
496
496
495
494
494
494
494
494
494
494
494
495
495
495
496
496
497
499
499
500
501
502
502
503
504
504
505
505
506
507
507
508
508
508
509
509
509
510
510
511
511
512
514
514
514
514
515
515
515
516
516
516
517
517
518
518
519
519
520
522
522
522
531
533
543
547
551
555
557
561
563
563
565
565
567
572
584
588
593
595
598
599
602
604
605
605
606
607
608
609
611
611
611
612
614
623
628
628
628
628
628
628
629
629
630
632
635
637
639
640
644
648
649
651
653
653
654
654
655
656
656
655
654
654
654
653
652
652
649
649
649
649
649
650
650
650
650
651
651
651
651
651
652
652
652
652
652
652
652
652
652
653
653
653
653
653
653
653
653
653
653
653
653
654
657
660
661
661
661
661
660
660
660
660
660
659
659
656
655
654
654
654
652
651
651
650
652
653
654
658
658
660
662
664
665
666
668
669
672
670
668
671
672
676
680
682
683
685
688
688
688
687
687
686
688
690
699
704
705
705
705
706
706
707
708
710
711
713
716
729
733
733
736
739
744
747
748
750
752
755
758
764
768
768
770
772
775
779
789
793
799
802
804
805
807
808
809
810
810
812
812
813
814
815
815
816
819
822
823
829
832
834
836
837
838
840
841
844
847
848
848
849
849
850
851
854
855
857
859
860
861
863
876
879
884
886
889
891
892
892
892
891
890
889
888
887
887
887
887
887
887
887
888
888
890
891
892
893
894
901
903
907
909
911
915
915
915
915
916
917
919
920
921
922
923
925
925
925
925
924
924
923
894
896
901
910
920
923
925
930
931
932
934
938
940
941
943
944
952
955
963
963
964
965
966
968
968
969
973
983
986
984
981
979
978
977
976
975
974
974
974
975
975
979
979
980
981
982
983
984
986
988
991
995
999
1000
1006
1009
1015
1026
1037
1042
1046
1054
1071
1072
1074
1074
1075
1076
1076
1077
1077
1080
1081
1082
1093
1093
1094
1095
1099
1099
1100
1101
1101
1101
1101
1102
1102
1102
1102
1103
1103
1103
1103
1107
1113
1115
1116
1122
1126
1126
1126
1126
1125
1125
1125
1124
1124
1127
1131
1132
1136
1136
1137
1137
1138
1138
1138
1139
1141
1141
1142
1142
1142
1145
1154
1155
1156
1156
1157
1160
1161
1162
1169
1176
1177
1178
1179
1179
1180
1189
1190
1190
1191
1192
1192
1205
1215
1238
1237
1224
1223
1220
1219
1219
1220
1220
1221
1226
1228
1230
1231
1231
1232
1233
1233
1240
1249
1262
1272
1278
1279
1281
1284
1290
1294
1296
1300
1308
1312
1315
1319
1322
1323
1324
1325
1326
1327
1327
1328
1330
1331
1332
1332
1333
1334
1334
1335
1336
1336
1337
1338
1339
1339
1340
1340
1341
1342
1344
1345
1346
1351
1352
1352
1352
1353
1353
1354
1354
1358
1361
1363
1365
1366
1367
1368
1369
1370
1374
1377
1381
1384
1387
1389
1393
1396
1397
1399
1400
1402
1404
1416
1422
1425
1427
1429
1434
1437
1436
1429
1430
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1431
1432
1433
1433
1434
1435
1435
1434
1434
1434
1434
1434
1434
1434
1434
1434
1438
1438
1438
1438
1438
1438
1438
1438
1436
1436
1436
1436
1436
1436
1436
1438
1438
1438
1438
1439
1439
1441
1441
1441
1442
1443
1443
1444
1444
1444
1444
1444
1446
1450
1454
1456
1458
1463
1464
1468
1472
1482
1490
1498
1499
1499
1499
1500
1500
1500
1500
1500
1500
1500
1501
1502
1503
1509
1512
1512
1513
1514
1516
1520
1524
1525
1525
1526
1527
1530
1533
1536
1540
1541
1542
1543
1546
1551
1555
1556
1557
1558
1559
1561
1570
1572
1575
1577
1580
1582
1584
1585
1590
1592
1593
1594
1595
1602
1604
1606
1607
1608
1610
1613
1614
1615
1616
1618
1619
1622
1626
1629
1633
1637
1640
1645
1651
1654
1657
1661
1663
1664
1668
1670
1686
1688
1692
1695
1697
1699
1701
1711
1713
1714
1718
1722
1723
1725
1728
1729
1731
1733
1738
1739
1741
1742
1745
1748
1749
1750
1751
1753
1755
1757
1761
1763
1765
1770
1771
1772
1773
1774
1775
1775
1776
1777
1778
1779
1780
1784
1786
1787
1788
1789
1790
1791
1792
1793
1802
1807
1809
1815
1817
1818
1820
1822
1826
1827
1829
1833
1835
1839
1842
1845
1848
1851
1856
1858
1861
1865
1867
1868
1870
1876
1880
1881
1884
1886
1887
1890
1892
1902
1906
1909
1910
1912
1915
1916
1917
1918
1921
1922
1928
1929
1929
1930
1933
1934
1935
1935
1937
1945
1946
1947
1948
1949
1951
1954
1954
1954
1954
1954
1954
1955
1955
1962
1966
1978
1981
1983
1992
2000
2003
2005
2007
2014
2017
2020
2022
2030
2032
2034
2036
2055
2056
2057
2058
2059
2060
2061
2072
2074
2076
2077
2078
2079
2081
2082
2089
2091
2095
2096
2098
2100
2101
2103
2105
2106
2105
2091
2091
2091
2090
2090
2090
2090
2089
2087
2086
2084
2082
2081
2077
2076
2074
2063
2061
2049
2048
2048
2031
2030
2029
2028
2027
2025
2018
2016
2014
2011
2007
2007
2006
2006
2006
2003
2002
2001
2001
2000
1999
1999
1998
1998
1997
1996
1995
1993
1989
1988
1988
1988
1987
1987
1981
1980
1979
1978
1977
1977
1977
1974
1974
1974
1974
1974
1973
1972
1972
1972
1971
1971
1971
1971
1970
1969
1968
1968
1967
1967
1965
1965
1965
1964
1964
1961
1959
1959
1958
1957
1953
1952
1950
1949
1940
1939
1939
1939
1938
1938
1933
1931
1928
1927
1925
1921
1918
1917
1916
1914
1912
1911
1911
1911
1910
1904
1903
1902
1902
1899
1898
1897
1896
1888
1888
1888
1887
1887
1887
1883
1883
1882
1881
1880
1880
1878
1877
1877
1877
1875
1875
1874
1871
1870
1870
1869
1869
1868
1865
1864
1863
1859
1855
1854
1852
1851
1849
1845
1844
1839
1838
1835
1833
1830
1830
1830
1830
1830
1830
1827
1826
1825
1824
1824
1824
1824
1821
1820
1817
1816
1810
1809
1809
1809
1805
1800
1800
1799
1799
1798
1797
1794
1791
1791
1790
1790
1785
1785
1784
1783
1783
1771
1765
1765
1764
1764
1763
1763
1759
1758
1757
1757
1757
1756
1753
1752
1751
1751
1751
1751
1748
1748
1748
1747
1747
1745
1744
1743
1743
1742
1741
1738
1738
1737
1735
1733
1721
1706
1702
1699
1697
1696
1692
1691
1691
1689
1684
1682
1680
1679
1677
1673
1672
1669
1666
1664
1663
1659
1657
1655
1650
1649
1647
1641
1640
1635
1634
1633
1629
1619
1616
1613
1609
1608
1608
1608
1607
1606
1605
1603
1602
1601
1601
1600
1600
1600
1596
1595
1594
1593
1590
1590
1589
1589
1588
1588
1587
1584
1583
1578
1577
1576
1575
1574
1572
1570
1560
1559
1558
1557
1556
1555
1554
1552
1551
1550
1550
1548
1547
1545
1544
1543
1540
1538
1536
1533
1532
1532
1532
1532
1533
1533
1533
1533
1524
1523
1521
1520
1519
1514
1512
1510
1503
1499
1497
1491
1491
1489
1486
1483
1482
1481
1480
1480
1477
1475
1474
1472
1467
1465
1465
1464
1463
1445
1442
1439
1433
1430
1428
1424
1416
1415
1415
1414
1414
1413
1404
1374
1370
1367
1360
1358
1357
1356
1355
1354
1350
1348
1345
1344
1343
1342
1339
1338
1335
1331
1322
1318
1317
1316
1315
1309
1307
1306
1302
1300
1298
1296
1293
1280
1275
1274
1272
1270
1267
1266
1265
1264
1263
1262
1256
1255
1254
1253
1252
1246
1245
1245
1242
1238
1233
1232
1228
1223
1218
1203
1202
1201
1201
1199
1198
1198
1195
1194
1193
1191
1190
1188
1185
1183
1181
1177
1175
1172
1172
1170
1169
1160
1158
1150
1146
1144
1142
1139
1139
1139
1138
1138
1137
1131
1130
1128
1123
1122
1121
1117
1116
1120
1121
1126
1127
1125
1122
1116
1114
1108
1108
1098
1095
1093
1088
1083
1081
1081
1079
1077
1076
1074
1072
1069
1069
1068
1068
1068
1063
1061
1060
1059
1058
1057
1053
1052
1051
1046
1042
1037
1038
1038
1039
1039
1039
1038
1035
1029
1023
1018
1018
1018
1018
1018
1018
1017
1016
997
995
993
993
993
992
992
992
992
989
988
982
979
979
979
979
979
979
979
979
979
978
976
975
975
973
972
971
971
970
970
971
977
978
980
981
981
981
981
981
982
981
980
980
979
979
979
979
979
980
980
980
980
979
978
977
977
977
976
976
976
976
976
976
976
976
976
975
975
975
969
956
955
954
953
952
950
950
948
948
946
940
940
940
941
941
942
942
942
943
943
944
944
945
947
947
949
949
951
951
951
951
951
951
947
936
923
917
955
957
920
900
892
892
891
891
890
889
884
884
884
883
882
879
875
870
860
858
857
856
853
851
850
846
843
841
839
837
835
833
831
829
825
823
822
814
811
803
795
794
792
791
791
790
788
785
781
767
766
765
762
760
758
758
757
752
751
750
749
749
749
749
749
749
742
740
738
731
727
724
717
717
716
715
714
713
712
711
710
710
709
709
708
708
708
706
704
703
703
702
701
698
697
697
696
687
686
686
688
687
686
682
679
677
676
675
671
670
668
668
667
666
666
665
665
664
662
661
664
667
671
672
667
657
656
656
656
653
649
649
650
650
649
648
647
641
641
641
640
640
640
639
638
637
635
634
630
630
629
627
626
624
623
621
624
621
619
619
619
619
619
619
619
619
619
619
619
619
619
619
619
619
617
616
614
614
614
614
614
614
614
614
614
614
614
614
613
613
612
611
610
606
603
599
586
583
578
574
573
572
570
570
570
570
568
562
559
552
551
549
547
544
542
541
538
536
527
516
512
510
508
501
499
497
495
495
494
494
494
493
493
493
492
492
490
488
487
487
487
486
484
482
477
476
475
473
468
466
456
452
448
448
447
446
446
443
441
433
432
430
428
422
420
414
409
405
402
395
395
395
395
392
391
384
382
382
392
398
398
394
393
392
392
391
390
389
387
385
383
379
375
372
370
368
365
355
354
353
353
353
352
352
352
351
351
350
349
349
349
348
345
342
341
338
336
334
328
328
327
322
321
320
320
320
320
320
320
320
321
322
322
322
322
321
321
322
328
330
330
331
331
331
330
329
328
327
326
325
324
324
323
323
322
321
319
318
318
318
318
318
318
318
318
318
318
318
318
316
316
315
314
313
313
310
309
308
307
307
307
306
305
304
303
303
302
302
302
301
300
300
299
298
297
297
295
293
293
293
292
292
291
291
290
290
290
290
290
291
291
291
291
291
291
291
291
294
294
295
295
295
296
296
296
296
296
296
296
296
296
296
296
297
297
296
296
296
295
295
294
292
291
290
290
290
290
290
290
290
290
289
288
288
287
287
287
287
287
287
288
289
289
288
284
284
285
281
280
280
280
279
279
278
278
278
278
278
278
276
275
270
269
269
269
269
269
269
269
269
269
269
269
269
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
269
269
269
269
268
268
268
268
266
264
264
263
263
262
262
262
262
262
261
261
261
261
261
261
260
260
260
260
259
259
258
257
256
256
256
256
255
253
253
253
253
253
253
253
253
253
253
253
252
251
251
251
252
253
257
257
257
257
259
260
260
260
260
260
259
259
258
257
257
256
254
253
250
250
249
249
249
249
252
252
254
255
254
250
247
248
248
248
248
248
247
247
247
247
246
246
245
245
245
244
244
244
244
244
244
242
242
241
241
241
241
241
241
241
241
241
240
240
239
239
239
239
239
239
239
239
239
239
239
239
238
238
237
237
236
236
236
234
234
234
234
234
234
234
234
235
236
236
238
239
240
241
240
239
239
239
236
235
235
235
235
235
235
235
235
235
235
235
235
235
234
234
233
231
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
231
231
230
230
230
230
229
229
228
228
228
228
228
228
225
225
225
225
225
225
225
225
224
224
224
224
224
223
222
222
221
220
220
220
220
220
220
220
220
220
220
220
220
220
220
219
219
219
219
218
218
218
218
217
216
215
215
215
213
213
213
212
210
209
210
210
212
212
211
210
210
210
210
210
209
209
209
209
209
209
209
209
209
209
209
209
209
209
209
209
209
208
208
209
209
209
210
210
211
212
213
214
211
209
208
207
207
206
200
200
200
200
199
199
198
198
199
199
198
198
197
197
197
197
197
196
194
193
194
195
195
195
196
196
198
199
200
200
200
200
199
199
199
199
199
199
199
199
200
200
201
201
201
201
202
203
203
203
203
204
205
205
202
200
202
203
207
207
208
208
209
212
213
214
216
228
228
228
229
228
226
224
223
221
221
221
220
219
216
217
218
223
216
212
211
210
210
209
208
208
207
206
205
205
204
204
203
199
198
198
197
196
195
195
194
194
194
194
194
194
194
194
194
195
196
199
199
199
199
199
199
199
200
200
200
200
200
200
200
200
200
200
200
200
200
200
200
201
201
201
201
204
206
207
207
205
204
204
203
203
203
203
203
203
203
203
203
203
204
204
204
204
205
205
205
205
205
208
209
209
209
209
209
209
209
209
209
209
209
209
209
209
209
212
213
213
214
216
216
217
222
223
223
223
224
229
230
230
231
231
232
233
235
241
242
243
247
248
248
249
252
253
253
255
256
257
257