529
529
530
532
534
537
535
531
530
530
529
528
525
525
525
525
525
526
527
528
528
530
534
538
541
545
546
549
550
550
549
554
555
555
555
555
555
557
557
558
555
553
549
545
544
543
540
539
538
538
537
536
528
525
524
522
522
520
520
519
518
517
515
514
514
514
515
519
518
517
516
515
515
515
515
511
508
508
511
513
518
518
518
518
518
518
518
518
518
519
521
514
523
523
523
523
523
529
537
539
551
564
566
558
561
561
572
588
586
591
592
583
574
572
577
580
580
581
581
581
581
581
581
581
590
590
586
591
596
598
598
599
604
604
610
612
612
612
616
617
618
620
627
631
638
640
643
646
648
649
650
650
650
651
648
648
646
643
643
643
643
640
639
639
639
639
639
639
639
640
640
641
641
641
641
641
641
643
646
651
660
674
679
680
680
680
681
681
680
679
679
679
679
680
680
680
680
680
683
683
681
676
675
676
670
665
660
653
653
654
654
656
658
658
661
666
668
670
686
700
712
714
738
740
745
751
760
760
759
759
759
759
760
761
762
763
765
766
766
767
768
769
771
774
776
781
784
784
790
800
807
813
828
838
848
852
858
861
868
875
877
878
880
886
888
895
898
902
910
911
912
916
921
923
924
927
925
923
923
939
940
956
957
958
959
963
963
963
963
963
963
965
968
971
975
990
990
989
987
989
1002
1005
1007
1010
1013
1014
1013
1010
1009
1008
1007
1006
1011
1028
1030
1032
1033
1036
1038
1046
1050
1067
1080
1085
1087
1089
1107
1107
1107
1108
1108
1109
1110
1111
1111
1119
1124
1124
1124
1124
1125
1125
1123
1122
1121
1117
1112
1112
1116
1116
1116
1115
1115
1108
1107
1102
1101
1101
1099
1096
1094
1091
1085
1064
1064
1064
1062
1060
1058
1057
1056
1055
1046
1030
1032
1027
1024
1020
1014
1008
1002
1001
994
984
984
983
982
979
962
962
960
954
944
938
936
934
933
927
921
920
917
914
911
907
904
900
899
899
898
898
902
902
905
907
910
907
901
897
892
886
885
881
881
875
871
867
867
867
869
854
842
841
840
840
840
838
835
833
832
831
830
829
827
812
804
799
791
786
785
786
789
792
796
789
783
782
782
774
769
763
763
764
757
752
748
728
719
711
708
708
683
681
679
673
672
671
671
665
663
645
635
630
628
623
623
623
624
625
627
627
627
628
629
631
631
631
633
636
647
647
639
639
635
638
644
652
650
646
653
654
655
656
658
654
656
670
665
675
678
679
677
677
679
679
679
677
681
682
685
686
690
691
699
700
702
706
707
708
709
709
709
707
705
704
702
702
702
702
702
702
702
705
708
708
708
708
707
705
705
705
705
705
705
705
705
705
705
705
705
707
707
707
707
708
708
707
707
707
708
709
709
709
709
710
711
712
712
712
712
715
721
720
721
721
724
727
730
730
731
732
732
735
735
746
753
756
759
761
763
763
763
758
742
742
743
742
740
740
738
741
748
746
745
745
743
743
743
744
745
746
748
748
749
750
751
750
750
750
751
752
753
753
754
757
757
763
765
766
768
769
769
771
777
775
775
780
782
784
784
784
784
784
787
791
795
795
795
795
797
800
802
802
802
803
805
809
811
814
814
817
836
836
837
838
840
843
846
852
873
878
878
880
880
879
888
898
908
920
920
928
939
950
956
958
960
960
967
970
977
977
977
977
976
981
975
974
970
965
963
964
962
953
951
948
941
939
939
940
940
944
943
938
929
927
927
926
925
919
914
914
914
914
912
910
909
901
900
899
898
898
898
898
896
895
894
886
886
885
885
884
877
875
868
871
871
867
863
859
850
852
856
841
820
819
819
814
801
788
776
777
773
771
771
762
767
767
767
767
767
762
753
751
760
759
759
757
751
751
737
722
722
726
714
709
710
696
694
678
678
671
669
666
663
661
659
662
665
665
663
653
651
654
640
635
633
632
630
628
626
613
612
612
622
619
620
616
611
607
606
606
599
594
591
589
589
589
586
585
583
582
582
582
585
586
588
597
597
591
591
593
592
589
585
585
586
588
593
584
579
578
586
590
589
576
577
577
585
589
583
568
566
566
563
559
553
553
551
548
543
539
536
533
533
533
536
539
538
537
537
537
533
534
536
540
542
542
542
542
542
541
541
540
537
538
540
537
534
533
535
538
538
538
543
545
545
545
548
551
553
558
558
558
562
562
566
561
561
559
555
553
550
544
544
545
542
550
550
546
536
552
550
544
540
543
544
542
542
542
538
527
509
499
499
489
484
485
485
486
486
482
481
481
480
480
478
478
478
480
477
472
470
469
469
468
468
468
467
467
466
466
466
467
469
469
471
475
479
480
477
475
473
471
471
469
464
458
457
457
457
457
457
459
459
459
462
463
473
473
473
473
482
487
489
491
512
511
510
510
510
510
514
518
521
523
529
543
543
543
540
541
542
538
534
526
519
517
514
512
506
507
507
513
515
519
521
528
524
516
515
516
519
520
522
528
536
541
544
547
554
565
566
568
574
580
581
584
586
592
594
595
597
600
605
607
610
613
616
623
627
636
638
639
639
643
647
653
657
668
670
672
673
674
676
682
683
684
685
687
692
690
687
679
680
682
683
684
684
685
685
684
684
683
683
682
682
682
682
682
681
680
680
679
678
677
669
663
661
660
658
660
660
670
693
695
703
705
702
699
691
692
690
686
686
686
686
683
681
680
681
682
683
686
689
690
690
690
691
691
691
691
697
697
698
708
710
712
713
715
718
720
722
724
727
729
732
735
748
752
753
755
757
759
763
765
767
768
769
771
773
776
778
781
777
776
775
773
766
762
758
757
756
756
753
749
754
747
741
733
731
731
741
744
744
752
756
752
743
748
746
744
740
738
736
734
734
735
735
736
735
734
732
730
728
726
723
712
709
701
694
692
688
689
689
685
679
679
678
677
666
656
653
653
653
653
647
638
629
626
624
623
623
621
620
618
616
614
613
612
610
608
606
601
596
592
588
588
588
588
583
583
582
582
582
582
583
583
580
573
566
558
549
546
546
544
544
544
546
537
536
536
538
538
537
533
530
528
524
522
521
518
517
514
513
509
501
495
495
494
492
489
489
489
488
487
487
487
487
487
488
488
488
486
485
485
483
484
484
482
482
481
481
481
481
481
481
481
484
485
485
486
486
487
488
489
490
497
499
501
506
509
519
520
521
532
537
540
540
544
548
551
555
568
576
577
577
577
576
576
576
576
576
576
577
583
588
590
593
595
597
599
599
599
599
600
604
609
613
616
618
620
618
617
616
618
626
628
628
628
640
650
662
662
663
664
664
667
668
671
675
679
691
693
700
701
702
702
701
708
713
715
720
722
723
724
724
725
725
726
730
733
747
761
764
765
766
768
770
771
773
779
781
786
787
794
796
795
795
793
806
807
810
812
812
819
823
826
827
829
831
836
838
843
844
845
845
844
843
841
838
835
835
839
842
841
837
829
827
822
805
806
807
800
804
796
790
785
778
775
768
767
767
763
750
747
744
727
726
725
724
722
719
717
715
713
709
708
705
702
693
691
691
683
675
654
647
648
649
650
649
649
649
648
648
647
646
645
644
642
638
634
624
618
608
604
602
598
589
587
581
580
579
579
578
573
572
570
569
568
567
566
566
565
561
559
559
557
557
556
556
556
556
551
550
549
548
547
538
533
530
527
525
525
525
526
530
530
531
532
533
535
535
532
530
529
529
529
529
529