464
464
463
462
462
459
459
459
459
459
459
459
459
457
457
457
457
457
457
457
457
457
457
457
457
456
454
454
454
454
454
454
454
454
454
456
456
456
456
458
458
460
464
464
468
473
485
486
486
487
488
507
507
502
503
503
502
499
485
478
478
478
480
479
481
479
477
477
479
480
481
484
489
485
486
485
487
488
488
489
489
489
490
490
494
498
500
498
498
498
498
499
500
498
497
497
497
498
498
499
501
505
508
510
510
512
517
512
506
503
502
503
505
506
508
509
509
509
509
509
511
511
511
512
512
513
513
513
514
514
515
523
523
523
524
528
520
520
521
521
521
521
521
522
523
528
528
534
535
539
541
539
535
560
554
540
543
543
546
546
546
547
548
553
554
555
554
553
553
553
552
552
552
552
552
553
554
556
556
557
559
560
565
566
568
571
572
572
571
570
570
570
570
579
582
590
588
588
588
585
575
577
579
581
583
585
583
583
585
588
590
593
592
591
591
594
599
599
597
599
600
601
596
595
598
598
600
601
602
603
603
605
607
606
606
606
605
606
607
609
610
609
610
611
611
611
611
611
611
612
613
615
617
618
619
623
625
629
625
619
625
627
629
630
630
636
646
635
631
634
634
634
636
641
639
639
641
642
643
641
643
643
643
644
645
645
645
646
646
646
647
654
655
655
656
658
658
653
653
655
657
657
657
657
662
672
681
683
682
665
665
669
668
668
669
670
674
676
678
681
683
682
679
679
678
680
681
686
689
688
687
687
688
688
688
691
693
697
699
697
698
699
695
695
697
698
701
704
710
712
712
713
713
713
716
717
720
723
723
725
729
729
729
730
731
732
732
732
734
750
741
738
741
742
742
742
746
748
759
766
772
774
769
778
772
779
782
797
801
802
802
802
802
802
828
830
831
839
874
880
887
889
891
891
891
892
895
913
917
914
912
909
908
905
922
924
927
930
935
943
944
948
950
953
955
958
952
947
945
940
937
934
932
930
921
921
921
932
936
939
932
912
914
907
900
885
887
892
880
876
876
876
861
852
853
841
839
837
843
845
839
835
826
818
817
817
816
812
793
779
770
762
762
756
754
753
752
746
741
739
736
736
736
735
732
727
729
727
725
722
722
723
722
721
721
720
719
700
694
693
695
691
685
677
675
674
681
683
683
681
678
678
681
688
688
688
687
683
685
685
684
682
711
691
689
694
704
707
709
714
705
700
701
701
705
706
714
716
720
722
723
726
727
728
725
722
715
716
716
713
712
712
710
705
703
701
699
696
694
694
693
693
693
689
687
685
684
684
695
682
678
676
676
673
672
670
652
652
651
645
635
632
627
626
622
621
616
616
616
616
615
614
615
615
615
612
610
609
609
610
612
613
613
612
610
606
600
598
597
596
595
593
593
593
593
593
593
600
601
601
601
607
613
626
625
625
620
619
619
619
619
613
642
639
635
630
626
625
628
628
630
625
620
618
616
621
625
629
634
635
635
637
638
638
638
638
638
641
671
672
673
674
675
669
668
669
670
671
673
675
684
705
723
727
728
731
723
725
727
730
735
739
743
748
761
762
764
767
775
779
783
786
789
791
795
797
801
816
825
821
828
833
846
846
847
844
841
831
841
841
833
820
820
819
819
813
810
801
800
800
798
797
796
783
779
770
764
759
759
760
771
765
759
760
764
767
748
733
729
728
725
728
729
726
720
716
709
706
705
706
709
713
714
715
670
678
683
677
661
673
678
668
664
672
672
671
682
691
693
694
690
690
693
695
695
696
698
698
691
692
691
693
693
695
695
699
700
701
703
711
714
716
719
722
729
730
731
733
738
754
757
759
768
773
771
777
778
785
790
792
796
795
807
812
815
813
827
828
829
830
831
826
827
829
829
829
830
830
830
827
834
834
833
836
837
837
842
837
834
835
844
845
846
850
850
851
852
853
854
855
858
860
874
877
884
894
897
918
918
913
927
929
934
949
973
980
978
973
981
987
1002
1008
1013
1014
1024
1027
1029
1038
1048
1055
1056
1049
1055
1064
1075
1074
1070
1056
1057
1053
1050
1048
1040
1035
1035
1035
1034
1028
1002
1003
1005
1004
1002
990
990
990
992
993
986
982
981
980
979
968
966
963
963
954
946
935
933
928
923
895
893
892
894
896
894
892
878
876
866
860
858
852
848
844
837
834
834
834
834
835
830
832
832
830
830
834
829
832
832
833
834
834
835
835
836
837
838
839
840
840
840
841
841
842
842
843
853
853
853
856
856
856
856
867
867
873
874
875
877
883
884
913
922
934
937
937
934
935
938
940
944
946
947
949
949
950
951
952
949
947
962
962
964
965
966
964
973
984
985
991
989
986
990
991
991
992
994
1003
1010
1014
1017
1023
1038
1048
1034
1037
1058
1079
1081
1084
1081
1079
1078
1079
1087
1090
1099
1098
1098
1102
1106
1110
1120
1124
1127
1130
1132
1134
1148
1174
1177
1187
1189
1191
1193
1189
1190
1208
1209
1206
1202
1198
1193
1195
1202
1205
1208
1211
1213
1221
1229
1239
1240
1241
1242
1241
1240
1240
1242
1247
1246
1257
1255
1261
1268
1270
1273
1276
1277
1283
1283
1283
1283
1286
1287
1289
1300
1304
1305
1301
1299
1295
1279
1277
1274
1270
1268
1269
1269
1265
1253
1249
1246
1239
1236
1227
1219
1201
1194
1192
1192
1184
1182
1178
1167
1163
1159
1151
1136
1133
1131
1131
1131
1113
1108
1098
1088
1065
1053
1046
1043
1033
1033
1033
1033
1031
1019
992
987
985
979
978
978
971
964
961
960
964
970
968
968
968
964
947
947
947
954
932
932
934
932
932
937
936
935
926
923
924
926
928
929
931
924
923
919
919
918
917
916
915
900
897
883
881
877
876
875
874
874
874
875
882
879
878
880
881
881
881
882
883
884
885
885
885
885
885
885
885
887
874
869
865
854
842
840
835
831
827
817
814
810
807
807
804
784
778
758
757
762
762
762
762
766
766
763
761
762
762
759
757
757
757
758
759
763
767
772
777
783
788
797
797
799
799
798
797
807
810
817
813
809
807
808
815
821
822
823
824
822
820
819
819
818
817
816
816
816
816
823
830
831
833
833
833
832
831
831
833
837
837
838
833
830
833
833
838
841
841
840
838
838
839
841
842
844
844
844
844
845
847
847
846
859
860
861
864
867
881
897
902
902
902
901
901
897
894
887
876
875
875
876
876
876
877
877
875
880
890
891
894
892
894
892
895
895
894
890
884
886
895
895
890
896
894
899
893
892
892
891
891
892
892
898
897
903
902
901
903
906
907
913
915
916
917
918
931
935
938
941
944
954
954
957
959
970
972
976
984
989
991
990
990
998
1019
1024
1030
1034
1046
1050
1054
1058
1069
1070
1091
1085
1084
1079
1079
1079
1083
1067
1061
1061
1045
1038
1038
1015
1014
988
977
973
970
967
982
980
969
966
956
953
949
947
939
933
925
925
925
925
917
917
918
914
907
899
898
896
896
896
902
897
895
892
891
889
888
886
886
886
884
882
881
878
877
871
868
862
858
852
847
845
847
849
850
849
841
839
837
828
809
806
803
799
797
790
787
783
780
793
786
784
762
756
757
757
738
741
729
718
718
718
706
699
695
695
689
686
684
682
675
673
671
663
663
663
658
656
653
651
644
637
633
633
633
633
633
632
628
616
612
606
590
593
579
578
576
575
574
573
571
565
563
560
559
558
548
510
508
507
506
506
502
491
486
482
481
477
476
472
471
470
472
472
473
473
471
470
477
477
477
476
475
472
471
471
471
476
478
477
473
472
469
469
468
467
464
463
463
463
463
463
461
459
454
453
453
454
457
458
456
456
455
453
451
452
455
458
453
449
448
447
446
446
446
446
446
447
451
451
451
453
453
451
448
447
447
447
447
447
447
447
448
448
448
448
449
450
452
454
453
451
451
448
447
446
446
446
446
445
445
445
445
445
444
444
444
444
443
440
440
440
441
441
443
443
443
443
443
440
441
438
438
437
437
438
437
438
437
437
436
436
436
437
438
437
437
437
438
439
440
439
436
435
442
442
442
450
450
448
445
445
455
461
449
454
455
455
454
454
453
453
451
451
451
450
447
449
447
450
451
453
454
456
465
467
458
449
442
441
441
446
449
449
450
452
454
459
463
454
455
455
456
463
447
430
429
428
428
427
426
423
425
429
430
430
430
430
431
430
435
439
438
435
433
434
427
423
424
425
425
425
432
434
438
442
450
463
469
476
460
452
451
452
453
450
450
450
438
432
428
426
424
422
420
417
417
417
418
418
419
419
419
419
420
420
420
420
420
422
422
422
422
421
421
421
421
420
420
420
420
420
420
421
421
421
420
419
421
420
422
420
420
420
420
422
421
421
420
420
420
420
420
420
420
420
431
439
446
447
447
448
449
450
450
451
452
453
454
454
455
456
458
458
461
465
465
463
463
463
463
465
465
466
479
484
505
507
511
513
517
521
523
526
529
529
529
529
529
529
530
539
553
557
566
568
578
580
583
586
586
586
592
595
598
601
604
606
605
602
601
609
615
622
621
632
635
637
639
640
639
639
639
643
657
659
661
663
664
665
659
656
655
658
665
667
673
678
681
683
684
685
698
704
715
718
723
722
722
726
731
740
741
748
770
775
779
780
781
783
785
781
780
779
779
778
782
787
797
804
808
816
821
833
834
835
835
836
836
837
838
839
842
845
848
858
862
867
878
880
881
882
884
885
885
884
882
881
884
886
888
890
897
901
905
913
917
919
921
924
913
909
911
914
945
933
944
942
942
942
945
946
950
960
960
970
971
965
965
964
964
963
958
967
953
948
934
931
928
928
931
931
933
933
934
931
927
924
923
920
913
914
915
913
906
906
905
904
904
903
904
905
904
903
903
902
901
896
892
890
889
891
891
890
889
884
875
875
876
877
877
876
875
874
871
869
868
864
862
857
855
853
844
838
835
832
831
830
828
827
826
830
832
828
827
827
827
824
821
832
817
814
816
817
817
816
816
816
811
815
814
811
809
807
805
801
801
802
809
817
817
813
810
808
807
806
807
809
810
810
813
821
825
832
832
832
832
831
830
830
830
829
828
825
822
817
809
809
804
796
791
788
806
807
807
801
778
785
788
797
789
791
786
782
781
779
777
776
774
773
771
771
763
758
755
757
764
766
766
763
764
767
769
773
774
780
780
780
779
775
774
773
771
770
775
782
768
765
769
776
755
756
755
751
755
755
751
743
743
744
745
749
749
749
750
755
756
759
761
760
759
758
753
745
740
739
724
724
717
704
711
706
705
699
693
692
691
689
685
683
685
684
682
680
679
678
674
674
674
675
675
678
678
678
672
670
668
667
667
667
668
670
670
670
669
666
665
664
665
665
665
665
667
669
671
673
674
678
679
679
676
672
671
669
671
672
670
669
662
661
660
659
667
663
662
654
654
656
656
653
639
629
626
622
620
611
597
597
596
594
585
581
577
577
577
577
576
571
570
552
551
548
544
542
521
518
518
520
524
504
497
494
491
475
470
462
462
458
457
457
456
456
453
453
453
442
438
422
416
416
416
416
416
416
412
406
406
407
407
404
403
401
400
400
400
400
400
400
399
399
399
398
398
398
398
398
398
399
400
397
399
399
399
400
400
399
399
399
399
396
398
396
397
398
398
399
399
399
402
402
402
399
399
401
402
404
408
410
410
408
408
409
411
414
413
415
411
412
415
416
416
414
414
414
411
410
409
413
410
408
408
407
408
408
409
409
410
411
411
411
411
411
413
414
411
408
408
408
408
408
408
409
407
407
405
406
405
404
403
400
400
403
403
404
405
405
405
402
402
410
407
401
399
398