396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
397
397
397
397
397
398
398
398
399
400
400
400
400
400
400
400
400
400
400
400
400
401
401
401
402
402
404
405
405
405
405
405
405
405
405
405
405
406
406
406
407
407
407
407
408
408
408
408
408
409
409
409
409
409
409
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
411
411
413
414
416
417
417
418
419
419
419
420
421
421
422
422
423
423
423
424
425
426
427
428
428
429
429
429
430
431
435
437
437
439
442
444
445
446
451
452
454
456
459
460
461
462
463
464
465
466
468
469
470
474
475
475
477
479
482
486
488
489
490
491
491
492
494
494
495
496
497
498
499
501
501
502
502
503
503
504
504
505
505
506
506
503
503
503
502
502
502
498
491
492
493
494
494
495
496
496
496
497
497
498
501
503
504
506
507
509
510
510
510
510
510
510
510
510
510
511
516
516
517
518
518
523
525
525
526
527
528
529
530
530
529
529
528
528
528
528
527
527
526
526
526
526
526
526
526
526
526
526
526
525
525
524
524
523
522
522
521
523
524
524
526
527
530
532
533
534
536
537
537
538
538
539
540
541
541
541
541
541
541
541
541
542
543
543
544
544
545
545
546
547
548
548
548
548
547
547
548
548
548
548
549
550
550
550
550
550
550
550
550
553
553
554
555
557
558
558
558
558
558
559
559
560
564
565
565
566
569
569
569
568
568
567
566
563
563
562
562
562
562
562
561
561
560
559
559
558
557
556
556
553
552
552
552
551
551
550
550
550
550
550
550
550
550
550
550
551
551
551
551
552
552
552
552
552
552
552
552
552
552
551
551
551
551
551
551
552
553
556
558
560
562
563
564
564
564
564
564
564
564
564
564
565
565
565
566
566
566
567
567
567
568
568
568
566
564
562
561
560
560
560
560
560
561
561
561
561
561
561
560
564
565
567
570
572
573
575
577
584
585
587
588
590
598
600
602
602
601
601
600
599
598
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
597
598
598
599
600
601
603
604
607
609
610
612
617
619
622
623
624
627
628
630
631
632
635
638
642
642
643
644
647
648
656
657
657
657
658
658
659
659
659
659
659
659
659
659
659
659
659
658
658
657
657
656
656
655
654
654
653
649
641
635
627
619
619
619
619
619
619
619
619
608
607
599
598
596
595
594
592
591
589
587
587
587
588
593
594
594
594
594
595
595
595
596
596
596
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
597
600
601
603
605
606
608
610
611
613
613
613
613
613
613
613
613
613
613
612
612
612
612
611
611
611
611
611
611
610
610
610
610
610
610
611
611
613
613
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
614
615
615
615
616
616
616
616
616
616
616
616
615
615
615
615
615
615
614
614
614
614
614
614
616
617
618
618
620
621
622
622
623
623
623
623
622
622
622
622
622
622
621
621
620
620
620
620
620
620
620
620
620
620
620
620
621
622
625
626
627
630
631
631
631
631
631
631
630
630
629
629
629
629
629
629
629
629
629
630
631
632
634
634
635
635
637
637
637
638
638
639
640
641
642
644
644
645
646
646
647
652
654
655
657
657
657
657
657
657
658
658
658
658
658
658
658
658
660
660
660
661
661
661
662
662
664
665
665
665
665
665
665
678
680
683
688
692
693
694
696
696
698
700
700
700
700
700
701
702
702
703
704
704
704
704
705
707
709
710
712
714
719
720
721
723
724
724
725
727
727
728
728
729
731
732
733
734
735
738
739
741
743
747
749
750
756
762
766
768
769
771
777
779
780
784
787
789
794
797
799
803
805
809
817
821
825
826
826
827
827
829
829
829
830
830
831
832
833
833
833
831
831
830
829
828
827
827
825
824
822
822
822
822
822
822
823
823
824
824
821
818
817
813
811
810
809
808
808
808
808
808
807
807
807
806
806
807
807
807
808
809
810
815
819
821
822
823
826
827
827
827
826
823
820
819
819
816
815
814
812
811
805
804
804
799
798
795
795
795
796
796
797
797
799
800
801
801
801
801
800
800
799
797
795
794
794
793
793
792
790
789
788
786
783
781
781
781
781
781
781
781
781
782
784
787
787
787
787
787
787
786
786
786
786
786
786
786
786
786
786
786
787
788
789
790
791
791
793
794
795
795
796
796
797
797
800
799
798
797
792
791
791
791
794
796
799
799
798
798
797
797
796
796
796
796
796
795
795
793
792
792
792
789
789
788
787
787
786
785
784
781
780
779
778
777
774
773
772
771
771
770
770
769
767
766
765
765
765
765
764
764
763
763
762
762
762
761
761
761
761
761
761
762
762
762
762
762
761
759
756
755
754
754
754
754
754
755
755
756
756
754
753
751
750
750
750
750
750
750
750
749
748
748
747
746
746
746
745
745
745
745
745
745
745
746
746
747
748
749
749
749
749
749
749
748
748
747
747
746
745
745
744
744
744
743
741
739
738
737
737
736
736
735
735
735
735
735
736
737
739
739
739
740
740
740
741
742
742
743
744
744
744
744
744
744
744
744
744
744
744
744
744
744
744
743
742
742
742
741
741
741
740
740
740
740
739
739
738
738
737
736
736
736
736
736
736
736
736
736
736
736
735
735
735
734
734
734
734
734
734
734
734
734
734
734
735
736
736
738
740
740
741
741
743
745
743
739
734
728
728
729
730
730
730
731
731
732
733
733
733
733
734
734
734
734
734
734
734
735
736
737
737
738
739
740
740
741
741
741
739
738
738
736
735
733
734
735
736
737
738
738
739
739
740
741
742
741
738
736
734
730
727
727
727
727
727
727
727
727
727
728
728
729
732
733
736
737
738
739
739
739
739
740
740
740
740
740
740
741
741
741
742
742
742
742
743
743
743
744
745
744
744
743
743
742
741
737
736
735
734
733
732
731
731
731
730
730
730
730
730
730
730
730
730
730
730
729
728
728
727
727
727
726
726
726
726
726
725
725
725
725
725
725
724
723
723
722
721
721
720
719
718
718
718
718
718
718
718
718
718
718
718
718
718
718
718
718
718
717
717
717
717
717
717
717
717
717
717
717
717
717
717
717
717
718
718
718
718
718
719
719
719
719
720
720
720
720
720
720
721
721
721
722
722
723
723
723
723
724
724
725
725
727
727
727
727
727
727
727
727
727
727
727
727
725
725
725
724
724
724
724
723
723
723
725
725
725
726
726
727
727
727
727
727
727
727
727
727
727
727
727
730
733
736
738
740
741
742
743
744
745
746
747
748
749
750
752
754
756
760
763
772
776
778
779
781
781
783
784
785
787
787
788
789
789
790
791
791
792
796
798
798
799
799
800
800
800
801
801
802
803
803
804
804
805
805
806
808
808
810
811
811
812
813
814
815
816
817
817
819
819
820
821
821
822
823
824
824
825
826
828
832
833
834
836
840
844
844
845
845
845
846
846
846
847
848
848
849
849
851
851
852
852
852
853
853
853
853
851
850
850
850
848
848
847
846
844
842
841
840
840
840
837
839
842
843
845
846
849
850
852
854
856
863
864
866
867
867
868
868
869
869
870
870
871
871
871
872
872
872
873
873
874
875
876
877
878
880
881
885
886
890
891
892
891
890
889
889
888
887
885
885
883
882
881
881
879
877
875
874
871
870
869
869
868
867
867
863
862
862
862
861
860
860
860
861
861
862
862
862
862
864
864
864
865
866
866
866
867
867
868
868
868
868
869
869
869
866
865
864
863
863
863
861
861
861
859
858
858
858
857
857
857
857
856
856
856
855
854
852
851
850
849
847
845
845
843
837
834
831
828
828
827
827
826
824
824
822
822
821
821
818
818
817
815
815
814
812
818
820
822
825
830
832
835
837
840
842
844
846
848
850
850
852
853
856
864
866
867
866
865
865
863
861
860
859
857
856
854
853
854
856
858
864
866
868
872
876
877
878
878
878
877
877
876
876
876
876
876
876
877
877
878
878
878
879
880
881
882
882
883
884
885
886
892
899
905
912
919
923
926
935
936
938
940
949
958
959
963
963
963
963
963
963
964
965
966
967
968
970
971
972
974
976
977
978
978
980
982
982
983
984
986
986
986
986
986
986
986
986
986
987
987
987
987
987
987
987
987
985
983
982
981
980
978
977
976
975
974
973
972
971
970
970
969
967
966
966
964
962
956
954
953
947
945
941
938
938
938
938
938
938
938
938
938
938
938
938
938
937
935
934
933
928
926
922
921
919
918
915
913
911
909
908
908
907
906
904
903
902
901
899
897
893
892
891
890
888
885
883
883
883
885
886
886
887
887
887
890
892
892
893
894
898
899
901
905
906
908
911
913
913
914
915
915
916
917
919
919
920
920
922
923
924
927
929
929
930
938
939
941
940
938
934
933
927
920
915
914
912
912
912
910
909
908
905
904
903
902
902
902
901
900
900
900
900
900
902
903
903
904
904
904
902
901
900
899
899
898
897
896
895
894
894
893
893
892
892
892
892
892
891
891
891
890
890
890
890
890
888
887
887
886
886
886
885
884
883
881
880
878
875
874
873
872
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
871
872
873
875
877
877
878
880
881
882
884
886
887
895
895
895
895
895
895
895
895
895
895
895
895
895
896
897
899
901
901
899
897
897
896
895
895
894
893
891
890
889
888
888
886
882
881
874
874
874
874
874
874
874
874
874
874
873
873
873
873
873
872
872
872
872
872
872
872
872
872
872
872
871
871
871
871
870
870
869
869
869
868
868
868
867
867
870
872
872
873
873
875
875
875
875
874
874
873
873
872
872
871
873
876
879
881
882
886
887
889
893
895
895
896
896
898
901
902
904
904
904
904
904
904
904
904
903
902
900
900
899
898
897
897
895
895
894
894
894
893
893
893
892
891
890
889
888
888
887
888
889
890
891
892
893
900
901
902
902
902
902
901
901
901
901
901
900
900
900
900
901
902
909
912
917
918
918
920
925
926
926
927
929
931
933
934
935
936
939
941
941
941
941
941
941
940
940
940
939
937
934
933
931
931
923
919
915
914
914
914
914
913
913
913
913
913
912
912
912
914
933
944
946
945
943
937
934
931
930
928
926
925
924
920
918
917
916
914
913
911
907
903
903
903
903
903
902
902
902
902
904
905
905
906
907
908
909
910
911
915
916
917
913
908
904
902
899
898
897
896
895
894
888
887
878
878
877
872
863
862
857
855
853
849
848
847
843
842
841
839
836
833
833
832
830
829
828
828
827
826
825
824
823
821
819
818
818
818
818
817
817
817
816
816
816
816
816
816
815
815
814
814
814
813
812
812
811
810
810
809
809
808
808
807
806
805
805
802
803
804
805
806
808
809
810
811
815
815
816
817
817
818
818
818
818
817
817
817
817
816
816
816
816
815
815
815
814
813
813
812
812
811
811
810
808
807
805
804
803
802
801
800
799
798
797
796
796
795
795
794
793
793
792
791
789
789
789
789
789
789
789
789
789
789
789
789
789
788
789
789
791
791
791
791
791
791
791
791
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
791
791
791
791
791
791
791
790
790
789
789
788
788
788
788
788
788
789
789
789
790
790
791
791
792
792
794
795
798
799
801
802
805
805
805
804
804
803
803
802
802
800
799
798
796
794
793
791
790
790
790
790
790
789
789
789
789
788
788
787
786
785
785
785
786
787
790
790
790
790
790
790
790
790
790
791
791
791
794
794
795
796
797
797
797
797
797
798
798
798
798
798
798
798
798
798
797
797
796
796
795
795
794
792
790
789
788
787
787
787
792
792
792
792
793
793
794
795
795
797
798
798
798
797
797
796
795
795
795
795
794
793
792
792
791
791
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
792
793
794
795
795
795
797
798
799
799
799
798
798
798
798
798
798
797
797
796
795
793
793
792
792
792
792
793
793
793
793
793
793
793
792
792
792
791
791
791
791
791
791
791
791
792
792
792
793
793
793
793
792
792
792
792
790
790
787
786
785
785
785
785
785
785
785
786
786
786
786
786
786
787
787
787
788
788
788
789
789
790
790
790
790
790
790
790
789
789
789
789
789
789
789
789
789
789
789
790
790
791
791
791
791
791
791
791
791
791
790
789
788
787
787
786
786
786
786
786
786
786
786
786
786
786
786
787
789
789
790
791
791
792
794
795
795
794
794
793
793
793
792
789
789
788
788
788
788
788
788
788
788
788
788
788
788
789
794
795
795
796
797
798
801
801
801
805
807
808
808
809
810
810
811
812
813
814
814
814
814
814
813
812
812
811
811
810
810
809
809
804
803
803
802
802
800
799
799
798
797
797
797
796
796
796
796
793
793
793
792
792
792
792
792
792
792
792
792
792
792
792
792
793
793
793
793
793
793
793
793
793
793
793
793
793
793
793
793
793
793
794
794
795
795
795
796
796
796
796
796
796
796
796
796
795
795
795
795
795
795
795
795
796
796
796
796
797
797
797
797
797
798
800
801
802
804
805
806
808
811
813
814
814
815
816
817
818
818
818
816
816
814
813
813
813
811
810
809
808
807
807
806
806
806
805
805
805
804
804
804
804
804
804
804
804
804
803
803
803
802
802
802
802
803
803
804
805
806
806
808
809
810
810
812
813
814
815
816
817
820
820
826
827
830
835
836
838
839
840
840
841
842
842
842
844
846
848
849
852
853
854
855
856
857
858
860
865
866
866
867
870
871
875
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
880
881
882
883
886
886
887
880
878
876
875
874
871
870
869
867
867
865
865
864
863
863
863
862
861
861
860
860
860
859
859
858
856
855
855
854
854
854
853
852
851
849
849
848
847
847
847
846
845
845
845
845
845
846
846
846
846
846
846
846
847
848
848
849
850
851
852
853
853
854
854
854
855
855
855
856
856
856
857
857
858
858
858
859
860
860
860
860
860
861
862
863
863
863
865
865
865
866
866
867
867
867
868
868
869
867
867
867
864
864
863
863
862
862
861
861
860
860
860
860
862
862
862
864
865
866
867
868
869
870
872
872
873
874
875
876
877
877
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
879
878
878
878
877
877
877
876
876
876
872
870
868
866
865
863
862
861
860
862
864
865
867
871
873
874
875
879
880
881
882
883
885
886
887
888
889
890
892
892
893
896
896
897
901
903
904
905
907
907
907
908
908
908
908
909
909
911
911
911
911
911
911
911
911
911
911
911
911
911
911
911
910
910
909
908
908
907
906
906
905
905
905
898
898
898
899
901
901
901
901
903
903
903
904
904
905
905
906
907
907
907
907
905
904
903
902
902
901
900
899
898
898
898
897
896
894
892
891
889
889
888
887
885
883
882
881
879
878
878
875
875
874
872
872
870
869
867
865
864
863
860
860
859
858
857
857
853
853
852
851
850
849
849
848
846
846
845
845
845
844
843
842
842
842
841
841
841
841
841
840
840
837
836
836
835
834
834
833
832
831
831
830
829
829
828
824
823
823
823
819
817
816
814
814
813
812
810
811
812
813
815
815
816
817
818
821
821
823
825
826
826
826
828
829
830
830
832
836
836
838
839
840
841
842
843
843
844
844
847
849
850
852
857
858
859
863
865
866
868
869
871
873
876
881
882
882
881
879
877
875
872
871
870
867
867
866
865
864
863
863
864
866
867
867
868
868
869
870
870
871
872
872
872
871
870
869
866
864
860
858
857
857
857
857
857
857
857
857
857
857
857
858
858
858
859
859
859
859
859
859
859
855
854
854
853
852
850
848
848
847
845
845
844
843
842
841
841
839
839
838
838
837
836
834
834
833
833
832
832
831
829
827
826
826
825
825
825
824
824
824
823
821
821
820
819
817
815
807
806
800
790
787
784
781
781
780
779
776
773
768
766
763
761
759
757
755
754
752
751
748
747
746
745
742
740
739
736
734
733
732
731
729
728
727
726
724
724
720
720
719
718
718
717
716
715
713
711
709
709
708
706
703
702
700
699
699
698
697
696
693
691
688
685
681
680
678
675
673
672
672
671
669
668
667
665
664
663
663
663
663
663
662
662
662
661
660
659
656
655
654
654
652
651
650
649
648
648
647
647
646
646
646
645
645
644
644
644
645
645
645
646
646
646
647
647
648
651
653
656
658
660
662
663
664
666
667
667
667
668
668
669
669
669
669
670
673
675
676
677
679
680
682
684
685
688
688
689
689
690
690
690
690
691
691
691
691
691
691
697
704
707
705
703
700
698
698
698
698
698
697
696
695
704
714
718
718
718
718
718
718
719
719
715
709
704
699
695
693
691
691
690
689
688
687
682
681
679
679
679
679
679
679
679
679
679
679
679
679
679
679
679
679
679
679
679
679
678
678
678
678
677
677
677
677
676
675
674
674
674
672
672
669
669
669
668
667
665
664
664
663
663
663
662
661
660
660
657
646
641
639
639
638
638
638
637
637
636
636
630
628
627
626
625
624
623
623
623
623
622
622
622
622
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
621
622
622
623
624
624
625
625
625
625
626
626
627
627
628
629
629
629
629
629
629
630
630
630
630
634
636
637
638
639
642
644
646
649
650
651
651
651
652
653
654
655
657
658
659
659
659
659
659
659
659
659
659
659
658
658
658
658
658
658
659
660
663
664
663
660
655
651
649
647
644
644
643
643
642
642
641
641
639
639
639
640
642
645
646
647
651
656
659
659
660
660
660
660
661
661
661
662
662
662
662
663
663
663
664
664
666
666
665
664
662
661
660
660
660
660
660
661
663
666
666
673
674
672
671
671
669
668
656
655
654
651
647
645
644
640
639
639
639
639
638
638
638
637
637
637
633
629
628
627
624
624
623
620
620
618
616
616
615
615
615
614
613
613
613
612
611
611
610
609
608
606
605
604
604
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
601
600
600
600
600
600
600
600
600
600
600
600
601
601
601
601
601
601
600
600
600
599
599
599
599
599
599
599
599
599
599
599
599
599
599
600
601
602
603
604
604
606
607
607
608
608
608
609
610
610
610
610
610
610
610
610
610
609
609
609
609
609
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
609
609
609
609
609
609
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
610
609
608
608
608
607
606
605
604
603
602
602
602
602
602
601
601
601
600
600
600
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
600
600
600
601
601
602
602
603
603
604
604
605
605
606
606
606
606
607
607
608
608
608
608
608
608
608
608
608
609
609
609
609
609
609
609
609
609
611
612
613
613
614
614
614
614
615
615
615
616
616
616
616
616
616
616
616
618
618
618
618
618
618
618
618
618
618
618
618
618
617
617
617
617
617
617
616
616
616
616
616
615
615
615
614
614
614
614
614
614
614
614
614
614
614
615
615
615
615
615
615
615
616
616
616
617
617
617
617
617
617
617
617
617
617
616
616
616
616
616
616
615
615
615
615
615
615
614
614
614
613
613
612
612
612
612
612
612
612
612
612
612
612
612
611
611
611
611
611
610
610
610
610
608
607
606
606
603
599
598
598
597
597
596
596
596
596
595
595
594
593
593
593
593
593
593
593
593
593
593
593
593
593
593
595
595
596
598
600
601
601
601
601
602
602
605
606
607
611
614
616
617
620
621
622
623
626
627
628
629
637
638
641
642
644
645
645
645
649
650
654
656
656
657
658
659
660
660
661
662
665
665
670
671
672
672
673
675
675
675
675
676
677
677
677
677
679
680
680
681
682
684
686
687
688
689
693
694
696
698
700
703
705
706
706
706
706
706
706
707
708
709
711
712
714
715
716
715
713
712
712
711
711
710
708
707
707
705
704
703
702
701
701
700
700
699
699
699
699
699
699
699
699
698
698
697
696
695
692
691
690
687
687
686
685
684
682
680
680
680
680
680
679
679
679
679
679
679
679
679
679
679
679
679
678
678
678
678
674
672
671
670
669
666
664
661
660
658
657
657
656
655
654
653
653
652
652
651
650
649
649
648
647
647
646
646
646
645
645
645
644
644
644
643
642
642
642
641
641
640
640
640
640
640
640
640
641
642
642
642
643
643
643
643
643
643
644
644
644
644
644
644
644
644
644
645
645
645
645
645
646
646
646
646
646
646
646
646
646
646
646
646
647
647
647
647
648
648
648
648
648
648
648
649
649
649
649
649
650
650
651
651
651
651
651
651
651
651
651
651
651
651
650
650
650
649
649
649
649
649
649
649
649
649
649
649
649
649
650
650
651
652
652
653
653
653
653
653
653
653
653
653
653
652
652
652
652
652
652
652
654
654
654
654
654
654
655
655
655
656
656
656
656
657
660
660
660
661
662
662
662
663
663
663
664
664
665
665
666
666
666
666
666
667
667
667
667
667
668
668
668
669
669
669
669
669
670
670
670
670
670
670
670
670
670
671
671
671
671
672
674
675
676
677
677
679
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
681
684
688
691
693
695
697
698
697
695
694
693
692
692
692
692
697
698
699
699
700
702
704
706
707
708
711
711
712
712
713
713
714
714
715
717
719
722
726
730
733
734
739
742
745
750
752
753
755
757
760
762
765
769
770
770
772
773
774
774
776
777
779
782
794
797
799
799
799
799
799
799
800
801
801
801
801
801
802
803
803
803
803
808
810
812
814
815
816
817
818
821
821
820
819
818
818
817
817
817
817
815
815
815
815
814
813
812
812
812
812
813
814
815
815
816
817
819
820
820
821
821
823
824
826
828
829
830
832
833
835
842
845
847
849
852
855
857
858
857
856
856
855
851
848
847
847
845
843
843
838
825
824
823
819
815
806
796
793
795
797
798
799
799
799
799
799
799
799
799
799
799
799
799
799
797
797
797
794
794
793
791
791
789
788
788
788
787
787
786
784
784
782
782
781
777
775
775
773
771
769
766
761
758
754
754
754
754
753
752
752
750
747
745
745
744
741
741
740
739
738
741
748
749
754
756
759
763
763
764
764
765
767
768
768
769
769
770
770
770
770
771
771
773
775
775
775
775
775
775
774
774
774
773
773
773
773
776
777
779
783
783
780
779
778
777
778
778
779
779
782
783
784
785
787
787
790
791
792
792
793
794
798
799
799
799
802
804
808
810
812
821
828
833
836
837
838
840
841
842
842
842
842
841
840
839
839
839
839
839
838
838
837
837
836
836
835
835
834
834
832
832
832
832
831
831
830
830
829
829
830
831
831
832
834
834
836
838
839
840
840
841
842
843
844
844
845
846
846
848
849
848
847
846
845
843
835
830
827
827
825
821
818
812
810
805
799
795
790
783
780
780
781
782
782
782
783
783
783
783
780
778
776
773
771
769
768
765
765
763
762
761
760
759
758
756
756
756
755
754
754
754
755
757
757
758
760
762
763
763
764
765
765
765
769
770
773
774
774
774
775
775
775
775
775
775
775
775
775
775
776
777
777
777
778
779
780
780
782
784
786
788
789
789
790
790
790
790
791
791
791
791
791
792
792
792
792
792
789
788
786
786
784
782
782
782
782
780
780
780
780
780
779
779
777
777
777
777
777
777
777
777
777
777
778
780
780
780
780
780
779
779
778
778
778
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
777
778
780
781
783
786
787
789
792
795
798
799
800
800
802
803
804
804
805
805
807
808
809
810
810
810
810
810
810
810
810
810
809
806
803
802
801
801
800
800
800
799
798
797
797
795
795
793
789
788
787
786
786
785
785
784
784
783
782
782
783
783
783
784
785
785
785
785
786
786
786
786
787
787
787
788
788
789
789
789
789
788
788
788
788
788
788
788
787
787
787
786
786
785
784
783
782
781
780
780
780
780
780
779
779
779
779
778
778
778
778
778
778
778
778
777
777
777
776
776
776
776
776
776
776
776
776
776
777
778
778
778
778
779
779
779
779
780
780
780
780
780
780
780
780
780
780
780
780
780
780
780
780
780
780
779
778
777
776
774
774
774
772
772
769
769
769
769
769
770
770
770
770
770
770
770
770
770
769
769
767
765
764
761
760
759
758
757
757
757
756
756
756
756
755
755
755
755
755
755
755
755
755
755
755
755
755
755
754
754
754
754
754
753
753
753
753
753
752
752
751
751
750
749
747
747
747
748
748
750
753
755
757
757
758
758
758
759
760
760
761
762
762
763
764
764
765
765
765
766
766
767
767
767
768
769
769
769
769
770
771
772
772
773
774
779
781
782
783
783
785
786
786
787
787
789
790
790
790
791
793
793
794
795
795
795
795
794
793
792
791
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
790
791
792
792
793
794
794
796
796
797
798
799
799
799
800
800
801
802
802
802
803
804
804
805
805
806
807
807
809
809
810
812
813
814
814
811
811
810
809
808
808
807
807
806
803
802
801
800
799
797
794
792
789
788
788
787
786
785
783
781
778
777
775
775
773
772
771
770
764
761
760
760
760
760
761
761
761
762
762
762
762
762
762
763
763
763
764
764
764
764
764
764
764
764
764
764
765
765
766
767
768
768
769
769
770
771
774
776
776
778
779
779
780
782
785
785
786
787
787
787
788
789
793
795
796
795
787
775
771
756
752
750
745
741
739
737
733
730
729
727
724
722
718
715
713
710
709
706
704
691
687
682
679
676
674
669
667
666
666
666
666
666
666
666
666
661
655
651
645
640
634
627
623
615
613
611
608
607
603
599
595
592
589
587
580
580
580
579
579
578
580
583
588
592
595
593
590
589
588
588
584
582
579
575
572
568
568
562
559
557
555
552
550
547
545
544
540
539
538
537
536
533
528
526
524
523
521
519
518
516
515
511
510
509
505
504
503
503
502
501
500
499
499
498
496
496
496
496
493
493
492
491
490
489
489
489
489
489
489
489
489
485
483
481
480
480
480
480
480
481
482
485
492
492
493
494
494
495
495
496
496
497
498
498
499
500
501
503
503
503
504
505
506
506
507
507
507
507
507
508
508
508
508
507
507
507
506
506
505
505
504
503
502
502
501
501
500
499
498
498
498
498
498
498
498
498
498
498
498
497
497
497
497
496
495
494
494
493
491
490
487
485
484
481
479
479
479
479
478
476
476
476
476
476
476
476
476
476
476
476
476
476
476
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
475
474
474
473
472
472
471
471
470
470
470
470
470
470
470
470
470
470
470
470
470
469
468
468
467
464
464
464
464
463
463
463
462
462
462
462
462
462
462
461
461
461
461
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
459
458
457
457
457
456
456
456
456
456
455
454
454
454
454
454
454
454
454
454
454
454
453
453
453
453
453
453
453
453
452
452
452
452
452
452
452
452
452
452
452
452
453
453
453
454
454
454
454
454
454
454
454
454
454
455
458
461
462
464
465
467
472
476
476
476
476
475
475
475
475
475
474
474
474
474
474
474
473
473
473
472
472
472
471
471
471
471
472
472
472
473
473
474
474
474
475
475
476
476
476
477
477
477
477
477
477
477
476
476
475
476
477
478
478
479
479
479
479
479
479
479
480
480
480
480
480
480
480
480
481
481
481
481
481
481
481
481
481
481
481
481
481
481
480
480
480
480
480
479
479
479
478
478
477
474
474
474
474
473
473
472
472
471
470
470
470
470
470
470
470
470
470
470
470
470
470
470
470
470
470
470
470
471
471
471
472
474
477
478
479
480
481
484
487
488
488
488
488
489
489
494
495
496
497
498
501
504
503
503
503
503
503
503
503
503
503
503
503
509
512
514
517
518
519
520
520
522
523
523
524
525
525
527
528
531
533
536
541
543
546
548
549
560
562
562
563
563
564
564
564
564
565
565
567
568
569
571
572
579
581
583
586
588
589
594
596
599
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
601
601
601
602
602
602
602
603
603
603
603
603
604
604
605
606
608
609
609
610
611
611
611
611
612
612
612
612
613
613
613
613
614
616
616
615
614
614
613
609
609
607
602
597
595
594
597
599
599
599
600
601
602
603
603
603
603
603
603
603
603
603
602
602
602
602
602
602
602
601
601
601
601
601
601
601
601
601
601
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
600
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
601
602
603
603
605
607
609
610
611
611
612
614
615
616
617
618
618
616
616
615
613
609
608
607
606
605
603
601
596
594
593
591
588
587
586
583
581
580
577
576
574
569
566
565
562
561
560
559
558
556
555
554
553
552
552
549
547
546
545
545
544
544
542
541
541
540
540
539
539
538
538
537
537
537
537
537
537
537
537
537
537
537
537
537
537
538
538
539
541
542
542
540
539
538
538
537
536
536
535
535
534
534
533
532
532
531
530
529
529
530
531
532
534
535
536
537
538
540
541
542
548
548
548
546
545
544
543
543
542
541
541
541
540
540
540
540
540
544
544
545
545
545
545
545
545
545
545
545
545
545
545
546
546
546
545
544
542
541
540
540
541
543
544
543
541
540
539
539
538
538
538
538
538
538
538
538
538
538
537
537
537
537
537
537
537
537
537
537
536
536
536
536
536
536
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
535
536
536
536
536
536
536
536
536
536
536
536
536
536
536
536
535
535
535
535
535
535
535
535
535
535
535
535
535
536
536
536
536
536
536
536
537
537
537
537
537
537
538
538
538
538
538
538
538
538
538
538
538
537
537
536
536
535
535
535
535
534
534
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
533
534
534
535
535
535
537
537
538
540
541
542
543
544
545
545
544
543
542
542
538
537
537
536
536
536
536
535
535
534
534
533
533
533
533
532
532
532
532
532
532
532
532
532
531
531
531
531
530
530
531
533
534
534
534
533
533
532
530
530
529
529
529
529
529
529
529
529
529
529
529
529
529
530
531
532
533
535
536
539
540
541
545
546
544
542
541
539
538
537
535
535
535
536
536
537
538
538
539
540
541
541
541
541
543
544
545
545
546
546
547
547
548
550
551
552
553
553
554
554
554
554
554
554
554
553
553
553
553
552
552
552
552
552
553
553
553
553
553
554
554
554
554
554
555
555
555
555
555
556
556
556
556
556
556
556
556
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
558
558
558
559
560
561
561
561
562
562
563
564
565
565
565
566
566
567
568
578
585
589
593
597
607
612
618
617
615
614
613
612
611
610
610
610
610
611
611
611
612
610
608
607
606
604
602
600
599
598
601
603
605
607
608
610
612
613
616
620
622
624
625
626
628
634
635
636
637
638
638
639
639
639
639
639
639
639
639
639
639
639
638
637
635
632
629
625
624
622
619
617
616
615
615
614
613
612
611
610
609
609
608
607
607
605
604
603
603
603
603
603
603
603
603
603
603
602
602
602
601
601
601
600
600
600
599
599
599
599
599
599
599
599
599
599
599
599
599
599
599
597
595
595
594
593
592
591
591
591
591
591
591
591
591
591
590
589
589
588
587
587
588
590
591
592
593
593
593
593
593
593
593
592
592
591
591
591
591
591
590
588
587
587
585
585
585
584
583
583
582
582
582
581
581
580
580
580
580
580
580
580
580
580
580
580
580
580
580
579
579
579
579
578
578
578
577
577
577
576
576
576
576
576
576
576
577
577
577
578
579
579
579
580
580
580
582
591
592
595
599
601
602
604
605
606
607
608
609
609
609
609
610
611
611
612
612
614
615
616
617
617
617
615
614
614
613
612
611
610
610
609
610
612
614
616
616
619
620
621
622
622
624
624
625
625
626
627
628
629
628
625
621
616
620
621
623
624
624
625
626
626
626
625
625
624
623
623
621
620
620
618
616
615
614
614
613
613
612
612
612
612
612
612
612
612
612
612
612
612
612
612
612
612
611
610
607
606
604
603
602
601
598
597
597
597
597
598
599
600
602
604
606
607
608
610
611
609
609
608
606
603
600
590
586
583
580
582
586
593
598
601
606
606
606
607
608
609
610
611
611
605
603
602
601
598
592
588
585
582
581
578
577
576
574
573
572
571
571
571
570
569
569
569
568
565
563
561
560
559
556
556
554
553
549
547
547
550
553
554
555
552
551
550
547
545
540
535
525
523
521
519
517
514
511
508
503
501
501
501
500
500
500
499
499
499
499
499
497
497
497
496
495
495
495
494
494
493
492
492
492
492
492
492
492
492
492
492
492
492
492
492
492
492
494
494
494
494
494
494
494
494
495
497
497
499
501
501
501
501
501
501
500
499
499
499
498
498
497
496
495
495
495
494
494
493
493
496
497
498
499
504
506
511
512
513
513
514
515
516
517
519
520
520
521
521
522
522
522
523
523
523
524
524
524
523
523
523
523
522
522
522
522
521
521
520
520
519
518
517
517
516
516
516
516
519
519
520
521
525
531
532
535
536
537
538
538
538
539
540
542
544
544
545
545
546
547
548
549
549
552
553
553
553
552
552
552
552
552
551
551
550
550
549
549
548
547
546
546
546
545
544
542
541
541
541
541
541
541
541
541
541
541
541
541
541
540
540
540
540
539
539
539
539
538
538
538
538
538
538
539
540
540
541
542
542
543
544
544
545
547
547
547
548
548
548
549
550
550
550
550
550
550
550
550
550
549
544
542
534
533
532
531
531
531
530
530
530
530
529
529
529
529
528
528
528
527
526
523
523
522
522
522
520
520
517
517
515
514
513
511
510
508
504
502
501
501
499
498
498
494
494
494
495
495
495
496
496
496
496
495
495
495
495
495
494
494
493
493
493
492
491
490
490
489
489
489
489
488
488
487
486
484
484
483
483
482
481
480
480
479
478
477
475
474
473
473
473
473
473
473
473
473
473
471
471
471
470
470
470
470
469
468
468
467
467
467
466
466
465
465
465
464
463
462
461
461
460
460
460
459
459
458
458
458
457
457
456
456
456
456
455
455
455
455
454
454
454
454
454
454
454
454
454
454
454
454
453
452
452
452
451
451
450
449
448
447
447
447
447
446
446
446
446
447
447
447
447
448
448
449
449
449
450
450
450
451
452
452
453
453
454
454
454
454
454
454
454
454
454
454
453
453
453
453
453
454
454
454
454
454
455
455
454
453
452
451
450
448
448
449
451
451
451
451
451
452
452
452
452
452
452
452
453
453
453
454
454
454
454
454
454
454
455
455
455
455
455
455
455
455
455
456
456
456
456
456
457
457
457
457
457
458
458
458
459
460
460
461
461
461
462
462
462
462
462
463
463
463
463
464
464
464
464
465
465
465
465
466
467
467
467
468
468
468
468
468
468
468
468
468
468
468
468
468
468
468
468
468
468
468
468
469
469
469
469
469
470
471
472
473
473
473
473
474
474
474
475
475
475
475
475
475
475
475
475
475
475
475
475
478
479
479
479
481
482
483
484
485
487
489
491
493
493
494
498
500
501
506
506
509
512
516
518
519
520
520
520
521
522
525
525
525
525
525
525
525
526
526
527
527
527
528
528
530
531
532
535
537
538
539
543
543
543
543
543
542
542
542
542
541
541
540
540
540
541
541
542
545
546
547
549
551
556
558
559
561
564
566
570
571
572
575
579
580
582
583
586
590
600
601
606
614
619
620
627
639
646
651
656
657
658
658
659
660
661
662
662
663
663
664
665
665
668
670
671
673
674
675
676
677
681
682
684
687
689
690
690
690
690
689
689
686
684
681
680
679
678
675
674
673
671
670
670
670
670
670
671
671
671
671
671
672
672
672
673
674
675
676
677
677
678
678
678
678
678
678
678
678
678
677
677
677
677
677
676
676
676
676
675
675
675
675
676
676
677
677
677
677
678
678
679
680
681
683
684
685
685
686
686
686
686
687
688
688
688
683
683
682
681
677
676
674
673
671
670
670
670
670
670
670
670
670
670
670
669
668
666
665
665
663
662
662
661
659
659
657
656
654
654
654
651
651
651
650
650
650
650
649
648
647
647
647
646
646
646
645
645
645
644
643
643
643
642
641
641
641
641
640
640
638
638
636
636
635
634
634
632
632
631
630
630
629
627
626
626
622
622
622
622
621
621
620
620
620
620
620
620
620
620
620
620
620
620
618
618
618
618
617
615
615
615
614
614
614
612
608
607
606
604
600
600
600
600
600
600
600
600
601
601
602
603
605
606
610
611
612
614
615
617
618
618
619
621
621
622
624
623
622
622
620
619
618
616
616
616
616
616
616
616
615
615
615
615
615
615
615
615
615
615
615
615
615
613
612
610
605
604
604
603
602
601
601
600
599
596
595
594
593
593
593
593
593
593
593
593
593
593
593
593
593
593
594
594
594
594
594
594
594
582
581
580
579
578
577
576
574
571
570
570
570
569
568
567
565
564
564
563
563
562
561
561
559
558
557
556
555
553
552
548
546
544
543
541
540
540
541
541
541
542
542
543
544
545
547
548
548
548
548
548
548
548
548
548
548
548
548
549
549
549
549
549
549
549
549
548
548
547
546
546
547
547
547
548
549
549
550
551
551
551
552
552
552
553
553
554
554
554
554
554
554
554
555
556
557
557
558
560
562
563
563
564
565
566
567
568
568
570
570
571
573
574
576
576
577
577
578
579
581
581
582
583
583
583
583
583
583
583
583
583
585
588
589
591
593
595
595
596
597
600
600
600
600
600
600
600
600
600
600
600
600
600
600
601
601
601
601
602
602
602
602
602
603
603
603
603
603
604
604
604
604
604
604
604
604
604
604
604
604
604
604
604
603