300
300
300
300
300
300
300
300
300
298
296
296
295
293
293
292
288
288
288
286
285
285
284
284
284
284
284
284
285
287
288
288
284
283
281
278
277
277
277
277
277
277
277
277
278
278
278
279
279
279
279
278
278
277
277
274
274
274
274
274
274
274
277
277
279
279
279
279
280
280
282
282
282
282
282
282
282
283
283
284
284
284
284
284
284
284
283
283
283
283
283
283
283
283
285
285
285
285
284
283
282
282
281
281
280
279
279
279
279
277
277
277
277
277
278
278
278
277
277
277
277
277
278
278
278
278
278
278
277
277
275
275
275
275
275
275
275
275
275
275
275
275
275
275
274
268
267
266
257
278
278
279
279
280
280
280
280
280
280
280
280
280
280
280
280
281
281
282
282
282
282
282
282
283
283
283
283
283
283
283
283
283
283
283
283
283
283
285
285
285
285
285
285
285
285
285
285
285
285
285
285
285
285
285
284
282
282
282
282
282
282
282
282
282
282
282
282
282
283
283
284
284
284
284
283
284
284
284
284
284
284
284
284
284
284
285
285
285
285
286
286
286
286
286
286
286
286
287
288
288
288
288
288
288
288
288
288
287
287
287
286
286
284
284
284
285
286
287
288
288
291
290
288
283
283
281
283
284
284
284
284
284
285
285
285
286
289
290
292
292
293
294
294
294
296
291
289
289
290
290
290
291
291
291
291
293
293
289
289
289
288
287
287
287
287
287
288
289
290
291
291
293
292
291
294
294
294
293
291
291
289
289
288
287
287
287
288
290
290
292
292
292
294
297
297
297
295
292
290
286
284
286
286
286
287
287
287
288
289
290
294
294
294
294
294
294
294
294
295
295
296
296
295
298
298
298
298
297
296
296
296
296
297
299
302
305
305
304
304
304
307
308
308
308
309
310
311
312
313
320
320
328
333
342
347
351
354
357
366
375
383
384
386
386
388
390
394
396
397
397
397
397
397
398
399
400
403
407
411
414
415
415
415
415
415
415
415
415
416
417
418
423
424
424
424
425
425
425
425
427
434
438
443
444
444
444
445
445
447
449
450
451
453
454
456
458
463
473
473
475
485
491
493
494
494
495
492
487
481
481
482
483
484
484
486
486
490
495
498
498
498
499
500
503
507
509
512
518
525
528
528
528
527
527
528
529
529
530
530
533
537
543
551
561
561
560
559
558
556
557
558
560
563
565
565
569
573
576
583
589
589
589
590
590
590
590
593
595
596
598
599
601
603
608
609
608
607
605
605
612
619
628
628
628
628
628
628
632
634
634
631
628
622
622
627
628
628
630
635
635
633
632
628
626
629
631
633
633
633
633
637
639
644
647
647
652
661
662
662
662
661
660
659
659
662
668
677
680
684
682
680
668
667
668
670
673
673
670
668
667
669
683
684
685
686
687
688
691
692
692
692
693
688
687
689
690
692
694
696
700
703
705
705
705
703
701
700
699
706
708
708
713
720
721
721
721
722
721
720
718
716
717
718
720
724
727
733
732
732
730
729
728
724
722
721
721
724
737
745
752
758
761
761
762
763
760
760
763
766
768
775
774
772
770
770
770
771
771
772
773
773
775
775
776
776
777
777
777
777
784
793
796
797
798
800
805
809
812
812
812
813
814
814
817
817
819
821
829
839
850
849
848
853
850
847
844
843
844
849
849
851
875
872
868
873
874
880
884
889
891
891
890
888
887
886
890
892
896
914
918
918
912
909
904
905
905
905
905
905
905
905
905
904
904
903
909
914
920
924
929
937
936
936
934
933
933
933
933
935
936
938
945
946
948
952
959
971
974
977
980
983
982
982
981
980
979
978
984
986
989
990
996
998
999
999
1000
1001
1002
1002
1002
1005
1007
1010
1016
1025
1026
1028
1031
1034
1036
1041
1046
1050
1061
1066
1066
1067
1071
1074
1077
1081
1084
1084
1084
1084
1084
1085
1086
1088
1088
1095
1096
1098
1099
1099
1099
1099
1099
1099
1099
1096
1095
1093
1091
1091
1092
1092
1093
1093
1090
1089
1087
1087
1085
1082
1078
1073
1071
1069
1068
1068
1069
1071
1072
1072
1072
1071
1071
1071
1070
1070
1070
1071
1072
1073
1074
1074
1072
1068
1066
1065
1064
1065
1065
1066
1068
1071
1072
1073
1073
1073
1073
1073
1074
1075
1075
1075
1074
1074
1074
1074
1074
1075
1077
1078
1072
1066
1065
1064
1060
1055
1052
1051
1048
1046
1046
1047
1047
1048
1050
1055
1058
1061
1068
1071
1075
1075
1076
1077
1077
1078
1078
1077
1077
1079
1083
1085
1086
1088
1089
1089
1090
1093
1095
1099
1100
1102
1102
1103
1104
1107
1107
1109
1111
1113
1114
1115
1116
1116
1119
1123
1125
1127
1128
1132
1136
1141
1142
1146
1149
1150
1148
1146
1147
1148
1148
1147
1145
1145
1143
1146
1147
1150
1154
1158
1163
1167
1167
1167
1166
1165
1165
1166
1167
1169
1174
1176
1177
1179
1181
1182
1182
1182
1180
1179
1181
1182
1184
1186
1187
1186
1185
1189
1193
1192
1189
1185
1182
1180
1179
1175
1175
1176
1175
1171
1167
1163
1160
1158
1157
1159
1161
1165
1167
1167
1161
1155
1152
1152
1152
1153
1153
1153
1153
1152
1150
1155
1156
1158
1164
1168
1168
1169
1169
1170
1170
1171
1171
1171
1171
1171
1174
1178
1179
1181
1182
1183
1186
1189
1190
1192
1195
1195
1197
1197
1196
1195
1194
1199
1202
1204
1206
1206
1205
1204
1206
1208
1211
1213
1212
1211
1211
1213
1214
1215
1218
1224
1227
1229
1233
1233
1233
1233
1233
1234
1239
1240
1242
1248
1249
1249
1249
1252
1254
1254
1255
1258
1264
1265
1264
1263
1262
1258
1258
1258
1258
1258
1258
1260
1261
1263
1264
1264
1265
1268
1271
1272
1272
1272
1273
1273
1274
1275
1275
1276
1276
1277
1277
1276
1276
1275
1275
1274
1274
1274
1271
1270
1270
1270
1270
1271
1271
1271
1272
1274
1277
1280
1284
1284
1286
1287
1288
1288
1290
1294
1295
1295
1296
1299
1301
1306
1309
1313
1315
1316
1316
1317
1319
1319
1321
1324
1327
1330
1329
1328
1327
1326
1325
1322
1320
1320
1318
1317
1316
1316
1316
1315
1315
1315
1314
1314
1313
1312
1311
1310
1310
1310
1309
1307
1304
1301
1299
1299
1299
1299
1299
1299
1297
1296
1291
1290
1290
1290
1289
1289
1289
1289
1289
1289
1289
1289
1289
1290
1291
1291
1295
1296
1296
1296
1296
1296
1296
1296
1296
1296
1296
1296
1296
1296
1297
1297
1297
1299
1301
1301
1301
1302
1302
1301
1301
1301
1301
1301
1301
1301
1301
1301
1301
1301
1300
1299
1298
1299
1302
1302
1301
1298
1298
1297
1296
1295
1295
1295
1295
1294
1291
1290
1289
1289
1290
1291
1292
1294
1294
1295
1295
1295
1295
1295
1295
1295
1295
1295
1295
1294
1293
1292
1291
1290
1289
1288
1287
1287
1287
1285
1281
1281
1281
1282
1282
1284
1284
1284
1284
1283
1281
1281
1280
1280
1279
1279
1279
1279
1279
1279
1278
1267
1267
1268
1269
1277
1281
1283
1284
1284
1285
1287
1289
1292
1305
1310
1310
1310
1310
1312
1313
1314
1315
1324
1325
1328
1330
1332
1343
1344
1348
1353
1354
1354
1354
1354
1355
1358
1361
1364
1369
1372
1376
1378
1380
1384
1389
1392
1393
1393
1391
1396
1397
1396
1394
1394
1392
1391
1390
1393
1393
1392
1389
1382
1378
1376
1374
1371
1367
1365
1359
1357
1355
1354
1354
1354
1351
1348
1345
1343
1343
1342
1339
1327
1324
1321
1319
1317
1310
1310
1310
1310
1310
1310
1310
1306
1297
1288
1285
1285
1282
1273
1270
1269
1268
1268
1270
1270
1271
1273
1274
1279
1278
1278
1278
1279
1280
1281
1281
1282
1283
1284
1285
1284
1284
1283
1282
1282
1282
1282
1283
1285
1288
1289
1292
1293
1293
1293
1293
1293
1293
1294
1295
1296
1296
1296
1295
1295
1294
1293
1293
1293
1293
1292
1292
1292
1293
1294
1295
1296
1297
1297
1297
1297
1297
1298
1299
1300
1301
1301
1300
1300
1299
1300
1302
1302
1301
1300
1300
1299
1299
1300
1301
1301
1302
1303
1303
1303
1303
1301
1299
1298
1296
1296
1295
1295
1295
1295
1295
1296
1296
1296
1296
1296
1296
1295
1295
1294
1291
1289
1289
1289
1289
1289
1289
1289
1289
1290
1292
1292
1293
1295
1295
1296
1297
1300
1301
1301
1301
1301
1301
1301
1302
1307
1310
1312
1312
1313
1313
1313
1313
1314
1314
1315
1316
1316
1316
1316
1317
1318
1318
1320
1322
1324
1325
1326
1328
1328
1328
1330
1330
1326
1321
1318
1317
1316
1314
1313
1308
1306
1300
1298
1296
1295
1295
1295
1295
1295
1293
1291
1290
1287
1282
1277
1266
1263
1262
1260
1258
1258
1256
1250
1241
1237
1226
1220
1217
1213
1210
1207
1202
1201
1197
1189
1185
1182
1180
1175
1166
1159
1155
1148
1145
1143
1140
1135
1133
1130
1128
1126
1118
1114
1111
1109
1108
1107
1104
1099
1097
1094
1092
1092
1093
1094
1095
1097
1098
1098
1098
1098
1097
1096
1095
1095
1095
1095
1095
1095
1095
1095
1095
1095
1096
1096
1097
1100
1103
1109
1119
1118
1117
1117
1121
1123
1125
1128
1130
1131
1133
1135
1134
1134
1134
1134
1134
1134
1137
1142
1144
1144
1145
1150
1151
1151
1151
1151
1151
1152
1154
1153
1152
1152
1152
1152
1154
1155
1163
1168
1166
1163
1159
1156
1156
1158
1161
1169
1173
1175
1178
1178
1176
1176
1178
1184
1185
1187
1190
1190
1190
1189
1186
1185
1185
1184
1182
1181
1180
1179
1179
1178
1177
1176
1175
1174
1173
1172
1171
1169
1167
1164
1163
1164
1166
1170
1167
1163
1157
1152
1148
1145
1145
1145
1145
1144
1141
1142
1144
1146
1148
1148
1147
1146
1145
1139
1131
1124
1118
1119
1120
1121
1122
1117
1114
1113
1112
1111
1109
1106
1102
1100
1100
1099
1099
1099
1098
1097
1097
1095
1093
1086
1084
1082
1079
1078
1079
1079
1080
1079
1078
1076
1072
1071
1070
1069
1067
1065
1061
1057
1053
1051
1049
1049
1048
1048
1048
1047
1047
1047
1048
1050
1052
1058
1060
1063
1065
1066
1071
1072
1079
1076
1074
1074
1074
1074
1074
1074
1074
1074
1073
1072
1072
1071
1071
1070
1068
1067
1066
1065
1065
1066
1067
1068
1070
1073
1073
1071
1070
1069
1069
1069
1070
1071
1071
1072
1072
1072
1071
1070
1069
1069
1071
1077
1080
1081
1083
1085
1087
1089
1091
1091
1092
1092
1092
1092
1092
1092
1094
1096
1098
1100
1100
1099
1098
1095
1094
1093
1092
1091
1090
1089
1088
1087
1086
1083
1082
1082
1080
1078
1077
1076
1072
1070
1068
1066
1066
1066
1067
1046
1041
1039
1035
1030
1029
1026
1023
1021
1020
1006
1004
1002
999
996
993
984
980
980
980
980
976
974
972
971
970
969
967
965
963
962
961
955
951
951
950
946
944
942
927
925
926
929
930
932
927
923
908
903
901
903
905
907
910
904
901
899
896
897
901
903
905
907
909
918
919
906
902
899
889
889
888
888
887
887
884
879
874
872
868
868
870
870
870
868
862
845
846
847
849
851
851
849
844
841
838
825
822
818
817
816
815
811
810
810
805
800
796
796
796
794
786
782
775
775
775
775
775
775
774
774
773
772
771
771
771
771
771
771
770
768
761
761
761
761
762
756
752
751
749
745
740
732
724
723
725
726
727
729
733
732
731
729
724
718
717
716
714
715
718
722
723
721
719
718
717
717
716
715
698
693
702
705
708
709
703
701
700
695
689
688
688
688
688
688
689
693
690
688
687
687
687
684
683
680
672
667
670
672
674
667
671
673
674
674
671
668
662
659
653
655
656
657
658
658
658
655
652
647
640
637
634
633
632
632
631
629
627
625
622
627
629
631
630
628
626
623
622
623
624
624
624
625
627
629
634
636
627
622
620
619
618
612
603
601
603
604
605
605
605
605
603
601
600
599
597
596
595
589
588
587
587
587
587
580
574
570
568
565
561
556
552
555
557
559
555
554
552
548
542
540
533
527
527
527
527
526
523
523
520
518
516
513
508
508
507
504
497
499
502
500
496
491
485
477
481
482
482
484
491
496
492
489
486
482
474
464
455
447
443
440
438
432
430
429
427
425
422
419
415
407
403
398
395
392
386
384
381
376
371
370
369
367
367
365
363
356
349
344
342
336
329
327
325
324
323
322
314
311
311
311
311
311
310
309
309
309
309
310
310
311
309
307
305
304
304
303
303
302
302
302
302
301
301
301
301
301
299
299
300
298
298
298
297
297
298
299
299
298
298
298
298
301
301
299
298
300
302
303
303
303
302
298
298
294
291
291
294
301
304
306
306
306
306
304
302
301
300
299
299
299
298
298
299
298
295
295
295
294
293
291
291
290
290
290
289
291
294
295
295
293
292
290
290
289
287
287
286
286
286
286
285
285
285
285
286
284
285
288
289
289
289
295
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
297
299
300
300
300
300
300
300
301
301
301
301
301
301
300
300
300
299
299
299
299
299
299
299
298
298
300
301
302
303
305
307
309
311
314
315
316
316
326
323
323
314
309
306
306
306
302
299
299
297
297
297
298
298
298
298
297
296
296
296
296
296
294
294
293
291
290
288
288
288
288
286
283
283
282
282
282
282
281
281
281
281
281
281
281
281
281
282
281
282
282
282
282
282
282
282
282
281
281
281
281
281
281
281
281
281
280
279
279
279
279
279
279
279
279
281
282
283
282
282
282
282
282
282
281
281
281
280
280
280
280
280
280
280
280
280
280
280
280
280
280
279
279
279
278
278
278
277
277
269
257
257
272
273
276
276
277
277
280
280
281
281
281
279
279
278
277
277
277
277
277
277
277
277
277
277
278
278
277
277
276
276
275
275
275
275
275
275
275
275
276
276
276
277
277
277
277
280
280
282
282
283
283
283
283
283
282
282
281
281
281
281
281
281
281
281
281
281
281
281
281
281
281
281
281
281
281
279
276
274
276
279
279
279
279
279
279
279
278
278
278
278
278
278
278
278
279
279
280
281
282
286
287
287
286
285
284
284
284
284
284
285
286
286
288
289
293
295
296
296
298
298
299
299
300
300
300
300
300
300
300
299