335
335
335
335
335
335
335
335
335
336
337
338
338
338
337
337
337
336
336
336
336
335
334
334
334
337
340
339
339
337
337
337
336
336
335
335
334
337
340
343
344
346
346
346
348
349
349
349
345
345
348
348
349
349
351
351
352
352
352
352
352
352
352
353
353
353
353
353
352
352
352
352
351
351
352
352
352
353
353
353
353
353
354
360
363
366
366
366
366
366
372
385
386
386
387
387
392
395
396
397
397
397
398
398
399
400
400
401
402
404
405
405
407
407
408
408
409
409
409
409
404
399
398
396
394
389
385
384
382
382
382
382
382
384
385
386
386
387
387
388
392
394
396
399
403
413
413
412
410
409
408
408
408
408
407
406
407
409
407
404
402
402
400
398
395
394
394
395
397
399
400
400
399
399
398
395
393
387
385
384
383
382
381
378
376
375
371
370
370
370
370
370
370
370
369
369
369
369
369
369
369
369
369
369
369
369
369
369
370
370
370
370
370
370
370
370
370
371
371
371
371
372
372
372
372
373
376
378
378
378
379
380
380
381
381
382
382
382
383
383
383
384
384
385
386
386
386
386
388
389
389
390
393
393
395
395
395
396
397
397
397
395
395
393
390
389
389
390
390
390
392
392
392
392
392
392
392
393
393
393
393
393
395
397
397
398
398
398
398
398
398
398
398
398
399
399
399
399
399
399
399
400
400
400
401
401
402
402
402
402
402
402
402
402
402
402
403
403
404
405
405
406
406
406
406
406
406
406
406
411
412
413
414
415
415
416
417
417
420
422
423
423
422
420
419
418
417
420
422
423
424
425
426
426
425
425
424
424
421
420
420
417
417
417
417
420
421
421
421
421
421
421
421
419
419
419
418
418
418
418
418
418
418
418
418
418
418
418
420
437
439
442
444
446
449
452
461
463
464
466
474
453
451
448
447
439
440
440
441
442
444
446
446
448
448
447
446
444
442
441
441
441
441
441
441
441
442
443
444
444
445
446
446
446
446
447
448
448
448
448
448
448
448
448
449
450
452
451
449
448
448
448
448
448
448
448
448
448
448
448
448
449
450
450
454
456
458
457
456
454
451
451
450
447
446
446
445
442
441
441
441
441
442
443
443
444
448
450
469
471
474
482
485
489
490
494
495
495
496
496
496
499
502
503
505
506
507
509
519
519
520
520
521
521
522
524
525
525
526
529
535
537
539
540
542
553
555
557
557
557
557
556
555
555
555
554
553
554
578
582
578
565
560
554
543
530
515
515
515
516
516
516
517
518
520
520
520
520
520
520
520
520
520
520
520
521
522
524
525
526
526
529
530
532
533
534
537
538
538
539
545
546
547
555
554
545
531
529
524
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
521
522
522
524
526
528
530
532
531
531
533
536
537
537
537
537
537
538
539
540
541
541
545
546
547
551
554
556
561
558
555
553
552
550
549
547
546
545
543
535
534
534
534
534
534
534
534
533
533
534
536
537
537
540
541
543
543
543
543
543
543
543
543
543
543
543
547
549
552
553
554
555
557
556
555
553
550
551
552
553
558
559
559
558
558
558
558
557
557
557
556
555
555
555
555
555
555
555
555
555
555
555
554
553
552
552
551
550
549
548
545
543
542
541
540
538
531
532
535
535
538
541
543
545
555
558
560
562
565
566
569
568
563
558
556
555
553
547
545
545
545
544
544
546
547
547
549
551
551
551
552
553
553
553
554
554
554
553
553
553
552
552
552
552
551
549
549
548
547
546
546
544
543
542
540
537
535
533
530
530
531
532
533
533
534
535
538
540
542
542
543
543
543
543
543
543
543
543
543
542
542
542
542
541
539
539
536
535
534
533
532
532
532
532
532
533
534
534
536
537
537
538
539
541
542
542
543
544
546
550
551
551
552
553
554
556
557
558
559
560
560
558
556
538
537
537
537
537
537
537
537
537
537
537
537
537
537
535
535
534
534
533
544
554
559
557
556
554
552
546
535
535
543
549
553
555
557
556
547
546
547
547
548
552
554
557
560
559
557
555
553
552
550
549
544
541
542
544
547
553
557
553
553
553
554
556
558
558
556
554
555
556
560
565
573
579
592
594
588
582
575
572
572
572
571
571
570
570
570
571
573
575
575
576
576
577
577
578
579
581
593
597
599
604
611
641
643
643
644
645
647
648
651
655
657
666
671
674
679
680
681
682
683
684
684
686
693
699
707
712
714
716
727
727
725
725
740
747
756
760
766
767
769
771
772
774
776
778
780
781
785
788
792
799
800
802
809
811
813
814
817
818
819
818
818
817
813
812
812
812
812
822
826
828
832
839
842
858
868
863
857
868
874
878
883
892
902
898
896
896
895
895
897
898
903
907
910
917
918
919
920
921
922
923
924
926
932
931
927
926
925
924
929
942
984
985
986
986
987
987
988
988
988
989
991
994
996
999
1004
1002
997
977
976
975
973
982
994
1010
1018
1026
1027
1028
1028
1029
1030
1031
1035
1039
1040
1041
1042
1048
1051
1052
1053
1054
1055
1055
1054
1053
1052
1053
1054
1054
1055
1055
1056
1056
1058
1059
1059
1059
1058
1058
1057
1057
1057
1057
1060
1063
1073
1082
1086
1089
1095
1105
1130
1133
1131
1131
1130
1129
1128
1128
1127
1128
1129
1133
1134
1136
1137
1139
1143
1145
1146
1147
1152
1154
1159
1162
1163
1164
1164
1164
1164
1164
1163
1163
1163
1163
1162
1162
1160
1159
1157
1155
1153
1150
1148
1146
1145
1146
1147
1148
1148
1151
1152
1153
1154
1157
1158
1158
1160
1161
1162
1163
1164
1164
1165
1167
1171
1172
1173
1174
1175
1178
1181
1182
1182
1182
1183
1184
1186
1191
1193
1195
1204
1209
1205
1205
1211
1234
1238
1238
1238
1239
1239
1240
1241
1241
1241
1243
1244
1244
1245
1248
1251
1254
1257
1260
1260
1260
1260
1260
1259
1258
1258
1261
1263
1268
1264
1261
1259
1260
1262
1262
1262
1260
1258
1254
1248
1245
1245
1246
1248
1257
1260
1257
1250
1249
1255
1268
1265
1261
1258
1259
1268
1270
1266
1269
1272
1274
1300
1308
1311
1313
1315
1318
1316
1314
1312
1312
1316
1315
1306
1302
1293
1282
1261
1254
1252
1252
1252
1246
1237
1233
1230
1226
1224
1214
1213
1213
1212
1209
1207
1205
1195
1187
1184
1176
1173
1169
1165
1163
1160
1157
1153
1152
1151
1149
1147
1146
1144
1142
1141
1140
1139
1138
1137
1136
1132
1121
1116
1113
1110
1106
1102
1102
1101
1101
1100
1099
1098
1097
1094
1093
1093
1092
1091
1090
1090
1089
1089
1088
1088
1087
1086
1084
1073
1065
1067
1070
1072
1075
1077
1079
1081
1082
1080
1079
1078
1075
1072
1068
1065
1062
1053
1051
1051
1051
1052
1052
1051
1049
1046
1039
1036
1034
1031
1030
1029
1028
1026
1025
1020
1020
1020
1018
1017
1018
1020
1022
1024
1026
1028
1030
1035
1034
1031
1028
1026
1025
1024
1021
1022
1023
1024
1026
1028
1026
1023
1021
1019
1027
1029
1028
1027
1027
1026
1026
1025
1028
1030
1023
1007
1000
997
995
995
994
993
992
993
995
1003
1007
1011
1011
1010
1010
1009
1007
1004
1001
998
995
995
999
1010
1010
1006
999
994
993
991
989
987
991
997
1004
1009
1008
1003
998
993
989
989
990
991
991
992
992
992
993
997
999
1004
1007
1005
1005
1002
998
995
988
987
986
985
986
993
1006
1003
1001
1000
993
1000
1012
1026
1037
1039
1041
1043
1044
1048
1047
1045
1043
1044
1052
1031
1009
1002
1000
999
998
998
998
998
1003
1012
1016
1019
1029
1029
1028
1027
1026
1021
1019
1022
1026
1048
1056
1062
1038
1038
1038
1039
1040
1043
1044
1045
1048
1050
1052
1055
1059
1062
1064
1067
1062
1066
1074
1077
1083
1080
1077
1073
1068
1064
1083
1097
1105
1087
1079
1066
1064
1063
1069
1076
1083
1090
1094
1093
1092
1091
1085
1069
1067
1067
1067
1067
1066
1066
1061
1047
1033
1029
1029
1030
1033
1035
1036
1037
1031
1036
1043
1047
1056
1059
1069
1073
1076
1079
1076
1070
1063
1057
1054
1054
1054
1056
1056
1058
1060
1079
1096
1098
1098
1104
1123
1121
1102
1099
1095
1089
1085
1079
1085
1097
1098
1102
1104
1107
1108
1110
1113
1114
1119
1122
1124
1126
1127
1127
1127
1132
1141
1149
1152
1153
1152
1151
1151
1150
1148
1148
1148
1148
1148
1148
1148
1146
1143
1140
1135
1135
1135
1135
1135
1135
1136
1154
1159
1156
1152
1149
1148
1148
1148
1148
1149
1149
1149
1149
1147
1147
1146
1149
1150
1151
1152
1153
1154
1156
1156
1163
1171
1178
1183
1186
1190
1190
1190
1191
1192
1193
1193
1193
1193
1192
1192
1191
1191
1191
1191
1192
1193
1198
1203
1203
1203
1203
1203
1203
1203
1203
1212
1217
1219
1223
1223
1224
1225
1225
1227
1228
1229
1230
1231
1233
1234
1241
1247
1249
1250
1256
1260
1262
1268
1269
1270
1273
1274
1275
1276
1279
1283
1284
1286
1286
1287
1290
1293
1298
1300
1305
1306
1308
1312
1314
1314
1316
1319
1319
1317
1315
1314
1312
1308
1306
1297
1280
1277
1275
1271
1263
1256
1249
1248
1258
1264
1266
1267
1267
1268
1266
1261
1255
1250
1250
1243
1242
1239
1238
1237
1236
1231
1225
1222
1204
1195
1190
1185
1180
1174
1172
1169
1164
1163
1165
1167
1168
1166
1161
1153
1151
1149
1145
1143
1142
1131
1118
1112
1108
1105
1103
1101
1100
1093
1088
1091
1099
1106
1108
1111
1112
1111
1110
1110
1109
1109
1109
1109
1109
1109
1108
1107
1105
1104
1103
1102
1101
1100
1099
1098
1095
1087
1075
1071
1070
1069
1067
1066
1065
1064
1062
1061
1060
1060
1058
1058
1057
1056
1056
1056
1056
1057
1058
1058
1058
1058
1058
1058
1058
1058
1058
1057
1057
1057
1057
1057
1057
1057
1057
1056
1056
1056
1056
1055
1055
1055
1054
1054
1054
1053
1053
1052
1052
1051
1051
1051
1050
1050
1049
1044
1043
1040
1038
1037
1036
1035
1035
1034
1032
1031
1030
1028
1027
1026
1024
1024
1022
1021
1018
1016
1015
1012
1010
1009
1008
1006
1005
998
998
995
994
992
989
987
986
985
983
980
978
977
975
973
966
964
963
963
966
970
974
977
978
979
980
981
981
980
979
978
978
974
972
970
970
968
968
966
966
965
965
964
963
959
959
958
957
956
955
955
954
954
954
954
954
954
954
954
954
954
954
954
954
954
954
952
951
950
950
950
949
949
949
948
948
948
948
945
944
937
930
926
926
925
924
924
923
923
922
921
920
919
918
918
917
917
916
916
916
915
915
914
914
913
913
913
912
911
911
911
910
910
910
908
907
907
906
906
906
902
898
896
893
887
885
883
875
872
870
867
862
859
856
854
851
850
848
845
835
848
863
874
871
863
846
837
844
848
850
849
849
848
848
840
833
828
823
818
814
812
811
808
805
802
800
798
795
794
790
788
787
785
784
781
781
781
780
777
775
774
773
773
773
773
772
772
772
771
771
771
771
770
768
767
767
761
755
753
750
750
750
750
751
751
751
751
753
752
751
747
746
745
743
743
741
741
740
739
740
740
742
747
754
762
759
757
756
753
752
750
748
745
743
743
741
740
735
730
727
723
720
717
716
716
715
715
715
715
715
716
716
715
714
713
712
712
712
712
712
712
712
712
712
711
711
711
711
711
711
711
711
711
710
708
708
707
707
706
706
706
706
706
706
704
703
703
702
701
700
699
699
698
698
698
699
699
700
701
702
688
687
687
686
686
685
685
684
684
684
684
684
684
684
685
685
685
685
685
685
685
683
683
682
681
680
680
678
677
678
680
683
688
690
690
690
689
689
688
688
687
687
687
687
688
688
689
689
688
687
686
683
682
679
677
674
672
669
666
659
659
660
660
661
659
659
657
657
656
655
649
650
650
650
649
648
647
647
647
647
647
647
646
645
641
639
639
640
642
642
642
641
641
640
640
640
641
642
643
644
645
645
646
646
646
640
638
631
630
629
625
624
620
620
620
620
619
619
619
619
619
620
620
621
623
624
626
626
626
628
631
630
626
628
635
634
632
631
628
626
624
628
628
625
623
620
612
611
611
611
612
615
616
618
619
615
614
613
611
617
622
624
607
609
611
612
613
615
615
614
613
613
613
613
612
606
605
604
604
604
605
605
606
606
607
607
608
608
609
610
610
611
612
612
611
608
607
602
600
600
600
600
600
600
598
597
592
591
590
590
601
604
599
597
596
592
589
589
589
589
591
592
593
594
594
594
594
594
594
595
598
600
602
602
601
598
594
593
588
589
590
592
593
595
597
596
588
588
590
593
596
603
616
618
619
613
605
601
602
602
602
603
604
604
604
605
605
605
605
605
605
605
605
606
606
606
606
606
606
607
607
607
607
608
608
608
608
607
607
607
607
607
607
609
610
614
617
618
621
623
622
622
621
620
618
624
628
631
634
636
637
635
634
633
632
631
630
628
626
625
627
629
630
631
632
632
631
630
630
630
629
629
628
628
627
630
633
636
639
643
641
639
638
636
631
634
638
643
649
651
652
653
654
656
651
648
640
641
643
647
647
647
647
648
648
648
647
642
641
640
634
631
626
625
624
623
622
616
614
612
611
609
608
607
604
604
602
600
599
595
593
592
591
590
589
587
586
585
579
577
575
574
572
572
572
575
577
578
579
580
580
579
577
576
575
573
572
569
565
565
566
570
572
575
576
577
579
582
583
585
585
585
585
585
584
582
586
598
609
619
620
622
623
625
626
626
626
627
629
625
610
604
599
597
595
591
591
591
590
589
588
582
565
561
559
551
549
549
549
549
549
550
550
550
550
550
550
549
549
549
549
548
548
571
585
581
578
575
572
569
572
575
576
572
567
560
549
549
550
550
550
550
549
549
548
547
546
545
546
548
549
551
552
552
551
548
545
543
543
543
543
543
542
542
542
542
542
542
542
542
542
542
542
542
542
541
540
540
539
539
539
539
539
539
539
539
539
539
539
539
538
538
538
537
535
534
536
541
548
548
547
545
542
540
542
543
543
542
542
541
540
539
539
546
548
550
552
555
556
558
561
556
555
553
552
551
549
543
541
538
537
536
536
535
533
533
533
533
533
534
534
534
534
535
535
537
537
537
537
538
539
539
540
540
541
544
545
545
547
548
548
549
550
551
551
552
552
552
553
553
553
555
561
562
564
569
570
570
571
572
573
573
572
571
570
569
567
566
562
558
557
555
551
550
548
547
546
543
541
540
541
541
541
542
542
543
544
545
545
545
542
539
543
544
545
545
546
545
545
543
540
540
544
548
556
554
551
546
541
535
534
533
532
531
530
530
530
530
530
532
526
524
521
521
521
524
528
530
532
537
539
538
536
533
531
529
529
528
528
527
527
528
529
535
538
539
542
543
542
541
540
539
539
538
538
538
538
538
537
535
533
530
528
530
531
534
539
538
535
524
518
515
514
513
513
519
520
521
524
525
525
526
527
529
530
531
532
534
536
537
536
536
536
539
541
543
543
544
545
547
549
552
552
552
552
554
557
559
564
568
570
571
574
578
582
586
587
598
599
602
604
606
609
613
612
610
606
601
595
591
588
586
579
578
570
566
562
560
554
553
550
548
544
542
541
537
532
529
523
516
514
511
510
509
507
506
506
506
506
506
506
506
506
506
506
506
506
506
506
506
505
505
504
504
504
504
504
504
504
504
504
504
504
504
504
504
504
504
503
503
502
502
502
503
503
503
503
504
505
505
506
506
507
506
506
506
505
505
504
504
504
503
503
503
502
501
502
502
502
502
502
503
503
503
504
505
506
505
504
504
504
504
505
505
506
506
506
507
509
510
511
511
513
514
515
516
516
516
517
518
518
518
519
519
519
519
520
520
520
520
520
520
518
516
515
514
512
510
510
509
508
507
507
505
505
503
503
502
502
501
500
497
496
497
502
507
503
499
498
499
500
499
498
497
496
495
494
494
493
492
492
492
492
492
493
493
494
494
494
494
494
494
494
492
493
493
494
495
495
495
495
495
494
494
493
493
494
494
495
498
503
505
510
509
509
507
506
504
503
501
501
500
500
497
496
495
494
494
494
493
493
492
492
493
493
494
494
495
495
495
496
496
496
496
497
497
496
496
495
494
494
493
493
492
491
491
490
490
490
489
488
488
488
488
488
488
488
488
488
489
490
490
490
493
496
500
501
502
502
502
502
502
515
526
529
531
533
534
536
533
533
532
530
529
528
527
525
525
525
524
523
522
520
520
520
519
519
517
517
516
516
515
513
509
506
505
505
504
504
504
494
491
487
485
485
485
484
483
482
482
481
481
481
480
480
480
480
480
480
480
480
480
480
480
480
481
481
481
481
480
479
483
484
486
489
491
496
493
492
490
489
487
486
484
481
481
481
481
484
487
491
497
501
509
509
509
509
508
490
486
486
477
475
473
473
475
476
479
480
482
483
483
483
484
484
483
480
477
474
477
478
479
479
478
477
477
476
475
475
475
475
476
474
482
489
489
488
486
483
480
478
476
468
466
475
474
472
466
465
466
468
469
469
470
470
470
470
470
470
470
470
470
470
470
470
473
476
476
481
491
492
499
473
467
465
460
458
457
457
457
457
457
457
457
457
458
460
461
463
465
466
466
465
465
465
465
466
467
468
469
470
470
470
470
470
467
466
463
468
467
464
463
458
458
458
458
459
465
467
469
468
467
465
463
462
465
468
481
481
482
483
483
479
471
464
459
456
456
456
456
456
456
456
457
456
455
454
453
452
452
452
452
452
454
455
459
459
459
459
459
459
457
456
454
453
451
451
452
457
457
457
456
455
454
454
454
455
456
457
458
458
461
467
471
469
463
462
462
461
461
461
460
458
455
452
447
442
439
439
441
443
444
446
446
446
446
446
446
446
446
446
446
446
446
446
446
446
446
445
445
445
445
445
445
444
443
442
441
439
438
437
435
434
433
433
432
432
433
433
433
432
432
432
431
431
431
431
432
440
440
440
440
440
442
444
445
448
448
446
444
440
439
436
433
432
430
430
430
432
432
433
434
434
435
434
443
445
450
445
443
439
437
434
432
432
432
432
432
432
432
432
433
437
439
442
447
448
447
444
443
440
439
440
442
444
444
445
446
448
448
447
447
445
445
443
442
454
455
453
443
461
467
473
474
474
474
474
450
446
445
446
446
447
446
444
443
441
439
439
439
439
432
429
424
424
430
434
438
433
431
428
426
425
429
432
432
429
426
422
420
424
426
436
438
438
438
437
443
445
446
417
420
424
421
420
418
415
415
415
415
417
417
417
416
409
409
409
409
409
410
424
424
422
420
419
417
415
414
414
412
411
409
406
405
405
405
405
405
405
406
406
407
408
413
414
410
404
407
407
407
407
405
404
407
406
405
402
402
402
402
402
402
402
402
402
403
403
405
406
406
406
405
404
401
405
404
402
401
404
404
404
403
403
401
401
401
401
400
400
399
396
396
395
397
398
398
403
404
407
409
408
407
407
405
403
401
398
396
397
401
401
401
402
402
403
403
401
400
398
397
395
394
394
394
394
394
394
394
394
395
397
398
400
400
400
400
400
400
400
400
405
407
409
410
412
414
419
421
423
419
411
397
397
396
395
397
398
399
400
403
405
408
412
416
416
416
416
416
404
399
386
389
391
393
394
404
408
412
399
395
413
424
427
429
425
397
404
391
392
393
395
392
387
383
415
410
404
397
392
387
381
381
379
392
381
388
390
394
400
404
409
403
405
439
432
425
415
415
415
390
385
389
391
390
381
377
376
375
373
372
370
369
369
369
368
368
369
379
375
372
367
363
363
363
363
363
363
364
365
366
367
368
368
369
381
386
390
394
396
399
411
416
418
429
443
462
458
456
447
421
411
416
416
416
420
425
426
427
428
428
429
429
429
429
429
432
436
437
442
447
448
452
455
461
460
460
459
459
459
459
459
461
463
464
467
468
468
470
471
473
475
477
478
478
478
478
478
478
480
484
488
498
498
499
499
504
507
509
509
510
508
508
509
509
509
514
518
524
526
528
531
533
533
533
533
532