452
452
452
453
456
456
456
456
456
457
458
463
463
464
468
473
475
477
484
489
491
493
497
506
508
510
515
519
521
524
527
530
535
538
545
548
548
549
549
558
559
561
562
564
565
574
581
581
581
581
581
584
587
589
591
592
593
593
593
593
593
593
593
593
593
593
593
593
594
596
597
600
612
614
615
618
621
621
621
621
622
623
628
631
636
636
636
636
636
636
637
637
637
637
638
638
638
638
638
640
641
643
643
650
650
651
653
657
660
660
661
667
671
677
678
678
678
680
685
685
687
691
692
694
695
695
695
694
692
693
696
696
697
702
704
708
711
712
712
713
715
717
721
721
722
722
728
731
731
733
734
734
734
734
734
734
734
734
734
736
737
742
745
751
753
754
756
758
765
766
768
769
771
775
775
775
775
776
776
778
779
780
782
786
789
792
795
795
796
800
802
802
802
801
801
800
798
798
798
798
796
793
792
791
790
790
791
793
795
804
809
811
812
812
812
812
811
811
810
810
808
802
802
801
800
797
789
788
788
788
783
781
779
778
778
778
778
778
779
781
784
786
786
786
786
786
787
791
792
794
795
795
795
793
793
792
791
789
790
791
794
793
791
791
791
791
791
790
788
787
785
784
783
782
780
779
778
778
778
776
775
773
773
773
773
777
780
782
784
785
785
784
783
775
771
768
766
765
762
762
762
762
763
763
763
763
764
764
765
767
768
767
765
764
762
761
759
757
756
752
750
750
749
747
746
744
741
737
735
733
731
728
718
712
707
702
700
684
680
674
673
673
673
673
671
670
670
670
671
671
671
671
672
673
674
675
675
675
675
676
682
684
693
694
693
692
690
689
684
682
679
670
669
669
668
667
661
660
659
657
647
640
625
620
617
613
611
608
607
607
605
604
603
601
599
597
595
593
591
591
590
589
587
586
583
580
579
579
579
579
579
579
577
573
573
574
574
575
575
574
574
571
568
562
557
554
551
547
545
543
542
542
540
538
533
535
533
533
532
531
530
529
527
525
524
524
522
522
522
522
519
521
520
517
511
509
511
513
515
517
519
521
523
527
527
528
529
531
532
533
536
549
552
558
562
564
566
567
570
572
573
575
584
594
600
602
602
604
605
609
611
614
630
639
642
643
643
643
643
643
643
645
649
654
659
665
669
670
673
678
680
678
677
682
684
685
686
686
686
686
682
681
682
683
684
685
685
685
685
686
685
685
686
687
688
688
689
689
689
689
689
690
691
692
693
694
689
688
687
686
686
685
683
683
683
682
682
681
679
677
671
670
670
670
670
672
676
681
683
685
687
687
687
689
692
694
697
697
697
697
699
700
700
700
700
693
692
690
685
683
682
678
677
675
653
650
640
630
607
604
601
599
598
598
594
592
590
586
585
583
581
580
578
578
577
575
572
570
563
554
548
544
540
539
536
534
517
510
503
501
499
497
489
481
481
480
480
479
476
474
472
469
467
464
463
462
462
462
462
461
461
461
462
463
464
466
467
468
469
469
469
469
469
470
480
482
484
486
489
491
502
502
502
502
502
503
506
509
511
513
514
515
516
518
521
523
527
530
531
533
535
537
541
544
546
550
556
561
563
564
565
567
571
573
578
580
583
585
586
587
587
591
594
598
604
608
610
614
616
619
622
628
631
632
633
633
634
642
642
642
641
641
641
639
639
639
640
641
641
641
643
645
645
646
646
646
647
649
652
656
659
659
660
664
666
667
668
671
675
680
685
688
690
694
696
697
697
697
697
698
700
706
709
709
712
713
713
714
714
714
714
715
714
714
713
713
712
712
711
711
712
713
713
713
715
716
717
717
720
722
722
722
720
719
718
718
707
706
705
705
705
704
704
702
701
701
699
698
697
695
694
694
693
684
678
670
669
669
667
665
663
664
665
669
672
675
676
678
678
679
679
681
682
684
685
685
685
685
685
686
691
691
695
699
699
699
700
700
701
702
702
702
703
705
711
713
713
716
717
719
721
727
732
734
736
740
744
745
746
746
747
754
758
759
760
762
763
764
766
767
768
775
782
785
785
785
785
786
788
789
789
791
793
797
799
802
804
805
817
822
823
833
837
837
841
845
845
845
844
844
850
860
861
861
863
864
865
867
872
876
882
886
891
891
896
900
904
905
907
908
911
916
920
925
929
935
946
952
954
954
958
960
961
961
961
961
961
963
964
964
965
972
973
975
977
978
983
986
988
990
991
991
991
992
994
1002
1005
1006
1012
1016
1021
1021
1022
1022
1024
1026
1030
1030
1030
1031
1032
1034
1039
1043
1044
1046
1048
1050
1050
1054
1057
1057
1058
1060
1064
1065
1066
1066
1066
1067
1068
1070
1074
1079
1080
1082
1086
1088
1090
1090
1092
1093
1095
1096
1097
1097
1097
1097
1101
1106
1108
1110
1113
1116
1128
1132
1136
1137
1141
1145
1154
1167
1173
1178
1183
1185
1187
1189
1191
1192
1192
1192
1192
1194
1196
1195
1204
1211
1218
1216
1214
1211
1208
1207
1208
1208
1209
1210
1210
1211
1210
1209
1206
1205
1200
1199
1196
1194
1192
1191
1191
1190
1187
1185
1184
1181
1180
1180
1180
1180
1182
1183
1185
1189
1189
1191
1197
1208
1204
1195
1194
1192
1189
1187
1185
1183
1185
1188
1186
1186
1184
1183
1181
1178
1175
1171
1168
1166
1159
1154
1154
1159
1163
1167
1171
1172
1175
1178
1177
1175
1169
1165
1163
1160
1155
1155
1158
1160
1161
1163
1168
1171
1171
1164
1154
1140
1131
1124
1116
1100
1094
1088
1085
1075
1071
1064
1058
1051
1042
1034
1028
1021
1021
1019
1018
1017
1015
1014
1007
1003
1005
1005
1006
1006
1006
1000
996
995
995
995
995
995
995
989
969
968
963
959
954
954
953
953
953
953
951
951
948
946
943
935
935
934
929
925
919
917
913
910
906
906
905
890
887
886
885
881
880
879
877
875
873
872
869
867
865
865
864
864
861
860
859
859
856
854
853
854
854
853
851
850
848
845
836
833
829
822
819
818
818
816
814
812
810
808
803
799
798
796
796
796
796
794
793
790
788
787
787
787
787
787
787
786
786
785
785
784
785
785
785
785
784
781
777
768
767
766
764
763
761
757
754
753
751
752
754
755
754
744
739
736
734
732
730
728
719
719
717
715
714
714
714
714
714
708
695
689
683
682
682
679
678
678
677
676
676
674
669
667
665
665
665
666
666
666
663
661
660
653
651
650
650
650
648
646
645
644
644
643
641
639
639
637
633
631
631
630
630
624
624
622
620
615
613
611
611
611
612
613
613
614
616
616
618
619
621
619
616
610
604
602
600
600
595
592
588
588
588
588
586
585
586
591
596
597
592
589
587
587
585
579
579
578
577
575
575
575
575
575
575
579
579
578
575
574
574
573
569
564
563
562
561
559
560
560
563
565
567
568
571
569
569
568
567
566
566
565
565
565
565
558
555
554
553
550
549
545
546
549
550
552
553
553
552
550
550
549
547
547
547
547
547
547
547
543
539
538
535
532
536
537
538
540
540
541
541
541
541
542
542
542
542
541
541
541
541
541
541
539
538
538
535
533
532
531
529
527
527
525
524
522
518
519
520
522
523
521
519
518
518
517
515
515
514
514
514
513
512
511
520
526
526
525
523
523
523
524
524
525
525
525
525
525
524
519
518
517
516
515
515
514
513
512
512
512
512
512
512
511
510
510
509
509
507
506
504
501
500
499
499
498
497
497
498
498
498
499
498
496
495
493
492
489
486
485
483
482
479
480
480
480
479
478
477
477
476
475
470
469
468
468
468
468
466
465
463
462
462
462
459
458
458
457
457
457
448
448
448
448
447
443
440
440
440
440
441
441
442
441
438
436
435
435
434
434
434
433
433
434
435
436
433
432
431
431
429
426
426
424
420
419
419
419
419
419
419
418
417
416
419
420
420
426
426
426
426
425
422
419
419
425
426
426
427
427
423
424
424
425
421
418
413
413
413
414
416
416
415
410
414
414
414
414
410
410
410
409
409
408
408
409
411
412
414
412
411
410
410
410
409
408
408
408
408
407
406
404
404
404
405
405
405
405
405
407
409
410
403
404
403
403
403
401
401
403
403
403
403
402
402
402
401
401
401
401
401
401
402
408
407
407
407
407
407
407
407
407
407
406
402
402
401
400
402
407
406
404
403
404
407
410
410
410
410
407
399
397
397
395
397
399
398
398
398
399
402
404
405
409
409
407
403
401
397
400
401
402
403
404
402
400
399
399
399
400
400
399
399
398
396
396
396
394
393
393
393
394
395
395
395
396
397
398
399
399
398
398
399
399
399
399
395
394
395
398
401
401
397
393
389
388
388
388
388
388
389
390
391
397
398
399
399
398
398
398
397
397
397
397
397
397
397
397
396
393
391
389
388
388
388
388
384
384
384
384
384
390
388
386
390
390
390
390
386
382
383
383
383
382
381
381
381
381
378
379
391
393
390
388
388
388
385
383
375
374
379
380
379
379
378
378
378
378
378
379
383
381
384
386
387
387
386
380
377
376
371
370
370
370
369
373
373
386
407
413
420
423
433
440
461
468
477
490
504
509
538
559
573
596
619
607
607
597
585
593
591
589
590
590
590
591
592
596
598
597
596
596
600
603
606
608
598
587
587
587
587
587
586
585
585
585
585
585
584
584
584
584
584
584
584
584
583
583
583
583
583
583
583
583
583
583
583
583
584
584
585
586
586
586
586
586
585
585
586
589
589
589
598
601
604
606
610
619
623
627
630
631
631
632
632
634
634
637
638
639
645
657
677
659
649
646
644
646
648
647
646
650
651
652
656
658
655
653
650
645
640
640
637
634
633
632
631
630
629
628
628
628
628
628
628
630
630
628
624
620
615
609
606
605
602
593
585
585
585
586
586
585
582
579
576
575
575
574
574
570
568
564
561
558
558
557
557
555
552
551
549
547
546
542
538
532
526
525
525
525
526
526
525
524
523
521
522
523
521
520
518
517
517
517
515
513
501
491
484
476
474
472
466
464
463
460
460
460
460
460
461
461
462
463
463
464
467
468
470
471
472
472
472
472
472
472
472
471
470
470
470
470
471
472
472
471
470
470
470
472
473
473
473
473
473
473
476
479
483
482
485
486
488
485
485
486
488
488
488
488
490
490
490
490
491
490
490
489
489
488
488
488
488
488
488
489
489
490
490
490
494
494
495
495
495
495
495
496
496
496
497
497
497
499
501
502
501
501
501
500
501
502
505
507
511
511
513
517
517
517
517
520
515
515
512
512
512
513
514
515
515
516
517
520
521
521
522
522
522
524
525
526
529
529
529
532
537
539
542
540
539
539
537
538
538
538
538
541
544
545
547
549
552
556
559
561
564
566
566
566
565
565
565
565
565
566
566
565
565
565
565
565
565
566
569
569
569
575
577
578
579
580
582
585
585
585
585
586
589
586
587
589
591
594
600
601
605
610
612
615
624
630
632
636
642
650
653
655
661
660
658
655
655
655
655
648
645
644
645
646
646
646
648
652
656
656
656
656
657
657
658
661
663
666
669
671
671
672
675
677
677
677
679
679
677
677
677
677
677
677
677
678
678
677
677
679
681
681
686
687
686
686
686
687
692
697
701
703
703
703
707
709
711
711
711
712
712
713
714
715
715
717
718
718
723
724
726
728
735
743
748
752
759
760
766
771
776
778
780
786
789
794
794
796
798
799
799
800
801
800
799
798
797
796
793
789
787
786
780
777
777
777
775
774
770
768
766
765
764
763
757
755
752
749
746
741
740
735
735
735
735
736
736
737
737
737
737
736
735
734
734
733
733
733
732
731
730
729
728
727
727
727
727
727
727
727
729
731
732
734
735
736
737
736
735
734
732
734
735
737
737
737
738
740
742
743
746
745
745
743
742
742
741
740
739
738
737
734
733
732
730
729
729
729
729
729
729
730
732
736
738
740
740
741
742
743
743
743
743
743
743
742
740
736
733
732
729
727
722
717
712
710
703
700
694
689
685
683
679
677
675
670
669
666
661
659
656
656
654
654
654
654
654
654
653
651
650
646
645
645
640
637
631
625
619
608
599
598
597
595
595
595
595
594
594
593
591
590
587
585
583
582
578
577
576
576
571
564
563
561
560
560
557
556
547
546
542
535
532
527
523
520
517
515
511
508
506
495
492
489
487
482
475
473
471
465
462
461
461
458
457
456
456
456
456
456
456
453
452
452