541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
540
540
540
540
540
540
540
540
540
540
539
539
539
539
539
539
538
538
538
538
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
537
538
538
538
538
538
539
539
539
539
539
539
539
540
540
540
540
540
541
541
541
541
542
542
542
542
543
543
543
543
544
544
544
545
545
545
545
546
546
546
547
547
547
547
547
547
547
547
547
547
547
547
548
548
548
548
548
548
548
548
548
548
549
549
549
549
549
549
549
549
549
549
549
549
549
549
549
549
549
549
549
548
548
547
547
547
546
546
545
544
544
544
544
544
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
543
544
544
544
544
544
545
545
545
545
546
546
546
547
547
548
548
549
549
549
550
550
551
552
553
556
558
560
561
564
565
566
568
570
570
569
568
568
566
565
565
564
563
562
561
560
560
559
561
562
564
565
567
568
569
570
572
573
575
576
578
579
580
582
583
584
585
586
588
589
591
591
593
594
595
597
598
599
600
601
603
604
605
606
608
609
610
611
611
611
611
611
610
610
610
610
610
609
609
609
609
608
608
608
608
608
607
607
607
607
606
606
606
606
606
605
605
605
604
604
603
603
602
602
601
601
601
600
600
600
602
605
607
609
611
613
617
619
621
624
626
628
630
632
632
632
632
632
632
632
632
632
632
632
632
632
632
632
632
632
634
634
635
636
637
638
639
640
641
641
642
643
644
645
646
646
648
648
649
650
651
652
652
653
654
655
656
657
658
658
659
660
660
661
662
662
663
663
664
665
665
666
666
667
668
668
669
670
671
672
672
673
674
675
676
677
678
679
680
682
683
685
686
688
689
691
692
693
694
695
696
697
698
700
701
702
703
705
706
707
707
709
709
711
712
713
713
713
713
714
714
714
714
715
715
715
715
716
716
716
716
716
716
716
716
716
716
716
716
716
716
716
716
717
718
719
719
720
721
721
722
723
724
724
725
726
727
727
729
729
731
732
733
734
735
737
738
739
740
741
742
743
744
744
744
744
744
744
744
744
744
744
744
744
744
744
744
744
745
746
747
748
748
749
750
753
754
754
754
753
753
752
752
752
751
751
750
750
749
748
748
748
747
747
746
746
746
746
746
746
746
746
746
746
746
746
746
746
746
746
746
746
747
747
747
747
748
748
748
749
749
749
749
750
750
750
750
753
755
757
759
763
765
768
770
772
774
776
779
781
783
786
786
785
785
784
784
783
783
782
782
781
781
780
780
780
780
781
782
783
784
784
785
786
786
787
788
789
790
791
792
793
795
796
797
798
799
800
800
801
802
803
804
805
806
808
809
810
811
812
814
815
816
817
818
818
819
821
823
824
825
827
828
829
831
832
834
835
837
839
840
841
842
842
842
843
843
844
844
844
844
845
845
845
846
846
846
847
848
848
849
850
851
851
852
852
853
853
854
855
856
856
857
857
858
858
859
859
859
860
860
860
861
861
862
862
862
863
863
863
863
863
863
863
863
863
863
863
863
863
863
863
862
862
862
862
862
862
862
862
862
862
862
862
862
862
862
862
862
862
863
863
864
864
865
865
866
866
866
867
867
868
868
869
870
871
871
872
872
873
873
874
875
875
877
878
879
881
882
883
884
885
887
888
889
891
891
891
891
891
891
891
891
891
891
891
891
890
890
889
889
888
887
887
886
886
885
885
885
887
889
897
900
903
905
915
917
917
916
915
915
913
913
912
911
911
912
912
913
913
914
915
921
921
922
924
924
925
925
926
926
926
926
926
925
925
925
924
924
924
923
923
923
923
922
921
920
918
917
915
914
913
912
911
910
911
912
914
916
918
920
921
923
924
925
927
928
930
930
930
929
929
928
928
928
927
927
926
926
926
926
927
929
930
931
932
933
934
935
936
937
938
939
940
941
941
942
942
942
943
943
944
944
944
945
945
945
945
945
945
945
945
945
945
944
944
944
944
944
944
944
945
945
946
947
948
948
949
950
951
952
953
954
954
954
954
954
954
954
954
954
954
954
954
954
954
954
955
955
955
955
956
956
956
956
957
957
957
957
957
958
958
958
959
959
959
959
959
959
959
959
959
960
960
960
961
962
962
963
963
964
964
965
965
965
965
965
965
966
966
966
966
966
966
966
967
969
970
971
972
973
974
975
976
977
977
978
979
980
980
980
981
982
982
983
984
984
985
986
986
986
986
986
986
986
986
986
986
986
987
987
988
988
989
989
989
989
989
989
989
989
988
988
987
987
986
986
985
984
984
983
982
982
981
980
980
979
979
978
978
977
977
976
976
976
975
975
974
974
973
973
973
973
973
973
973
973
973
974
974
974
974
974
974
975
975
975
975
975
976
976
976
976
976
977
977
977
977
977
978
978
978
978
979
979
979
979
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
980
981
981
982
982
983
984
984
985
985
986
986
986
987
987
988
988
989
989
989
990
990
990
991
991
991
992
993
993
994
995
996
996
997
997
998
999
999
1000
1001
1001
1001
1002
1002
1002
1003
1003
1004
1004
1005
1005
1005
1006
1006
1007
1008
1008
1009
1010
1011
1011
1012
1013
1013
1015
1015
1015
1015
1014
1013
1013
1012
1011
1010
1010
1009
1008
1008
1008
1008
1008
1008
1008
1007
1007
1007
1007
1007
1007
1007
1007
1008
1008
1008
1009
1009
1009
1010
1010
1010
1011
1011
1012
1012
1012
1012
1012
1011
1011
1011
1010
1009
1009
1009
1008
1008
1008
1008
1009
1009
1010
1011
1011
1012
1012
1013
1013
1014
1014
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1015
1016
1016
1016
1017
1018
1018
1019
1019
1020
1020
1021
1021
1022
1022
1023
1023
1024
1024
1025
1025
1026
1026
1027
1027
1027
1028
1029
1030
1031
1033
1033
1034
1035
1035
1037
1038
1038
1038
1038
1038
1038
1038
1037
1037
1037
1037
1037
1036
1035
1034
1032
1030
1029
1029
1028
1027
1027
1027
1026
1025
1025
1025
1024
1024
1023
1023
1023
1022
1022
1021
1020
1019
1019
1018
1018
1015
1013
1011
1010
1008
1007
1004
1001
998
997
997
996
996
995
994
994
994
993
992
992
991
991
991
991
991
991
991
991
991
991
991
991
991
991
991
991
992
992
992
992
992
992
992
992
992
992
992
992
992
992
992
991
991
990
990
990
989
989
988
988
986
985
984
982
981
979
977
976
974
973
972
970
969
968
970
973
975
978
979
983
987
989
991
994
997
999
1002
1004
1004
1003
1002
1001
1000
1000
1000
999
998
998
996
994
993
991
989
988
986
984
983
981
979
978
977
975
974
973
972
971
970
969
968
968
966
965
964
962
961
959
957
956
955
954
952
951
950
948
947
945
944
941
939
937
934
930
926
922
919
916
912
910
909
911
912
914
916
917
918
919
921
923
924
925
928
929
931
932
934
936
937
939
941
942
943
944
946
946
945
943
942
941
940
939
938
936
933
931
930
928
927
925
924
921
919
917
916
914
913
911
909
908
907
905
902
901
899
898
896
894
892
891
889
888
886
884
883
882
882
883
884
884
885
886
887
888
888
889
890
891
892
893
893
893
893
893
893
893
893
893
893
893
893
893
894
895
896
896
897
897
898
899
900
901
901
902
902
902
902
902
901
901
901
901
900
900
900
900
900
900
901
902
904
905
906
908
909
911
912
913
914
916
917
919
919
918
917
917
915
915
914
914
913
913
912
912
911
911
911
912
913
914
915
916
917
918
919
920
921
923
923
925
926
927
928
929
930
931
932
933
933
934
934
935
935
935
934
934
933
933
932
932
931
931
930
930
929
929
929
930
930
931
931
932
932
933
934
935
935
936
937
938
939
940
941
942
943
944
945
946
947
947
948
948
948
948
947
947
947
947
946
946
946
944
944
944
943
943
942
941
941
940
940
940
940
941
941
941
942
942
942
943
943
944
944
945
946
947
948
949
950
951
952
952
953
954
955
956
957
958
959
959
960
961
961
962
962
963
964
964
965
965
965
965
965
964
964
964
964
963
962
962
962
962
962
962
962
962
963
963
963
964
964
964
964
964
965
965
966
966
967
967
967
968
968
969
963
960
959
956
953
951
947
944
941
940
940
938
938
937
935
934
933
932
930
928
927
924
922
920
918
914
912
909
907
907
910
913
916
918
920
922
923
925
926
928
930
931
932
932
934
935
937
938
939
939
941
941
942
943
943
943
943
943
943
942
942
942
942
940
938
936
933
931
929
928
925
924
922
922
922
923
923
924
924
925
925
925
926
926
929
929
930
931
932
932
933
934
934
935
936
938
939
941
943
945
946
947
949
951
954
954
952
951
950
948
947
945
943
942
939
937
935
934
933
931
930
929
928
927
925
924
923
922
921
920
920
919
919
918
918
917
917
916
915
915
915
915
916
916
916
917
917
918
918
918
919
919
918
917
915
915
913
912
911
909
907
906
905
903
902
900
898
897
896
895
894
891
889
888
887
886
884
883
881
879
878
877
875
874
872
871
871
871
871
871
871
870
870
870
870
870
871
871
872
872
873
874
875
875
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
875
875
875
874
874
874
873
873
873
873
873
873
875
875
875
876
876
877
877
878
878
879
880
880
881
881
882
882
883
883
884
884
884
883
882
880
880
878
876
875
874
870
870
869
869
869
869
869
869
869
868
868
868
868
868
868
869
870
871
872
873
874
876
878
879
880
881
881
882
882
883
883
882
878
876
873
871
867
865
863
860
860
860
860
860
861
861
862
862
862
863
863
863
863
861
860
858
855
854
852
849
847
845
846
847
848
848
849
850
851
852
853
853
853
853
853
853
853
853
853
853
853
853
852
852
851
850
850
849
848
848
847
847
847
847
847
848
848
848
848
848
849
849
849
849
849
849
849
849
849
849
849
849
849
849
848
845
844
841
840
839
838
836
836
835
834
835
837
838
840
841
842
844
846
847
848
849
849
850
850
851
852
852
853
854
854
855
856
857
858
858
857
855
853
850
848
845
844
842
840
838
836
835
833
832
830
828
827
827
827
827
827
827
828
828
828
828
828
828
828
828
828
827
826
826
826
825
825
824
824
824
827
830
831
833
835
836
840
842
845
846
848
851
852
854
856
858
860
862
863
864
866
868
864
862
859
857
855
851
849
845
844
844
844
844
844
844
844
844
844
835
834
830
826
820
812
809
808
807
806
804
802
800
799
799
799
800
801
801
802
802
802
803
804
806
807
809
811
815
818
819
821
826
827
829
831
833
834
836
839
841
843
845
850
851
854
853
852
851
851
850
849
848
847
845
842
840
838
832
831
828
826
825
822
821
818
816
816
817
818
819
820
821
822
823
823
824
826
830
833
839
845
852
854
856
858
860
861
862
863
864
864
865
866
866
867
867
867
865
865
864
863
861
860
858
858
857
853
850
848
845
842
841
839
837
835
833
833
832
832
832
831
830
829
829
828
828
829
830
832
834
836
838
840
841
844
845
847
849
850
852
854
855
856
858
859
861
859
857
854
850
847
844
841
838
835
833
832
832
832
833
833
833
833
833
834
834
834
834
834
831
827
824
816
814
808
805
799
798
798
799
800
800
801
801
801
801
800
800
800
800
800
801
802
805
806
806
807
809
811
812
813
813
814
816
818
820
822
825
826
828
830
831
831
831
831
831
831
831
831
831
830
829
828
827
827
826
825
825
824
823
823
824
826
828
830
831
832
834
835
836
836
835
833
832
831
829
828
827
825
824
824
822
822
821
821
820
820
819
818
818
818
819
820
822
824
827
829
831
832
834
835
835
835
835
835
834
834
834
834
834
833
833
833
833
833
833
832
832
832
832
832
832
833
834
837
838
839
841
844
845
846
848
850
852
851
850
846
843
841
838
835
832
829
826
824
824
824
824
824
824
824
824
824
824
824
826
827
832
836
838
840
844
849
853
858
860
861
863
864
841
841
841
841
841
841
841
841
841
841
840
839
837
836
836
834
833
832
831
831
832
834
835
837
838
840
842
843
842
840
838
836
835
833
832
830
828
827
827
827
826
825
824
822
821
820
820
820
820
819
819
819
818
818
818
820
821
822
823
826
827
829
830
831
831
830
830
829
829
828
828
828
827
827
827
828
829
833
834
835
837
839
841
841
839
838
837
837
836
835
834
833
833
832
832
832
832
832
832
832
832
832
832
832
832
834
836
837
838
839
841
843
847
848
849
851
851
851
851
851
851
851
851
851
851
851
851
851
851
850
850
850
849
849
849
848
846
845
844
843
842
841
840
841
842
842
844
845
847
848
848
849
850
850
850
850
850
850
850
850
850
849
849
849
848
847
847
846
845
845
845
845
845
846
846
846
847
847
847
848
848
848
849
849
850
851
852
852
853
854
855
856
857
859
860
861
862
863
865
866
867
868
869
871
874
876
877
878
881
884
887
889
891
892
892
891
890
889
888
888
886
885
885
884
883
883
882
881
881
879
878
877
877
876
875
873
871
870
869
867
865
864
862
861
860
861
862
863
864
864
865
866
866
867
869
871
872
877
879
882
883
886
887
889
891
894
897
898
899
902
906
905
900
894
891
888
886
882
878
879
880
880
881
882
883
883
884
885
886
892
894
898
902
904
910
910
909
907
906
904
902
900
899
898
898
897
897
896
896
895
895
895
894
894
893
893
893
893
893
893
893
893
893
893
893
893
893
893
894
894
894
894
894
895
895
896
896
897
898
898
899
899
900
901
901
901
901
901
901
900
900
900
900
899
899
899
899
900
901
902
903
904
906
907
908
909
911
912
913
914
914
915
915
915
916
917
917
918
918
918
918
917
917
916
916
916
915
915
914
914
913
913
913
913
913
913
913
913
913
913
913
913
913
913
913
913
913
914
914
914
914
914
914
915
916
916
917
918
918
920
921
922
923
923
924
925
927
928
929
930
931
932
933
934
935
936
937
938
939
942
943
946
948
948
950
954
955
955
956
956
957
957
957
958
958
958
959
959
959
959
959
960
960
960
961
961
961
961
961
961
961
960
959
959
958
957
957
956
955
954
954
953
952
952
952
952
952
953
953
953
954
954
954
955
955
955
956
956
957
957
958
959
959
959
960
960
961
961
962
963
963
963
964
964
965
965
966
966
967
967
968
968
969
969
970
971
971
972
972
973
973
974
974
975
975
976
977
977
978
979
979
980
980
981
982
983
984
985
985
987
988
989
990
991
991
992
993
994
995
997
1001
1002
1004
1006
1008
1010
1012
1014
1015
1018
1020
1021
1022
1024
1025
1026
1028
1029
1031
1031
1033
1034
1032
1030
1028
1027
1026
1025
1023
1022
1019
1018
1017
1015
1014
1014
1014
1013
1013
1013
1013
1012
1012
1012
1012
1012
1011
1010
1009
1008
1007
1006
1004
1003
1001
1000
1000
1000
1000
1000
999
999
999
999
999
999
999
999
1000
1001
1002
1002
1003
1004
1005
1006
1007
1008
1010
1012
1012
1012
1013
1013
1013
1014
1014
1013
1010
1005
1002
995
993
991
986
984
979
978
977
976
975
974
974
973
973
975
977
981
986
990
992
997
999
1003
1004
1008
1009
1012
1013
1014
1015
1012
1007
1005
1000
987
989
993
996
1001
1004
1000
997
990
986
982
975
968
963
961
957
951
948
940
937
938
940
942
944
947
949
950
953
953
953
952
951
950
950
948
948
948
943
939
936
929
923
920
916
915
913
909
908
907
906
905
906
908
909
910
911
912
914
915
917
919
918
915
914
909
907
904
903
902
901
901
900
900
899
899
900
902
904
904
906
907
909
909
908
907
906
905
904
903
901
900
899
898
897
896
895
894
895
896
897
898
898
900
902
903
899
897
893
891
888
886
883
881
879
878
884
892
896
903
907
912
920
921
922
923
924
925
925
926
925
924
923
922
922
921
920
918
911
907
904
898
893
890
887
887
889
890
891
893
895
896
897
896
894
892
890
889
887
885
883
882
881
880
878
876
875
873
872
870
869
868
867
865
865
865
865
865
865
865
865
865
865
866
866
867
867
867
864
860
856
854
852
848
846
843
840
834
829
823
821
818
814
812
812
810
810
808
807
806
805
804
803
802
800
799
798
797
796
798
799
801
803
804
808
812
814
809
804
801
799
796
791
790
793
795
800
804
808
810
810
803
796
792
788
785
779
778
778
778
778
778
778
778
779
780
781
782
783
785
787
787
787
786
785
785
784
784
785
787
789
790
793
794
797
797
798
799
799
800
801
802
804
805
806
807
808
808
807
807
806
804
804
803
802
802
800
798
796
794
792
790
789
785
784
784
783
783
783
782
781
780
779
777
776
775
772
770
767
763
760
759
758
757
756
755
753
752
752
751
749
749
748
747
747
746
746
745
745
744
742
741
740
739
739
737
736
735
736
737
739
740
741
742
743
739
735
731
729
725
724
724
724
724
724
724
724
725
725
725
725
725
725
725
723
721
719
718
717
714
714
713
711
710
709
708
707
705
705
706
707
708
709
709
711
711
709
707
705
702
700
697
696
697
699
701
703
705
706
706
709
711
715
719
720
724
726
731
736
733
727
723
717
715
712
708
707
707
707
707
707
707
707
707
705
703
700
697
695
694
690
690
690
690
690
694
698
700
704
706
711
712
713
714
715
716
717
719
720
719
716
715
712
710
707
706
704
703
701
700
698
697
696
695
695
695
695
695
695
695
696
696
697
697
698
699
699
700
701
700
699
697
696
694
693
691
690
689
690
691
692
694
695
696
697
695
693
691
687
685
683
679
677
678
678
679
679
680
681
682
683
683
684
684
685
685
686
686
686
685
685
684
683
682
681
680
680
678
677
675
673
671
669
668
668
668
668
669
669
669
669
669
669
669
669
669
669
669
669
669
667
664
663
661
660
657
655
654
653
656
663
664
666
669
671
674
676
675
673
670
669
667
665
663
660
657
656
654
654
654
655
655
656
656
656
657
659
661
664
666
669
670
670
670
670
670
670
669
669
668
667
667
666
666
666
667
668
669
670
671
672
672
672
672
672
672
672
671
669
666
664
661
660
658
655
655
657
661
665
667
671
676
678
676
674
669
663
660
656
653
648
649
651
655
658
660
664
665
669
671
671
669
667
665
664
663
662
660
658
657
656
655
654
654
654
653
652
651
650
649
648
646
644
642
641
639
638
636
640
644
647
651
654
658
660
662
663
663
663
663
662
662
662
661
661
661
661
661
661
661
661
661
661
661
661
661
660
659
659
658
657
656
655
655
653
650
648
647
644
643
641
639
638
637
636
633
632
630
628
626
626
626
626
626
626
626
626
626
627
628
630
632
633
635
636
638
639
642
643
645
646
646
647
647
647
648
648
649
649
649
649
648
647
647
645
644
643
642
641
639
638
635
634
633
631
628
626
623
620
621
622
624
625
626
626
627
628
630
630
631
632
633
633
635
636
636
637
637
637
636
636
636
635
635
635
635
636
636
637
638
638
639
640
640
636
633
631
627
624
620
618
616
617
618
620
622
623
625
626
628
630
631
632
633
635
635
636
637
638
636
630
623
620
615
609
604
602
598
595
595
595
595
595
595
595
595
595
595
595
595
596
599
602
605
608
609
611
614
617
618
619
620
622
623
624
625
626
627
628
630
630
631
631
632
632
633
634
635
636
636
637
637
637
637
636
636
636
635
635
634
633
632
631
629
627
626
623
622
619
618
615
613
613
612
612
611
610
609
609
608
607
607
606
606
606
605
605
604
604
603
603
603
603
603
603
604
604
604
605
605
605
606
606
606
606
606
606
606
607
607
609
609
610
611
611
612
613
613
613
613
613
612
612
612
611
611
611
610
610
610
610
609
609
609
609
609
608
608
608
608
608
608
608
608
608
609
612
615
616
617
619
620
623
624
626
627
628
630
631
633
634
635
636
638
637
636
635
634
633
630
630
628
627
627
630
632
637
640
643
647
649
651
653
653
650
649
647
645
644
639
638
637
636
636
636
636
637
637
637
638
638
638
638
638
638
638
637
637
637
637
637
637
636
636
636
637
637
638
640
640
642
643
644
645
645
646
646
646
646
647
647
647
647
647
648
648
648
648
648
647
646
645
645
644
644
643
642
641
639
637
636
634
633
631
629
628
627
626
625
623
625
627
630
632
635
637
639
638
637
636
634
632
631
630
628
626
625
622
620
619
618
616
614
612
610
608
605
604
601
600
598
596
595
593
590
588
586
586
585
585
584
583
582
582
582
581
581
581
580
580
580
579
578
577
576
575
575
574
574
573
572
572
571
570
570
569
569
569
568
567
567
566
566
565
565
565
564
563
563
563
562
562
562
562
562
562
562
562
562
562
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
563
562
562
562
562
562
562
562
562
562
562
562
562
561
561
561
561
561
560
560
560
560
560
559
559
559
559
559
559
559
559
559
559
558
558
558
558
558
557
557
557
557
557
556
556
556
556
556
556
556
556
556
555
555
555
555
555
555
554
554
554
554
554
553
553
553
553
553
553
553
553
553
553
552
552
552
551
551
551
550
550
550
550
549
549
549
549
549
548
548
548
548
548
548
548
548
548
548
548
548
548
548
548
548
547
547
547
547
546
546
546
546
545
545
545
545
545
545
545
545
545
545
545
545
545
545
545
544
544
544
544
544
544
544
544
544
544
543
543
542
542
542
541
541
541
541
541
541
542
542
542
542
542
543
543
543
543
543
544
544
544
544
544
544
544
544
544
544
543
543
543
542
542
542
542
542
542
542
542
542
542
542
542
542
542
542
541
541
541
541
541
541
541
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
539