502
502
502
503
503
503
503
504
504
505
505
506
506
506
506
506
506
507
507
507
507
507
508
508
508
508
509
511
513
513
513
513
513
514
515
515
513
512
512
512
512
512
512
512
512
513
513
514
515
515
515
514
514
513
515
515
515
518
518
517
521
521
522
523
525
525
526
527
526
528
529
529
529
529
529
530
532
532
532
533
533
533
533
533
532
532
532
533
533
533
533
534
534
535
535
535
536
536
536
536
536
536
536
536
536
536
536
536
537
538
539
543
543
543
542
541
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
541
541
541
541
541
541
541
541
541
541
541
541
541
542
542
544
551
551
550
550
550
550
551
551
551
551
551
551
550
549
551
551
552
553
553
553
554
556
557
559
560
560
561
561
564
566
566
564
563
564
566
563
563
563
563
566
567
567
567
567
567
566
566
566
566
567
567
566
568
568
568
568
568
568
568
568
568
568
569
569
569
570
570
570
571
572
574
574
574
575
575
575
578
578
592
592
592
594
597
599
599
603
604
604
604
604
603
602
602
601
601
602
603
605
605
606
606
607
608
609
609
609
609
610
611
611
612
613
614
614
615
616
616
616
616
615
615
615
615
615
619
620
623
623
624
624
625
630
631
632
635
638
640
642
646
646
646
645
644
643
639
638
636
634
634
634
633
634
640
640
640
645
653
654
651
649
649
649
650
654
655
658
660
662
662
663
663
663
665
667
671
671
672
673
674
673
670
666
666
666
666
666
666
669
671
672
671
670
670
670
670
670
670
671
671
673
673
673
673
673
673
673
672
672
672
672
671
671
673
677
682
683
684
684
684
682
682
682
682
682
682
683
684
684
686
686
686
686
686
686
686
686
685
685
685
686
686
686
686
686
687
690
691
692
692
687
687
683
683
682
682
682
683
683
683
683
685
684
683
684
683
683
684
684
684
684
684
684
685
686
690
691
692
692
693
696
697
697
697
697
698
701
702
705
707
710
712
713
712
711
709
709
709
710
711
711
712
714
714
722
722
722
723
726
727
728
731
732
734
734
739
743
743
743
743
737
735
735
735
735
735
736
736
736
736
736
736
736
736
737
739
739
739
740
740
740
738
736
739
739
738
735
734
734
735
735
736
736
737
737
738
739
739
739
737
739
743
743
744
748
749
749
749
749
748
748
744
743
741
740
739
739
739
739
739
738
737
736
736
736
736
736
736
736
736
735
734
728
725
724
721
718
714
714
715
716
718
720
721
730
730
729
738
737
735
735
736
736
736
734
733
733
733
731
728
727
727
726
722
719
717
714
708
703
698
695
694
693
692
692
691
685
683
679
678
676
675
675
674
674
674
674
674
675
676
677
677
677
669
665
660
654
651
647
647
646
646
646
644
644
643
643
642
642
640
637
636
636
636
637
638
638
640
642
645
647
647
647
645
644
644
646
645
643
640
635
630
629
627
622
620
619
621
622
623
626
627
627
628
628
628
627
627
627
626
626
625
624
623
622
622
620
619
619
619
619
619
619
619
619
619
619
619
619
618
614
608
607
607
607
607
607
608
608
606
602
600
600
600
600
600
600
601
602
602
602
602
602
602
601
601
601
599
597
594
590
590
589
589
589
589
589
588
586
584
584
584
584
584
584
584
583
583
583
581
581
579
579
576
575
575
574
574
574
574
574
574
574
574
573
573
573
573
573
573
573
573
573
573
573
573
570
570
570
570
570
569
567
564
564
563
563
563
563
563
563
562
559
557
557
556
555
554
554
553
553
553
553
554
554
554
554
554
554
555
556
557
557
557
557
557
557
558
558
557
557
556
556
556
556
556
555
555
555
555
554
554
551
550
555
557
563
567
569
570
569
564
564
563
562
560
557
555
552
551
547
547
550
557
557
557
557
559
561
561
562
563
564
565
565
566
568
570
566
566
566
566
566
566
567
568
568
568
568
571
572
574
576
578
588
589
590
587
584
583
583
583
584
586
593
598
598
598
597
596
596
600
603
603
603
603
604
604
605
605
607
608
609
616
620
623
624
629
629
632
632
632
631
630
628
628
628
628
630
631
631
631
628
627
627
627
627
628
628
628
627
627
626
625
625
625
627
629
633
635
636
636
636
637
637
637
636
635
634
634
632
631
631
629
629
628
626
626
626
628
632
636
636
638
640
643
643
643
637
635
631
629
626
617
594
592
587
584
582
582
585
591
595
595
602
600
599
598
597
596
592
590
589
589
589
588
587
584
582
582
580
580
574
574
573
567
565
561
557
555
554
554
554
554
553
553
552
553
551
551
551
552
553
554
554
554
554
554
554
554
554
554
555
556
557
561
563
564
572
571
571
561
560
559
558
558
558
558
558
558
558
558
558
558
559
559
559
559
560
561
562
562
562
563
563
564
564
564
565
566
567
565
565
565
565
565
562
560
560
560
560
559
556
555
554
555
555
552
552
551
551
551
551
551
551
548
547
548
549
549
549
548
548
547
546
545
545
545
545
546
546
547
547
547
547
546
546
546
544
544
541
539
539
538
538
534
534
534
534
534
534
533
533
533
533
533
533
533
533
531
531
531
531
529
529
528
528
528
528
528
528
528
528
528
526
525
524
524
524
524
524
524
524
524
524
524
523
523
522
522
522
522
522
523
523
523
523
523
524
525
525
525
525
525
526
527
526
526
526
526
526
526
526
526
526
526
526
526
526
526
526
526
526
527
527
527
527
527
527
528
529
529
529
529
529
529
529
529
529
528
528
528
528
530
530
530
530
530
531
531
531
530
530
527
526
525
525
525
523
523
522
517
517
517
516
516
516
516
516
516
516
516
516
517
516
516
516
516
516
516
516
517
518
515
515
514
514
514
512
513
513
513
512
512
512
511
511
515
515
515
516
517
517
519
519
518
517
517
517
517
517
517
517
516
515
515
514
513
512
511
511
511
508
507
507
507
507
507
507
507
507
507
507
507
507
507
507
509
516
520
520
522
522
521
512
510
510
509
509
509
509
509
509
509
509
509
508
508
508
507
507
508
509
509
509
508
507
505
504
503
503
503
503
503
503
503
503
502
502
502
502
502
502
502
502
502
502
502
503
504
504
504
504
504
505
505
505
506
505
504
504
503
503
503
504
504
504
504
504
503
499
498
498
496
496
496
497
497
498
499
499
500
500
500
500
500
500
501
501
501
501
501
501
501
501
510
513
521
516
517
519
521
510
504
502
502
502
502
503
504
504
504
504
504
501
501
501
501
501
501
501
501
502
502
502
502
503
504
504
504
503
505
506
506
506
506
506
506
506
506
506
506
504
503
503
503
503
503
502
502
502
502