576
575
574
574
574
575
575
576
576
576
576
576
576
577
577
577
578
579
581
582
583
584
585
586
587
588
589
591
593
594
596
598
600
601
602
603
603
604
605
606
606
607
608
609
609
609
609
609
609
609
608
608
608
607
605
604
603
600
599
596
594
592
589
588
586
586
585
584
584
584
584
584
585
587
588
588
590
591
592
594
596
597
598
600
603
607
610
612
613
615
616
619
621
623
624
623
621
620
616
614
613
613
613
612
612
613
617
622
623
624
624
625
625
625
626
626
627
627
627
627
628
628
628
628
628
628
628
629
631
632
633
634
635
635
636
637
637
637
638
638
637
637
637
637
637
637
637
637
637
637
637
638
638
638
637
637
637
637
637
637
637
637
637
638
638
638
638
638
637
637
636
636
636
636
636
637
638
639
639
640
640
640
641
641
641
641
641
641
641
641
641
642
643
645
645
648
651
651
651
650
650
650
650
650
650
650
650
649
649
649
649
649
649
653
656
660
661
665
669
670
671
670
668
668
667
667
666
665
664
664
664
664
664
665
666
666
666
666
663
661
659
659
659
659
658
658
657
656
655
654
653
652
652
651
651
650
650
650
649
649
649
648
648
647
646
646
646
645
644
641
639
637
635
634
632
628
626
625
623
620
618
618
616
617
618
620
620
621
621
621
621
621
621
620
620
620
620
620
620
620
620
620
619
619
619
619
618
618
618
619
620
620
621
621
623
627
630
632
633
634
635
635
636
639
639
640
641
642
643
645
646
646
650
651
653
653
653
652
652
650
651
652
654
655
655
655
656
656
657
658
659
659
659
660
660
661
661
662
663
665
666
667
667
667
667
667
667
667
668
669
670
670
670
670
669
669
669
669
670
670
671
672
673
674
675
676
677
677
678
678
679
680
682
683
684
684
685
685
686
687
688
688
688
688
689
689
690
690
690
691
691
691
691
691
690
690
690
690
690
688
687
687
685
684
683
683
683
682
681
681
681
681
681
681
681
681
681
681
681
681
682
682
683
684
684
684
683
682
682
681
680
680
677
675
673
670
668
666
665
663
663
662
661
661
661
659
657
655
654
654
654
653
653
653
653
653
655
655
656
656
656
656
656
656
656
656
657
659
659
660
660
661
662
663
663
663
663
663
663
663
665
665
665
664
664
663
662
662
662
661
661
661
661
662
662
663
663
663
664
664
664
664
665
665
665
665
665
665
664
664
663
663
663
663
663
663
663
664
664
664
664
664
665
665
665
665
665
665
665
665
664
664
664
664
664
664
665
665
666
666
666
666
666
666
667
667
667
668
668
669
669
669
669
670
670
670
671
671
670
670
670
671
671
674
677
680
681
681
681
681
682
683
684
684
684
683
683
683
683
682
682
682
682
682
682
682
683
683
684
686
688
689
690
690
691
691
691
691
691
691
690
690
690
689
689
689
689
689
689
689
689
689
689
689
689
690
690
690
691
691
692
693
693
693
693
693
694
697
700
700
700
700
704
705
710
712
712
717
717
724
728
728
728
729
728
723
721
716
716
711
711
710
710
708
708
708
708
708
708
708
708
708
708
708
708
708
708
707
705
705
704
704
703
703
704
704
705
705
705
705
704
704
703
703
702
701
701
701
701
700
700
699
698
696
694
693
690
687
685
684
683
682
680
677
675
673
672
670
668
667
666
667
668
670
671
670
670
669
666
663
660
657
655
654
653
652
652
652
652
652
652
652
652
652
652
652
652
653
654
655
655
656
657
658
659
663
667
669
672
672
675
676
677
679
680
680
680
680
681
681
681
681
682
684
685
687
689
689
688
687
685
684
683
682
681
680
680
679
679
679
679
679
679
680
680
681
681
681
683
684
684
686
687
687
688
688
688
688
688
688
688
688
688
688
688
688
687
687
686
685
684
682
682
681
681
681
682
682
682
682
682
682
682
682
683
683
683
684
684
685
685
683
679
676
673
671
670
669
668
667
665
663
662
661
661
660
660
660
659
659
659
659
659
658
658
658
657
657
657
657
657
657
656
656
656
656
656
656
656
656
656
656
656
656
655
655
654
654
654
653
653
653
652
651
649
649
649
649
648
648
649
650
650
651
651
651
651
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
651
651
651
651
651
651
651
651
651
651
651
652
652
652
652
652
652
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
651
650
649
649
649
650
650
650
650
650
650
650
649
649
649
650
651
651
651
651
651
651
652
652
652
652
652
652
652
651
651
651
650
650
650
650
650
649
649
649
649
649
649
649
649
649
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
651
651
651
651
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
651
651
652
652
653
653
653
653
653
653
652
652
652
652
652
652
652
654
656
659
661
664
665
667
669
671
673
674
675
675
672
670
669
669
669
668
668
668
668
667
667
667
666
666
665
665
665
665
664
664
664
664
664
664
663
662
662
662
662
662
662
664
666
667
670
671
672
673
674
674
675
676
676
677
677
677
678
678
678
677
676
676
675
675
675
675
675
675
675
675
676
677
678
678
676
674
672
670
669
668
667
666
664
663
661
660
659
657
656
654
652
652
651
650
649
649
649
649
649
649
649
649
649
649
649
649
649
649
650
650
651
651
652
653
654
654
655
655
656
657
658
658
659
660
660
661
661
662
662
662
662
661
659
657
655
654
653
652
650
649
648
648
648
648
648
647
647
647
647
646
646
646
646
646
646
646
646
646
646
646
647
647
647
647
647
647
646
646
646
646
646
646
647
647
647
647
647
647
647
647
647
647
647
647
647
647
646
646
646
645
644
643
643
643
643
643
642
642
641
641
641
641
641
641
641
641
641
641
641
641
641
641
641
642
643
643
643
643
643
643
643
643
643
643
643
643
643
643
643
643
643
643
643
644
646
648
650
649
649
648
648
648
648
649
649
649
649
649
649
649
649
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
649
649
649
649
649
649
649
649
649
649
650
650
650
650
650
649
649
649
649
650
651
651
651
652
652
652
652
655
658
661
663
665
668
669
670
671
672
672
673
673
674
674
675
675
674
674
673
672
672
672
672
672
671
670
670
669
669
668
668
667
667
666
665
664
663
662
660
659
658
656
656
656
656
658
658
655
653
651
650
650
649
649
649
649
649
649
650
650
650
651
651
651
651
650
649
648
647
647
647
647
646
646
646
645
645
644
644
643
642
642
642
642
642
642
642
642
643
643
643
643
643
643
643
643
643
643
642
642
641
641
640
640
640
640
640
640
640
640
640
640
640
640
640
640
639
638
637
637
637
638
638
637
637
637
638
638
638
639
639
639
640
640
641
641
642
643
643
644
645
647
647
646
645
643
640
639
639
639
639
639
639
639
639
639
639
639
638
638
638
638
638
637
637
637
637
637
637
637
637
638
638
638
639
640
640
640
640
639
638
637
637
637
636
636
636
636
636
636
637
637
637
637
638
638
638
639
639
639
640
640
640
640
640
641
641
641
641
640
640
639
639
639
639
639
639
637
636
634
634
634
633
633
633
633
634
634
635
635
635
635
635
635
634
634
634
634
634
635
636
637
637
636
636
635
635
635
634
634
634
634
633
633
633
632
632
632
632
632
633
633
633
633
633
633
633
634
634
635
635
635
635
635
635
635
635
635
637
638
638
639
640
641
641
641
641
641
641
642
642
642
642
642
641
640
640
640
640
640
640
641
641
641
641
641
641
641
640
640
639
639
639
639
639
639
639
639
639
640
640
640
640
641
641
642
642
642
641
641
641
641
641
641
641
641
641
642
642
642
642
642
642
643
643
643
643
644
644
645
645
645
645
644
644
644
644
644
644
644
642
640
639
640
641
641
643
643
644
644
643
643
643
643
644
645
645
645
645
645
645
645
645
646
646
646
646
646
646
646
646
646
646
647
647
647
647
647
647
648
648
648
648
648
647
646
646
646
645
645
644
644
644
644
645
645
645
645
645
645
644
644
643
642
642
643
644
645
646
646
646
646
647
647
647
648
649
649
649
650
650
650
650
650
650
650
650
650
650
650
650
650
650
650
649
649
649
649
649
649
649
649
649
650
651
652
652
652
652
652
652
652
651
651
651
651
651
651
650
650
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
650
650
650
650
650
650
650
650
650
649
649
649
649
649
649
649
649
649
649
649
649
649
649
649
651
651
652
652
652
652
653
653
653
653
654
654
655
655
655
655
655
655
655
655
656
657
657
658
658
658
659
659
659
659
659
660
660
660
660
659
659
659
659
659
658
658
657
657
657