672
673
673
671
671
668
668
666
666
666
662
663
663
661
661
660
660
660
660
660
659
659
659
655
655
655
657
659
661
661
662
661
660
653
655
659
660
666
661
659
660
662
665
675
672
667
664
665
658
659
654
647
647
651
680
660
656
652
643
639
639
639
640
637
638
637
638
637
638
638
638
636
637
636
634
635
633
632
629
634
632
633
634
634
634
635
635
633
632
629
631
628
628
629
633
635
634
647
633
640
641
635
631
626
623
622
622
622
622
621
621
619
619
619
620
621
621
621
625
630
621
621
621
620
620
623
624
626
628
629
631
634
635
642
644
646
648
652
661
665
668
669
669
669
670
671
671
672
670
675
681
685
687
693
698
698
698
698
698
703
707
710
711
712
714
715
718
724
727
736
739
742
747
738
733
732
766
779
776
769
771
782
773
773
773
773
793
811
817
819
820
819
812
825
821
817
817
817
817
818
824
863
867
871
864
840
829
843
846
848
862
871
876
879
887
889
894
896
897
897
891
915
915
915
915
918
923
925
945
934
940
943
946
951
964
968
970
973
976
979
978
978
978
979
983
987
990
975
973
973
973
981
983
996
988
981
966
958
955
955
952
951
957
958
958
957
954
954
941
939
934
934
934
933
928
925
922
919
919
919
919
919
923
928
929
929
929
931
930
915
899
898
899
901
897
896
890
889
892
892
890
889
874
872
871
868
858
839
836
833
828
826
822
818
812
808
807
808
806
793
794
794
794
772
766
763
761
761
761
761
761
758
754
754
753
753
751
716
716
716
711
708
708
705
705
704
698
698
698
698
697
696
696
693
692
695
695
700
702
706
691
686
686
685
682
683
692
694
692
690
683
682
680
678
673
673
671
670
670
671
677
680
683
688
692
693
689
688
686
682
682
683
686
689
689
689
689
690
687
681
668
657
658
662
660
671
671
672
673
673
673
674
670
671
673
673
673
674
675
673
674
665
664
659
659
658
655
642
642
643
645
646
646
647
652
651
650
651
651
651
649
647
647
647
649
651
652
655
665
659
659
660
659
658
653
651
652
652
647
648
649
647
648
650
650
650
650
650
650
649
651
658
645
648
650
642
635
636
630
630
627
626
626
623
623
623
620
623
625
630
643
649
648
645
643
641
639
637
634
632
631
629
622
617
615
615
615
614
614
612
611
613
615
613
616
620
617
612
612
612
609
608
608
608
608
608
617
617
621
620
619
626
626
624
620
615
615
609
612
617
617
616
617
610
610
614
613
611
616
613
614
615
612
605
599
598
598
599
599
600
601
602
602
604
604
603
602
613
618
601
599
597
596
594
594
595
595
595
595
596
596
597
599
600
601
603
603
604
605
607
608
610
610
611
621
630
632
642
657
657
656
659
662
667
676
677
680
682
684
686
688
696
699
702
729
730
726
726
728
728
744
751
756
756
752
747
738
741
743
745
746
751
758
764
773
778
778
778
778
778
809
828
821
812
802
800
798
790
784
792
809
810
812
814
815
814
805
807
813
822
828
836
838
850
850
851
852
853
855
868
874
876
880
880
880
881
897
881
873
883
917
933
945
951
951
951
948
947
957
969
974
977
980
980
980
980
980
983
987
998
1006
1015
1016
1016
1016
1016
1016
1019
1021
1024
1027
1038
1038
1038
1038
1038
1042
1046
1047
1050
1060
1067
1078
1069
1065
1067
1088
1093
1097
1100
1103
1109
1111
1114
1114
1115
1142
1142
1143
1147
1147
1150
1159
1167
1171
1181
1187
1197
1207
1212
1219
1220
1221
1222
1230
1246
1252
1254
1256
1251
1255
1260
1265
1265
1265
1265
1265
1265
1271
1275
1279
1283
1290
1293
1305
1306
1304
1301
1318
1326
1339
1339
1339
1344
1353
1355
1357
1359
1359
1360
1361
1361
1360
1359
1359
1377
1382
1396
1401
1402
1402
1402
1402
1403
1404
1407
1415
1416
1422
1432
1437
1439
1442
1444
1444
1444
1448
1456
1458
1460
1461
1463
1464
1466
1467
1470
1470
1477
1481
1486
1488
1489
1491
1492
1489
1489
1488
1489
1493
1501
1508
1509
1509
1510
1511
1512
1518
1521
1523
1524
1528
1533
1533
1532
1532
1534
1535
1536
1536
1528
1527
1527
1528
1529
1520
1519
1514
1513
1512
1502
1500
1491
1484
1484
1484
1484
1484
1484
1479
1478
1475
1476
1473
1464
1467
1468
1468
1468
1468
1468
1465
1464
1462
1454
1426
1423
1414
1406
1404
1391
1387
1377
1375
1373
1376
1366
1352
1351
1351
1349
1345
1342
1340
1338
1336
1336
1336
1335
1334
1333
1322
1319
1314
1295
1290
1283
1282
1281
1281
1281
1281
1281
1282
1282
1282
1282
1282
1282
1278
1273
1272
1270
1269
1268
1267
1267
1267
1261
1254
1236
1233
1232
1232
1230
1223
1212
1216
1217
1219
1219
1215
1204
1199
1192
1184
1182
1180
1178
1177
1175
1175
1174
1174
1173
1173
1156
1153
1152
1150
1148
1146
1144
1137
1137
1136
1135
1134
1131
1127
1113
1113
1113
1113
1113
1113
1114
1106
1094
1089
1087
1086
1085
1083
1085
1085
1081
1099
1110
1130
1136
1136
1095
1069
1031
1026
1032
1035
1024
1017
968
957
957
958
959
962
970
977
982
970
958
956
955
955
955
955
958
988
998
1007
1007
1007
1007
1007
1007
1007
1007
1007
1007
1007
1007
998
965
958
948
897
843
834
840
840
814
814
819
827
838
814
794
795
802
804
809
815
810
798
799
802
803
805
795
786
775
780
794
791
776
768
769
772
774
768
755
753
753
751
747
746
749
751
752
741
739
737
735
731
726
718
716
714
711
703
699
697
671
664
667
670
672
673
679
675
672
652
642
633
642
637
627
614
610
605
605
605
605
607
613
614
615
611
610
603
601
599
598
584
582
575
571
568
568
569
569
569
568
567
563
563
563
563
563
563
563
568
569
579
590
590
602
607
606
602
590
599
613
608
603
622
616
613
611
614
614
615
622
621
620
619
619
627
627
630
640
638
631
631
632
632
631
639
644
647
646
643
640
641
640
642
645
646
646
652
651
652
654
655
657
658
658
660
685
712
780
760
774
746
739
716
705
704
700
699
699
697
692
698
697
697
697
709
713
717
718
716
718
719
729
734
734
784
790
770
768
764
760
758
758
765
762
768
771
775
777
786
791
782
778
776
781
780
778
776
795
791
788
789
786
786
786
786
786
786
785
793
798
800
801
811
811
811
812
812
808
814
817
815
815
810
815
815
815
815
815
815
815
815
788
787
787
787
791
794
789
782
780
757
754
747
747
748
745
741
740
739
734
732
730
724
720
719
717
716
717
720
720
721
723
712
708
706
708
711
715
712
713
719
721
721
729
734
737
737
740
744
747
751
753
747
769
761
756
763
763
761
758
756
765
771
775
773
769
769
770
772
775
776
777
778
777
765
763
762
758
755
751
750
748
743
736
751
749
749
749
760
759
751
746
731
745
747
747
746
745
745
749
751
753
752
751
748
748
757
767
767
767
773
771
775
783
787
792
795
797
797
795
794
794
795
806
805
806
810
814
823
827
831
840
840
840
840
840
840
842
845
850
852
852
852
853
857
869
866
858
851
850
849
848
851
851
847
850
848
849
849
860
855
853
856
858
858
855
851
851
853
858
854
855
857
864
859
855
857
854
845
845
852
857
862
849
840
839
838
838
837
840
841
842
841
837
839
839
837
839
835
833
831
826
824
823
822
823
819
816
823
827
810
808
807
805
802
801
800
798
795
794
798
798
798
800
797
793
793
792
791
790
790
790
788
783
783
780
779
780
778
778
776
773
772
772
772
771
770
769
767
764
762
756
755
754
751
750
750
749
749
749
748
746
746
746
746
741
741
741
740
741
742
743
744
747
747
744
742
742
740
738
735
732
731
729
729
729
723
725
728
728
727
726
733
731
720
721
726
727
732
718
718
710
709
710
706
715
719
714
713
712
716
718
715
709
702
699
704
705
698
687
684
685
681
688
695
697
692
691
691
691
692
692
690
677
673
670
670
671
670
668
668
667
664
666
669
669
664
661
660
658
656
658
667
658
660
667
669
670
667
662
656
649
650
648
646
645
643
641
637
634
632
632
631
631
630
630
633
632
631
641
641
633
637
639
644
644
645
647
644
642
642
642
642
642
639
636
635
631
629
629
628
627
626
626
621
621
621
622
622
621
620
619
619
619
617
614
614
616
612
612
611
611
611
611
609
609
609
616
604
610
609
607
602
597
598
597
597
597
601
591
592
592
593
595
596
599
602
594
593
598
597
587
595
590
600
588
583
587
586
586
586
585
584
581
581
582
581
576
575
576
576
576
575
578
576
578
579
579
578
569
565
563
563
563
562
561
561
561
561
557
557
556
550
548
546
549
547
546
541
540
544
547
564
552
559
553
551
552
556
561
563
566
554
557
557
557
555
555
560
560
563
567
559
560
561
562
564
562
568
565
566
569
567
562
581
577
572
567
565
563
560
562
550
556
556
553
553
552
552
552
553
555
556
557
557
557
556
555
555
553
553
553
553
552
552
552
551
548
548
548
548
550
549
544
544
543
539
539
539
538
537
540
537
541
536
536
536
535
535
539
536
535
535
536
536
537
540
534
537
533
536
538
538
539
542
544
545
546
547
548
550
553
557
558
558
559
559
559
559
559
564
567
569
572
578
584
586
590
591
593
603
606
606
606
607
607
611
617
622
625
627
628
631
634
637
638
639
639
639
637
634
634
653
654
648
651
656
650
647
644
644
642
641
640
625
628
632
633
638
641
641
639
637
640
631
629
640
647
640
639
636
634
619
624
628
631
626
619
618
618
624
625
623
628
638
641
644
646
645
638
635
633
630
627
626
624
623
630
636
643
642
631
628
629
639
649
655
655
645
631
632
633
638
641
641
639
639
639
639
640
677
680
671
667
661
657
656
659
665
667
668
669
662
659
655
657
661
664
670
674
674
660
668
670
682
690
695
688
682
678
678
677
677
678
679
679
679
678
678
664
662
657
653
652
652
653
654
653
651
649
647
631
633
632
625
620
594
587
587
574
570
578
578
575
574
572
557
553
554
556
553
551
549
546
545
544
540
539
539
539
534
528
530
531
534
546
541
557
554
551
546
537
532
553
570
575
576
546
564
556
557
575
586
581
572
582
587
556
554
554
563
553
549
553
555
563
593
580
571
571
585
585
585
594
603
610
601
601
605
607
604
607
607
610
622
622
628
631
637
643
646
652
652
653
656
666
667
670
672
677
685
683
680
679
682
689
688
686
688
691
698
701
728
754
755
750
741
741
744
753
753
753
759
779
786
786
793
794
798
818
831
832
837
843
860
872
877
883
892
903
904
906
908
911
915
911
919
927
945
950
952
954
956
960
966
970
970
969
968
967
965
963
988
993
998
1004
1010
1015
1018
1028
1030
1034
1050
1057
1051
1051
1058
1074
1103
1134
1241
1289
1366
1373
1433
1456
1465
1197
1171
1088
1064
1054
1047
1032
1030
1028
1026
1025
1023
1022
1032
1044
1049
1030
1024
1020
1014
1007
1005
1005
1005
1005
1005
1010
1011
1013
1015
1002
981
968
956
938
935
931
929
926
925
924
919
925
928
929
931
933
925
901
901
901
901
899
893
881
879
875
873
871
865
862
853
850
846
846
852
858
860
859
856
854
848
847
846
839
824
819
819
816
810
801
801
801
801
801
800
799
799
784
787
787
787
787
785
784
788
781
776
775
775
757
751
750
752
736
733
732
732
730
728
726
725
724
722
715
714
717
710
705
703
695
698
687
687
700
698
698
698
690
688
695
704
712
728
734
726
736
738
738
739
739
739
739
738
738
739
740
744
752
759
767
775
777
776
774
761
754
774
790
790
792
793
791
787
784
767
750
724
724
746
761
765
769
773
779
778
758
745
726
718
701
701
714
733
732
732
731
731
719
710
701
698
688
682
680
678
676
674
663
659
658
658
659
656
649
644
639
636
628
626
618
616
611
611
612
612
611
607
601
595
582
562
564
545
543
540
535
529
529
529
529
530
538
544
545
545
544
548
548
547
548
548
545
543
545
545
530
522
518
508
505
502
500
496
490
486
484
485
483
481
479
477
471
465
464
462
461
457
451
450
449
450
450
450
450
449
446
443
441
439
438
437
437
437
436
436
435
433
427
428
431
431
431
431
431
430