1012
1008
1004
989
998
993
988
983
977
971
965
963
963
965
965
965
965
963
961
956
953
946
943
941
941
944
943
941
937
937
938
936
900
898
897
897
896
894
888
888
879
884
866
868
871
873
876
880
885
884
872
861
879
880
877
872
872
871
875
875
874
869
870
871
872
874
877
877
876
883
885
892
893
894
895
891
903
905
906
908
913
921
922
923
925
926
927
928
929
928
928
927
926
926
925
922
914
906
903
898
896
893
887
886
883
883
883
883
883
883
883
882
880
868
862
862
860
846
849
846
822
821
820
819
818
816
812
810
808
805
801
786
783
771
768
766
762
761
758
757
757
757
757
754
753
753
755
756
757
757
762
764
765
768
775
775
776
779
780
783
784
784
775
779
779
779
778
778
778
783
783
781
779
775
764
763
760
755
751
751
750
749
750
737
735
733
732
726
725
723
722
721
722
725
722
720
711
710
715
713
711
708
705
700
698
696
698
698
692
693
693
690
693
694
691
683
679
675
659
660
661
661
662
663
664
665
666
666
667
669
672
673
677
680
680
682
682
684
684
686
691
694
707
712
714
709
708
707
705
699
712
714
719
723
725
726
731
746
747
746
740
738
737
741
746
750
758
772
774
774
774
774
774
774
774
774
784
787
789
789
790
788
786
785
795
800
800
800
800
800
793
792
793
791
788
782
782
782
780
779
775
773
772
772
770
768
777
774
747
737
737
743
744
747
741
733
725
725
725
724
722
721
716
714
714
712
710
708
714
719
718
716
713
708
700
691
696
697
695
688
691
693
687
682
678
678
679
683
684
686
680
672
670
668
674
668
656
657
661
664
665
659
648
641
634
629
625
625
626
628
630
631
628
620
620
620
620
620
619
617
615
605
594
594
594
594
594
594
595
594
590
586
577
581
581
575
574
573
570
569
573
579
581
574
571
563
554
553
553
555
544
539
532
531
531
528
529
531
526
529
529
524
524
523
523
532
524
515
515
516
516
516
514
512
512
511
509
508
509
510
505
504
505
505
503
506
507
506
505
502
501
500
501
501
501
501
495
495
496
494
494
505
500
493
490
491
490
496
489
487
489
491
487
485
483
479
484
498
497
486
484
471
473
475
482
485
468
466
477
476
466
459
456
452
453
449
449
450
449
448
448
448
448
448
447
447
446
446
446
446
443
442
442
441
440
439
445
445
444
444
444
444
444
444
447
449
451
451
451
452
452
453
453
455
458
462
463
462
461
459
458
458
458
457
457
455
454
452
454
446
445
444
447
456
464
458
455
455
457
458
461
450
442
441
440
439
439
442
442
442
440
438
438
451
454
462
464
465
461
459
456
453
452
451
449
450
454
455
456
459
459
460
460
460
456
455
452
451
451
451
450
447
446
444
445
445
439
439
440
440
440
452
455
456
451
446
439
436
437
436
427
426
419
422
429
433
433
435
436
436
436
436
438
440
441
434
434
434
434
434
434
433
433
432
455
456
459
463
453
450
443
453
454
451
456
461
460
464
470
479
485
487
482
478
488
497
518
517
517
517
517
517
517
517
517
517
520
522
522
519
510
496
492
485
488
483
481
472
471
471
457
457
456
453
453
455
456
457
457
457
457
457
457
457
456
456
455
455
454
454
453
453
452
456
457
467
476
478
481
488
487
483
505
519
518
523
530
524
529
531
531
537
545
558
567
572
588
617
635
683
728
664
612
575
561
562
575
564
527
529
529
522
502
512
504
489
476
473
463
457
456
452
437
432
432
426
410
414
411
405
397
391
398
399
395
393
390
377
374
373
374
371
371
362
343
363
367
364
364
372
377
383
382
385
388
391
396
398
402
417
415
416
432
431
460
465
470
474
486
484
484
495
477
474
482
476
475
479
480
479
482
476
481
470
466
468
476
479
476
473
469
461
454
454
464
455
448
437
431
421
408
407
401
393
410
391
373
380
389
386
381
378
387
393
389
406
410
406
422
438
446
447
446
438
460
467
474
475
485
489
492
491
486
482
480
480
479
466
466
461
458
454
451
432
430
425
417
409
406
407
406
405
403
403
403
403
404
405
419
420
436
435
432
450
462
468
477
490
495
533
545
553
553
563
572
582
594
598
607
602
608
607
603
604
597
577
576
586
592
595
594
595
595
597
610
611
611
604
600
595
590
587
588
581
574
576
565
565
562
566
557
552
540
541
542
537
532
527
531
527
522
523
527
530
527
518
515
512
513
515
510
501
499
498
497
497
497
523
514
515
513
505
508
500
494
498
483
469
469
458
450
449
446
437
440
439
441
441
441
440
438
437
435
434
433
433
438
438
438
437
437
437
436
436
434
433
437
439
449
449
450
454
449
453
459
459
460
459
459
459
440
440
442
439
454
448
454
454
480
482
484
483
482
480
477
452
451
451
452
464
467
467
468
475
478
485
485
485
494
497
501
502
499
497
496
496
496
496
501
505
503
502
501
501
503
504
504
505
506
506
522
523
524
538
542
552
559
558
553
551
548
544
542
541
540
539
539
539
536
534
534
534
536
537
539
541
544
545
548
548
549
549
550
550
566
569
572
572
572
566
550
544
537
535
532
515
513
513
513
514
517
517
516
514
512
507
502
494
493
491
486
484
482
485
472
468
473
473
469
467
450
450
455
459
468
469
472
480
481
490
491
492
494
495
498
499
502
501
501
500
499
499
481
480
480
480
475
473
457
454
450
448
446
442
440
439
439
438
439
428
424
422
413
401
397
405
404
387
387
387
388
390
393
393
394
397
398
399
401
404
406
413
409
405
398
396
388
376
374
365
365
366
373
377
380
389
390
390
389
390
391
391
394
390
390
392
394
394
395
390
393
394
394
397
402
404
402
404
406
410
407
408
408
416
414
412
412
414
416
418
420
421
421
415
415
418
421
431
432
432
433
434
438
446
446
447
449
450
449
451
452
454
459
460
461
469
489
495
496
495
499
505
518
518
511
511
503
501
498
495
490
492
493
489
482
481
481
483
479
476
475
474
472
471
470
467
467
462
460
469
474
481
483
489
492
501
509
512
526
530
538
543
547
549
559
563
570
574
576
593
593
592
594
597
603
606
608
616
615
619
622
630
638
641
647
646
644
643
639
638
631
628
627
624
614
597
588
583
579
578
580
578
576
570
568
559
557
557
543
539
542
542
536
527
526
527
527
527
527
527
524
523
520
518
517
516
512
505
505
503
503
499
499
498
496
497
496
496
493
491
479
490
485
487
496
512
512
511
518
516
526
529
528
521
519
516
514
511
511
511
510
510
509
506
506
506
513
518
525
536
536
536
531
531
539
546
554
552
554
554
554
554
557
557
563
563
566
569
574
586
617
613
607
606
609
621
624
624
623
627
629
649
661
665
668
666
668
653
639
638
639
633
629
628
625
624
623
625
625
624
624
626
625
625
623
624
622
623
622
622
622
621
620
619
617
617
616
618
618
618
618
619
620
621
623
628
629
634
635
635
643
645
651
659
664
667
667
689
691
693
693
688
681
681
679
675
678
677
669
670
675
676
689
703
723
726
740
744
744
742
743
748
752
758
757
753
766
766
765
760
755
752
752
768
749
772
783
782
780
787
789
793
792
791
789
785
781
778
813
822
826
802
801
799
799
798
790
785
777
774
773
770
769
766
766
763
764
764
766
767
776
776
777
802
805
807
815
815
817
824
832
843
844
867
870
871
872
873
904
906
903
904
906
929
946
944
943
942
935
935
941
943
944
944
948
953
954
954
958
962
963
964
980
987
988
989
985
985
986
993
996
1017
1031
1045
1052
1055
1059
1074
1080
1086
1091
1090
1092
1093
1109
1113
1117
1117
1117
1118
1119
1122
1146
1146
1144
1128
1135
1137
1147
1152
1156
1158
1160
1153
1147
1127
1124
1122
1124
1114
1111
1110
1106
1116
1121
1121
1120
1120
1119
1117
1116
1116
1119
1118
1117
1117
1112
1110
1109
1118
1099
1089
1079
1079
1079
1066
1064
1061
1058
1056
1053
1052
1055
1055
1051
1047
1043
1037
1014
1010
995
996
1003
999
992
992
989
986
978
976
973
971
970
970
964
962
962
943
933
933
931
930
928
916
916
916
916
914
914
913
911
912
911
908
907
898
896
895
896
894
894
897
895
891
885
886
883
883
879
879
879
880
879
880
881
881
880
880
880
880
880
880
880
879
879
879
879
879
879
877
878
874
868
871
873
873
874
874
872
866
866
862
862
863
864
863
863
863
861
861
860
860
860
861
860
862
862
862
862
862
861
861
859
859
860
863
863
862
861
859
853
853
853
853
854
857
854
852
853
854
853
852
851
853
853
849
843
843
843
843
843
843
843
844
844
844
844
844
842
846
847
866
869
870
872
871
871
869
866
857
855
855
856
857
852
851
841
839
834
834
829
831
830
822
823
823
824
824
824
824
825
826
826
826
826
825
841
891
890
885
872
859
848
842
839
834
838
848
828
824
824
824
823
822
822
826
833
833
839
850
844
846
849
856
858
863
871
875
881
890
892
885
894
887
912
923
931
926
922
919
916
912
908
913
910
911
893
883
896
894
898
905
910
911
905
879
875
855
866
851
848
844
840
839
832
831
833
876
899
900
876
864
858
856
875
870
878
878
876
876
876
882
886
891
903
906
930
931
931
934
928
904
899
886
887
870
862
862
858
845
844
844
840
839
839
834
836
836
839
831
825
828
826
825
823
817
817
817
817
817
817
817
816
816
816
816
816
816
816
818
818
819
819
819
819
819
819
825
827
827
827
827
829
831
832
835
841
851
848
848
849
846
847
846
846
845
844
843
849
846
846
845
839
832
830
828
828
830
829
829
828
827
825
818
817
817
817
817
817
817
817
817
817
817
817
817
817
817
816
816
815
813
811
811
811
810
811
810
812
810
808
800
798
795
793
794
797
800
803
802
791
793
792
793
804
810
809
814
808
808
806
804
805
803
802
800
796
795
792
794
802
804
796
796
795
792
793
794
797
796
802
803
801
794
793
800
797
794
794
803
814
802
806
802
798
788
790
791
789
785
787
789
788
789
785
789
797
797
797
789
788
786
788
789
789
790
788
795
798
802
805
809
808
805
802
801
814
815
811
811
810
813
815
814
813
816
820
821
821
821
821
823
827
827
822
817
819
810
811
825
807
807
809
809
817
817
819
815
812
811
815
812
812
816
822
827
830
836
839
850
843
832
840
843
846
852
854
853
845
837
833
830
824
819
820
817
821
824
833
840
824
813
808
808
809
809
825
827
831
831
836
831
831
835
836
834
835
838
843
842
842
834
823
827
826
828
828
830
830
830
830
831
830
834
832
838
837
838
840
839
842
842
841
843
845
847
847
851
854
857
858
859
860
862
866
871
871
875
880
883
884
883
878
886
905
903
904
904
887
900
890
897
904
901
882
876
876
877
881
882
882
882
882
881
881
881
881
881
881
881
881
881
881
874
875
897
907
902
902
901
888
904
904
905
901
892
876
885
886
884
884
882
880
877
873
871
866
862
860
858
859
858
853
858
854
855
851
849
845
843
842
841
840
839
837
837
836
832
834
835
830
831
832
829
830
830
829
828
828
828
828
827
827
827
827
827
828
828
828
828
827
827
826
826
826
826
827
827
829
830
830
831
830
831
830
834
832
838
838
838
838
840
842
841
843
845
847
848
854
854
856
856
859
860
862
866
870
871
874
879
883
884
883
879
884
903
904
904
888
901
889
894
906
906
900
880
874
881
888
890
896
896
897
893
889
872
863
861
857
847
856
864
871
870
866
870
862
849
848
841
849
857
864
855
852
851
848
845
843
841
819
815
816
815
818
824
828
829
835
841
829
823
818
814
809
805
807
805
808
803
806
806
806
808
811
811
814
823
821
830
830
830
829
831
831
846
840
838
840
853
854
855
855
857
858
859
867
870
874
879
878
877
876
875
876
876
875
875
875
877
876
876
874
873
872
872
868
866
859
859
861
854
853
853
853
854
854
854
855
854
850
852
852
853
852
848
844
841
842
843
842
842
843
840
841
841
841
841
841
840
842
840
840
841
840
839
839
840
841
835
834
833
827
816
814
812
808
809
811
811
811
811
811
810
809
808
808
808
805
797
797
799
799
800
799
799
801
801
801
801
800
801
800
799
799
797
794
796
794
793
793
791
793
792
792
792
793
793
797
798
798
799
801
801
800
798
798
803
805
808
808
808
808
808
808
808
808
809
818
823
824
824
828
829
830
833
840
840
841
840
840
846
846
844
850
854
866
878
885
891
892
895
896
896
896
896
896
896
900
898
893
867
865
859
854
850
849
847
843
843
840
835
832
831
828
822
822
823
823
823
823
822
821
820
820
820
819
821
822
822
823
823
825
825
825
825
825
825
825
824
820
820
819
819
821
821
819
819
819
819
819
820
821
823
829
825
822
820
820
820
819
818
818
818
818
818
818
818
818
818
818
817
817
816
816
815
815
815
815
815
815
815
815
815
815
815
816
816
817
817
817
819
811
812
812
813
813
811
811
811
811
812
813
809
810
811
810
811
822
820
820
821
822
834
844
852
850
846
837
870
871
873
877
877
880
885
894
896
897
897
895
883
879
884
900
901
899
898
879
889
899
900
900
882
876
881
885
889
889
887
890
892
891
891
891
891
896
896
896
907
910
907
905
906
905
906
906
907
907
907
904
903
902
901
900
899
898
898
896
897
895
897
897
897
896
896
896
895
895
896
896
896
894
894
894
894
894
894
894
894
896
897
897
897
897
897
897
897
894
893
893
893
893
899
899
894
879
876
875
874
866
869
855
853
846
844
839
840
840
831
829
829
829
825
825
825
824
821
818
816
818
819
819
819
819
819
819
820
820
817
819
819
856
862
849
853
858
862
870
872
865
890
899
910
910
910
911
913
913
914
913
912
912
912
912
913
911
907
907
904
899
897
894
887
880
867
866
864
859
851
846
840
839
838
837
837
837
836
836
836
836
836
835
835
832
830
835
837
838
839
840
838
837
835
834
834
834
834
834
834
834
835
835
835
835
836
845
845
845
845
846
846
847
862
862
866
868
870
870
876
874
872
870
862
863
859
856
856
855
856
860
859
864
867
867
869
869
870
872
872
881
883
885
895
895
895
895
914
915
916
936
936
954
957
962
963
971
971
972
972
975
977
977
977
977
977
978
981
983
983
983
983
983
983
997
1001
999
1010
1010
1012
1013
1018
1017
1017
1016
1016
1015
1010
1015
1015
1016
1015
1014
1015
1016
1017
1027
1027
1028
1031
1045
1062
1067
1060
1061
1064
1061
1061
1063
1074
1077
1101
1102
1102
1102
1102
1103
1109
1110
1114
1122
1123
1137
1143
1147
1161
1167
1165
1182
1193
1191
1191
1208
1240
1247
1248
1252
1255
1257
1257
1256
1256
1257
1259
1264
1269
1267
1270
1286
1291
1293
1293
1295
1295
1295
1289
1290
1304
1318
1317
1315
1314
1313
1329
1327
1321
1332
1330
1349
1351
1351
1347
1345
1356
1361
1368
1368
1370
1374
1383
1387
1391
1392
1392
1393
1399
1403
1404
1407
1410
1421
1421
1421
1428
1431
1437
1440
1443
1452
1464
1469
1470
1482
1494
1495
1497
1498
1493
1491
1487
1482
1475
1477
1486
1491
1492
1481
1483
1485
1487
1494
1492
1491
1488
1486
1479
1476
1474
1471
1476
1479
1477
1477
1476
1475
1474
1473
1472
1470
1464
1467
1467
1464
1464
1464
1464
1461
1457
1452
1447
1446
1448
1448
1445
1445
1439
1440
1440
1436
1434
1427
1429
1431
1433
1438
1440
1454
1456
1459
1460
1459
1457
1455
1459
1462
1463
1470
1470
1464
1460
1467
1478
1477
1475
1474
1489
1488
1489
1492
1495
1497
1480
1480
1481
1488
1494
1494
1492
1493
1494
1495
1503
1502
1501
1501
1503
1506
1505
1504
1503
1500
1484
1480
1478
1479
1457
1453
1429
1428
1410
1408
1403
1396
1393
1393
1391
1389
1379
1373
1375
1379
1372
1369
1370
1371
1372
1363
1359
1359
1348
1339
1335
1333
1325
1322
1318
1310
1306
1280
1278
1275
1272
1272
1272
1267
1266
1263
1258
1254
1246
1239
1236
1227
1226
1226
1221
1204
1202
1200
1195
1189
1186
1185
1181
1177
1172
1168
1163
1162
1159
1156
1155
1154
1152
1146
1138
1134
1130
1128
1123
1121
1118
1115
1103
1099
1095
1088
1078
1082
1064
1060
1057
1055
1053
1045
1034
1029
1026
1026
1014
1003
995
993
989
983
982
978
975
973
973
973
973
973
955
948
948
940
932
931
935
936
937
938
939
939
939
938
936
927
923
907
910
903
888
891
893
894
894
896
898
898
894
889
886
884
885
885
882
872
870
855
852
847
846
845
844
843
842
842
840
836
834
832
821
821
822
821
819
817
815
812
808
805
800
799
795
794
800
803
804
800
798
796
800
803
805
801
785
781
783
794
794
793
789
787
783
779
775
774
774
774
774
763
754
738
733
729
726
713
708
701
701
701
720
721
714
712
709
700
691
688
682
680
673
670
658
660
686
670
670
669
668
667
642
640
650
645
641
634
629
627
631
634
646
648
644
642
640
638
629
624
617
612
609
613
619
615
604
599
595
598
598
591
583
582
581
581
581
579
577
578
576
579
570
571
572
573
579
582
584
588
588
585
591
609
601
600
598
593
591
589
585
585
583
554
551
551
547
530
530
530
527
525
521
521
520
520
522
522
523
524
518
519
521
521
521
527
527
529
530
531
535
536
534
534
534
534
534
534
533
533
533
533
533
530
528
528
528
531
528
515
513
512
513
515
516
516
516
524
524
524
524
524
525
526
524
524
523
517
517
518
518
518
520
513
518
518
518
518
518
518
520
520
520
519
519
519
519
521
520
520
520
520
517
515
514
514
497
493
491
491
489
492
492
495
499
505
505
506
506
506
504
504
504
504
504
505
506
516
514
512
508
507
505
504
500
500
501
509
485
485
484
481
480
482
484
483
483
482
482
475
475
475
475
474
478
478
479
503
506
510
544
569
570
569
547
547
522
520
520
519
519
522
533
535
535
536
530
518
518
518
518
535
538
538
529
527
524
524
517
517
515
514
501
498
496
496
496
496
497
497
496
492
488
491
491
489
485
483
482
482
482
482
483
481
480
480
481
482
481
481
481
482
482
510
598
507
507
509
509
518
515
515
517
533
522
533
566
565
544
529
534
529
530
537
541
533
537
541
542
552
549
546
555
573
559
559
569
567
558
563
573
567
563
559
566
567
564
565
565
560
553
552
551
551
551
551
552
552
552
553
553
553
553
553
553
556
556
556
559
565
565
567
571
572
572
566
566
569
570
571
573
573
574
577
581
582
582
584
587
589
591
587
588
586
584
584
588
591
597
599
599
598
598
599
601
601
603
608
605
601
600
599
597
597
597
596
600
598
595
593
598
599
599
599
599
604
607
614
611
609
610
611
611
612
614
614
617
624
622
615
614
614
615
615
624
622
622
624
629
628
627
628
632
636
638
643
645
659
643
639
635
631
630
630
629
627
627
629
631
631
626
627
641
649
649
639
627
628
629
628
628
632
636
630
630
633
636
635
659
643
646
650
651
651
650
649
655
649
648
650
652
652
652
652
652
653
657
665
664
662
660
659
659
667
669
669
666
669
670
673
675
678
681
685
689
694
699
704
701
700
700
698
689
688
698
705
713
707
711
713
704
699
707
721
718
714
712
727
734
750
729
728
728
736
743
743
743
743
759
739
750
759
772
772
771
771
773
777
779
780
779
778
778
778
778
783
790
802
799
783
780
778
773
794
798
798
796
790
791
795
803
817
821
829
834
840
837
830
829
830
840
833
820
818
821
823
826
823
821
823
847
855
867
867
869
879
879
916
916
916
916
917
918
923
928
940
945
950
952
951
946
961
961
965
948
958
985
992
997
1000
1006
1010
1020
1005
998
998
999
1017
1029
1022
1017
1017
1023
1030
1040
1045
1048
1049
1050
1052
1054
1055
1055
1055
1049
1047
1048
1050
1051
1050
1049
1049
1049
1071
1080
1068
1063
1057
1062
1077
1084
1094
1096
1098
1106
1105
1104
1105
1106
1107
1108
1109
1108
1107
1105
1109
1109
1110
1110
1110
1109
1111
1114
1131
1133
1134
1138
1138
1137
1137
1134
1136
1138
1150
1158
1163
1167
1173
1175
1178
1181
1183
1184
1182
1181
1192
1198
1197
1199
1204
1209
1219
1221
1223
1224
1226
1234
1237
1238
1246
1253
1259
1257
1256
1266
1272
1264
1258
1265
1275
1275
1265
1260
1257
1268
1273
1270
1266
1265
1266
1283
1285
1284
1282
1285
1288
1289
1303
1300
1298
1296
1290
1285
1268
1280
1288
1278
1286
1285
1276
1274
1273
1290
1297
1288
1274
1262
1253
1244
1253
1253
1252
1251
1246
1240
1237
1258
1256
1252
1229
1222
1221
1232
1232
1232
1233
1235
1236
1235
1233
1230
1222
1224
1223
1223
1224
1226
1229
1231
1227
1244
1250
1261
1266
1269
1273
1277
1276
1256
1256
1254
1265
1260
1256
1254
1252
1249
1238
1229
1228
1228
1228
1228
1226
1203
1205
1214
1228
1228
1228
1241
1251
1252
1248
1246
1254
1257
1260
1252
1240
1250
1248
1247
1245
1242
1248
1250
1251
1250
1249
1248
1253
1254
1255
1252
1246
1244
1257
1250
1248
1247
1251
1258
1267
1274
1279
1284
1296
1297
1299
1304
1310
1313
1314
1311
1310
1323
1325
1329
1329
1324
1333
1322
1329
1325
1323
1311
1320
1327
1307
1309
1305
1304
1302
1297
1286
1285
1285
1285
1285
1286
1282
1285
1288
1284
1283
1283
1278
1278
1277
1275
1281
1281
1280
1278
1280
1276
1288
1280
1280
1256
1248
1248
1242
1237
1235
1229
1227
1225
1225
1222
1219
1210
1204
1200
1193
1184
1181
1179
1177
1173
1167
1165
1162
1150
1150
1150
1151
1155
1146
1130
1117
1113
1109
1106
1101
1096
1098
1098
1094
1092
1092
1087
1077
1058
1045
1043
1042
1041
1042
1045
1045
1044
1036
1028
1023
1023
1023
1023
1025
1028
1030
1026
1020
1017
1012
1010
1008
1007
1006
1005
1004
1004
1004
1004
1001
988
979
973
969
969
969
973
975
978
979
982
984
988
981
979
976
981
986
983
975
971
968
956
957
959
966
963
957
958
958
958
958
956
953
944
937
944
955
956
952
946
942
940
944
945
945
945
945
946
949
954
964
972
974
965
959
951
950
947
944
946
947
947
942
942
942
935
932
929
924
926
932
915
908
903
900
893
892
891
881
885
855
854
854
843
838
842
836
833
833
832
830
821
821
797
798
800
799
789
789
787
784
780
783
772
767
763
760
759
744
737
732
730
729
728
728
717
711
714
711
711
707
667
660
660
658
657
656
655
654
657
664
664
666
669
672
662
665
669
660
677
686
677
671
672
688
690
681
659
659
657
655
651
644
637
637
640
640
637
634
634
640
643
643
641
619
615
615
618
619
620
620
615
608
606
604
603
603
603
601
603
604
606
607
607
607
608
608
610
636
641
641
641
636
625
617
597
596
595
594
595
597
606
598
610
601
601
599
597
597
600
599
592
601
599
593
592
599
602
602
612
623
615
602
609
609
610
610
610
606
605
604
603
603
600
595
591
578
572
589
600
596
603
602
603
601
579
577
573
570
568
564
562
560
562
565
552
548
545
540
540
538
536
536
535
534
534
535
536
539
544
543
541
537
535
534
532
531
531
531
533
534
532
532
533
546
550
544
541
537
533
527
521
517
518
519
519
528
536
532
519
519
518
516
515
514
517
519
538
530
514
513
512
513
517
520
533
543
537
543
544
546
549
558
560
560
565
575
575
576
578
577
577
576
576
574
573
574
573
575
578
582
584
594
594
593
590
563
560
556
555
553
550
546
543
530
528
528
509
506
503
497
492
486
484
477
491
491
484
461
460
458
456
452
451
450
450
452
450
448
450
453
452
451
452
455
455
455
459
464
465
467
469
472
478
478
478
479
480
481
485
491
491
491
488
482
478
474
470
467
466
465
465
465
464
460
449
446
442
440
436
434
431
427
424
424
422
422
423
427
424
423
423
420
422
423
423
425
448
454
454
454
454
456
458
461
463
462
457
458
456
451
452
469
470
477
482
485
485
480
490
495
495
492
500
512
516
517
517
517
518
520
527
528
530
535
535
534
533
534
535
541
541
543
547
555
556
569
572
574
579
585
587
589
590
591
592
593
593
594
606
615
616
617
619
619
609
609
603
603
602
600
597
593
585
584
582
577
567
563
555
549
549
550
551
543
531
529
524
526
527
526
522
523
524
524
523
532
530
527
524
523
524
530
538
543
542
542
538
548
552
552
545
555
558
565
575
582
582
584
593
598
598
607
610
609
604
602
600
598
598
598
603
606
608
608
609
612
609
607
611
610
604
607
608
608
608
608
608
606
605
596
601
602
603
604
605
605
605
612
616
620
623
626
627
626
632
644
642
641
635
629
629
634
632
622
620
618
616
613
610
609
591
602
593
590
576
568
564
560
555
554
546
545
543
544
546
550
533
533
536
529
511
512
508
508
504
491
469
466
464
462
482
471
463
452
450
447
450
444
438
463
453
437
419
421
416
413
412
410
405
400
404
411
409
393
383
374
369
363
355
354
351
349
344
338
361
359
355
355
355
355
355
355
356
356
357
356
367
368
368
367
366
364
368
371
372
372
373
375
375
374
372
371
370
369
367
367
364
361
356
357
360
355
337
347
345
346
347
352
359
364
365
366
367
368
377
386
382
388
381
376
367
370
372
385
387
404
405
436
440
442
444
446
449
450
450
450
479
483
484
493
496
536
545
543
540
533
532
532
532
533
538
553
552
584
599
604
621
628
632
634
636
640
647
654
676
678
683
692
692
692
690
689
689
689
686
683
688
692
692
692
692
692
698
701
702
703
703
705
708
703
703
703
705
706
713
721
721
722
722
721
720
720
721
720
721
715
712
711
705
699
696
692
673
670
656
653
652
650
649
648
648
647
644
641
640
640
638
636
636
635
632
629
627
627
627
628
628
625
621
618
616
605
603
601
601
601
601
601
613
614
620
626
629
631
628
627
627
627
628
628
634
636
645
642
633
625
605
579
580
582
582
582
582
582
583
584
584
585
586
588
589
602
603
606
607
609
614
617
615
615
620
622
623
624
628
628
631
631
632
632
632
627
625
624
620
619
616
614
613
613
613
616
621
620
620
621
622
628
635
637
639
632
633
631
628
618
618
615
608
607
607
588
585
584
572
568
566
563
552
552
551
548
547
547
546
545
541
538
536
535
534
524
522
513
505
504
509
523
524
524
522
527
528
528
525
522
522
519
518
516
503
497
486
478
480
481
482
481
480
480
478
473
455
452
448
448
448
439
439
438
434
426
424
424
426
427
428
434
440
446
447
457
474
483
490
485
487
490
496
494
494
493
491
483
466
466
469
470
462
450
450
465
469
474
477
478
481
483
481
476
470
458
452
451
449
445
442
443
446
451
456
460
460
460
456
449
448
451
452
444
442
439
437
417
408
408
409
409
409
409
418
419
417
455
454
454
454
444
440
437
434
426
426
431
434
439
442
445
447
430
429
425
420
420
424
427
428
430
431
436
439
443
451
453
455
463
469
461
448
448
449
450
450
447
438
432
429
427
426
428
427
425
418
401
401
395
391
388
387
383
384
381
374
370
366
364
364
364
363
358
342
338
339
342
355
362
364
366
367
381
388
389
391
393
394
397
399
409
409
409
413
415
424
426
429
424
415
413
411
409
409
409
392
392
391
389
390
392
397
400
403
404
409
417
417
415
422
422
422
419
418
416
418
401
401
399
394
391
381
375
372
349
349
350
340
313
309
309
313
327
332
335
334
336
339
339
339
337
336
338
342
343
343
342
344
346
351
352
359
363
365
371
377
378
379
382
390
392
390
392
392
391
388
387
386
385
372
371
369
365
362
354
353
352
351
349
349
350
351
352
354
356
352
349
338
335
333
333
332
330
323
323
325
332
332
326
324
327
326
324
322
322
329
331
334
338
340
347
355
358
360
366
364
363
362
362
361
355
349
348
345
338
337
339
342
344
348
352
351
353
353
357
361
366
366
363
362
356
355
359
364
365
365
372
370
372
377
377
377
371
370
372
373
373
376
382
384
387
385
384
381
360
359
358
357
346
344
340
340
339
337
338
339
341
351
351
347
345
344
342
345
342
344
347
352
354
356
356
356
356
359
367
363
361
361
362
365
367
369
371
371
377
376
376
379
380
382
384
390
400
397
393
386
381
378
376
373
374
374
375
370
361
369
378
379
389
390
398
399
404
408
409
406
398
388
371
361
354
345
345
347
335
336
340
337
323
316
296
284
281
259
259
261
261
259
268
272
274
284
282
280
280
272
270
264
266
267
271
271
271
269
267
266
264
259
257
255
251
252
254
254
256
257
259
280
282
284
301
303
307
307
308
310
322
326
328
329
336
343
345
354
358
360
360
360
360
361
361
361
361
361
359
352
351
331
325
326
319
319
315
313
313
312
311
310
307
307
306
304
306
310
310
310
318
321
321
320
320
307
306
305
302
298
291
281
276
276
275
275
274
288
295
301
302
303
304
304
309
310
310
311
324
326
336
339
354
362
364
361
352
352
342
342
340
327
323
322
326
318
305
298
289
294
295
295
295
294
294
294
293
292
292
291
285
278
278
278
277
276
274
271
272
275
276
274
272
271
271
273
275
275
270
267
265
262
259
259
261
258
251
249
248
248
243
237
234
231
233
233
234
238
220
217
216
220
229
245
245
251
258
260
258
262
265
264
263
272
274
274