626
626
626
626
626
626
626
626
626
626
626
626
626
626
626
626
627
627
627
627
627
627
627
627
627
627
627
627
627
628
628
628
628
628
628
628
628
629
629
629
629
629
629
629
629
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
629
629
629
629
629
629
629
629
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
627
627
627
627
627
626
626
626
626
626
625
625
625
625
625
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
623
623
623
623
623
622
622
622
622
622
622
622
622
622
622
622
622
621
621
621
621
621
620
620
620
620
620
619
619
619
619
619
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
618
619
619
619
619
619
619
620
620
620
620
620
621
621
621
621
621
622
622
622
622
622
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
622
622
622
622
622
622
622
622
622
622
622
621
621
621
621
621
621
621
621
621
621
621
621
620
620
620
620
619
619
619
618
618
618
617
617
617
616
616
616
616
615
615
614
614
614
613
613
613
612
612
612
611
611
610
610
609
609
609
608
608
608
607
607
606
606
606
605
605
604
604
604
604
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
604
604
605
605
605
605
606
606
606
607
607
607
607
608
608
608
609
609
609
610
610
610
610
611
611
611
612
612
612
612
613
613
613
613
613
614
614
614
615
615
615
615
616
616
616
616
617
617
617
618
618
618
619
619
619
619
620
620
620
620
621
621
621
622
622
622
622
622
622
622
622
622
622
622
622
622
623
623
623
623
623
623
623
623
623
623
623
623
623
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
623
623
623
623
623
623
622
622
622
622
622
622
622
622
622
622
621
621
621
621
620
620
620
620
619
619
619
618
618
618
618
617
617
617
617
616
616
616
615
615
615
615
614
614
614
613
613
613
612
612
612
611
611
611
611
610
610
610
609
609
609
608
608
608
607
606
606
606
606
605
605
605
604
604
604
604
604
604
604
604
604
604
604
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
604
604
604
604
605
605
605
605
605
606
606
606
606
607
607
607
607
607
608
608
608
609
609
609
610
610
610
611
611
611
612
612
612
613
613
613
613
614
614
614
615
615
615
615
616
616
616
616
617
617
617
617
617
618
618
618
618
619
619
619
619
620
620
620
620
621
621
621
621
621
621
621
621
621
621
621
621
622
622
622
622
622
622
622
622
622
622
622
622
622
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
622
622
622
622
622
622
622
622
622
621
621
621
621
621
621
621
621
619
619
619
619
618
618
618
617
617
617
617
616
616
616
616
615
615
615
615
614
614
614
614
613
613
613
611
611
610
610
609
609
608
608
607
607
606
606
605
605
605
604
604
604
604
604
604
604
604
604
604
604
604
603
603
603
603
603
603
603
603
603
603
603
603
604
604
604
604
604
604
604
605
605
605
605
605
605
606
606
606
607
607
607
607
608
608
608
609
609
609
610
610
610
611
611
611
611
612
612
612
613
613
613
613
613
614
614
614
614
615
615
615
615
616
616
616
616
617
617
617
618
618
618
618
619
619
619
619
619
619
620
620
620
620
620
620
621
621
621
621
621
621
622
622
622
622
622
622
622
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
623
623
623
623
623
622
622
622
622
622
622
622
622
622
622
622
622
622
622
622
622
622
622
622
621
620
620
620
620
619
619
617
617
616
616
615
615
614
614
613
613
613
612
611
611
610
610
609
609
608
608
607
606
606
605
605
604
604
604
604
604
604
604
604
604
604
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
604
604
604
604
604
604
604
605
605
605
605
605
606
606
606
606
606
606
607
607
608
608
608
609
609
609
610
610
610
611
611
611
612
612
612
613
613
613
614
614
614
615
615
615
616
616
616
616
617
617
617
617
618
618
618
618
618
619
619
619
619
620
620
620
620
620
621
621
621
621
621
621
621
621
621
621
621
621
621
622
622
622
622
622
622
622
622
622
622
622
622
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
622
622
622
622
622
621
621
621
621
621
620
620
620
620
619
619
619
619
618
618
618
618
618
618
618
618
618
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
617
618
618
618
618
618
618
618
618
619
619
619
619
619
619
619
619
620
620
620
620
620
620
620
620
620
620
620
620
620
620
620
620
620
620
620
620
621
621
621
621
621
621
621
621
621
621
621
621
622
622
622
622
622
622
622
622
622
622
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
623
624
624
624
624
624
624
624
625
625
625
625
625
625
625
626
626
626
626
626
626
626
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
629
629
629
629
629
629
629
629
629
629
629
629
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
630
629
629
629
629
629
629
629
628
628
628
628
628
628
628
627
627
627
627
627
627
626