618
618
623
629
643
631
624
620
623
629
638
648
649
650
651
657
665
667
667
667
666
666
663
659
655
653
650
645
644
643
641
640
637
635
634
634
634
635
635
636
640
641
642
643
644
645
646
641
641
640
640
639
639
639
639
640
642
643
643
638
625
623
620
616
615
613
605
605
605
606
614
615
603
595
595
595
594
594
594
604
614
616
619
621
622
625
626
627
632
633
634
634
634
619
614
613
619
626
629
633
641
646
649
652
643
629
632
636
634
624
620
617
613
612
612
610
607
605
605
607
608
616
616
615
613
618
624
627
628
630
628
628
629
630
631
626
625
623
625
635
637
637
637
637
635
634
633
633
634
634
635
635
636
638
643
646
646
645
645
645
645
645
646
646
646
647
647
647
645
643
642
641
640
641
642
644
645
646
642
635
636
638
638
638
639
639
640
645
646
648
651
650
647
644
644
645
645
646
646
647
647
651
651
651
650
650
652
654
655
658
660
661
664
665
657
654
652
650
652
659
662
664
668
671
667
664
660
657
656
655
654
654
654
654
654
654
654
654
654
654
654
653
652
652
651
651
651
653
654
655
656
661
662
663
663
659
657
655
654
652
649
649
660
663
666
679
685
687
675
665
662
665
667
668
668
667
667
667
666
665
678
682
686
682
671
667
666
666
665
667
667
667
668
668
669
669
670
670
672
675
676
677
679
679
679
680
680
681
682
682
681
678
676
676
676
676
679
681
681
681
680
679
678
680
682
685
686
686
686
686
686
686
687
689
690
685
683
681
685
691
693
700
698
696
689
691
693
695
698
695
694
691
691
693
697
705
701
702
704
706
710
719
721
715
714
712
707
707
706
706
705
705
707
708
708
710
712
712
713
715
718
720
722
725
728
731
730
725
723
720
719
720
720
720
718
717
715
715
716
716
717
717
719
719
720
722
725
727
728
730
731
732
736
736
737
737
738
742
744
749
754
754
755
756
758
759
760
761
762
762
762
763
763
764
764
765
766
766
766
767
767
767
767
767
770
770
771
775
780
785
786
791
791
792
792
794
795
796
798
800
802
804
815
818
823
827
828
828
828
828
829
829
829
829
827
825
821
826
832
837
841
845
843
842
841
841
841
842
844
845
847
849
851
854
858
861
862
863
865
866
871
872
872
873
873
873
881
885
891
890
887
891
896
896
896
897
899
902
905
907
911
920
925
932
935
939
943
944
945
947
947
947
946
946
945
944
957
966
972
978
983
982
980
977
977
976
976
985
991
995
1003
1005
1003
1001
999
999
998
998
999
1011
1013
1016
1019
1021
1022
1021
1017
1019
1023
1026
1026
1027
1028
1029
1029
1027
1024
1022
1022
1028
1030
1024
1021
1014
1016
1018
1024
1025
1026
1027
1028
1028
1027
1021
1018
1013
1008
1008
1009
1011
1013
1016
1022
1024
1025
1026
1026
1026
1025
1025
1024
1021
1019
1017
1015
1014
1014
1015
1015
1016
1016
1014
1014
1005
999
997
996
998
1003
1018
1021
1020
1019
1017
1011
1001
996
996
996
996
996
996
996
996
995
993
990
989
980
975
973
972
975
976
971
970
968
967
966
964
962
953
951
951
951
951
951
951
951
951
950
941
946
949
949
945
929
926
924
922
920
916
914
910
910
911
911
915
922
922
923
923
923
923
924
924
924
924
923
920
919
919
919
919
921
923
924
926
927
928
929
927
924
922
917
915
908
906
906
906
906
905
903
896
891
885
882
879
876
878
879
880
881
882
884
882
877
879
879
881
881
882
882
882
881
880
879
878
876
862
847
845
843
843
844
845
846
849
850
851
852
852
852
851
850
849
848
848
848
847
840
835
833
830
829
829
828
827
827
826
825
824
822
821
820
820
819
820
822
824
827
832
833
834
837
843
841
839
833
829
824
817
815
814
812
807
803
792
794
809
809
805
804
803
801
799
799
799
798
797
796
795
794
794
790
789
789
788
788
788
787
787
787
783
783
782
782
782
782
770
773
780
786
783
774
767
767
770
773
772
768
766
763
762
761
758
757
757
758
759
760
755
747
750
751
751
750
748
747
746
746
748
754
759
761
758
757
751
753
754
753
753
752
752
752
754
755
757
749
745
745
745
747
751
739
736
735
732
730
730
730
731
732
731
730
728
727
726
722
725
725
726
732
734
734
733
733
733
733
732
732
732
730
725
724
723
722
723
722
719
716
706
707
707
706
704
702
700
700
700
703
707
707
707
706
705
705
706
701
701
703
708
712
699
704
705
700
697
697
697
697
698
699
696
691
695
701
691
687
691
693
695
694
691
687
685
683
682
682
682
682
682
682
683
683
684
684
683
679
679
679
679
689
691
694
696
686
683
680
677
679
680
680
680
680
681
679
677
675
674
674
674
675
675
676
676
672
673
675
677
672
670
670
669
667
665
664
668
668
665
663
660
659
658
657
651
651
659
664
666
662
658
654
650
649
647
646
645
645
647
648
644
641
635
635
635
635
634
634
633
632
631
630
628
627
626
627
628
631
631
626
622
621
622
624
626
630
634
638
638
633
622
612
614
616
618
623
626
632
638
643
648
649
646
642
639
631
629
632
635
639
638
635
632
628
619
604
606
609
616
613
611
609
607
607
606
606
606
606
606
604
601
598
615
633
636
636
637
625
620
611
609
610
613
615
614
614
611
604
599
594
619
614
608
613
616
612
607
603
599
601
604
605
597
588
584
582
579
575
571
567
553
553
554
557
558
560
562
562
562
571
566
559
550
554
543
525
526
532
534
539
541
529
516
514
512
510
517
523
529
542
534
527
521
504
505
511
513
515
510
507
513
514
515
518
515
512
509
504
504
505
506
506
508
509
509
510
512
512
512
511
511
510
509
508
508
515
515
514
513
512
512
512
512
513
515
516
518
519
509
503
497
490
490
490
490
490
489
488
489
491
494
496
502
487
483
480
480
490
493
495
493
491
483
495
500
504
508
511
514
521
517
509
499
495
496
496
497
497
498
498
497
494
484
483
481
477
475
477
479
482
484
484
482
481
485
493
496
500
506
509
509
510
511
514
521
524
526
528
531
541
537
532
526
513
514
515
517
520
526
529
530
527
518
520
521
523
529
530
530
529
528
525
524
524
527
530
533
534
530
525
521
515
519
525
541
536
532
532
530
529
526
528
531
533
535
540
546
548
552
555
560
558
556
551
549
550
551
556
557
554
551
550
546
546
546
547
547
547
545
539
516
511
506
502
507
537
552
556
560
563
546
542
537
547
558
565
561
556
547
545
544
543
538
533
529
520
516
511
504
501
499
499
500
501
501
500
500
499
498
497
495
494
472
472
471
467
459
456
454
458
456
455
452
451
446
435
440
445
454
456
452
438
432
422
420
421
422
422
424
425
430
431
433
434
427
423
423
428
426
418
412
408
406
403
402
405
403
400
400
402
402
402
401
399
398
397
396
396
400
401
401
399
398
409
410
413
413
413
413
413
415
416
427
424
419
423
427
430
429
427
425
420
420
419
417
415
413
408
406
406
406
408
409
412
414
416
418
419
420
421
422
423
424
427
428
430
432
436
438
439
439
438
434
432
428
422
420
419
417
416
416
416
416
422
428
435
438
436
433
427
424
421
420
419
425
431
427
423
419
410
417
420
417
416
414
420
429
430
432
435
436
437
438
440
439
435
429
424
424
424
429
432
430
427
425
423
423
422
421
419
424
431
434
435
435
436
436
437
437
437
437
436
436
436
436
438
443
447
452
452
450
448
447
445
444
442
441
440
437
434
430
428
425
451
454
451
448
448
448
447
446
445
444
444
446
437
438
439
440
442
444
448
448
443
440
440
439
447
454
442
431
433
438
449
443
439
438
441
446
444
437
428
428
439
439
439
446
438
427
432
432
431
437
444
441
435
433
430
428
432
437
437
435
432
431
427
426
431
431
432
433
433
433
432
432
430
428
427
424
422
422
422
424
425
428
438
441
444
446
439
434
432
428
421
419
419
419
419
420
421
421
421
424
426
432
436
440
441
431
429
431
432
432
433
435
437
442
444
443
443
452
454
459
463
462
459
458
456
459
460
461
473
474
463
461
459
458
456
455
451
448
449
450
452
453
455
458
458
460
461
462
463
466
466
467
468
469
475
487
492
498
509
513
518
515
508
497
490
484
473
467
450
450
449
449
448
445
446
447
450
451
452
444
438
441
444
446
449
457
469
470
469
466
458
454
444
440
437
439
439
440
436
438
444
446
447
441
440
442
444
444
444
444
444
444
449
453
458
461
456
453
451
452
454
455
453
451
449
448
444
443
443
442
441
441
441
441
443
444
446
447
448
447
446
444
443
441
439
437
437
438
440
441
441
442
443
445
445
446
447
448
449
448
447
446
445
442
441
449
456
449
447
448
451
457
459
460
460
460
460
459
459
459
459
460
461
463
465
468
470
472
471
470
469
468
467
467
467
467
467
467
467
467
467
468
468
469
473
473
473
472
470
469
469
469
469
469
469
470
470
470
470
470
469
468
468
467
466
465
461
461
458
457
461
466
468
478
481
481
480
477
473
471
470
469
474
475
477
478
480
456
464
467
468
466
465
463
460
457
455
452
451
457
462
467
471
474
473
470
468
462
466
468
470
471
474
476
472
449
443
444
445
446
447
448
449
451
451
452
452
453
453
454
454
454
455
455
454
447
444
449
453
455
453
451
450
449
446
445
445
446
447
448
449
451
453
454
456
459
460
460
460
460
460
469
475
478
468
458
446
445
445
445
446
447
446
445
445
446
450
452
456
460
482
477
471
466
462
457
448
451
453
456
462
465
462
460
456
456
456
456
456
457
460
462
462
462
465
471
484
495
495
486
484
474
469
458
451
456
461
464
457
461
466
467
467
467
471
473
479
484
485
486
487
488
489
493
498
499
500
491
488
484
482
480
479
476
471
469
468
470
472
473
474
475
475
474
472
468
466
462
460
456
457
459
459
462
466
468
467
465
463
458
456
457
460
461
460
456
455
453
456
457
458
460
470
474
479
471
469
468
465
457
460
463
471
472
465
464
463
462
462
461
461
458
474
480
482
486
496
498
510
513
516
518
521
526
527
527
522
495
487
476
475
472
467
466
464
464
463
462
462
461
461
466
467
469
470
472
472
469
466
460
459
461
463
464
465
466
466
466
465
465
464
462
460
458
458
458
459
461
464
465
461
461
462
463
464
466
465
462
462
465
467
474
476
479
482
483
485
491
494
499
513
516
519
526
524
521
519
514
493
488
482
475
472
472
473
473
473
475
475
475
475
477
480
478
474
473
471
466
471
474
481
484
485
485
485
485
487
490
491
493
497
498
491
486
482
479
462
462
461
463
466
469
470
470
471
475
478
480
488
491
495
502
506
511
520
522
521
520
518
513
509
503
501
497
485
484
480
475
472
471
469
466
468
468
471
472
476
471
466
467
471
471
471
476
478
483
481
477
478
481
486
491
495
491
489
480
477
479
483
489
490
493
496
500
506
507
494
478
476
476
476
477
478
478
478
480
481
483
484
486
484
484
484
482
480
479
478
477
478
479
480
482
483
484
499
502
510
509
509
508
508
507
506
506
510
517
520
524
528
529
529
528
518
515
512
509
520
521
523
529
532
534
556
558
561
565
568
567
566
565
560
561
565
569
571
574
575
574
574
574
574
576
582
591
592
594
595
597
600
602
605
606
619
637
645
650
650
650
650
650
650
653
659
659
660
661
661
662
663
663
665
667
677
679
681
683
690
690
691
691
691
691
695
702
715
711
709
702
705
721
723
724
726
729
734
738
745
750
755
757
762
762
762
762
762
763
764
781
792
796
790
787
784
787
795
799
801
803
812
814
819
824
830
835
837
843
845
846
849
859
863
866
869
869
870
871
876
884
884
884
884
884
884
884
884
885
886
892
898
904
908
909
911
913
915
921
926
929
929
927
925
922
919
919
919
919
920
921
922
924
925
925
925
927
933
934
935
936
937
938
941
947
948
949
951
953
957
957
957
957
956
954
953
952
952
951
950
949
948
947
946
946
945
944
944
942
940
937
935
934
932
930
926
926
923
919
918
916
915
915
914
913
912
912
912
912
912
910
907
895
890
877
877
876
876
875
874
874
874
874
873
873
871
870
870
869
868
868
868
868
868
868
869
869
871
873
874
875
874
873
869
867
867
868
869
869
866
859
856
855
854
846
845
844
838
835
833
829
828
828
828
831
831
831
831
830
829
828
828
828
828
828
828
828
827
828
829
830
830
831
831
832
832
832
831
830
830
831
832
833
833
830
830
825
822
822
822
822
822
822
824
826
827
828
831
833
834
840
843
843
843
843
843
843
843
843
843
843
842
841
839
837
836
834
833
833
832
831
831
831
830
832
837
835
834
834
834
834
834
834
834
834
834
834
834
834
834
834
834
835
835
837
839
840
842
843
844
845
846
847
848
849
849
853
855
856
858
862
863
865
866
867
873
875
875
877
878
879
881
883
886
894
895
895
894
893
893
894
896
900
902
904
906
911
913
915
917
923
924
925
926
927
928
929
931
932
932
934
934
934
935
935
934
933
932
931
928
928
928
928
928
928
928
926
925
925
927
919
909
907
905
903
903
902
902
900
899
899
896
886
884
881
874
872
872
872
872
871
870
868
864
863
862
861
860
860
855
858
859
859
859
859
858
854
853
852
850
850
850
851
852
852
853
854
854
855
855
857
857
857
857
858
867
869
869
868
866
866
863
863
864
879
881
884
883
882
881
880
880
879
878
872
871
868
868
869
869
869
867
862
861
862
860
857
852
849
848
848
847
847
846
845
844
841
839
839
839
839
839
841
846
849
849
849
848
847
846
844
843
843
842
842
842
843
843
843
841
841
842
842
842
845
845
846
847
848
851
856
858
863
863
863
863
863
863
863
864
865
865
865
865
865
865
866
869
870
872
877
880
881
882
882
883
883
883
882
882
882
882
886
889
890
890
891
892
897
896
896
895
895
894
894
893
893
892
892
892
891
891
891
891
896
897
898
899
901
901
902
902
905
906
908
903
896
885
884
884
883
882
881
880
878
878
878
878
878
879
880
881
883
883
884
884
883
883
882
882
882
882
882
882
881
881
881
880
880
880
879
879
877
876
876
876
875
875
874
872
872
871
870
869
868
866
860
859
855
855
854
853
853
852
852
851
848
847
846
847
848
850
852
853
853
854
855
852
850
848
850
853
851
850
849
849
849
849
849
849
849
849
849
850
851
852
856
858
859
865
869
873
873
873
873
873
873
872
871
869
868
867
866
862
861
860
859
854
852
851
848
847
846
845
842
841
840
824
823
821
819
817
815
811
810
809
804
799
797
791
789
783
782
781
779
777
776
776
776
776
776
776
776
776
776
773
770
763
761
762
762
762
761
755
753
751
747
746
744
742
739
739
736
731
725
717
709
707
706
702
699
690
687
683
683
681
678
675
671
666
664
662
661
656
653
645
637
627
622
620
618
617
616
607
605
604
595
593
592
591
588
587
585
583
581
580
576
573
572
571
569
569
569
569
570
570
570
569
569
568
565
564
564
564
564
564
564
564
564
563
562
562
561
560
562
563
564
564
565
567
560
555
554
554
552
550
551
551
546
545
547
550
551
551
551
548
544
542
542
540
538
537
535
533
534
536
533
528
529