257
256
256
256
256
256
265
267
268
269
269
270
270
270
270
270
271
271
271
271
271
271
271
271
271
271
271
271
271
268
262
262
262
262
262
262
263
258
256
255
254
253
253
252
251
253
253
255
257
260
262
261
261
261
261
261
262
262
262
261
261
261
261
261
261
260
259
259
257
256
256
256
256
256
256
256
256
258
258
257
257
257
257
257
257
257
257
258
258
259
259
259
259
259
259
259
260
260
262
262
262
262
262
262
262
263
264
265
267
265
265
265
264
262
262
262
263
263
263
263
263
263
263
263
263
262
258
258
257
256
255
254
253
252
250
250
251
251
251
248
247
247
247
247
247
251
252
253
254
255
255
255
254
253
253
253
253
253
255
253
253
254
254
254
253
253
252
249
249
249
249
249
250
248
248
248
248
248
249
249
249
249
250
250
250
250
250
252
252
252
253
254
254
255
255
255
255
254
255
256
256
257
257
258
258
258
258
258
258
258
258
258
261
264
264
264
263
263
264
265
266
266
266
266
267
268
268
268
268
268
267
265
265
265
264
264
264
264
264
265
265
265
265
265
265
265
265
265
265
264
264
266
267
270
270
270
270
270
271
271
272
272
272
273
273
275
279
281
282
284
287
292
294
296
297
298
299
299
299
300
301
301
302
303
304
304
304
305
307
308
309
311
313
314
316
316
315
315
314
314
313
313
313
313
313
314
315
316
316
315
315
315
315
318
319
320
321
323
324
324
324
324
324
323
322
320
320
319
317
316
316
316
316
316
316
316
316
316
316
316
316
316
315
315
314
313
313
313
314
314
315
315
315
315
316
319
322
323
324
324
324
322
320
320
319
319
319
319
319
319
319
319
319
318
318
317
316
315
315
314
314
313
312
311
311
310
308
308
308
309
310
311
311
312
313
313
312
312
312
311
311
310
309
308
308
307
306
302
301
301
300
298
296
294
292
289
289
289
288
285
284
282
279
278
277
276
276
276
276
277
277
277
277
277
277
277
277
276
275
275
272
270
268
268
268
268
268
267
266
265
261
260
259
258
258
258
258
259
259
260
261
263
263
264
265
266
267
268
268
267
266
264
264
261
260
259
258
258
257
256
255
255
253
253
253
254
254
254
254
255
255
256
256
255
254
254
254
254
254
255
256
256
256
256
257
257
257
257
257
257
259
262
262
262
263
264
264
265
265
266
266
266
266
267
267
268
268
268
268
268
268
268
267
267
267
267
267
266
265
264
264
264
264
266
268
268
268
268
267
267
267
267
267
271
271
271
271
271
271
271
271
271
271
276
277
277
277
279
283
286
287
288
289
294
296
296
297
297
296
296
298
299
300
302
303
306
309
310
311
313
319
320
322
323
325
329
330
332
334
335
336
338
339
340
341
342
343
345
346
348
350
351
353
354
355
356
356
362
363
364
364
365
366
366
367
369
371
373
373
376
378
379
380
381
387
390
393
395
398
399
399
401
404
405
406
406
406
406
407
407
410
411
411
411
411
411
411
410
410
409
409
409
409
413
413
415
418
418
418
419
419
419
420
420
421
421
422
423
423
425
425
425
426
427
429
429
428
427
426
425
423
422
420
417
414
412
410
409
409
408
408
408
408
408
408
408
408
408
408
408
408
408
409
409
409
411
411
412
412
412
412
413
413
413
413
413
413
413
413
413
413
414
415
417
418
419
421
423
425
425
426
427
429
434
439
440
441
442
442
444
444
446
450
454
457
460
461
464
473
474
475
475
476
477
477
479
479
479
477
475
473
467
463
461
460
459
459
459
459
461
462
463
463
464
465
466
469
471
473
474
477
487
492
493
495
497
498
498
498
499
499
496
495
493
492
490
485
479
477
473
472
471
471
470
469
468
466
465
464
463
462
460
458
457
456
453
450
446
443
442
441
440
439
432
430
426
425
423
418
416
414
413
408
397
396
395
395
394
392
392
391
390
389
388
388
387
385
384
381
381
380
380
379
379
378
377
377
377
376
376
376
376
376
376
377
377
377
378
379
380
381
385
385
386
386
387
388
390
392
394
395
397
397
397
401
402
403
407
412
412
413
418
419
421
422
424
424
424
424
425
426
426
427
427
428
428
429
429
430
431
431
433
437
440
441
447
450
450
451
451
452
452
453
454
455
455
455
457
457
458
460
460
461
464
465
467
470
472
475
481
482
487
487
487
488
489
490
490
491
492
493
494
496
497
498
500
502
504
504
504
506
510
512
513
515
519
523
525
526
527
527
529
531
532
532
532
532
532
532
532
532
532
532
531
530
529
528
528
527
527
529
531
532
535
537
537
535
531
528
523
520
520
520
520
520
520
520
520
520
520
522
528
533
536
535
535
535
534
531
528
525
523
521
520
520
519
517
515
515
512
512
507
506
505
504
500
499
499
498
498
496
495
494
494
493
492
490
488
487
487
487
486
485
483
483
482
481
480
480
478
478
478
478
477
477
477
476
476
476
475
475
475
474
473
472
468
465
464
463
462
462
463
464
464
465
468
470
472
474
476
479
481
483
484
485
485
486
486
487
488
488
489
489
489
489
488
487
487
486
486
485
485
487
487
489
490
490
492
496
497
497
498
499
500
503
505
507
512
512
511
511
510
509
508
510
513
516
519
524
521
519
518
515
509
509
508
508
508
508
505
502
498
490
481
480
480
481
481
482
482
487
489
494
503
506
505
505
504
502
499
498
496
493
490
488
484
483
483
483
484
484
484
484
484
484
485
487
490
494
496
495
494
494
494
493
493
493
493
494
495
496
493
490
488
489
489
489
490
490
490
490
489
487
486
486
484
483
481
481
480
479
478
478
477
476
475
475
476
477
478
479
480
480
481
483
486
486
487
492
494
495
495
497
499
501
509
509
513
516
519
521
528
529
533
533
533
532
532
531
530
529
528
526
526
525
524
524
528
531
545
558
561
561
559
558
558
557
556
554
552
551
548
548
547
546
540
531
530
525
523
510
506
502
492
490
488
485
485
484
483
482
480
477
475
475
472
470
469
468
467
467
466
465
463
461
454
451
448
448
449
452
455
456
459
459
454
450
444
439
435
432
430
427
422
420
419
415
414
413
407
404
403
402
399
398
394
387
385
386
388
389
390
390
390
389
389
389
382
379
369
366
359
356
351
347
340
332
329
323
322
322
322
322
322
322
323
323
323
324
326
328
330
333
336
350
355
354
352
351
351
350
350
352
353
356
357
363
363
361
354
353
352
352
351
351
353
356
356
356
356
356
356
356
357
358
358
358
359
360
361
362
364
364
367
372
376
377
377
375
375
373
374
375
378
380
380
380
380
380
380
382
382
382
381
381
381
382
382
382
382
383
383
384
384
384
385
387
388
389
390
392
394
396
397
400
403
405
407
419
424
434
439
439
440
441
442
443
444
445
444
444
443
442
439
436
431
430
432
433
436
439
440
440
440
442
448
454
455
452
449
448
444
443
442
440
439
439
439
439
439
439
439
439
442
442
443
444
444
454
457
458
460
463
464
466
469
470
472
472
472
472
472
472
473
473
474
474
474
474
475
478
479
480
481
482
483
488
489
496
497
506
513
518
520
521
521
523
523
526
528
530
533
537
539
541
542
542
553
555
556
556
557
570
573
574
574
575
576
576
576
577
578
581
586
593
596
599
601
606
608
611
614
618
622
625
625
625
624
624
624
625
626
628
629
633
633
634
635
641
642
643
645
645
646
647
650
651
651
652
654
658
664
664
664
664
664
665
666
668
670
672
674
676
677
680
680
693
693
693
692
692
698
702
706
708
712
712
713
713
713
713
715
715
716
717
720
723
735
738
745
760
761
761
761
761
762
762
762
763
763
763
763
763
764
764
764
765
766
768
769
771
775
776
777
777
777
777
777
776
776
776
777
782
784
785
793
794
801
806
812
812
813
813
813
814
815
817
818
823
823
824
825
826
826
829
832
836
842
845
848
856
860
860
860
860
860
862
865
870
872
880
882
883
884
885
881
881
885
886
887
888
889
890
893
896
898
901
904
905
908
909
912
925
928
928
927
927
926
926
927
929
930
933
934
939
939
941
942
942
944
944
945
945
946
946
947
948
950
950
952
952
953
953
955
955
955
957
957
959
961
964
969
970
973
973
977
980
984
987
990
993
995
995
996
996
1000
1005
1008
1007
1006
1005
1004
1004
1003
1003
1002
1002
1004
1005
1005
1005
1005
1006
1010
1013
1012
1011
1008
1009
1013
1011
1010
1009
1010
1011
1013
1012
1012
1011
1011
1011
1011
1013
1013
1013
1013
1014
1014
1014
1013
1013
1013
1013
1015
1015
1015
1016
1015
1014
1014
1014
1015
1015
1016
1016
1016
1021
1022
1023
1024
1031
1034
1034
1034
1034
1034
1034
1035
1037
1039
1039
1040
1041
1044
1045
1045
1046
1047
1048
1048
1048
1048
1050
1051
1054
1056
1058
1065
1067
1074
1076
1081
1087
1094
1095
1098
1100
1110
1110
1115
1116
1123
1132
1135
1136
1138
1138
1144
1151
1152
1152
1153
1153
1153
1153
1153
1153
1153
1157
1161
1167
1172
1174
1175
1175
1176
1181
1182
1183
1183
1182
1181
1183
1189
1190
1191
1193
1195
1206
1204
1205
1213
1218
1233
1236
1245
1249
1251
1255
1259
1263
1268
1271
1272
1274
1277
1278
1278
1274
1275
1275
1280
1286
1290
1295
1298
1305
1304
1303
1302
1302
1302
1302
1301
1299
1299
1299
1297
1294
1293
1291
1288
1287
1285
1283
1283
1283
1287
1285
1281
1279
1271
1271
1271
1269
1266
1264
1263
1259
1255
1252
1252
1253
1253
1252
1248
1243
1238
1237
1237
1236
1233
1231
1225
1222
1222
1221
1220
1219
1217
1215
1212
1207
1206
1205
1205
1205
1203
1200
1199
1198
1197
1197
1196
1194
1193
1193
1193
1193
1192
1188
1183
1182
1182
1182
1180
1179
1179
1179
1179
1179
1179
1179
1179
1183
1185
1182
1180
1174
1174
1175
1175
1175
1175
1173
1173
1171
1170
1168
1166
1167
1169
1171
1172
1174
1176
1175
1174
1172
1168
1165
1164
1163
1162
1162
1159
1155
1153
1153
1152
1149
1148
1148
1147
1147
1142
1136
1133
1128
1128
1127
1127
1125
1118
1118
1117
1114
1110
1103
1098
1098
1098
1095
1092
1091
1086
1085
1083
1080
1078
1070
1067
1060
1057
1053
1051
1050
1047
1043
1042
1038
1036
1035
1032
1029
1023
1021
1020
1019
1016
1015
1014
1009
1004
998
997
995
984
976
969
966
966
966
970
970
971
973
975
976
975
975
974
972
966
961
957
954
952
952
951
951
950
948
947
946
945
944
941
940
938
937
933
922
916
914
914
909
905
903
902
901
897
897
896
896
894
892
889
880
880
878
878
877
876
876
877
878
879
876
872
866
865
863
856
853
850
846
842
840
840
839
839
839
838
838
837
836
836
836
827
821
817
814
812
811
807
806
797
796
794
793
791
790
788
785
783
782
782
782
782
781
780
779
778
780
782
784
785
779
777
775
774
767
759
751
751
750
749
747
746
742
741
739
737
737
737
737
737
736
736
735
735
736
736
736
733
730
730
730
729
726
723
722
719
717
716
706
705
704
702
698
694
688
688
679
675
666
660
655
652
649
646
648
649
650
636
632
629
622
624
628
632
634
637
637
636
636
635
635
634
634
633
633
633
631
631
631
630
627
626
626
624
623
619
615
607
607
605
602
600
600
596
595
591
586
583
583
577
573
568
564
562
555
554
550
549
545
544
538
537
535
532
528
522
520
517
515
512
506
504
502
501
500
499
495
490
486
479
475
469
468
464
461
459
452
449
445
444
436
432
431
431
430
427
425
422
420
419
411
407
404
396
394
390
387
387
386
382
381
379
377
374
373
370
370
371
372
372
373
375
375
374
371
365
361
358
355
350
344
332
329
328
327
326
323
322
321
321
318
309
305
294
287
272
272
262
260
258
257
255
254
249
249
245
245
244
244
244
243
242
242
242
241
241
240
239
236
233
231
231
231
232
234
236
237
237
237
237
237
236
235
234
233
230
229
227
224
223
223
223
223
223
223
223
224
224
226
226
227
228
228
230
230
230
229
228
226
225
222
221
219
217
216
215
215
214
214
210
210
208
208
207
207
207