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