316
313
313
313
313
312
311
313
309
307
308
309
307
307
313
315
325
327
330
329
328
333
335
339
342
353
359
360
363
364
365
367
370
369
366
364
366
364
362
360
365
371
368
367
369
369
369
369
370
373
380
383
388
392
394
398
400
389
388
388
388
386
379
377
373
372
372
373
373
361
356
355
355
353
351
347
347
349
352
353
354
360
354
353
366
366
366
377
388
378
374
394
395
397
391
395
401
404
385
385
393
396
398
399
400
388
392
391
388
393
399
399
401
400
399
399
395
390
391
396
397
405
401
395
395
415
418
414
415
416
420
424
425
429
419
423
436
441
447
456
458
449
447
455
465
468
476
483
483
481
475
470
476
488
490
489
485
481
480
480
480
495
499
514
513
512
511
513
533
537
540
525
520
517
516
513
514
521
526
536
541
549
560
545
550
559
568
573
577
568
564
554
563
568
571
575
574
572
571
566
563
568
587
595
601
600
599
599
599
599
600
604
607
610
616
618
619
616
613
610
614
620
626
631
633
642
646
649
651
651
649
647
642
633
630
627
623
622
621
622
658
669
673
674
675
676
678
672
668
655
650
672
708
710
712
714
715
710
698
717
724
709
698
695
703
728
739
741
747
750
754
756
756
756
756
749
744
739
742
749
771
779
780
778
775
771
771
771
779
785
794
795
797
803
807
803
800
769
763
761
767
768
769
766
765
767
769
770
772
781
783
785
785
780
754
739
747
744
739
733
726
712
716
722
721
718
716
716
717
718
706
697
693
689
691
696
701
705
701
697
684
679
676
672
669
665
669
668
658
662
663
664
665
665
665
665
665
644
641
637
630
645
659
668
672
673
674
672
667
659
651
648
628
634
638
640
650
654
664
663
660
631
625
617
608
607
607
607
616
619
620
612
606
597
588
589
592
595
596
597
598
588
584
582
576
568
570
586
587
581
574
573
571
567
564
565
566
566
567
564
562
556
554
554
554
553
553
552
550
554
561
566
566
570
572
576
579
583
582
564
570
576
579
584
589
589
588
587
588
600
569
570
564
559
559
569
579
581
581
580
580
548
534
533
527
525
515
515
515
513
509
500
504
505
504
503
502
500
498
498
498
498
499
490
486
483
482
481
480
480
480
489
499
499
479
484
478
470
467
463
462
460
465
467
470
472
471
470
467
466
470
475
479
476
468
464
461
461
464
464
468
471
475
470
471
473
473
472
472
478
495
494
492
488
485
483
505
506
518
524
522
521
517
515
516
517
519
521
524
530
533
534
535
537
539
542
543
542
540
538
537
536
537
540
543
546
547
549
550
553
551
548
549
561
560
560
579
580
586
592
593
595
596
609
622
628
624
622
615
614
620
628
638
629
617
624
640
642
646
660
662
662
662
662
663
667
667
679
681
682
685
703
720
717
712
697
693
687
688
690
693
695
694
692
681
677
675
670
669
664
662
639
639
638
636
632
620
612
606
605
605
605
603
599
595
591
588
584
586
581
576
566
565
564
562
558
557
556
556
553
554
554
552
550
549
541
538
537
536
536
537
539
539
537
535
524
524
513
509
505
505
506
507
497
506
490
486
490
490
487
491
480
484
488
484
481
480
474
478
481
476
468
473
481
486
485
483
481
480
480
479
479
483
485
486
486
488
490
491
494
503
504
507
516
517
517
517
531
530
533
533
537
546
547
551
552
553
557
570
571
573
575
576
578
587
589
588
587
593
601
610
614
615
615
614
612
611
611
610
622
634
640
642
642
642
638
636
628
618
616
613
610
610
610
603
601
596
594
588
586
577
579
578
578
578
586
588
590
590
590
590
590
590
587
585
582
580
578
576
573
580
601
591
584
592
600
600
600
593
586
586
586
586
587
588
589
594
603
605
599
606
607
618
623
640
647
653
653
653
657
671
676
675
663
656
650
651
652
653
655
657
660
663
656
650
657
664
670
674
680
678
674
671
674
677
676
676
677
680
677
676
676
675
674
678
690
689
688
693
695
705
707
707
707
707
707
707
707
707
707
709
712
718
716
723
734
733
732
731
731
731
733
733
736
739
744
747
756
761
765
768
771
774
789
806
812
814
811
806
829
827
827
828
828
828
828
826
826
825
821
817
812
811
811
811
811
812
812
813
813
813
786
771
763
760
767
776
790
783
753
736
733
738
743
743
743
739
733
730
724
716
714
712
710
712
714
713
708
703
696
682
681
682
675
670
670
670
672
673
673
665
654
653
650
644
643
643
639
635
633
633
634
634
631
630
628
631
631
634
631
625
622
623
627
627
630
632
637
643
649
653
652
650
653
657
666
670
678
670
663
657
655
654
654
652
648
620
620
620
622
622
623
636
634
625
622
628
630
634
638
638
633
633
634
633
631
630
629
627
625
621
612
608
600
586
592
598
607
611
572
573
574
575
576
581
582
554
547
544
547
548
549
558
557
555
545
545
545
543
542
541
537
537
539
542
529
524
519
520
523
522
517
516
517
514
510
511
508
506
503
493
491
487
486
495
489
498
498
500
501
504
505
513
514
514
513
511
510
510
526
535
535
533
531
531
531
531
531
531
537
542
543
544
545
547
552
556
567
570
580
580
579
574
586
600
603
589
582
579
589
593
593
593
593
593
593
593
593
593
594
597
617
619
628
627
626
625
621
618
616
617
618
614
618
617
616
616
623
615
611
608
614
613
612
611
607
604
577
577
577
577
577
577
574
572
570
565
564
563
561
561
573
568
562
550
538
541
545
538
522
519
519
526
522
507
504
501
499
499
499
497
496
499
494
493
490
489
488
481
473
468
475
492
491
480
471
458
457
463
458
448
457
454
447
441
440
453
451
449
448
447
439
435
430
427
420
424
421
421
423
432
433
430
428
425
414
414
421
424
430
440
447
445
424
419
415
409
394
393
388
375
374
373
372
369
369
369
369
363
357
357
357
357
362
366
368
368
369
369
369
374
379
385
385
385
385
385
386
386
386
389
390
390
396
401
401
401
401
401
405
406
408
410
411
410
403
404
404
406
411
411
412
412
416
417
421
426
427
422
419
425
426
424
423
422
419
427
416
416
416
416
416
416
416
416
416
416
415
411
405
405
410
409
406
404
402
401
411
421
423
429
430
428
429
431
435
442
447
459
461
461
461
461
461
462
485
489
491
492
492
492
492
492
492
492
492
494
496
498
502
507
529
526
522
532
538
538
538
538
533
528
517
511
508
508
517
539
545
555
550
549
545
547
553
554
555
555
555
554
559
578
578
579
579
580
580
564
564
564
568
569
571
583
595
598
598
598
602
609
611
620
620
616
619
623
629
632
636
644
645
648
651
666
683
696
697
692
711
723
721
719
722
727
731
738
739
740
742
744
738
733
727
723
723
732
729
714
716
718
722
723
723
723
726
731
710
712
719
722
722
722
723
728
730
731
730
730
729
722
715
707
701
696
690
690
694
701
703
706
706
708
708
711
714
716
717
719
728
727
713
711
710
709
708
711
716
715
710
711
712
714
728
734
738
739
742
739
735
732
752
727
725
725
725
727
727
727
725
725
725
725
725
725
725
726
729
729
730
732
726
726
726
726
728
733
736
736
731
723
721
721
722
732
738
744
745
744
741
758
765
770
770
768
778
775
763
756
771
781
782
785
785
781
781
781
781
794
806
806
806
806
810
814
824
828
829
830
833
836
839
842
843
846
855
865
868
870
864
857
850
850
848
850
858
869
884
886
888
880
872
868
869
880
908
908
902
883
891
893
903
907
917
920
918
914
912
909
907
903
905
916
921
921
918
913
912
911
909
907
905
917
924
921
908
903
902
889
884
889
894
909
909
916
921
922
922
921
921
907
906
905
904
903
902
900
899
897
898
901
900
900
898
893
865
856
852
854
855
857
858
863
858
848
847
846
845
844
843
838
817
815
812
810
809
806
811
810
809
811
788
801
797
779
778
759
740
739
740
740
738
736
729
727
727
731
724
726
730
727
722
721
721
721
719
718
714
713
712
711
703
700
696
696
696
697
697
697
698
698
698
699
699
698
696
693
690
688
686
685
685
685
684
684
683
683
683
684
687
682
681
679
675
675
671
670
668
666
666
666
666
664
659
657
660
663
669
674
674
672
671
670
670
669
667
668
669
670
674
674
674
672
668
666
666
666
666
667
670
672
676
669
664
665
666
668
669
671
669
667
663
659
659
659
668
671
677
666
667
665
661
661
661
661
661
660
660
656
651
651
651
648
646
644
643
654
659
668
671
673
678
678
682
684
689
690
690
691
690
690
690
690
688
686
683
682
681
680
680
680
679
679
678
677
676
675
669
673
675
676
678
679
679
678
678
678
678
688
678
673
673
673
672
671
668
674
688
687
681
677
675
673
673
673
677
679
681
684
686
686
686
685
684
683
682
680
678
678
678
678
678
681
691
692
692
695
696
696
699
702
703
698
694
691
690
687
707
705
687
687
687
687
688
690
691
691
686
672
670
662
660
658
660
659
657
655
658
659
661
663
660
659
658
658
656
656
657
657
656
656
656
658
658
657
655
649
649
649
648
647
646
641
640
637
635
631
633
619
619
619
619
619
619
619
619
619
619
620
625
626
628
633
635
636
641
641
641
640
639
637
637
635
634
630
631
626
623
617
621
624
625
625
625
625
626
626
627
627
629
629
628
627
627
627
626
623
620
619
615
603
603
603
603
603
601
598
597
587
583
582
570
569
555
551
547
545
544
544
542
541
536
534
531
530
530
530
530
531
530
529
530
530
532
535
540
541
541
541
539
538
535
533
527
523
517
512
510
511
513
510
502
500
498
495
495
495
495
499
498
498
497
496
496
494
487
482
474
475
476
476
477
480
482
485
489
489
489
493
494
498
501
502
497
495
493
490
488
486
486
479
479
479
475
475
479
479
481
480
477
471
467
463
454
456
457
456
456
455
436
433
429
427
434
435
437
444
439
438
440
445
436
428
426
421
421
421
422
424
429
437
449
449
449
442
441
431
431
431
417
416
415
420
418
410
411
413
413
415
414
414
415
423
424
423
420
419
401
396
394
392
387
387
387
388
390
395
394
391
389
388
390
389
387
383
383
388
394
383
381
376
379
380
389
389
399
396
395
396
397
403
412
412
405
405
405
405
399
397
395
396
397
398
398
398
395
402
400
398
394
390
381
360
358
358
358
358
360
359
354
352
351
351
351
346
344
344
345
348
349
349
349
349
349
348
348
348
347
356
373
375
372
367
362
354
347
344
328
322
315