318
317
316
316
314
313
312
311
311
311
311
311
311
311
311
310
310
309
308
306
306
306
306
306
306
306
306
306
308
311
311
311
311
310
310
309
309
308
308
308
310
310
309
311
311
312
312
308
308
308
309
310
310
310
310
310
310
309
309
308
308
308
307
307
307
307
310
309
308
308
308
308
308
308
308
308
309
309
309
309
308
308
308
307
311
307
307
307
307
307
307
309
309
310
310
310
310
310
310
309
309
309
309
309
308
308
308
308
308
308
308
308
308
308
308
308
308
307
307
306
306
306
306
306
306
306
306
307
307
307
307
307
307
307
307
307
307
306
306
306
306
306
306
306
306
306
306
306
306
306
306
309
310
310
310
310
309
308
308
308
308
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
308
308
308
308
309
309
309
310
310
311
311
311
310
310
309
309
309
309
309
309
309
310
310
310
310
310
310
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
311
312
312
312
312
314
314
315
315
315
314
314
314
313
312
311
310
310
310
311
311
311
312
312
312
312
313
313
314
314
314
314
314
314
314
314
314
314
314
314
314
314
314
314
314
314
314
314
313
313
313
312
312
312
312
312
314
315
315
315
315
316
316
316
316
316
316
316
316
316
316
316
316
316
316
316
315
315
315
315
315
315
315
315
315
315
315
314
314
314
313
313
313
312
312
313
313
313
312
312
313
313
314
314
314
314
314
314
314
314
315
316
316
316
317
317
317
317
317
316
316
316
316
316
317
317
317
317
317
317
317
318
318
319
320
321
321
321
321
320
320
320
319
318
318
318
319
320
320
320
320
320
320
319
319
319
319
318
318
318
318
318
317
317
317
317
317
317
317
317
317
316
315
313
313
313
314
315
317
318
318
318
319
319
319
319
319
320
320
320
320
321
321
322
322
323
323
326
326
326
327
327
327
328
328
328
328
328
329
330
331
331
331
332
332
332
333
333
333
333
335
336
337
339
342
344
345
341
340
340
341
342
345
346
348
348
347
340
343
345
346
347
347
345
344
342
341
341
340
339
338
338
338
338
338
339
339
339
340
340
340
340
340
344
345
351
353
354
356
356
356
356
356
356
356
355
355
356
358
358
358
359
359
359
367
372
368
366
363
359
357
355
356
357
358
356
354
352
351
351
352
353
357
358
358
358
358
358
358
358
358
358
358
358
359
360
363
364
364
365
365
363
362
360
357
360
364
367
370
370
370
370
370
371
374
377
379
381
381
385
383
378
375
373
367
366
366
366
365
365
365
367
368
369
370
370
372
372
372
372
371
371
371
372
372
376
379
383
383
383
383
383
383
384
385
387
389
390
390
390
391
392
393
393
394
395
395
398
399
400
398
397
396
395
395
395
395
398
399
400
404
405
406
406
406
405
403
401
400
399
402
402
403
403
403
403
403
402
401
400
399
399
399
400
401
401
401
401
401
402
402
402
403
404
406
407
408
409
411
412
413
414
415
417
418
419
419
420
420
420
421
422
429
431
431
431
431
433
435
437
438
443
455
458
461
466
467
473
475
477
479
483
484
485
485
486
487
488
489
490
490
492
492
493
493
494
495
498
508
512
515
519
521
520
519
518
517
516
515
515
514
514
514
514
505
491
484
482
480
479
477
473
473
472
471
469
469
469
469
468
468
468
467
467
467
467
466
466
466
466
466
466
466
466
466
466
466
466
466
467
468
469
472
472
473
473
474
475
476
477
478
478
478
478
479
479
479
480
479
477
476
475
475
471
471
470
470
468
467
467
467
467
467
474
481
459
458
458
458
459
460
461
460
463
465
467
470
472
468
466
463
459
465
468
470
488
486
484
482
475
467
465
462
456
453
446
445
445
445
445
446
446
446
447
449
457
460
468
471
473
475
476
478
479
484
487
493
494
482
479
476
475
473
471
469
466
451
450
452
453
453
452
450
448
448
448
450
452
454
454
459
459
461
463
466
473
464
468
470
469
467
464
464
467
467
467
468
468
468
468
468
469
470
471
473
475
478
502
506
500
494
505
515
514
510
514
517
519
516
515
512
511
507
509
512
514
516
518
520
524
528
531
536
540
546
548
546
545
539
539
539
550
545
549
553
557
565
566
567
568
570
576
577
577
577
578
623
618
610
601
597
597
597
606
610
608
608
612
612
612
612
612
612
613
614
615
615
616
617
623
624
625
628
630
630
630
631
632
633
634
636
638
643
657
666
666
671
675
676
678
680
682
710
709
708
708
710
712
717
728
729
730
730
731
736
743
749
752
756
762
765
763
763
766
771
774
779
784
787
788
788
788
788
798
805
806
808
810
814
817
822
824
829
831
834
839
841
841
841
841
841
841
841
841
841
840
839
838
843
844
845
846
848
850
852
866
868
869
871
873
875
878
879
881
891
897
910
915
919
915
910
908
907
908
909
910
910
916
918
921
925
929
937
942
944
945
947
949
950
952
956
963
966
970
980
989
992
994
996
1001
1009
1012
1016
1018
1020
1021
1022
1023
1024
1027
1031
1035
1038
1040
1041
1039
1038
1037
1036
1035
1034
1030
1028
1026
1024
1023
1019
1016
1011
1007
998
995
992
989
987
984
981
978
976
972
947
942
903
902
894
892
891
891
891
891
891
891
891
880
874
872
868
867
867
867
867
868
871
874
878
881
888
885
880
877
874
872
869
867
860
858
857
855
854
853
852
852
853
857
857
854
853
851
850
848
846
844
843
840
834
832
830
827
824
824
824
824
824
825
826
827
827
827
827
827
827
827
826
823
816
812
807
804
799
792
793
796
796
795
794
794
794
794
792
788
787
785
780
779
778
778
775
775
775
774
773
772
772
771
771
770
769
769
769
769
768
767
766
765
764
759
758
757
756
755
754
749
747
745
743
741
737
731
728
722
720
719
717
717
716
716
716
716
720
720
720
720
719
719
719
717
714
704
705
706
706
707
707
706
696
694
692
691
690
689
689
695
694
693
692
691
687
684
681
680
679
679
678
677
676
671
671
671
671
671
671
672
672
670
669
669
668
668
667
667
667
664
663
662
660
656
656
656
655
653
652
652
652
655
656
657
657
658
659
661
664
664
664
664
663
662
662
659
658
657
657
657
657
656
655
653
651
649
649
649
650
654
655
656
657
658
658
653
650
647
641
639
637
636
638
642
653
654
657
654
653
651
644
644
643
642
638
638
637
636
625
625
624
624
624
624
624
624
625
627
623
621
619
619
617
615
615
614
613
612
611
609
614
613
613
610
608
604
604
606
608
610
608
607
606
606
605
605
605
606
606
605
600
595
595
595
595
595
595
595
595
595
597
598
601
600
599
597
597
596
594
592
592
592
592
591
590
590
589
589
589
588
587
587
587
586
586
586
584
584
583
583
583
584
584
584
583
583
583
584
584
582
582
582
582
582
583
583
583
583
583
583
583
583
582
582
582
582
582
582
582
582
581
581
581
581
581
581
580
577
576
576
577
577
577
578
578
578
578
578
578
578
578
577
577
577
577
577
576
576
575
575
575
575
575
575
575
574
574
573
573
572
572
571
571
571
571
571
571
571
571
571
571
571
572
572
572
571
571
571
572
572
572
570
569
569
569
569
569
569
569
569
569
570
570
571
571
571
571
571
570
570
570
570
570
570
570
569
569
569
569
569
569
569
569
570
571
572
571
571
571
570
569
569
568
568
567
567
566
566
566
567
568
570
571
571
571
571
571
571
571
571
571
571
571
571
570
569
569
567
566
565
564
564
564
564
564
564
564
564
564
564
564
564
565
565
565
565
564
564
564
564
564
564
564
564
564
564
563
559
563
564
565
562
561
567
567
567
565
565
565
563
566
567
568
563
562
562
561
558
556
552
550
549
549
549
549
549
550
554
554
555
555
555
555
555
555
553
551
551
551
551
551
551
551
550
550
550
551
551
551
551
551
551
551
552
554
554
553
553
553
551
551
551
552
552
552
550
550
550
550
550
550
550
550
550
550
550
550
550
549
549
549
549
549
548
548
548
547
547
547
547
547
547
547
547
548
548
548
549
550
550
550
549
549
549
549
549
549
549
549
549
548
548
547
547
547
548
548
548
549
549
549
547
546
546
546
546
546
546
547
547
547
547
548
548
548
548
548
546
544
543
544
542
541
541
541
542
543
543
544
544
544
544
548
548
548
544
546
544
544
547
547
545
545
545
545
545
546
544
543
541
541
540
540
540
537
536
535
538
537
536
536
536
534
532
532
534
533
527
527
527
530
531
532
544
547
551
550
547
534
532
532
534
534
530
531
531
532
538
540
542
544
546
551
561
563
564
566
570
572
573
574
575
577
594
594
593
593
589
585
584
580
578
571
570
568
565
562
562
562
562
561
551
548
548
548
548
548
574
577
581
565
559
555
546
545
542
541
540
538
536
533
532
531
521
519
520
523
525
527
531
536
549
545
544
541
539
530
527
524
523
505
503
502
503
503
512
511
506
507
508
509
509
509
509
508
505
501
500
500
497
496
495
494
493
493
493
493
493
495
495
495
495
495
492
491
491
491
492
492
493
494
494
490
490
490
490
490
490
491
493
494
494
494
495
496
504
505
507
508
509
509
509
509
508
508
507
507
507
507
507
508
508
505
505
505
505
505
501
501
501
503
501
504
502
500
498
495
495
496
496
497
498
498
498
497
496
496
496
496
496
496
496
496
496
496
496
497
498
498
497
496
495
494
494
494
494
494
494
494
494
495
495
495
495
495
493
493
493
493
493
494
495
496
496
496
495
495
494
494
494
494
493
493
492
492
491
490
489
489
489
489
488
487
487
487
487
487
487
485
485
486
487
487
488
488
486
485
487
488
489
489
488
488
487
486
480
477
476
475
475
475
476
476
476
477
477
478
480
480
479
477
477
476
476
477
478
478
478
477
477
477
476
476
477
477
477
476
475
474
477
476
476
475
470
470
471
470
466
462
463
463
462
461
460
458
458
458
458
458
459
459
459
460
460
460
458
458
460
458
458
461
461
461
461
461
461
461
462
462
462
463
464
464
464
464
464
464
464
464
464
464
464
464
465
465
465
467
467
468
468
469
469
471
472
470
469
469
470
470
470
471
471
472
472
473
473
475
476
476
478
481
481
481
482
482
495
493
492
491
489
474
472
471
469
474
476
478
481
483
485
487
492
497
496
493
491
489
487
488
485
484
482
480
476
472
463
459
459
460
461
461
462
463
464
466
468
466
464
463
463
463
463
463
463
464
464
464
465
465
465
472
477
479
482
484
487
489
494
494
494
494
493
493
493
492
491
490
487
487
483
477
472
461
458
455
454
458
458
458
458
458
458
460
464
466
469
473
479
480
480
480
481
481
481
482
482
482
482
481
481
479
466
465
466
467
467
468
469
469
471
472
473
473
474
474
474
473
473
472
472
471
486
484
472
469
469
469
469
468
468
468
468
468
468
468
472
473
474
475
476
478
479
481
482
483
486
487
488
486
484
476
474
472
472
472
472
471
471
470
470
469
463
460
459
456
452
453
453
454
454
455
462
460
455
452
450
448
448
447
447
447
441
449
453
454
454
456
456
457
459
459
458
457
457
456
456
460
463
465
467
468
470
470
468
467
467
467
468
468
478
484
483
482
481
480
479
479
488
492
497
497
498
499
502
506
509
509
509
504
503
501
500
499
494
494
496
499
501
510
512
512
509
508
507
507
506
506
505
504
504
507
505
503
500
499
498
493
491
490
485
487
488
489
494
494
495
495
496
496
497
498
506
505
504
501
500
499
498
495
495
495
495
495
494
494
494
493
493
487
486
485
484
483
482
482
483
483
483
483
483
483
482
482
481
481
482
482
488
490
491
490
488
487
487
488
490
491
494
493
492
489
488
488
486
486
483
483
483
483
483
483
483
484
484
484
484
484
484
483
483
476
475
472
472
471
470
470
470
471
471
475
478
483
484
486
484
484
483
482
478
478
477
445
445
445
445
445
445
446
446
446
446
445
445
445
443
443
443
443
452
451
449
445
445
445
443
443
442
439
439
440
440
441
441
440
436
436
436
436
436
434
434
434
434
434
434
434
433
432
431
430
430
430
430
430
430
430
429
429
429
429
429
428
425
425
423
420
418
417
422
425
425
424
424
422
420
422
422
423
422
422
422
422
422
422
422
422
422
421
421
419
419
419
421
418
419
421
420
419
418
418
420
418
419
419
418
417
417
417
417
417
417
417
417
414
417
412
412
413
412
412
412
412
412
411
410
410
411
412
411
411
411
411
406
410
410
409
411
410
410
410
410
410
410
410
409
410
409
408
406
408
409
409
408
404
404
404
405
407
408
405
405
405
402
401
401
401
402
402
402
402
401
402
402
403
401
401
401
401
402
403
403
403
403
403
403
403
401
401
401
402
402
402
402
402
403
403
403
403
403
402
402
402
401
401
401
403
403
403
402
401
401
401
401
401
401
401
398
398
400
400
399
399
397
397
397
398
399
399
401
400
398
395
397
396
396
396
396
397
397
397
397
396
396
396
396
396
397
398
398
398
398
398