378
377
373
371
369
365
364
363
362
361
358
357
356
355
352
351
350
347
345
344
342
340
338
336
334
333
334
334
335
335
335
335
335
335
334
333
332
331
330
331
331
331
330
327
327
331
332
333
339
347
349
350
352
359
360
361
361
360
358
356
355
355
355
357
360
361
363
365
367
388
390
392
397
400
401
409
415
422
425
430
431
432
434
435
433
434
438
439
442
443
443
444
444
444
444
444
444
444
448
451
457
459
460
461
461
462
464
464
464
464
464
463
462
459
455
455
455
456
456
464
469
474
477
480
487
490
502
518
538
543
558
556
554
553
552
549
548
547
543
540
529
524
521
513
506
500
506
515
519
520
521
522
524
528
533
537
537
537
537
537
537
537
535
529
527
526
524
522
518
516
514
512
510
507
503
499
491
487
484
481
475
472
470
468
470
471
471
477
478
480
496
500
499
498
498
497
497
498
500
501
503
505
504
499
498
497
496
495
489
487
485
482
480
478
486
490
495
499
505
508
508
510
511
512
513
504
502
499
491
483
488
499
505
512
517
519
518
516
515
512
511
517
519
525
528
528
531
533
536
542
545
546
542
537
533
530
528
533
541
550
558
562
559
557
557
557
560
560
564
565
568
565
561
559
559
558
558
557
557
556
554
545
545
547
552
552
550
543
541
539
537
533
528
528
527
527
527
526
525
525
520
517
519
521
524
525
526
530
533
535
537
541
542
542
543
543
546
546
548
558
568
568
567
566
566
564
563
562
561
561
560
560
560
563
566
567
568
573
575
573
571
570
567
569
573
575
578
586
583
582
580
578
575
569
566
565
564
562
560
560
561
562
563
557
556
552
552
552
552
552
546
543
541
537
535
535
535
533
527
522
520
521
522
524
526
529
530
532
537
539
541
542
543
547
548
548
547
547
546
546
546
546
544
543
543
543
543
543
544
544
545
545
546
548
549
549
551
553
552
549
547
543
541
540
537
536
536
537
538
541
538
535
529
524
513
511
505
502
501
501
499
497
495
494
486
486
486
486
486
486
485
484
483
483
483
482
482
479
479
479
478
478
478
478
477
477
477
476
476
475
475
474
474
474
473
472
472
472
472
472
472
474
475
476
477
479
478
475
474
469
464
462
458
456
452
448
447
445
444
448
449
448
439
425
408
411
413
415
418
420
423
424
422
420
419
418
417
416
413
411
409
403
401
399
396
391
389
388
386
384
378
376
374
371
371
371
371
371
371
371
371
364
363
364
365
365
365
365
364
363
362
361
360
359
358
356
355
352
345
344
343
342
340
338
331
330
331
332
334
334
334
332
321
321
321
322
333
341
329
330
329
327
311
309
307
304
303
303
304
303
302
301
301
301
302
303
302
300
297
296
296
296
299
300
301
302
297
297
298
300
301
303
304
303
303
303
302
302
305
306
307
309
305
304
302
297
299
303
305
312
315
316
317
312
309
304
300
297
304
299
301
301
300
294
294
296
299
303
287
285
283
282
280
278
276
276
276
276
276
275
274
274
272
275
277
282
282
272
274
273
271
269
267
268
270
272
273
274
274
275
277
282
281
268
265
257
258
259
260
260
260
261
262
262
263
267
271
273
275
271
271
272
280
280
280
286
286
292
293
297
297
298
298
297
297
297
297
297
296
296
297
302
302
302
302
302
302
301
300
297
297
298
301
302
303
298
302
303
304
307
314
316
316
317
317
318
318
320
340
342
343
344
345
345
345
344
344
343
359
361
364
365
374
372
372
373
373
373
376
377
378
378
377
377
377
378
380
384
384
383
382
382
380
379
368
365
363
359
356
355
355
356
363
365
366
367
369
370
371
374
376
376
377
374
375
378
380
382
387
388
392
395
402
401
400
397
397
397
397
396
396
395
395
399
402
403
404
401
400
399
391
391
392
394
395
400
401
404
406
407
418
421
428
434
444
454
452
447
447
447
467
469
467
463
458
464
466
466
465
464
464
461
461
461
464
465
466
467
470
475
475
475
474
473
473
473
474
474
474
480
483
486
498
499
501
504
513
515
520
519
515
513
509
503
501
525
502
498
496
493
492
490
490
491
496
498
509
509
506
504
504
507
511
517
520
519
512
522
518
510
508
511
513
516
516
520
531
539
547
549
539
537
536
534
530
530
530
533
533
534
539
543
548
555
557
560
560
565
568
570
571
576
577
579
582
584
587
589
590
593
597
600
599
597
595
594
593
593
593
595
598
599
599
599
598
596
595
595
603
606
610
611
614
615
606
604
603
601
596
596
597
598
600
602
606
609
613
620
624
631
631
630
630
630
628
630
631
632
632
633
643
647
648
650
651
653
659
661
665
672
676
679
681
690
695
705
706
706
705
704
696
694
694
694
694
694
695
695
695
695
695
695
695
700
704
712
714
717
721
723
726
726
725
725
724
724
727
727
728
729
734
747
751
754
760
762
764
765
766
766
764
762
761
762
762
762
763
764
765
768
782
786
790
796
813
819
820
819
818
816
806
804
805
813
827
836
852
848
847
845
844
843
839
835
829
834
836
838
841
856
870
875
875
873
871
870
868
864
863
861
862
864
865
866
867
868
868
869
870
872
877
879
885
892
894
898
897
896
894
892
893
893
893
894
894
894
894
895
898
904
914
916
919
921
924
925
926
926
927
927
929
930
934
936
938
941
942
943
952
955
957
964
967
970
973
974
974
973
973
972
970
969
969
969
969
969
969
968
967
967
967
967
967
987
988
990
991
993
995
998
1012
1013
1013
1017
1034
1036
1034
1025
1010
1009
1008
1008
1007
1005
1003
1002
1000
997
998
1001
1002
1002
1013
1017
1022
1027
1028
1024
1040
1047
1064
1071
1067
1090
1089
1089
1092
1092
1114
1117
1116
1116
1127
1136
1133
1137
1143
1146
1144
1142
1142
1142
1142
1142
1145
1148
1149
1153
1154
1157
1160
1168
1189
1200
1208
1208
1211
1216
1216
1219
1244
1255
1256
1262
1269
1300
1314
1322
1310
1301
1303
1304
1306
1311
1314
1317
1320
1332
1334
1337
1339
1339
1338
1338
1338
1337
1337
1336
1336
1337
1339
1342
1349
1353
1356
1357
1359
1361
1363
1366
1366
1365
1364
1365
1366
1366
1366
1365
1365
1365
1367
1373
1379
1380
1380
1378
1378
1377
1375
1373
1371
1373
1379
1380
1380
1380
1380
1380
1381
1370
1364
1359
1354
1351
1349
1374
1376
1377
1377
1379
1384
1387
1391
1393
1394
1396
1397
1395
1393
1388
1387
1386
1384
1381
1378
1380
1382
1385
1386
1388
1388
1388
1388
1388
1382
1369
1365
1361
1359
1358
1358
1357
1356
1356
1356
1355
1354
1351
1351
1346
1344
1338
1326
1335
1344
1337
1334
1332
1328
1327
1326
1325
1323
1321
1321
1317
1316
1315
1311
1305
1301
1292
1291
1289
1289
1288
1285
1284
1283
1280
1279
1278
1276
1275
1273
1272
1270
1266
1265
1263
1261
1260
1258
1249
1245
1241
1237
1228
1225
1224
1222
1221
1218
1217
1217
1216
1216
1216
1215
1215
1215
1214
1211
1209
1200
1198
1197
1196
1196
1174
1171
1169
1168
1168
1168
1169
1169
1170
1170
1170
1170
1169
1166
1163
1155
1150
1145
1138
1133
1132
1132
1132
1132
1132
1132
1132
1132
1132
1121
1119
1116
1115
1114
1114
1115
1116
1116
1117
1117
1115
1103
1097
1098
1099
1101
1102
1104
1105
1104
1103
1102
1100
1094
1090
1088
1087
1086
1089
1091
1097
1095
1092
1082
1078
1075
1065
1064
1064
1063
1063
1062
1064
1066
1068
1070
1077
1089
1090
1090
1089
1089
1084
1081
1078
1076
1073
1069
1066
1061
1059
1056
1051
1041
1040
1039
1031
1024
1015
1012
1008
1003
1001
998
995
992
985
980
967
968
969
970
970
972
973
974
975
973
971
968
965
963
964
970
972
971
969
966
958
951
945
945
942
932
930
930
930
932
935
933
929
926
918
918
917
916
916
916
915
915
916
917
920
917
915
909
891
890
889
888
888
887
886
882
882
883
882
880
877
875
872
872
872
872
869
867
864
860
858
856
854
842
840
835
834
828
814
817
813
811
808
807
804
803
801
800
799
798
796
787
790
789
768
769
770
760
754
752
751
749
747
745
741
740
739
731
714
710
707
702
695
691
687
679
677
676
675
674
672
672
670
669
669
672
662
651
625
615
613
615
616
617
618
618
619
624
623
612
591
586
581
579
570
570
576
580
570
569
568
567
561
559
554
552
549
548
548
548
547
547
548
548
548
547
547
546
546
543
542
541
539
537
529
529
528
527
527
527
526
526
525
521
520
519
517
516
512
509
508
507
503
502
501
500
499
497
496
496
495
494
493
486
485
484
484
483
481
480
479
478
471
470
464
462
459
459
459
459
459
459
457
457
456
455
452
451
447
445
441
437
434
433
429
427
427
427
427
426
422
419
416
412
410
407
406
403
400
397
395
392
392
391
385
383
382
380
379
384
390
396
393
389
385
374
372
369
368
368
369
369
369
368
368
367
365
363
363
363
361
361
361
360
360
358
358
358
357
355
355
354
353
351
352
353
348
349
349
349
349
349
349
349
349
349
345
342
342
343
346
346
341
340
339
339
339
339
340
340
341
341
341
342
348
351
357
358
358
358
358
358
358
360
362
365
370
369
372
374
377
379
381
383
384
385
386
389
393
396
399
405
406
409
412
414
414
414
414
414
414
415
417
422
420
418
416
423
437
438
440
440
441
443
443
443
443
443
443
442
442
443
447
449
452
452
455
455
456
456
457
457
457
457
458
462
464
466
470
479
481
483
485
495
499
499
500
500
500
501
501
501
500
499
500
502
505
508
513
515
517
519
526
530
534
534
534
534
534
535
536
537
537
543
559
562
562
562
562
571
578
588
599
592
587
582
583
584
585
594
602
611
620
620
620
620
620
620
620
617
614
609
607
604
605
609
612
614
624
624
624
624
624
624
623
623
622
620
618
614
612
610
604
601
591
596
600
606
609
601
596
589
580
580
580
580
580
580
580
580
580
580
580
580
580
580
579
578
578
575
574
572
569
566
565
564
564
560
561
561
565
570
573
576
578
579
579
580
584
589
591
593
594
595
603
615
618
627
628
630
633
630
630
610
601
601
601
601
601
599
593
586
585
583
581
580
580
579
576
568
559
554
553
552
551
549
539
539
539
539
539
539
539
539
539
539
539
522
521
520
519
510
506
506
506
506
506
506
506
506
507
513
515
515
520
523
529
533
538
538
534
530
524
515
510
514
515
517
519
520
520
521
522
511
497
493
486
482
479
471
468
463
453
444
436
433
433
433
433
433
434
434
435
446
448
448
448
448
448
448
451
455
442
428
405
403
402
400
398
395
395
395
395
395
395
395
395
392
390
387
387
387
387
388
388
388
388
389
389
389
389
388
387
384
384
382
381
381
382
382
384
384
388
389
402
401
399
397
396
386
386
386
386
386
386
386
385
385
384
384
385
387
388
390
387
387
387
390
394
393
392
390
390
389
390
391
391
391
424
427
427
428
429
429
417
406
402
398
398
398
398
398
398
399
413
419
425
438
445
445
444
444
444
444
443
443
443
434
429
420
421
422
422
423
425
425
421
417
416
417
419
427
430
432
434
435
436
437
438
439
440
441
437
435
423
421
422
427
429
440
438
437
436
433
432
430
428
425
425
426
427
430
431
432
441
453
459
466
475
477
478
481
483
485
477
477
474
466
484
491
490
487
503
519
526
522
519
522
525
524
525
533
548
546
541
536
532
554
556
556
556
556
556
570
577
584
587
590
591
595
596
602
610
613
614
613
610
615
616
619
619
620
620
620
619
619
620
623
625
631
630
628
628
628
627
626
626
626
624
623
625
626
628
630
634
641
646
650
651
654
659
671
673
683
688
690
694
696
697
697
697
702
703
705
710
713
714
719
723
726
729
730
731
732
733
745
745
745
748
755
765
761
758
754
753
754
756
757
758
758
759
760
762
771
773
782
788
791
794
795
796
797
798
799
801
804
807
813
823
835
835
835
835
840
858
858
858
858
858
858
858
859
860
865
866
866
867
867
867
874
882
890
892
891
891
893
895
900
902
903
904
904
905
906
907
912
914
917
921
924
931
940
948
949
948
948
947
946
949
953
955
960
962
963
964
964
965
966
970
973
977
977
987
989
990
990
996
996
996
998
1004
1008
1009
1009
1009
1010
1011
1011
1018
1023
1023
1023
1024
1025
1025
1025
1025
1026
1026
1027
1030
1035
1039
1042
1044
1045
1045
1046
1049
1052
1055
1058
1060
1062
1068
1068
1071
1073
1075
1076
1079
1080
1081
1085
1085
1086
1086
1086
1091
1094
1096
1096
1098
1099
1099
1099
1099
1101
1103
1109
1114
1117
1122
1124
1125
1127
1127
1127
1131
1149
1156
1160
1163
1165
1165
1165
1162
1162
1162
1159
1159
1159
1161
1164
1170
1172
1174
1181
1185
1186
1188
1188
1190
1191
1192
1192
1193
1193
1193
1197
1211
1214
1216
1216
1225
1227
1241
1247
1252
1255
1258
1258
1258
1258
1257
1257
1256
1257
1258
1259
1262
1267
1268
1269
1276
1280
1285
1286
1287
1288
1290
1291
1293
1293
1296
1297
1298
1299
1300
1302
1307
1308
1310
1321
1326
1326
1326
1326
1326
1327
1327
1328
1332
1337
1326
1325
1327
1333
1334
1335
1339
1341
1346
1349
1350
1351
1351
1351
1352
1352
1353
1353
1353
1353
1353
1360
1363
1368
1372
1372
1374
1379
1381
1387
1397
1400
1401
1401
1401
1401
1401
1402
1405
1406
1409
1410
1411
1412
1413
1413
1414
1413
1410
1406
1405
1401
1397
1396
1396
1396
1396
1396
1396
1397
1397
1398
1395
1393
1390
1385
1385
1384
1383
1381
1377
1376
1376
1376
1376
1376
1376
1353
1351
1349
1349
1348
1348
1348
1349
1354
1368
1368
1368
1368
1372
1373
1374
1374
1375
1377
1378
1379
1381
1381
1378
1376
1371
1372
1373
1388
1389
1390
1390
1390
1391
1396
1397
1399
1401
1419
1419
1419
1421
1421
1421
1422
1422
1423
1426
1427
1428
1429
1439
1455
1457
1459
1463
1463
1463
1463
1463
1462
1462
1462
1459
1457
1456
1454
1453
1452
1450
1444
1431
1433
1436
1440
1442
1443
1445
1454
1467
1468
1465
1459
1460
1456
1451
1446
1440
1440
1440
1442
1443
1445
1448
1449
1455
1453
1453
1459
1460
1460
1461
1461
1436
1433
1431
1431
1430
1429
1428
1427
1426
1422
1421
1420
1419
1418
1418
1418
1418
1418
1418
1418
1418
1417
1417
1413
1412
1405
1394
1394
1395
1396
1399
1396
1393
1379
1382
1384
1388
1393
1399
1392
1391
1391
1393
1396
1401
1402
1404
1404
1398
1390
1375
1375
1375
1375
1375
1374
1372
1370
1370
1367
1366
1342
1341
1339
1338
1337
1337
1335
1334
1333
1329
1328
1327
1326
1324
1323
1304
1294
1286
1279
1279
1282
1288
1294
1293
1288
1283
1264
1256
1256
1232
1230
1226
1223
1216
1215
1214
1212
1211
1203
1201
1199
1194
1197
1204
1207
1210
1211
1202
1192
1184
1161
1157
1162
1162
1162
1163
1163
1161
1160
1160
1159
1158
1157
1145
1138
1134
1137
1140
1134
1127
1126
1125
1125
1127
1129
1117
1115
1108
1093
1087
1073
1077
1083
1087
1088
1088
1089
1092
1077
1066
1057
1060
1066
1056
1053
1048
1045
1044
1043
1039
1037
1034
1030
1030
1029
1028
1027
1027
1023
1021
1018
1006
1003
994
992
982
982
982
980
972
967
957
958
959
960
969
957
938
936
927
926
928
928
928
929
930
909
910
913
915
918
917
913
907
890
889
888
887
882
883
884
885
886
883
883
883
883
882
877
868
860
861
865
862
862
861
861
861
859
844
819
824
830
835
831
802
802
802
801
799
799
799
800
801
802
803
804
804
803
800
793
771
749
741
731
731
731
730
729
717
712
710
707
700
691
681
667
631
630
628
625
617
614
604
614
641
643
638
635
633
631
628
627
632
639
645
653
656
659
658
656
655
654
652
654
657
661
649
638
627
619
597
593
589
579
577
577
577
577
577
577
577
576
572
569
565
563
561
561
560
559
559
559
558
558
554
550
547
544
533
529
528
527
526
526
526
527
527
529
530
531
529
524
514
511
508
505
503
502
501
500
498
496
494
489
487
485
485
485
485
484
484
484
484
483
483
483
480
458
457
457
457
457
457
457
457
457
458
460
465
465
465
464
464
462
461
459
456
454
454
451
449
448
444
444
444
444
444
443
441
439
438
437
436
435
432
431
433
436
430
417
412
409
409
409
409
408
401
386
383
380
373
372
370
360
358
357
356
354
352
355
357
358
359
361
359
358
357
356
354
356
357
358
358
358
358
358
357
357
357
358
359
359
361
363
364
365
365
362
354
352
345
344
343
342
338
329
329
329
329
330
336
338
338
338
338
339
341
341
342
344
344
344
344
343
343
342
341
341
341
340
340
339
335
336
336
335
335
334