846
847
848
849
849
851
863
864
867
870
873
872
871
871
871
873
873
873
874
875
875
876
878
879
879
881
885
888
888
886
885
884
884
883
878
872
871
870
877
877
877
877
878
878
879
884
891
897
899
900
900
901
901
901
901
901
901
901
901
901
901
902
903
903
908
910
912
912
913
914
915
916
920
921
922
923
928
933
935
936
936
936
936
935
935
935
935
935
935
935
935
938
939
942
943
948
950
952
955
959
963
971
973
973
973
972
972
973
973
975
992
1003
1004
1005
1005
1006
1007
993
992
991
990
992
993
996
997
998
1000
1002
1002
1002
1003
1004
1005
1005
1006
1007
1012
1018
1019
1019
1028
1033
1034
1035
1036
1041
1041
1042
1042
1043
1045
1046
1060
1063
1064
1066
1067
1071
1069
1068
1068
1070
1071
1075
1075
1076
1076
1082
1084
1086
1091
1092
1093
1094
1094
1098
1099
1099
1099
1100
1100
1100
1100
1100
1100
1100
1100
1100
1100
1099
1099
1098
1098
1098
1098
1097
1097
1096
1095
1101
1102
1103
1103
1103
1106
1108
1107
1108
1109
1110
1114
1115
1116
1117
1117
1118
1119
1121
1122
1123
1125
1129
1129
1129
1129
1129
1129
1128
1127
1125
1120
1119
1116
1115
1115
1111
1110
1109
1104
1102
1102
1099
1092
1091
1091
1083
1081
1079
1078
1075
1073
1070
1069
1054
1051
1044
1041
1041
1039
1037
1036
1035
1034
1033
1032
1031
1031
1030
1030
1030
1027
1025
1026
1027
1027
1028
1029
1029
1029
1029
1028
1027
1026
1024
1034
1034
1034
1035
1033
1033
1032
1030
1029
1028
1027
1029
1032
1034
1034
1034
1038
1040
1042
1045
1044
1041
1039
1039
1033
1025
1024
1017
1016
1012
1009
999
994
990
990
990
991
993
994
994
994
993
991
990
988
986
984
977
977
977
978
978
977
975
969
962
962
960
957
953
952
947
947
946
944
943
941
936
936
934
934
932
931
924
924
922
922
921
920
915
915
915
915
915
914
914
913
913
912
910
906
902
899
898
896
893
888
886
886
885
881
878
878
876
876
876
876
876
875
875
872
871
871
868
865
862
859
857
851
847
845
840
840
838
838
838
836
835
834
834
834
833
831
831
831
830
830
830
829
828
827
826
825
824
823
819
819
815
800
800
800
800
800
801
801
802
802
802
801
801
801
800
800
799
796
793
794
792
791
786
784
783
777
777
781
781
781
780
778
778
780
781
782
781
780
779
778
778
778
778
779
780
781
782
783
785
787
787
789
788
787
787
787
786
786
784
783
782
782
782
782
782
782
782
782
783
784
784
785
785
785
785
785
786
786
787
786
783
782
782
781
780
779
776
775
775
775
775
775
779
780
782
784
789
788
788
788
788
788
787
787
789
790
790
789
789
789
789
789
789
788
787
786
786
784
784
774
774
774
775
779
780
781
781
780
780
780
780
780
780
780
780
780
780
780
780
780
780
779
774
772
771
769
764
763
763
763
758
757
755
754
750
749
747
746
745
742
742
740
737
734
731
724
724
722
722
719
718
717
716
715
712
710
706
704
704
704
704
704
703
702
700
699
698
697
677
675
675
674
673
676
676
677
678
672
662
664
668
669
669
670
672
674
675
678
680
691
692
692
693
693
694
695
699
700
703
705
708
710
712
718
720
723
724
729
729
730
731
732
733
734
736
737
744
747
749
758
759
760
763
763
763
765
765
765
766
766
766
766
766
766
767
769
770
770
772
774
778
781
782
784
788
790
798
800
804
804
803
801
800
799
799
800
802
802
803
806
807
810
811
812
812
811
810
808
807
802
799
798
801
804
805
808
807
807
807
807
808
812
813
813
814
816
815
814
812
808
807
806
802
801
799
796
795
794
792
791
791
790
790
790
790
790
791
792
795
794
794
792
792
794
795
795
795
797
799
799
799
800
800
800
800
802
802
805
806
809
810
810
811
813
813
814
814
814
814
814
814
814
813
812
811
810
809
808
807
806
805
802
802
801
801
798
798
798
797
796
793
793
791
789
789
785
782
780
777
774
772
768
764
759
756
745
740
736
732
723
715
713
711
705
701
701
701
701
701
701
701
701
702
702
702
698
695
688
687
687
686
685
678
677
676
675
675
674
674
667
665
664
662
658
651
651
652
652
653
651
642
640
639
638
638
637
635
635
634
634
634
633
632
631
630
630
629
628
626
626
626
625
623
622
621
618
616
613
612
612
612
612
612
612
612
611
611
611
611
611
611
611
611
612
607
606
604
588
586
584
583
581
580
579
577
576
575
573
573
573
571
571
570
569
569
568
567
566
566
565
564
563
559
557
557
558
564
564
563
560
558
554
553
551
549
549
550
552
558
559
561
561
563
565
567
573
586
587
588
592
592
589
588
587
584
583
582
582
582
582
582
581
580
579
578
575
574
573
564
557
553
552
550
549
544
542
539
539
539
539
539
539
537
537
537
537
537
537
538
541
541
542
545
558
553
547
545
531
530
530
529
529
530
534
537
541
559
564
563
560
557
544
544
546
552
557
562
568
569
566
561
555
554
547
544
542
543
546
541
516
516
513
510
505
502
500
500
500
500
493
487
487
488
488
485
485
480
480
480
480
480
480
480
481
481
481
480
480
480
480
480
480
479
479
479
479
473
464
460
470
466
462
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
462
461
460
460
459
459
458
457
449
447
440
440
439
440
440
440
440
438
437
424
421
420
420
420
420
420
420
420
434
456
461
462
462
462
462
461
460
459
457
457
455
453
452
450
447
441
440
440
440
440
440
440
440
440
440
440
441
441
440
440
440
440
440
440
441
442
442
442
442
442
443
444
445
449
452
452
453
453
455
456
456
456
456
456
456
458
459
460
463
471
474
479
484
483
482
482
480
479
479
481
484
489
491
493
493
491
490
492
493
493
493
494
494
494
494
494
495
496
497
498
498
498
497
497
496
497
499
500
501
503
510
513
516
518
522
529
531
533
539
545
547
547
545
554
559
562
563
563
562
560
560
561
562
582
585
587
591
593
597
601
603
604
603
593
591
590
591
593
597
599
601
601
602
602
604
605
607
608
609
610
610
610
610
610
612
617
618
620
620
621
621
625
625
624
624
626
626
626
627
629
630
632
634
635
636
638
639
640
640
640
640
640
640
640
641
641
653
656
656
656
657
657
658
654
652
655
655
655
654
654
654
654
654
654
654
654
655
655
655
655
655
655
655
654
653
653
652
651
651
651
651
651
651
648
643
641
641
630
628
623
623
623
624
625
627
629
638
640
637
636
635
635
634
632
627
625
617
616
617
620
623
624
625
626
627
629
632
634
635
639
640
643
646
652
651
649
649
649
649
649
649
649
650
651
651
652
652
654
656
656
657
657
674
677
679
682
686
690
693
695
697
697
709
716
716
717
719
722
726
737
741
743
746
751
759
762
760
758
752
753
755
756
757
761
764
769
783
795
806
815
817
819
819
823
826
828
835
837
838
840
841
843
844
846
848
849
850
854
856
858
859
861
862
866
868
870
872
874
879
882
884
884
885
888
892
897
900
903
907
910
914
916
917
917
918
920
922
924
925
926
928
930
932
941
944
947
951
953
955
957
958
960
962
963
966
967
969
972
973
977
979
983
983
985
989
992
993
995
996
997
997
997
997
997
999
1000
1004
1005
1006
1007
1008
1011
1018
1023
1024
1025
1026
1027
1029
1032
1037
1037
1038
1041
1048
1062
1066
1069
1075
1075
1076
1076
1078
1079
1078
1074
1071
1072
1072
1076
1080
1084
1087
1089
1091
1093
1094
1097
1098
1100
1114
1118
1119
1120
1120
1120
1120
1120
1120
1120
1114
1110
1104
1098
1098
1098
1097
1097
1097
1094
1093
1092
1090
1087
1086
1084
1083
1083
1080
1079
1079
1078
1078
1078
1078
1078
1079
1078
1070
1068
1065
1062
1059
1057
1047
1044
1041
1039
1037
1026
1017
1016
1016
1014
1013
1012
1008
1006
1004
1000
999
998
997
997
997
997
997
997
996
996
996
994
991
988
978
979
980
983
987
988
985
977
974
967
959
957
956
950
948
946
946
946
946
946
949
947
945
937
937
937
937
937
936
929
916
895
895
895
895
895
895
881
878
875
872
870
856
855
853
852
851
851
851
851
851
852
852
852
854
857
858
858
858
861
861
870
870
872
873
875
876
877
880
884
885
886
887
887
888
892
898
903
904
904
905
906
906
906
906
907
907
908
908
908
908
908
909
919
922
921
920
920
923
928
934
947
948
948
953
954
957
959
961
961
964
965
975
994
996
999
999
1000
1000
1000
1006
1007
1009
1013
1018
1020
1020
1020
1020
1020
1023
1024
1027
1039
1039
1039
1039
1040
1040
1040
1040
1043
1058
1059
1060
1076
1077
1080
1082
1098
1098
1099
1099
1100
1100
1100
1100
1100
1100
1100
1100
1099
1099
1099
1099
1099
1098
1097
1091
1090
1089
1088
1082
1080
1078
1071
1069
1068
1067
1066
1065
1064
1063
1062
1061
1061
1059
1059
1058
1057
1057
1055
1054
1054
1053
1053
1053
1053
1052
1051
1050
1049
1048
1047
1046
1045
1044
1043
1043
1042
1041
1040
1039
1038
1037
1036
1034
1032
1030
1023
1022
1018
1017
1016
1014
1011
1008
1006
1005
1004
1003
1002
989
973
973
973
973
972
970
969
967
964
954
952
952
951
951
951
951
952
952
953
953
954
954
956
956
958
965
970
975
975
975
979
982
983
985
985
985
985
986
992
994
996
996
996
997
998
999
1000
1005
1007
1008
1015
1016
1018
1018
1018
1022
1025
1026
1030
1034
1051
1053
1062
1063
1063
1062
1061
1060
1060
1060
1060
1060
1060
1060
1060
1061
1062
1066
1071
1076
1077
1080
1086
1088
1091
1094
1098
1099
1105
1108
1111
1113
1115
1116
1120
1124
1125
1126
1122
1120
1118
1116
1116
1116
1114
1113
1110
1104
1099
1097
1095
1093
1093
1091
1091
1085
1080
1076
1073
1072
1071
1069
1068
1068
1067
1067
1066
1066
1066
1065
1062
1062
1061
1059
1058
1056
1054
1052
1044
1043
1043
1043
1040
1037
1035
1035
1035
1034
1033
1032
1029
1026
1024
1019
1017
1014
1013
1008
1003
1000
1000
1001
1002
1003
1003
1005
1006
1003
993
986
985
984
982
979
980
982
986
986
986
979
972
966
952
933
923
908
906
901
897
887
883
862
860
859
858
856
858
860
861
865
865
864
863
862
858
850
849
848
847
847
846
845
842
841
838
834
829
826
824
820
816
813
812
811
809
808
808
807
805
804
802
802
802
802
802
801
801
800
795
792
790
788
782
766
762
760
759
757
753
752
751
750
749
750
751
752
745
742
740
737
735
731
728
719
712
709
708
707
704
704
703
703
701
699
691
688
687
685
681
677
676
674
672
670
667
666
665
664
661
655
652
650
646
644
642
641
636
635
631
626
623
614
611
610
608
604
601
599
598
595
593
590
588
584
583
583
582
580
580
580
580
580
580
581
581
580
579
579
578
577
575
575
575
575
575
577
578
579
579
579
578
578
577
577
574
573
573
573
574
575
575
570
568
566
563
561
559
557
557
557
557
556
555
555
554
554
553
553
553
554
556
557
557
556
554
554
554
554
554
554
555
555
555
555
555
556
556
556
557
557
557
560
561
561
561
562
562
566
566
579
580
580
581
582
583
587
588
589
589
589
589
589
589
589
589
590
594
596
597
599
600
601
602
603
610
611
613
616
617
618
619
620
620
622
629
638
639
640
641
642
655
657
659
661
662
663
666
667
669
672
674
675
678
679
679
687
689
690
692
694
694
695
695
696
696
697
697
698
698
699
701
705
717
721
723
724
726
737
738
739
740
741
742
742
742
742
742
743
745
748
752
754
758
757
756
754
755
757
760
763
769
770
775
774
773
772
772
772
770
769
768
770
771
772
775
775
775
774
773
772
776
780
785
794
799
802
815
816
813
813
811
811
810
809
808
808
807
807
808
809
812
813
814
815
816
817
818
818
819
820
820
820
821
822
830
834
834
833
832
831
830
831
833
835
831
827
827
828
829
831
833
834
836
841
842
844
847
849
851
855
862
869
873
874
877
879
883
891
894
893
892
891
890
888
888
890
897
901
896
890
884
882
881
881
880
880
880
880
880
882
884
886
886
888
890
892
895
900
900
900
900
900
900
900
900
900
900
900
903
903
904
907
911
915
918
924
933
935
935
938
940
942
942
941
941
940
926
922
920
919
917
911
911
911
910
909
908
906
905
903
899
898
898
889
886
883
881
877
876
876
875
875
875
864
861
858
858
859
860
860
859
859
858
857
852
851
849
846
845
842
842
842
842
842
842
842
840
839
838
837
836
832
830
821
819
815
813
810
809
809
809
808
808
807
807
806
805
805
804
798
797
795
790
790
788
786
784
783
782
782
781
781
781
774
775
773
771
760
758
750
749
749
749
749
748
748
743
740
740
740
739
739
737
737
736
736
736
736
735
735
737
738
739
739
740
740
740
740
740
740
741
741
741
741
741
740
741
741
744
745
746
752
762
765
767
771
789
791
791
791
792
789
789
788
788
788
788
788
789
790
793
791
790
790
790
790
790
790
790
790
791
791
791
791
791
792
793
794
794
795
796
796
796
795
795
795
795
796
797
797
797
798
798
798
798
798
798
797
797
797
797
797
797
797
801
803
806
807
807
807
807
807
806
806
807
808
812
818