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