691
568
574
547
551
623
541
526
513
559
643
634
619
601
592
592
496
432
527
504
615
586
581
605
488
502
566
688
c0c0c0
591
591
625
625
640
640
646
710
711
708
659
658
665
666
664
663
661
662
661
663
662
665
665
666
665
666
662
661
661
661
659
659
660
658
657
665
661
660
660
659
657
657
656
655
654
654
654
655
655
654
657
658
657
660
665
667
671
670
672
675
676
680
679
682
681
683
682
685
685
687
689
691
691
691
690
688
688
690
690
693
691
690
692
693
692
692
691
691
683
683
690
691
689
692
690
691
690
690
690
689
690
689
686
686
685
683
683
683
682
682
682
684
682
679
679
679
673
673
673
673
671
669
667
666
667
665
663
662
661
660
658
656
656
656
657
657
656
655
653
653
653
652
651
651
651
652
654
653
654
657
660
661
668
668
667
669
668
669
668
669
670
670
669
665
665
664
664
665
666
666
668
668
669
676
675
677
677
678
681
682
681
682
681
682
682
682
682
680
678
677
673
677
678
678
679
679
679
679
680
680
677
677
673
672
673
674
672
673
673
671
667
667
659
657
647
641
642
642
632
627
624
623
635
638
642
644
644
644
644
645
643
643
645
644
641
641
641
639
640
641
641
640
637
635
626
628
631
632
631
627
628
629
630
633
636
631
631
626
626
628
631
631
638
638
638
637
636
637
639
639
637
638
637
639
637
636
642
648
651
652
655
655
654
655
656
660
662
661
660
657
658
656
653
654
653
650
649
649
646
647
646
644
643
640
636
635
630
630
629
625
626
623
624
623
623
617
620
621
620
615
614
610
607
605
608
606
604
602
601
595
596
593
591
590
589
588
586
584
585
585
577
574
570
573
574
577
576
574
576
573
574
578
579
576
576
576
575
578
574
580
579
579
580
578
577
577
577
570
583
587
593
596
595
595
595
594
594
592
590
591
588
588
588
591
591
591
590
588
587
588
589
589
590
587
587
583
583
584
584
582
580
583
582
582
580
578
576
579
578
577
574
573
571
571
571
570
564
564
564
561
555
552
552
551
556
558
560
561
568
571
573
580
577
578
575
573
577
575
572
570
570
572
569
568
571
570
569
565
564
563
565
565
563
561
558
558
558
555
554
555
554
551
551
551
550
549
546
549
548
546
547
549
549
547
543
540
537
550
549
547
546
542
539
535
538
538
531
529
530
532
530
534
534
535
540
542
544
548
549
552
552
555
556
557
555
551
551
549
545
547
551
550
550
552
547
554
545
547
542
540
541
543
551
549
552
549
555
555
556
554
551
550
544
545
544
542
541
541
543
545
547
541
542
543
543
543
544
547
545
544
539
538
547
547
547
547
544
539
538
538
538
541
535
534
532
531
534
535
545
542
539
541
536
536
534
532
531
531
534
538
542
543
545
542
540
540
536
534
533
534
532
527
527
524
525
519
517
528
528
528
532
531
533
532
532
534
534
530
532
534
536
532
531
531
537
535
531
530
529
528
532
530
533
532
530
534
536
535
525
526
531
527
528
528
527
529
529
531
533
533
533
532
531
535
531
534
535
534
533
532
526
525
529
530
531
530
525
522
520
520
517
519
520
519
527
528
528
526
526
527
526
529
530
529
533
529
536
535
536
536
535
538
540
533
534
543
543
544
540
540
533
533
537
538
536
534
530
530
530
535
533
532
530
528
529
532
533
534
532
534
533
530
530
529
530
530
534
533
531
532
530
533
529
531
529
530
537
535
539
541
543
542
542
542
545
542
541
538
534
534
536
538
534
535
537
537
536
535
530
535
532
532
527
532
527
529
532
530
531
534
533
535
533
530
535
534
534
532
530
535
535
532
536
536
536
535
531
532
528
532
534
534
533
534
535
536
534
532
531
535
534
531
533
532
532
531
523
524
529
532
529
537
538
534
527
525
522
522
521
521
517
516
513
513
510
514
518
571
574
565
567
566
566
565
564
564
561
558
555
555
554
555
552
551
551
550
549
548
548
548
549
550
550
552
554
552
551
550
548
547
546
547
548
549
549
548
547
547
547
547
560
561
559
563
561
561
561
561
561
560
560
560
557
558
557
558
558
557
561
561
561
560
562
561
557
555
555
554
551
553
552
553
554
555
549
547
546
547
549
551
550
552
555
551
556
555
556
551
551
552
552
555
555
551
551
555
557
560
560
558
559
557
559
560
561
559
558
558
557
556
557
557
559
560
561
562
564
563
562
564
566
563
560
565
566
565
564
561
560
560
562
563
562
566
564
562
563
564
564
565
565
562
563
565
565
563
566
566
566
569
571
575
575
573
570
573
576
576
578
576
578
582
579
581
580
578
580
579
576
581
581
578
576
576
575
576
577
584
582
581
579
582
580
583
585
584
584
586
587
588
591
591
591
590
591
591
589
588
587
586
587
587
587
587
588
590
591
593
595
595
599
599
600
601
605
605
603
604
603
604
604
605
604
603
603
603
604
604
605
605
605
623
623
624
622
620
619
617
615
615
616
617
616
616
615
613
613
614
613
613
613
613
613
613
615
616
615
615
616
618
618
619
620
619
619
619
620
619
617
616
616
616
616
615
616
616
615
616
616
617
617
618
618
618
617
616
615
614
618
618
616
615
615
614
613
616
614
612
611
610
609
606
603
604
604
603
601
599
598
597
597
595
594
593
595
594
593
594
592
591
594
596
596
597
597
596
594
592
593
592
590
589
588
591
590
591
591
592
592
592
594
595
594
596
596
597
597
597
597
598
598
601
603
604
604
604
603
603
604
604
604
606
606
607
607
606
606
606
605
601
594
592
591
591
592
593
593
592
589
588
587
587
585
585
581
580
582
580
578
581
582
583
584
582
581
581
584
584
579
579
579
578
579
580
582
581
582
581
581
584
588
591
588
590
587
585
582
580
582
584
587
589
588
586
589
587
588
588
586
586
585
584
584
583
583
584
584
584
584
584
584
579
579
585
585
581
581
574
573
572
571
568
569
569
569
570
571
571
571
572
569
568
566
566
566
566
565
567
567
567
567
567
568
568
568
570
572
573
570
570
568
568
568
568
569
569
570
571
572
571
572
573
572
572
573
573
574
572
571
569
569
568
568
568
567
566
565
564
563
563
563
563
563
563
563
563
563
563
561
565
565
564
563
563
563
560
560
560
560
558
556
556
556
556
556
556
556
553
551
550
551
550
549
548
548
547
546
546
544
547
544
542
543
543
539
538
537
535
534
536
536
534
531
527
527
528
526
527
528
527
527
528
530
529
530
530
528
528
527
527
528
527
523
523
526
526
526
525
524
523
523
523
522
522
524
524
522
523
522
524
525
525
525
525
529
528
525
526
526
526
525
525
530
531
530
532
532
534
539
541
534
533
532
531
530
530
532
530
531
533
533
531
529
528
527
528
528
527
527
524
523
524
525
524
525
525
526
525
525
525
525
525
527
528
527
527
525
525
525
525
525
525
525
525
525
525
525
525
524
524
524
525
525
526
527
528
526
525
527
527
526
526
517
518
519
520
520
522
522
523
525
526
524
523
522
521
519
517
514
515
517
517
520
515
516
518
519
520
520
520
519
519
519
519
518
515
513
529
528
528
527
529
529
529
531
528
529
529
531
532
531
532
532
532
533
533
533
533
533
534
534
535
535
536
536
536
537
536
537
537
538
538
539
539
538
537
536
535
534
533
533
532
532
532
531
531
530
531
532
532
533
534
535
534
535
538
539
540
540
541
541
541
541
541
542
542
543
543
543
542
542
542
542
543
542
544
543
542
542
541
540
539
538
536
536
536
536
535
533
531
530
530
539
539
539
536
535
538
539
538
538
537
536
535
535
536
535
533
533
532
533
533
533
535
535
534
534
532
535
537
537
536
533
534
538
531
536
536
535
536
536
535
533
532
532
532
532
533
534
534
534
534
534
535
534
532
532
532
532
533
533
533
531
528
527
528
531
531
536
537
543
545
548
553
553
555
559
559
562
562
564
566
568
572
573
570
572
574
573
569
569
569
570
574
574
574
575
565
566
578
578
581
583
587
587
588
589
592
593
597
598
598
600
594
593
592
592
592
591
590
589
587
589
591
594
597
598
601
602
603
605
609
611
614
618
621
624
625
627
628
630
631
632
632
632
628
629
629
629
628
625
631
626
629
624
620
621
624
621
616
615
610
608
604
602
600
598
596
595
594
594
592
590
588
586
585
583
550
547
546
548
548
551
552
554
555
556
558
560
559
562
562
563
566
567
566
570
565
560
562
562
576
575
574
575
576
576
571
571
564
564
558
558
555
546
545
542
539
537
535
541
539
540
540
541
543
544
541
545
543
542
543
549
552
554
555
556
555
555
556
556
558
558
559
587
587
585
584
585
584
585
585
585
586
587
587
589
589
589
589
589
590
590
590
589
591
593
592
593
592
593
593
594
595
595
596
596
595
594
595
594
593
592
592
593
594
595
595
599
600
601
603
605
607
613
617
620
622
625
626
628
630
631
633
634
636
637
641
641
639
641
641
644
646
647
648
648
650
651
651
653
654
655
652
654
656
656
657
658
659
660
659
659
658
660
656
655
656
651
650
647
648
648
651
647
649
645
647
648
648
647
647
647
648
649
650
650
650
652
656
660
664
666
668
670
672
672
672
673
674
672
671
670
669
669
668
667
666
665
664
663
662
661
661
657
653
652
648
648
651
652
652
650
650
644
643
650
650
651
651
651
652
651
651
650
651
652
649
648
647
648
646
644
644
646
642
643
644
644
643
643
644
645
645
644
643
642
641
641
642
640
632
634
649
649
649
648
647
645
645
645
646
646
647
647
647
647
646
646
646
645
644
644
643
645
645
645
645
645
643
642
641
640
641
643
641
629
625
624
623
623
627
629
629
628
628
630
629
630
629
626
625
622
618
617
615
614
614
613
614
611
612
610
610
609
605
599
600
603
603
605
609
598
606
601
609
619
655
655
654
651
646
648
641
638
644
641
642
640
643
646
645
635
634
631
632
633
640
638
636
634
632
634
634
634
633
633
633
633
633
630
628
627
626
626
624
623
624
627
629
627
625
623
625
625
624
624
625
626
624
625
625
626
624
621
620
618
615
611
609
610
609
609
609
608
610
610
609
607
606
605
606
607
607
606
604
602
601
602
602
601
600
599
598
598
599
599
600
600
601
597
597
596
597
596
596
597
597
594
592
592
592
592
592
592
591
588
588
588
587
587
587
588
586
584
584
585
584
585
584
583
581
583
579
580
579
581
581
582
583
584
586
587
588
585
590
596
599
596
601
601
601
600
600
601
601
600
601
602
602
608
609
585
592
601
603
604
607
605
604
602
600
604
606
599
603
607
604
605
606
604
599
604
604
599
602
606
602
608
608
606
607
609
609
606
604
601
601
534
536
537
535
533
532
534
536
538
537
536
535
536
535
535
535
537
540
533
534
538
541
546
548
549
551
553
555
556
557
563
556
557
556
561
565
565
565
568
566
567
569
566
566
565
561
567
570
571
571
570
577
579
584
586
588
591
589
588
589
592
596
596
595
593
590
591
594
594
595
596
596
597
597
598
594
590
592
595
594
592
592
593
592
591
591
586
587
587
587
589
591
591
588
587
588
588
584
578
575
575
576
577
575
575
575
573
572
572
574
575
575
574
573
572
570
565
566
565
562
563
563
564
564
563
563
563
562
562
562
563
562
563
560
560
559
559
560
560
558
558
558
556
555
553
551
551
550
550
550
551
549
547
545
545
545
545
547
545
542
541
537
536
537
537
536
535
534
535
536
536
534
534
534
534
534
530
530
528
531
531
532
532
530
529
531
532
532
532
532
525
523
523
527
529
525
524
523
522
522
522
521
520
518
520
520
518
519
520
517
521
521
522
523
522
526
526
523
521
517
514
511
510
511
510
508
507
508
509
508
507
508
507
506
505
505
504
503
502
501
500
500
498
497
496
496
496
496
498
500
500
497
497
491
492
493
494
494
491
490
489
487
488
491
490
488
485
486
488
487
486
480
480
496
496
491
490
488
484
481
481
479
478
481
481
480
480
481
482
481
481
481
480
480
479
479
480
481
481
482
482
483
485
487
488
487
485
484
485
484
482
483
484
482
483
484
486
486
486
486
485
486
487
487
488
485
484
486
488
489
488
488
486
485
486
483
482
482
482
477
476
473
471
469
469
469
468
467
466
462
462
462
462
472
472
471
468
465
464
464
463
463
460
461
461
459
457
439
439
431
426
445
446
449
447
448
449
449
449
451
451
455
454
456
456
456
456
455
455
455
454
454
453
453
454
454
445
445
446
446
444
444
444
445
444
434
432
428
428
427
427
438
441
444
447
447
449
448
450
446
447
447
448
448
450
448
446
443
440
437
435
436
436
437
434
435
436
438
430
430
432
432
454
454
471
476
473
477
475
477
479
483
482
487
491
494
501
501
500
504
506
508
509
508
510
511
512
515
518
521
522
525
525
528
527
527
551
551
548
548
553
553
549
549
543
543
537
537
545
545
546
546
528
519
512
511
503
488
465
464
478
486
492
491
493
500
500
508
509
511
512
512
513
514
513
513
515
514
505
504
505
506
508
510
511
512
513
514
513
514
517
513
507
505
504
504
504
505
505
506
509
511
513
511
512
514
518
521
523
522
523
525
526
528
530
531
532
533
534
535
538
540
540
540
541
542
542
541
540
539
540
541
542
541
542
542
542
542
521
516
515
516
513
510
509
509
509
511
513
514
515
515
517
516
515
515
515
516
518
518
518
518
516
513
511
514
512
513
513
516
515
515
519
511
513
514
514
514
514
513
513
514
515
513
513
515
514
514
513
516
514
513
511
512
511
513
514
515
512
513
518
516
515
515
516
517
518
516
517
517
517
518
519
518
516
518
516
517
519
517
516
517
517
517
518
519
518
515
512
513
515
512
515
514
516
517
517
517
517
513
508
510
504
504
519
519
519
525
526
528
529
530
531
531
532
533
534
538
542
553
556
556
559
567
581
590
597
601
602
605
605
604
604
605
609
608
608
611
613
614
616
616
615
615
614
614
610
610
611
610
610
609
610
609
610
610
611
611
610
608
607
607
607
606
605
600
600
599
601
602
603
604
605
605
606
607
607
607
607
605
608
605
605
605
605
604
605
604
604
601
601
601
599
598
597
596
596
596
598
596
595
594
593
593
592
592
592
592
592
591
592
592
591
589
590
591
589
589
588
588
588
588
587
587
588
590
586
577
574
572
572
573
572
572
568
568
569
569
571
572
574
576
576
576
575
576
576
573
573
571
571
576
576
575
580
582
582
581
570
574
574
575
577
580
578
580
579
583
581
581
580
581
581
580
581
585
584
590
590
585
588
589
590
596
596
591
589
588
589
590
587
586
588
590
590
591
589
587
587
587
584
589
587
587
590
588
589
591
587
588
587
585
589
589
589
586
587
588
590
595
594
596
599
599
601
601
603
606
606
604
603
600
599
599
599
601
601
601
600
601
600
601
602
602
603
602
601
600
599
600
599
603
602
601
601
603
602
604
603
603
603
604
604
603
602
602
603
604
605
605
603
608
608
606
604
607
607
609
606
606
606
608
604
606
609
606
605
603
603
603
600
600
597
592
586
587
586
587
583
583
581
581
583
579
580
580
579
579
578
578
579
578
579
578
579
576
577
578
579
579
578
578
577
574
572
572
572
569
569
570
571
569
565
566
564
564
566
557
550
550
549
549
548
546
547
546
544
544
545
538
540
541
539
534
533
529
527
527
516
507
503
504
503
496
490
489
487
487
491
489
488
489
491
490
491
490
493
489
492
488
485
485
489
484
484
487
497
495
497
497
488
488
590
590
588
585
587
588
588
587
587
550
536
525
522
512
507
508
505
504
501
506
506
505
502
503
500
502
502
590
590
594
594
593
591
589
587
586
585
586
587
586
587
584
582
581
580
575
575
573
574
575
574
572
568
568
565
566
570
569
569
567
564
563
562
564
565
563
561
561
563
563
562
566
570
595
596
597
598
595
595
597
598
599
599
597
596
595
597
597
596
594
593
592
590
589
587
586
584
584
583
583
582
580
582
583
583
580
586
592
592
593
593
590
586
587
589
588
590
591
591
592
591
596
593
591
589
590
592
594
595
593
589
594
603
608
606
611
610
611
612
612
611
611
610
611
611
611
611
611
612
614
616
614
616
616
615
616
615
615
614
615
613
614
612
614
617
618
617
620
618
621
624
625
631
633
632
631
630
632
635
636
637
636
637
630
632
633
635
634
638
640
640
640
643
648
649
650
653
652
651
651
651
655
649
654
653
655
654
656
660
658
655
659
663
664
664
662
664
668
670
668
669
671
672
674
674
673
676
680
680
679
678
677
677
679
680
679
678
679
677
681
681
683
684
683
685
688
688
690
691
693
695
697
695
696
696
696
696
698
698
699
696
696
696
693
694
691
691
692
691
692
695
696
699
700
701
702
701
701
700
698
697
697
697
696
695
695
694
693
692
692
692
692
692
692
691
692
694
698
699
698
697
698
697
699
694
694
694
695
695
698
698
695
694
695
694
690
688
688
697