536
535
535
527
525
524
521
464
464
461
455
451
450
446
442
442
441
437
432
428
420
417
416
414
414
416
419
421
424
426
430
435
440
444
454
458
461
465
468
469
471
473
474
474
474
474
474
474
474
475
476
477
478
480
482
485
486
488
490
492
489
491
493
496
498
493
493
493
493
493
493
493
491
488
487
487
487
487
487
487
487
486
485
485
485
486
487
490
491
492
494
495
497
498
522
522
522
522
522
522
522
522
523
520
477
469
467
463
460
459
457
455
453
452
450
449
448
447
446
445
441
430
427
425
422
421
419
418
416
416
415
415
415
415
415
415
412
410
400
397
399
400
403
404
404
404
407
439
435
417
408
404
402
401
401
401
400
400
404
407
409
418
420
428
432
436
457
467
468
468
469
469
469
469
469
469
469
469
469
471
471
471
476
476
474
473
473
472
472
472
472
471
462
461
460
459
458
457
456
434
432
430
427
404
403
403
402
401
400
399
398
397
397
392
390
388
387
381
378
375
375
375
375
377
377
376
375
374
373
373
373
371
370
369
369
369
368
368
368
368
367
367
366
367
367
368
364
346
346
345
345
323
322
321
320
319
318
318
317
317
317
316
316
316
315
315
315
315
315
315
315
315
315
316
316
317
320
323
323
324
325
326
326
327
328
330
332
342
342
342
343
343
344
345
345
346
346
347
348
348
353
355
355
357
358
359
362
371
373
376
380
385
390
392
399
400
393
388
385
380
337
334
331
328
326
327
329
330
330
329
329
328
327
322
321
321
323
324
324
323
322
321
320
320
320
320
319
325
326
327
328
333
334
336
337
338
339
341
342
343
340
339
338
338
337
336
335
335
335
335
334
337
337
337
337
336
341
342
342
342
343
344
344
345
343
343
344
344
344
344
339
338
339
341
342
342
344
344
344
344
344
348
353
356
354
353
353
353
353
355
355
356
356
357
358
359
359
359
365
369
394
396
398
398
398
398
395
392
390
388
385
383
380
372
370
370
371
372
377
378
383
389
395
402
407
434
433
433
432
430
427
422
420
439
451
459
469
474
471
468
460
455
447
449
456
462
467
426
426
427
428
426
421
422
434
457
448
432
429
441
459
481
479
468
459
446
413
413
413
412
410
409
407
408
409
411
415
421
422
419
426
431
443
459
464
468
473
481
486
491
496
490
487
472
469
464
465
466
467
469
470
471
479
489
498
504
505
501
506
508
512
520
512
487
479
478
476
473
477
482
483
484
487
484
478
472
463
460
463
467
465
463
463
459
459
459
463
467
471
474
485
491
492
494
499
503
508
512
515
515
515
514
513
498
502
504
508
509
515
522
533
539
541
558
550
553
556
561
574
584
587
589
589
581
586
595
598
610
611
612
612
613
611
608
608
609
613
619
619
620
645
658
662
666
669
671
683
689
691
693
696
704
713
716
720
729
733
733
732
732
732
726
724
725
729
734
735
736
738
740
741
741
742
742
741
740
735
735
734
731
729
727
727
725
723
722
722
722
723
723
723
723
724
725
725
725
725
725
726
726
726
727
727
727
727
727
723
722
716
712
711
711
711
710
709
707
702
699
697
696
696
697
698
698
699
699
701
704
704
707
709
709
710
710
715
732
731
730
730
729
727
726
725
725
724
724
722
721
720
717
711
705
698
704
714
718
707
705
707
711
712
712
715
728
731
731
731
731
742
748
757
763
767
766
763
763
762
762
760
740
735
735
733
732
729
720
714
705
697
688
684
681
680
681
683
684
686
687
686
685
687
687
686
684
683
687
688
690
685
676
669
664
663
662
660
659
657
657
657
657
657
657
661
667
668
667
666
666
664
664
663
663
664
667
670
673
679
682
685
691
695
697
699
704
708
715
721
717
711
708
705
710
716
723
730
730
720
716
709
705
705
705
705
703
701
700
697
699
700
702
706
710
715
727
736
761
766
767
767
768
768
768
768
770
773
773
771
770
772
773
774
774
780
782
784
766
758
750
750
750
750
750
750
750
751
753
754
767
767
757
756
749
749
752
757
754
768
770
771
774
779
784
786
802
807
811
813
810
802
804
806
807
807
812
818
821
824
824
825
825
828
833
842
848
859
859
855
854
851
854
866
849
846
848
849
850
850
850
850
854
870
873
871
883
894
898
903
922
914
914
918
920
930
936
953
952
956
962
967
968
968
970
976
979
980
980
981
1005
1006
1007
1008
1010
1012
1013
1014
1015
1016
1017
1018
1019
1020
1023
1024
1028
1031
1031
1031
1031
1033
1038
1041
1041
1040
1038
1037
1036
1035
1035
1035
1036
1037
1038
1038
1037
1033
1028
1026
1026
1026
1026
1026
1026
1026
1025
1024
1023
1022
1022
1022
1023
1024
1024
1024
1024
1023
1023
1023
1024
1025
1025
1023
1025
1026
1027
1028
1029
1031
1034
1037
1038
1039
1040
1036
1033
1031
1029
1030
1032
1035
1047
1043
1042
1037
1032
1029
1027
1027
1027
1027
1024
1023
1021
1020
1019
1018
1017
1016
1016
1015
1014
1013
1011
1010
1009
1008
984
978
977
975
972
971
971
966
960
959
963
954
950
933
929
923
922
917
910
913
905
896
879
872
874
872
868
855
850
846
845
845
845
845
845
845
861
863
864
864
863
860
859
846
841
833
830
829
828
827
830
836
840
842
843
847
848
850
850
850
849
848
846
845
844
842
841
839
839
841
841
855
858
862
865
867
868
874
874
874
874
873
872
872
872
872
872
872
873
873
873
874
875
878
880
881
883
886
886
884
879
874
875
876
882
883
886
887
887
887
887
887
887
887
889
890
894
895
896
898
898
899
900
900
900
900
900
900
899
898
897
896
896
895
894
894
890
884
880
877
874
868
860
856
852
849
843
840
835
831
827
821
817
813
808
805
801
797
793
787
779
775
772
769
768
766
765
764
763
762
761
759
756
746
744
738
729
727
722
719
714
710
707
706
706
706
706
701
697
693
683
681
678
677
672
666
662
658
653
647
645
644
642
640
640
640
640
640
640
643
644
644
644
640
639
635
632
623
618
615
614
613
607
600
602
604
602
599
596
592
589
589
595
602
605
606
590
589
589
588
585
583
582
589
589
588
588
586
584
582
580
579
579
579
577
576
574
567
552
548
546
546
542
535
535
534
533
533
533
533
532
527
525
523
519
516
514
514
514
515
515
512
513
509
507
506
507
507
503
501
498
502
501
499
496
496
497
497
498
499
500
500
500
500
500
500
500
499
498
496
496
499
503
505
510
510
509
508
506
505
503
501
490
489
489
489
488
483
483
469
467
466
454
455
455
455
457
457
457
456
456
454
452
450
450
450
451
452
462
464
462
465
465
465
465
464
463
463
462
461
460
460
463
465
468
468
471
471
471
469
467
466
466
465
465
462
455
455
456
456
458
460
461
456
457
457
458
459
460
461
473
471
468
465
464
463
462
461
460
459
459
453
454
455
459
462
464
465
458
457
456
456
456
456
456
456
456
456
455
455
455
455
454
453
453
456
459
465
469
470
475
479
483
484
485
487
490
491
494
502
506
509
513
517
524
525
525
526
526
526
528
529
531
532
533
539
540
540
546
547
551
556
559
565
565
566
568
569
571
572
573
574
576
576
583
585
584
580
581
581
583
585
586
587
588
588
588
596
600
605
605
605
605
605
609
609
613
616
617
617
617
616
616
616
622
627
637
639
644
650
656
662
664
666
667
668
668
670
671
673
674
675
675
672
671
666
660
659
650
649
648
645
643
641
639
635
632
630
628
627
625
624
622
621
620
619
609
606
598
598
598
597
597
596
595
593
591
583
578
574
572
569
567
560
555
554
554
551
549
548
548
548
549
549
549
550
550
550
545
541
537
534
530
526
524
521
520
520
518
515
514
513
512
511
509
509
509
508
508
508
508
507
507
507
507
507
507
507
507
507
507
507
507
505
502
501
500
499
498
497
496
495
493
492
490
489
487
485
485
484
484
484
483
483
483
483
481
470
456
455
451
448
447
445
445
442
438
436
435
434
433
433
435
437
440
440
440
438
437
433
432
431
431
428
427
425
423
422
421
418
417
416
413
411
406
406
405
405
401
399
397
396
395
394
392
390
389
391
393
394
402
404
405
405
404
398
396
394
393
392
392
384
382
382
381
381
381
381
378
375
372
368
370
371
371
371
376
377
380
380
381
381
382
382
383
386
388
389
390
391
394
395
397
398
400
404
405
407
408
409
410
413
416
418
419
420
422
430
433
435
437
437
437
437
437
437
437
437
437
439
439
440
441
443
449
450
450
451
452
451
447
408
407
407
407
407
407
407
408
410
410
411
411
411
412
412
416
416
416
416
416
416
416
416
416
416
416
416
416
416
416
417
417
417
417
417
417
417
417
420
421
421
422
423
423
424
426
427
427
428
436
449
450
451
452
452
452
452
452
451
450
450
450
450
449
448
448
449
449
450
450
452
453
457
458
459
460
461
463
464
464
465
466
466
467
467
467
468
468
468
468
468
472
472
473
473
474
474
475
475
477
478
478
478
479
480
482
482
482
482
483
483
484
484
483
478
477
477
476
473
470
468
469
469
470
471
473
474
475
476
476
477
480
481
483
484
486
487
491
492
492
493
493
494
495
495
496
496
496
499
498
498
498
498
495
495
495
495
495
496
496
499
501
500
500
499
499
499
498
496
496
495
494
494
494
494
498
498
499
500
503
503
504
504
506
507
508
509
510
510
510
513
513
513
515
515
516
517
517
518
518
518
519
519
520
521
521
521
521
521
522
522
523
523
525
525
526
529
530
534
535
535
535
535
535
535
535
535
535
534
534
533
533
533
532
532
531
531
532
534
534
535
537
539
540
541
542
543
546
547
548
550
550
550
549
548
547
547
546
546
544
544
544
543
543
543
543
543
543
543
543
543
543
543
543
543
544
545
547
560
562
564
579
579
579
579
579
579
580
580
580
581
581
577
576
576
575
574
573
573
572
574
575
590
592
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
596
597
597
597
597
598
598
598
598
598
598
599
599
599
599
599
599
599
599
599
598
598
598
597
597
597
596
596
595
595
595
595
595
595
595
595
595
595
595
595
595
595
595
597
598
599
599
600
601
601
602
602
603
605
605
607
607
608
608
609
610
610
610
615
615
615
616
616
618
618
619
618
618
617
617
616
615
608
607
607
607
607
606
606
606
606
606
606
605
605
604
604
604
604
603
603
601
601
601
598
597
596
595
595
594
592
592
591
591
590
588
586
584
583
582
579
578
573
572
570
570
570
570
570
570
570
570
570
570
570
570
570
570
569
569
568
568
568
564
564
563
563
563
563
562
562
561
561
560
559
559
558
558
557
557
556
554
553
552
551
549
553
554
556
558
559
559
560
561
562
562
563
564
566
566
565
565
564
564
562
562
561
561
560
559
559
559
558
556
554
550
548
545
541
540
539
532
530
529
528
527
526
525
524
524
523
522
520
519
518
518
517
516
514
513
513
514
515
516
516
516
516
517
517
519
519
519
519
519
518
517
517
516
516
513
510
509
509
509
508
508
508
507
507
506
506
505
505
504
504
503
501
500
500
499
498
497
496
496
495
493
492
491
491
491
491
491
491
491
491
491
491
491
491
491
491
491
495
495
497
506
509
510
511
525
526
527
530
532
533
536
537
538
539
539
538
537
534
532
529
527
526
525
525
522
521
521
520
518
518
518
519
520
521
523
528
529
529
530
530
531
532
534
535
537
540
548
554
558
559
561
564
566
568
568
568
568
568
568
568
568
568
568
568
568
569
569
569
571
571
571
572
572
573
574
574
577
577
577
573
573
566
564
563
563
563
565
565
566
568
568
568
568
566
566
566
565
565
565
565
565
565
566
566
566
568
568
569
570
570
570
572
572
575
576
578
579
580
582
583
584
587
588
590
592
593
594
596
597
603
604
605
606
607
608
613
615
618
620
621
621
624
624
625
626
627
631
635
636
636
637
638
639
640
641
648
649
650
650
652
653
654
656
656
658
659
659
661
661
662
663
663
663
664
664
664
665
657
651
649
642
637
634
632
629
620
621
623
623
625
625
626
626
626
626
626
626
626
627
627
627
627
627
627
627
628
628
628
628
628
628
628
628
628
628
628
628
628
628
630
631
631
633
633
633
634
634
636
636
637
637
637
637
637
637
637
637
637
638
643
643
644
645
646
640
638
637
610
606
604
599
595
587
576
574
569
569
565
565
564
562
555
554
554
553
552
550
550
549
547
547
544
543
542
542
542
543
543
537
534
532
526
522
521
520
519
519
518
518
519
519
522
523
524
527
529
531
532
532
531
531
530
530
528
528
528
528
528
528
528
527
527
527
526
521
520
520
519
519
518
518
518
520
521
522
522
522
523
521
519
519
518
517
517
517
518
518
518
518
517
516
515
514
512
511
511
508
507
497
497
498
498
498
498
497
496
495
493
489
461
462
463
465
466
466
467
467
462
457
455
454
453
452
452
451
447
446
442
438
436
436
434
433
432
432
431
428
425
423
420
419
413
408
405
403
401
398
397
397
395
395
394
390
389
388
388
386
383
379
377
376
375
374
372
370
362
362
361
360
355
355
355
354
354
356
359
360
360
360
365
367
369
371
372
372
372
374
374
374
374
375
375
375
375
375
375
375
376
377
377
377
377
377
379
380
381
381
381
381
381
381
382
382
383
383
384
385
385
385
385
386
389
389
390
392
392
393
393
394
394
394
397
399
401
404
403
402
400
398
398
400
401
402
406
407
407
409
410
410
409
407
406
413
415
417
419
421
422
424
418
415
414
414
415
415
414
413
411
413
415
417
419
421
421
421
420
419
419
421
422
423
423
424
425
427
427
426
424
423
425
425
427
429
438
442
445
446
448
453
453
454
454
455
456
457
457
457
457
457
457
456
456
456
456
456
460
462
465
466
469
470
472
475
477
484
487
489
500
504
516
512
511
510
509
507
506
509
511
513
516
519
523
526
528
530
532
535
537
538
539
539
540
540
543
552
563
567
572
576
578
581
583
587
591
602
603
603
603
603
602
602
600
600
600
600
600
601
602
609
615
616
617
619
620
621
623
623
622
621
614
613
611
606
604
599
588
586
585
585
582
580
574
552
551
545
543
541
540
538
536
535
530
530
531
532
532
532
532
529
528
526
522
520
518
518
519
520
535
536
537
540
540
541
541
541
542
542
543
544
544
544
548
548
550
550
549
542
541
540
533
531
530
529
527
526
525
524
522
520
518
513
512
509
508
507
504
499
493
491
492
494
495
497
498
499
501
501
501
501
501
502
502
503
503
493
492
490
489
489
488
487
487
486
485
485
485
484
483
481
477
477
476
475
475
475
474
473
471
469
467
463
459
455
452
448
440
436
432
426
423
420
417
415
412
412
416
420
424
428
436
440
442
442
442
442
448
452
453
458
464
465
466
522
525
526
529
536
534