643
643
640
636
631
628
624
621
620
617
608
606
601
599
596
595
593
593
595
595
595
596
598
599
601
602
604
605
612
615
623
630
638
642
645
647
648
649
651
651
655
657
661
664
666
679
681
688
691
693
694
695
693
693
694
696
699
696
696
696
696
696
696
696
701
707
708
710
711
711
711
709
704
696
696
700
704
708
712
713
714
714
709
705
703
702
701
697
694
688
680
678
677
676
676
675
672
671
667
666
663
660
657
653
652
646
645
644
644
643
643
643
643
643
638
640
634
625
622
621
620
617
616
614
612
604
599
597
594
586
584
583
583
581
581
581
581
582
583
582
578
575
575
575
575
575
575
576
577
578
578
576
576
575
575
575
575
573
571
569
569
568
562
561
561
560
560
556
556
556
556
559
558
565
565
569
578
567
559
561
563
561
561
563
564
568
570
570
570
569
566
559
555
545
542
542
542
542
543
543
545
551
552
551
550
550
550
550
548
548
547
546
546
550
546
541
534
534
534
535
535
535
541
541
541
540
541
544
552
554
554
555
556
557
558
559
566
572
587
589
591
593
593
584
581
581
581
581
582
583
584
586
588
590
591
592
592
592
599
599
600
618
622
623
623
623
623
623
626
633
657
659
659
659
659
659
658
651
652
652
653
653
652
650
645
641
642
642
642
642
642
642
642
643
644
645
646
646
647
651
653
654
654
657
658
677
678
680
683
694
695
700
702
703
704
707
710
714
717
722
731
732
733
735
736
738
738
734
731
728
710
709
709
709
709
708
708
708
708
707
702
701
700
695
693
692
691
686
682
681
678
672
668
664
659
656
652
644
630
621
609
606
604
603
599
595
589
584
580
577
577
577
576
574
572
572
571
569
567
565
563
560
544
540
531
529
529
529
528
528
527
526
525
525
524
524
524
524
521
518
512
512
510
506
506
505
503
503
502
502
502
502
502
510
523
527
528
528
524
522
521
520
516
515
515
516
518
518
518
518
520
526
528
538
528
527
526
526
527
527
526
526
526
526
526
526
526
527
526
526
526
526
526
526
526
530
535
536
536
536
533
532
532
531
530
528
527
527
527
524
523
524
524
528
528
528
528
528
530
531
531
531
530
529
529
530
530
530
530
529
528
528
527
526
526
526
525
525
525
525
526
526
526
525
525
525
527
527
527
527
527
527
527
527
527
527
526
526
525
525
527
531
534
533
533
533
532
532
532
533
536
538
539
539
539
539
540
541
542
545
548
550
551
553
556
557
558
559
560
561
562
565
567
570
577
580
582
584
587
589
592
599
603
606
607
607
606
606
602
594
594
603
605
605
603
601
600
603
607
610
612
613
613
614
615
616
612
606
599
592
589
584
582
566
565
565
563
561
559
558
558
556
554
554
553
552
549
546
543
542
540
538
534
534
534
534
534
534
534
534
537
544
546
547
549
549
549
549
548
548
547
547
546
546
546
546
545
545
545
545
545
545
544
544
543
542
541
541
537
536
534
533
531
531
531
531
531
531
531
531
531
531
531
531
531
531
531
531
531
531
531
532
532
534
536
537
539
543
544
544
545
545
545
545
545
545
546
546
546
546
546
547
548
549
550
550
550
549
549
548
548
546
545
545
545
545
545
544
542
540
539
538
538
538
538
537
534
534
534
535
536
536
536
537
539
539
540
540
541
541
543
544
545
546
547
549
550
551
552
553
554
555
555
555
555
555
554
553
553
551
548
546
544
542
539
537
536
536
536
536
536
536
536
536
537
537
570
570
574
578
580
583
585
594
601
602
601
599
596
597
601
604
610
611
611
613
613
615
615
616
617
621
622
623
623
626
631
637
641
643
643
643
643
651
659
665
667
670
670
671
673
677
679
679
687
695
702
705
707
704
705
707
710
712
713
713
713
713
714
717
723
737
740
737
748
748
748
749
750
750
753
756
760
764
769
771
774
779
779
776
784
786
789
792
787
794
810
809
807
807
812
817
821
820
815
814
816
818
820
805
801
796
790
790
789
783
773
760
763
756
751
737
737
737
731
724
713
711
710
707
705
704
704
704
705
706
708
706
703
698
694
693
688
684
680
664
662
660
643
642
644
634
627
623
623
621
619
616
605
599
596
594
584
582
581
579
576
574
571
569
568
568
565
556
549
546
545
542
541
537
527
522
519
519
518
518
516
514
512
487
487
486
478
474
471
470
469
468
464
462
449
449
449
450
451
458
459
459
459
458
455
450
449
448
446
434
433
430
428
427
427
427
427
427
427
426
425
425
425
424
424
423
423
424
425
426
426
426
426
428
429
433
433
432
427
431
430
430
429
429
430
433
435
437
439
443
445
448
452
453
453
453
451
449
447
447
447
449
455
457
458
457
456
455
456
457
458
460
458
456
462
463
463
465
467
469
470
471
471
471
472
472
472
473
474
474
476
477
478
480
481
487
489
490
498
499
500
502
507
508
510
511
515
519
522
525
524
520
518
517
515
515
515
515
515
514
514
511
506
503
501
499
498
498
498
498
495
493
491
486
487
485
477
466
464
464
464
464
464
464
468
474
480
481
483
488
493
496
495
492
489
487
487
497
496
485
478
476
476
477
477
477
478
478
481
482
484
492
499
499
506
508
522
523
520
523
524
525
525
527
530
532
528
524
524
520
517
517
516
516
516
516
516
523
530
544
549
554
557
561
564
563
561
559
559
559
561
562
566
567
569
573
577
583
589
591
596
597
598
600
600
600
596
589
585
585
581
580
571
569
567
565
564
564
564
564
564
564
561
559
558
558
557
553
552
552
560
561
563
574
572
572
570
569
566
563
558
556
553
552
544
543
542
540
536
535
520
512
506
494
490
490
491
491
492
495
494
490
490
490
490
490
491
492
482
478
474
474
476
478
481
481
476
476
478
478
482
483
483
483
483
483
484
487
489
489
488
488
485
482
476
475
475
476
476
475
475
475
475
480
483
493
503
506
509
512
513
511
512
515
516
512
508
507
506
506
507
509
509
509
510
521
527
525
525
522
516
516
516
518
520
524
526
526
526
526
525
525
525
525
526
526
527
527
527
536
537
544
545
545
545
538
537
524
523
512
511
510
494
493
490
490
490
490
488
486
485
473
471
469
467
465
460
459
459
457
456
456
460
461
461
462
462
462
463
464
466
468
468
469
472
472
472
472
470
466
466
468
469
469
475
474
471
471
471
473
476
476
477
477
476
475
479
479
478
478
478
480
487
494
500
502
510
512
513
515
516
520
521
522
522
525
526
525
523
522
523
526
530
530
530
530
543
544
545
553
557
557
556
556
557
557
555
556
559
562
565
564
563
564
566
573
576
580
581
582
582
583
586
592
599
603
606
608
608
607
606
605
606
611
612
613
612
610
610
609
607
606
606
604
604
604
604
604
604
606
612
616
656
673
657
633
619
607
603
601
598
595
593
592
592
591
591
582
582
581
581
581
584
586
590
595
595
596
596
597
597
597
598
602
600
599
602
605
606
608
611
611
610
596
597
597
596
594
594
593
597
598
599
601
602
604
605
607
609
611
614
617
622
624
624
627
632
636
636
633
631
628
628
627
625
622
622
617
613
611
606
606
606
601
599
600
606
607
607
605
603
604
614
606
606
606
606
606
606
608
608
603
599
598
595
593
597
599
601
618
621
617
620
621
613
613
613
614
614
614
611
608
608
607
607
609
611
611
612
613
614
614
615
615
624
627
627
632
635
638
639
643
645
642
640
641
643
639
638
635
627
627
627
627
627
628
628
628
621
620
619
618
616
615
614
613
611
612
612
615
619
630
639
641
630
628
628
630
631
633
635
638
642
641
639
636
634
634
631
643
646
646
645
644
643
646
649
651
652
652
653
653
652
647
643
643
642
642
642
642
643
646
648
649
651
651
655
655
658
659
663
670
674
677
679
681
682
690
691
687
680
681
686
688
694
697
697
713
714
715
715
715
718
717
719
719
720
739
746
753
753
753
753
755
758
759
761
763
769
772
777
779
779
779
778
778
776
778
779
780
781
791
802
808
807
806
805
800
801
809
810
811
816
825
829
836
836
836
836
837
837
839
838
837
843
845
846
846
847
847
849
848
848
846
846
850
850
861
869
872
886
888
899
900
904
906
910
910
910
910
910
910
910
910
912
912
918
927
925
924
923
922
919
917
913
911
910
908
907
903
900
898
898
897
895
888
887
887
887
886
874
861
859
858
857
856
855
854
853
851
845
847
852
853
851
850
847
845
841
839
825
817
816
816
810
803
797
793
792
789
783
780
777
771
761
759
756
745
740
738
736