474
476
472
472
472
472
472
472
472
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
474
474
474
474
474
474
474
474
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
475
475
475
475
475
475
475
475
475
475
475
475
475
475
476
476
476
476
476
476
476
476
476
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
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
477
477
477
477
477
477
477
477
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
479
479
479
480
480
480
481
481
481
482
483
483
484
485
486
486
487
488
489
490
491
492
493
494
495
496
497
499
500
501
503
504
506
507
508
509
510
511
512
514
515
516
517
518
518
519
520
520
521
521
523
524
525
526
527
529
530
531
532
533
534
535
536
537
538
539
540
541
543
544
546
548
549
550
552
553
555
557
559
561
563
565
567
569
571
572
572
573
574
575
576
576
577
578
579
581
581
582
583
584
585
586
588
589
591
592
593
595
596
597
599
600
601
603
604
606
607
608
610
611
613
615
616
618
620
621
623
625
626
628
629
630
631
632
634
635
636
637
638
638
639
640
640
641
642
642
643
645
647
648
650
651
652
654
655
657
658
660
662
663
665
667
668
670
671
673
675
676
678
680
682
683
685
686
687
689
690
691
692
693
695
696
697
699
700
702
704
705
707
709
710
712
713
714
714
715
716
717
718
719
719
719
718
718
717
717
716
475
722
723
723
723
723
723
723
723
723
723
723
723
723
723
723
723
724
724
724
724
724
724
724
724
724
725
725
725
725
726
726
726
727
728
730
732
733
735
736
737
739
741
743
744
746
748
750
751
753
754
755
756
756
757
758
760
761
761
762
763
763
764
765
765
766
767
767
768
768
769
770
770
771
771
772
772
773
773
774
774
775
775
775
776
777
778
779
780
781
782
782
783
784
785
786
786
787
788
789
789
790
791
791
791
791
791
791
791
791
791
793
795
798
801
804
806
808
811
813
816
819
821
824
826
829
831
834
836
839
841
843
845
847
849
851
853
856
857
858
859
860
861
862
863
864
865
865
865
866
866
866
867
867
867
867
867
867
867
867
475
869
870
870
870
872
873
875
876
877
878
880
881
883
885
887
889
890
892
894
896
897
898
899
901
902
903
904
905
906
907
908
909
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
925
926
927
927
928
929
929
930
931
931
932
933
934
935
935
936
937
937
938
939
939
940
940
941
941
942
944
945
946
947
948
949
950
951
951
950
950
874
942
942
940
939
938
937
936
935
934
933
932
932
932
932
931
931
931
930
929
927
925
922
921
919
918
916
914
912
910
908
906
903
901
898
896
894
892
889
885
883
881
879
877
875
873
871
869
867
863
860
856
853
850
846
842
840
839
837
835
833
831
830
828
827
827
827
827
826
826
826
826
826
826
826
826
826
826
826
825
825
824
823
822
821
821
821
821
821
821
821
821
821
820
819
818
817
815
814
813
813
812
811
810
809
808
808
807
806
804
802
801
799
797
796
794
791
788
785
783
781
779
776
773
771
768
766
765
764
763
761
759
758
757
756
753
750
747
744
741
738
735
733
732
730
728
727
726
724
723
720
717
714
713
710
707
705
703
702
701
700
699
697
697
696
695
695
694
693
692
689
687
685
683
681
679
678
677
676
675
674
673
672
670
668
666
664
662
659
657
656
654
652
650
648
646
645
643
642
641
640
638
637
636
635
634
633
631
630
628
627
626
626
625
625
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
625
628
630
632
634
636
638
639
639
639
639
638
638
638
638
637
637
636
636
635
634
633
633
632
632
631
630
630
628
627
626
625
623
622
621
620
618
617
616
616
616
615
615
615
614
614
613
613
613
612
612
612
611
611
611
610
610
610
610
610
610
610
610
609
609
609
609
608
608
608
608
608
608
608
608
608
608
608
608
608
609
609
610
610
611
611
612
612
612
613
613
613
612
610
608
607
605
603
601
599
598
596
594
593
591
590
588
587
586
585
584
583
582
581
580
580
579
579
578
578
577
577
576
576
576
575
575
575
574
574
574
573
572
571
571
570
569
568
568
567
566
566
565
564
564
563
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
561
561
561
562
563
564
565
566
567
568
568
567
566
565
564
563
562
560
558
557
556
555
554
553
551
550
548
546
544
540
538
537
534
532
529
525
523
521
518
516
516
515
514
514
513
513
512
511
510
509
509
508
507
507
507
507
507
507
507
507
506
505
503
501
500
498
497
496
495
493
492
491
490
488
488
487
486
486
485
485
484
483
482
482
481
481
480
480
479
479
479
479
479
479
479
479
479
478
478
478
478
478
478
478
477
477
477
477
477
477
477
477
477
477
477
477
477
477
477
476
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
475
475
475
475
475
475
475
475
475
475
475
475
476
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
475
475
475
475
475
475
475
475
475
475
475
475
475
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
472
472
472
472
472
472
472
472
472
472
472
472
472
472
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
471
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
472
473
473
473
473
473
473
473
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
473
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
475
475
475
475
476
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
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
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
475
475
476
476
476
476
477
477
477
477
477
477
477
477
477
477
477
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
477
477
477
477
477
477
477
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
476
477
477
477
477
477
478
478
478
478
479
479
479
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
481
481
481
481
482
482
482
482
482
482
482
482
482
482
482
482
482
482
481
481
481
481
481
481
481
481
481
481
481
482
482
482
482
483
483
484
484
485
485
486
487
489
491
493
496
499
501
503
505
506
508
509
511
512
513
511
509
507
505
503
501
498
496
493
491
489
486
484
481
479
479
479
479
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
478
479
479
479
479
479
479
479
479
479
479
479
479
479
479
479
480
480
480
480
480
480
480
480
480
480
480
480
481
481
481
482
482
482
482
483
483
483
483
484
484
484
484
484
484
484
484
485
485
485
485
486
486
486
486
487
487
488
488
489
489
490
490
490
490
491
491
491
491
492
492
492
492
492
492
492
492
492
493
494
495
496
497
497
497
497
497
497
497
497
497
497
497
497
497
497
496
495
493
492
491
490
489
488
487
487
487
486
486
486
485
485
485
485
485
485
484
484
484
484
484
484
484
484
484
484
484
484
484
484
485
485
485
485
485
485
485
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
500
500
500
500
500
500
500
500
500
501
501
502
502
503
503
503
502
501
500
499
499
498
497
497
496
496
495
494
494
493
493
492
492
491
491
490
490
489
489
489
489
489
489
488
488
488
488
487
487
487
487
487
486
486
486
486
486
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
486
486
486
486
486
486
486
486
485
485
485
485
485
485
484
484
484
484
483
483
483
483
483
483
483
483
483
483
483
484
484
484
484
484
484
484
484
484
484
484
484
484
484
484
484
484
484
485
485
485
485
486
486
487
487
488
488
488
489
490
490
491
491
492
492
492
492
492
492
492
492
492
492
492
493
493
493
494
494
495
495
495
495
495
495
495
495
494
492
491
490
489
488
488
488
488
488
488
488
488
487
487
487
487
487
487
487
487
487
487
487
487
487
487
487
486
486
486
486
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
485
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
486
485
485
485
485
485
485
485
485
485
485
485
485
485
485
486
486
486
486
486
486
486
486
486
486
486
486
487
487
487
488
488
488
488
488
488
488
488
488
488
488
488
488
488
489
489
489
489
489
489
489
489
489
489
489
489
489
489
489
489
489
489
490
490
491
491
492
492
493
493
494
494
495
495
496
496
496
496
497
497
497
497
498
498
499
500
500
501
501
502
502
502
502
502
502
502
502
502
503
503
504
505
505
506
507
507
508
509
510
511
512
513
514
515
518
521
524
526
529
532
536
538
539
541
542
543
544
545
545
545
545
545
545
545
545
545
544
543
542
542
541
541
541
541
541
542
542
542
543
543
543
544
544
544
544
545
545
545
546
546
546
547
547
548
548
549
549
550
550
551
552
552
552
552
551
551
550
549
549
548
547
547
546
546
545
545
544
544
545
547
549
550
552
554
555
556
556
557
557
558
558
559
559
560
560
560
560
560
560
560
560
560
560
560
560
560
560
560
560
560
560
561
561
562
562
563
563
564
565
566
567
567
568
569
570
571
571
571
571
571
571
571
570
570
570
570
570
570
570
570
570
571
572
573
574
574
575
576
576
577
578
578
579
580
580
580
580
581
581
581
581
582
583
584
585
586
587
588
589
589
589
589
589
589
589
589
589
588