356
354
352
348
347
344
339
335
335
336
339
341
341
341
341
341
342
343
347
346
346
345
349
354
351
350
347
345
342
341
340
339
339
339
340
341
344
339
338
338
342
343
345
350
350
350
350
351
346
344
344
345
346
346
346
346
348
358
374
375
379
385
381
366
367
368
372
376
381
384
384
382
377
370
369
369
365
366
369
371
371
371
371
371
371
370
367
365
365
365
365
366
366
367
367
369
370
377
381
381
381
390
392
395
395
396
397
396
395
390
388
386
385
388
399
403
410
409
401
397
394
392
391
388
386
385
385
384
384
384
384
384
385
385
385
386
386
386
386
386
386
385
385
385
385
385
385
385
385
385
386
386
388
388
389
390
390
391
393
394
396
400
404
406
408
410
411
412
413
415
415
418
420
421
423
424
424
422
422
422
421
420
419
415
412
407
400
400
400
400
400
401
401
402
403
405
405
404
403
400
399
397
396
396
396
396
396
396
396
396
396
395
395
395
396
397
398
400
402
403
403
404
404
405
405
405
405
404
403
403
403
403
403
403
403
404
404
405
405
405
407
408
408
408
408
408
409
409
410
410
411
413
414
414
414
413
413
413
413
413
413
413
413
413
413
413
414
416
418
425
425
424
424
423
423
424
425
427
427
427
427
427
427
428
430
436
439
440
439
438
437
435
435
435
436
438
439
438
436
434
432
429
428
428
428
428
429
429
430
433
435
436
437
438
439
440
447
442
446
448
448
444
442
442
442
443
444
444
445
449
450
451
451
451
451
451
456
457
457
456
459
464
466
467
461
452
452
452
452
454
455
458
460
461
470
470
470
470
471
472
473
471
470
472
474
475
476
478
479
481
482
481
480
479
477
479
484
483
483
483
483
485
486
489
490
491
492
492
486
484
483
480
477
475
474
474
474
474
474
474
473
474
475
476
477
477
478
478
478
478
478
479
482
482
482
482
483
483
484
484
484
484
485
485
485
486
488
488
489
489
489
489
490
491
492
493
498
506
506
507
507
508
510
511
511
512
513
513
512
512
512
511
511
510
510
510
510
511
512
512
512
513
514
515
516
518
519
520
521
521
520
519
518
517
517
516
516
515
515
513
512
511
511
509
510
511
512
513
520
519
518
517
514
513
513
514
516
525
525
521
522
525
527
529
530
532
534
536
536
536
535
534
534
530
529
528
530
534
540
537
537
537
540
541
541
541
541
541
541
540
539
538
538
538
536
533
529
532
534
535
537
537
538
539
539
538
538
537
536
536
536
537
538
539
539
540
541
541
542
544
545
547
547
548
549
550
551
552
554
555
557
560
561
562
563
563
564
564
565
569
572
576
579
577
575
577
578
581
582
584
585
584
583
583
581
581
580
579
578
576
576
576
576
573
572
571
570
569
569
568
567
566
565
564
564
564
563
563
563
564
565
566
569
570
571
572
574
575
578
579
581
582
581
580
579
575
576
576
576
576
576
577
577
577
577
578
578
578
579
579
581
583
583
583
583
583
583
583
583
582
582
582
582
582
582
580
580
580
579
577
577
577
578
578
579
580
580
581
582
582
583
584
586
587
591
592
593
593
593
594
594
595
595
597
603
604
604
604
604
604
604
608
610
611
613
614
615
615
615
615
615
615
615
615
615
618
629
632
638
641
650
652
654
657
662
664
671
681
678
673
661
652
654
661
664
667
667
667
667
667
668
669
669
670
667
662
660
663
667
670
675
679
681
682
685
690
689
689
687
685
682
678
675
681
689
698
704
704
703
702
703
708
710
712
715
717
725
727
729
730
731
730
722
717
717
717
717
717
717
717
717
717
717
718
722
727
731
731
731
731
731
731
731
731
731
736
739
741
743
748
750
752
753
756
756
755
753
751
744
742
741
742
743
744
744
744
745
745
746
747
748
750
750
751
752
758
759
760
764
766
777
779
783
786
789
796
798
798
798
798
799
802
803
804
804
804
804
807
808
811
810
806
805
802
803
803
804
805
806
807
811
814
816
818
821
820
819
818
817
816
815
815
815
817
818
819
822
825
828
828
828
828
828
828
828
829
829
830
831
832
832
832
832
832
832
832
833
834
834
838
838
838
838
842
844
847
849
849
849
851
853
853
854
855
857
861
864
876
885
886
888
891
892
893
893
893
893
893
892
891
891
891
891
892
893
894
896
897
898
899
899
901
906
907
909
911
917
918
919
922
922
922
922
922
922
922
922
937
939
944
943
943
943
942
944
954
959
972
975
975
978
979
980
980
981
983
984
988
989
991
992
994
998
999
1001
1002
1012
1012
1013
1013
1015
1018
1020
1023
1024
1025
1025
1025
1025
1025
1025
1025
1024
1024
1024
1025
1026
1028
1034
1035
1036
1038
1040
1045
1049
1051
1054
1055
1058
1059
1059
1060
1060
1061
1061
1061
1060
1060
1059
1058
1053
1053
1053
1053
1053
1053
1058
1063
1069
1074
1074
1073
1072
1071
1070
1069
1069
1069
1069
1069
1069
1069
1070
1071
1074
1077
1081
1081
1082
1083
1083
1082
1081
1079
1077
1079
1087
1089
1090
1093
1097
1096
1093
1092
1092
1092
1092
1093
1094
1095
1095
1095
1095
1096
1096
1096
1097
1097
1098
1098
1099
1099
1104
1108
1111
1119
1121
1121
1124
1126
1139
1148
1152
1157
1165
1171
1181
1187
1195
1205
1211
1213
1213
1214
1215
1215
1216
1219
1221
1222
1227
1227
1227
1227
1228
1227
1220
1212
1203
1197
1194
1189
1185
1183
1181
1186
1189
1196
1204
1210
1216
1222
1221
1220
1219
1218
1218
1216
1215
1214
1217
1218
1219
1222
1223
1225
1226
1226
1226
1226
1226
1228
1234
1239
1241
1243
1245
1246
1248
1250
1251
1252
1253
1258
1263
1266
1270
1275
1280
1283
1282
1281
1280
1278
1274
1272
1270
1269
1265
1263
1253
1244
1237
1232
1217
1209
1198
1191
1186
1184
1180
1176
1172
1168
1161
1158
1160
1164
1164
1164
1164
1162
1161
1161
1161
1161
1161
1161
1165
1167
1168
1167
1164
1158
1156
1155
1154
1153
1151
1144
1138
1125
1116
1108
1104
1088
1074
1068
1056
1039
995
988
971
964
960
956
951
948
935
931
927
926
925
925
916
906
898
888
868
864
863
860
857
856
854
854
854
854
854
854
852
847
841
839
837
835
840
841
842
845
846
851
855
862
863
864
867
870
871
877
878
879
878
873
869
866
863
860
856
851
851
855
856
858
859
860
854
851
848
843
830
806
797
791
771
771
772
774
774
774
777
788
790
794
793
792
791
788
787
785
780
777
769
762
759
753
752
749
748
748
747
747
744
741
735
723
721
719
716
716
715
714
713
711
703
699
697
699
702
702
703
707
702
696
693
691
689
688
689
694
700
706
703
697
673
664
658
652
653
655
658
661
653
645
637
633
630
631
633
636
638
638
636
635
634
633
631
631
632
633
635
636
637
638
638
637
636
635
635
634
633
632
631
631
631
631
631
631
631
631
631
631
632
634
634
635
636
638
634
633
631
630
629
627
625
625
633
635
640
642
640
638
635
630
624
621
620
619
619
619
621
623
620
616
615
615
614
614
613
613
613
612
612
611
611
611
611
611
611
611
611
611
611
607
607
606
606
606
606
607
607
608
612
609
607
604
602
601
599
599
599
599
599
599
599
600
599
595
595
595
594
594
593
593
593
592
592
589
586
583
581
588
588
588
587
585
583
596
599
603
597
595
592
582
581
589
592
596
593
592
590
599
601
604
608
609
610
610
605
601
589
592
599
602
605
610
615
607
600
571
570
569
565
564
565
567
568
570
570
561
548
541
540
540
541
541
556
561
562
561
560
559
558
556
555
555
555
555
556
556
556
554
551
550
550
546
546
548
558
563
553
549
547
543
541
536
534
529
537
542
546
549
547
542
543
547
541
531
530
530
529
529
529
525
523
521
520
519
519
521
521
520
520
520
519
519
519
518
517
517
517
516
516
515
515
515
515
515
515
515
515
515
515
515
515
515
515
516
521
522
527
527
532
534
535
536
534
532
531
529
528
527
527
526
524
523
523
523
523
523
525
527
528
529
532
539
540
540
530
527
527
526
525
525
525
524
524
523
523
519
518
517
516
514
511
506
506
513
517
517
515
512
518
520
521
524
525
524
522
521
510
500
496
495
495
496
495
491
484
477
482
490
491
491
490
489
486
482
475
477
478
479
480
483
491
494
493
491
490
487
482
481
486
488
490
486
478
479
480
480
482
484
486
488
484
481
476
472
467
471
472
472
467
465
465
465
467
468
470
470
467
465
463
460
460
459
457
462
465
467
467
467
465
462
457
454
454
454
454
454
454
452
451
451
452
452
453
453
454
454
454
454
454
458
460
455
450
446
447
447
447
446
444
443
443
442
442
442
442
442
443
443
441
441
440
438
437
433
431
431
432
432
433
434
435
437
437
437
437
437
436
435
435
434
434
433
432
431
428
428
428
429
429
430
431
431
431
431
431
429
429
429
428
426
426
426
426
426
425
425
425
424
424
424
423
423
423
421
419
418
417
416
414
414
414
413
413
413
413
414
415
417
417
417
417
417
417
419
419
418
416
413
412
411
411
409
407
407
407
407
405
405
404
403
403
403
403
404
405
406
406
407
407
408
409
408
406
404
399
399
398
398
398
399
400
400
404
405
405
404
403
401
399
394
394
393
393
392
392
392
391
390
389
389
387
387
387
387
387
387
386
386
386
386
387
387
387
386
386
385
383
383
383
383
382
381
381
379
379
379
380
380
380
382
382
382
384
397
398
403
409
412
414
416
419
422
426
431
432
435
435
437
439
440
444
447
450
450
453
453
453
453
453
454
454
455
455
455
456
456
456
456
456
458
467
468
469
470
474
479
480
481
482
485
486
494
498
502
505
508
510
515
518
523
525
528
529
529
528
528
527
526
525
524
523
522
521
520
520
523
524
524
525
526
529
533
534
537
538
540
540
540
542
542
543
543
544
547
549
550
553
554
555
557
559
560
563
564
566
566
567
567
567
568
568
568
569
571
574
575
576
580
581
582
582
581
578
578
574
573
571
570
569
567
563
560
559
558
557
554
549
547
546
545
544
542
540
536
533
530
527
524
518
507
507
507
507
507
507
507
506
505
503
502
501
499
497
496
496
493
491
489
488
483
481
480
476
475
473
472
472
471
467
458
453
451
443
439
436
433
429
425
424
423
422
411
409
401
397
395
393
392
390
389
388
388
385
385
384
383
381
380
378
376
372
371
371
369
369
369
369
369
369
368
368
368
368
367
366
366
366
366
366
366
362
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
360
360
360
360
360
360
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
358
358
357
357
356
356
355
355
354
354
354
354
354
354
354
354
354
354
354
355
355
358
360
360
360
360
361
361
362
363
363
363
364
364
364
364
364
364
363
363
363
363
362
361
361
361
361
361
361
362
365
369
368
367
367
364
361
354
350
350
350
350
350
349
349
348
348
348
347
347
347
346
346
346
346
346
346
346
346
345
345
345
345
345
344
344
344
344
344
344
344
345
345
347
347
346
345
341
340
340
340
340
340
342
342
343
343
343
343
346
348
350
350
349
346
345
345
340
339
338
338
337
335
334
334
333
333
332
332
332
332
332
332
332
332
332
332
332
333
333
333
333
334
334
334
334
334
334
334
334
334
334
333
333
333
333
332
331
331
331
331
331
331
331
331
331
331
331
331
331
331
331
330
331
331
332
332
332
333
333
333
333
333
331
330
330
330
330
330
329
328
327
325
325
325
324
323
324
324
325
325
326
328
328
328
328
328
328
328
328
329
332
332
333
334
334
334
334
334
335
336
337
338
339
339
340
340
341
344
346
348
350
352
351
350
348
347
343
341
337
337
336
334
333
331
329
327
326
324
323
323
323
323
323
322
321
320
320
319
318
318
316
316
317
317
317
317
316
316
315
314
313
313
313
314
314
316
317
317
317
317
317
316
314
313
312
311
313
314
315
316
323
322
322
321
320
318
315
314
312
312
310
309
309
309
309
309
309
309
310
310
310
309
309
307
307
307
307
307
306
306
305
304
304
304
304
304
304
304
304
306
306
306
305
304
304
304
304
304
304
304
304
301
301
301
301
301
301
301
300
300
299
299
299
299
299
299
299
299
299
298
297
296
296
296
296
294
294
296
296
297
297
296
296
295
294
294
293
293
293
294
294
294
294
293
293
293
293
293
293
293
292
292
291
291
290
290
290
290
291
291
291
291
291
290
290
290
290
290
289
289
289
287
287
287
287
287
287
286
286
285
284
284
284
285
286
286
286
287
287
288
288
288
288
288
288
288
288
288
288
288
288
290
291
291
289
286
285
285
284
284
283
282
282
282
282
282
283
283
283
283
283
283
283
283
283
283
283
283
282
281
281
281
281
281
281
281
281
281
281
280
280
279
279
277
278
279
280
280
280
280
281
281
281
280
279
279
279
279
279
279
279
279
279
278
278
277
277
277
276
275
274
274
274
274
274
274
275
275
275
275
275
273
271
271
271
272
272
272
272
272
272
272
272
272
272
272
273
273
274
274
274
274
274
274
274
273
273
273
273
273
273
273
272
271
271
271
271
271
271
271
271
271
271
269
268
267
266
266
264
264
264
262
261
261
259
258
258
258
258
259
259
259
258
258
258
258
258
258
258
258
258
258
258
258
258
258
257
257
256
256
256
256
255
255
255
254
254
253
252
251
251
251
251
251
251
251
251
251
251
251
251
251
251
250
250
250
248
247
247
247
247
247
247
246
246
246
246
246
245
246
247
246
244
243
244
243
244
244
245
245
245
244
244
244
244
244
244
243
243
243
243
243
243
243
243
243
243
243
243
243
242
241
241
241
240
240
240
240
240
240
240
240
240
240
240
240
240
239
239
238
238
238
237
237
237
236
238
238
238
238
238
238
238
238
238
238
238
238
238
238
238
238
238
238
239
239
239
239
239
239
239
239
239
240
240
239
238
238
238
238
239
238
237
237
237
237
237
238
239
239
239
239
239
238
238
238
238
238
238
239
239
241
241
241
240
240
240
240
240
240
240
240
240
240
241
241
241
241
241
241
241
241
243
243
242
241
241
240
239
238
238
238
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
238
238
237
237
237
237
237
238
239
239
239
239
239
238
238
237
236
236
238
238
238
238
238
238
238
238
238
238
238
237
237
237
237
237
237
238
238
239
240
240
240
240
241
241
241
241
241
241
241
241
241
241
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
241
240
239
240
240
241
242
242
242
242
242
242
243
243
243
243
243
243
244
245
245
244
244
245
245
245
245
245
245
245
245
245
246
246
247
247
248
248
249
249
250
250
251
252
252
255
253
252
252
254
253
252
252
251
251
250
250
249
249
249
249
249
249
249
249
249
249
249
249
249
253
253
257
258
258
259
259
260
260
260
260