579
580
581
581
581
581
582
582
582
582
583
584
585
585
586
587
588
588
589
590
590
590
590
590
590
590
590
590
590
590
590
590
590
590
590
590
590
591
592
593
594
596
597
598
599
600
601
601
602
602
603
603
604
604
605
606
607
609
610
612
614
615
617
618
620
620
620
620
620
621
621
621
621
621
622
622
622
622
622
622
622
622
622
623
623
623
623
624
624
624
624
624
625
625
626
627
627
628
628
629
629
630
630
631
632
633
633
634
635
635
638
641
644
647
649
652
654
657
660
660
661
661
661
662
662
663
663
664
665
666
667
668
669
669
670
671
671
671
671
671
670
670
670
670
670
668
667
666
665
664
663
662
660
659
657
656
654
652
651
649
647
645
645
644
643
642
641
640
639
639
641
643
644
646
648
650
652
654
656
657
658
659
660
661
662
663
664
665
665
665
665
665
665
665
665
665
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
681
682
682
682
683
683
683
683
683
684
684
684
684
684
684
684
684
684
685
686
687
687
688
689
689
690
691
691
692
693
694
695
696
697
698
698
698
698
698
698
697
697
697
697
697
697
697
697
697
697
697
697
697
697
697
698
698
699
699
700
700
701
701
702
702
703
703
704
705
705
706
709
712
715
718
721
723
726
728
730
730
730
730
730
731
731
731
731
732
732
732
732
732
732
732
732
732
732
732
732
733
733
734
734
734
735
735
735
735
735
735
735
735
735
736
737
738
739
740
741
742
743
744
744
745
745
746
746
746
747
747
747
747
746
745
745
744
744
743
743
742
741
741
740
739
739
738
737
736
736
736
736
736
736
736
736
736
736
736
737
738
739
740
741
742
743
744
745
745
746
746
747
747
748
748
749
751
752
758
759
759
759
759
759
759
759
759
758
758
757
757
756
756
755
754
754
754
754
754
755
755
755
756
756
756
757
758
759
760
761
762
764
765
765
765
764
763
762
761
760
759
758
758
758
758
758
759
759
759
759
759
759
758
757
757
756
756
755
755
756
757
758
759
761
762
763
764
766
766
766
767
767
767
768
768
768
768
767
767
766
765
764
764
763
763
763
764
764
765
765
765
766
766
767
767
767
768
768
768
768
768
768
768
768
768
767
767
767
767
766
766
766
766
766
765
765
765
765
765
766
767
767
768
768
769
769
770
770
771
772
772
773
773
773
773
772
772
771
771
771
771
771
772
773
773
774
775
775
776
777
778
783
784
784
784
784
784
784
784
784
784
784
783
782
782
781
780
780
779
778
777
776
776
775
774
773
773
772
771
771
770
769
768
767
765
764
763
762
761
760
760
760
760
760
760
760
760
760
759
759
759
759
759
759
759
759
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
758
757
757
757
757
756
756
756
756
755
755
755
755
755
755
755
755
755
755
755
755
756
756
756
756
756
756
756
755
755
755
754
754
754
754
753
753
753
753
753
753
753
753
753
753
754
754
755
755
755
755
754
754
753
753
752
752
752
752
752
752
752
752
752
752
752
753
753
754
755
756
756
757
758
758
758
758
758
758
758
758
759
759
760
760
760
761
761
762
762
763
763
763
763
764
764
764
764
764
763
761
760
759
757
756
754
753
752
751
750
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
750
750
750
750
751
751
751
751
751
752
752
752
752
752
752
752
752
751
751
751
751
751
751
751
751
751
751
751
751
751
751
751
751
751
751
751
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
752
753
753
753
754
754
754
756
757
757
758
759
760
761
762
763
763
763
763
764
764
764
764
764
765
765
765
766
766
766
767
767
767
768
770
771
772
773
775
776
777
778
779
778
777
776
774
773
772
770
769
768
767
767
767
766
766
766
765
765
765
764
764
764
764
763
763
763
762
761
760
759
758
757
756
755
754
754
754
753
753
753
752
752
752
751
751
751
751
751
751
751
751
750
750
750
750
750
750
750
750
750
750
750
750
751
751
751
751
751
751
751
750
750
750
750
750
750
750
750
750
750
750
750
749
749
749
748
748
748
748
747
747
747
747
747
747
747
748
748
748
748
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
750
750
750
750
750
750
750
751
751
751
752
752
752
752
753
753
753
753
753
753
753
753
752
752
751
750
750
749
748
748
747
747
747
747
747
747
747
747
746
746
746
746
746
746
746
746
747
747
748
749
749
750
750
750
750
750
749
749
749
749
749
749
749
749
750
750
750
750
750
750
750
750
749
749
749
749
749
749
749
749
750
750
750
751
751
751
751
751
751
751
752
752
752
753
753
753
753
754
754
754
755
755
755
756
756
757
758
759
759
760
761
762
762
763
764
764
765
766
766
767
767
768
769
770
771
771
772
773
773
774
774
775
775
776
776
777
777
777
776
776
775
774
774
773
772
772
772
772
772
772
772
772
772
772
772
773
774
775
775
776
777
777
779
781
783
785
787
789
791
792
793
791
789
787
786
784
782
780
779
779
779
778
778
778
777
777
776
775
774
773
772
771
770
770
770
771
771
771
772
772
773
774
775
776
777
779
779
778
776
775
775
773
772
772
774
775
777
778
779
779
779
779
778
778
778
776
775
773
772
770
769
767
765
763
762
759
758
756
755
753
752
752
751
750
750
749
748
748
748
747
747
746
746
745
745
745
745
745
746
746
747
747
747
747
746
745
743
742
741
740
739
739
739
739
738
738
738
738
738
738
738
738
738
738
738
738
737
736
734
733
731
730
729
727
726
725
724
723
722
721
720
719
718
717
717
716
715
715
713
710
708
706
705
703
701
700
700
699
698
698
697
696
696
695
694
693
693
692
691
691
690
689
689
688
687
687
686
685
685
684
684
684
684
683
683
683
683
683
683
683
683
683
683
683
683
683
683
683
682
681
681
680
680
679
678
677
676
675
674
674
674
674
674
674
674
674
674
673
672
671
670
669
667
666
665
663
662
661
659
658
656
655
653
651
649
647
645
643
641
640
640
640
641
641
642
642
642
641
641
640
639
638
637
636
635
634
633
632
631
630
629
628
627
626
625
624
624
623
622
621
620
618
617
615
615
614
613
612
611
610
609
608
607
607
607
607
607
608
608
608
608
607
607
606
605
604
603
603
602
602
602
601
601
600
599
598
597
596
596
596
596
596
596
596
596
596
595
595
595
594
594
594
593
593
593
593
593
594
594
595
595
596
596
596
595
595
594
593
592
592
592
592
592
593
593
593
593
592
591
590
590
589
588
587
587
587
587
587
587
587
586
586
585
584
584
583
582
581
581
581
581
581
581
581
581
581
581
581
580
580
580
579
579
579
579
579
579
579
579
579
579
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
580
581
581
581
581
582
582
582
582
583
583
583
584
584
584
585
585
585
586
586
586
586
586
586
586
586
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
588
587
587
587
586
586
586
586
586
586
586
586
586
586
586
586
586
585
584
584
583
583
582
582
581
581
581
581
580
580
580
579
579
579
579
579
578
578
578
578
577
577
577
576
576
575
575
575
575
575
575
575
575
575
575
575
576
576
576
576
576
577
577
577
577
577
577
577
577
576
576
576
576
575
575
575
574
574
574
573
573
573
573
573
573
573
573
573
573
573
573
574
575
576
577
577
578
579
579
579
580
580
581
581
581
582
582
582
582
582
582
582
582
583
583
583
583
583
583
583
583
583
582
582
581
581
580
580
579
579
578
578
578
578
578
578
578
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
578
578
578
578
578
578
578
578
578
579
579
579
579
579
579
579
579
580
580
580
580
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
582
582
582
583
583
583
584
584
584
584
584
584
584
584
583
583
583
583
582
582
582
582
582
582
583
583
584
584
585
585
585
585
584
584
584
583
583
583
583
582
582
582
582
582
583
583
584
584
584
584
584
584
584
584
584
584
584
584
583
583
582
582
582
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
580
580
579
579
579
578
578
578
578
578
579
579
580
580
581
581
581
581
581
581
580
580
580
580
580
580
580
580
580
581
581
581
581
581
581
580
579
578
578
577
576
576
576
576
576
576
577
577
577
578
578
579
579
579
580
580
580
580
580
580
579
579
579
579
579
578
578
578
578
578
578
578
578
578
578
578
578
579
579
579
579
580
580
580
580
580
580
580
580
581
581
581
581
581
581
581
581
581
581
581
581
581
580
580
580
580
580
580
580
580
580
580
580
580
581
581
581
581
581
581
581
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
583
583
583
583
584
584
585
585
585
586
586
586
587
588
589
590
590
591
592
593
594
595
596
597
598
600
601
602
603
604
605
605
606
607
608
609
609
610
610
610
610
610
610
610
610
610
610
610
611
612
613
614
615
617
618
618
618
618
618
617
617
617
617
617
617
618
619
620
621
622
622
623
624
624
621
619
617
615
613
611
608
606
607
609
612
614
616
618
620
623
626
628
629
630
632
633
634
636
637
638
639
639
639
639
639
639
639
639
639
640
642
644
645
647
649
651
652
654
656
656
656
656
656
656
656
656
656
656
658
660
662
664
666
669
671
673
675
676
674
671
669
666
664
661
659
656
654
654
656
659
662
665
667
670
673
675
678
679
680
681
682
683
683
684
685
686
686
684
682
681
679
678
676
675
673
672
670
669
667
665
664
662
660
659
657
656
656
656
656
656
656
656
656
656
655
655
655
654
654
653
653
652
652
652
650
648
646
644
642
640
638
636
634
633
633
633
632
632
632
631
631
631
629
627
625
623
621
619
617
614
612
611
610
609
608
607
606
606
605
603
602
600
599
597
595
594
592
592
592
592
591
591
591
591
590
590
590
589
589
589
588
588
587
587
587
586
586
586
585
585
585
585
585
585
585
586
586
586
586
588
589
590
591
592
593
594
595
596
597
598
600
601
603
604
605
606
607
608
609
610
611
613
614
615
616
617
618
619
620
622
623
624
625
625
624
622
621
620
619
618
617
616
615
615
616
616
617
617
618
618
619
619
618
616
614
612
610
608
606
604
601
599
599
598
597
597
596
595
594
594
593
592
591
589
588
587
586
585
585
585
585
585
585
585
585
586
587
587
588
589
590
590
590
590
590
590
590
590
590
590
589
589
589
588
588
587
587
587
586
586
586
586
585
585
585
585
585
585
585
585
585
585
585
584
584
584
583
583
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
582
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
581
582
582
583
583
583
584
584
584
584
585
585
585
585
586
586
586
586
586
586
586
585
585
585
584
584
584
583
583
582
582
582
581
581
580
580
580
579
579
579
579
579
579
579
578
578
578
578
578
578
578
578
578
578
578
578
578
579
579
579
579
579
579
579
579
579
579
579
579
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
577
577
577
577
577
577
577
577
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
575
575
575
575
574
574
574
574
573
573
573
573
573
572
572
572
572
572
572
573
573
573
574
574
575
576
576
577
578
579
579
580
581
581
581
581
581
581
581
581
580
580
580
579
579
578
578
578
578
578
579
579
580
580
580
581
581
581
581
581
581
581
581
582
582
582
582
582
582
582
582
581
581
581
581
580
580
580
580
579
579
579
579
579
578
578
578
578
577
577
577
577
577
577
577
577
576
576
576
576
576
576
576
576
575
575
575
575
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
575
575
575
575
576
576
576
576
576
576
576
576
576
576
575
575
575
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
574
575
575
576
576
576
577
577
578
578
579
579
580
580
581
581
582
582
582
582
582
582
582
582
582
581
581
581
580
580
579
579
579
578
578
578
578
578
577
577
577
577
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
575
575
575
575
575
576
577
577
578
579
579
580
581
581
582
582
582
583
583
583
583
583
583
582
582
582
582
582
583
585
586
588
589
590
591
593
593
593
593
594
594
594
595
595
595
594
593
591
589
587
586
584
583
582
582
582
582
582
583
583
583
583
583
583
583
582
582
582
582
581
581
580
580
579
579
578
578
577
577
577
577
577
577
577
577
576