640
640
640
636
635
633
631
629
627
625
623
622
621
620
618
617
616
615
613
604
600
594
592
584
576
573
571
571
569
567
565
563
559
556
555
553
551
551
552
553
554
554
554
554
550
550
549
549
549
549
550
550
551
552
552
553
553
554
554
555
556
556
555
554
553
552
552
551
551
551
551
551
550
548
547
546
544
542
540
537
536
534
533
533
532
532
532
531
531
531
530
525
524
524
524
524
524
524
524
526
521
521
521
521
521
521
522
526
529
530
530
531
529
528
525
525
528
530
532
534
535
530
529
533
533
533
532
530
530
530
528
520
519
519
519
519
519
519
521
523
522
522
522
522
522
522
522
526
527
527
526
526
526
525
525
523
521
519
522
522
524
527
527
523
519
520
521
522
521
520
521
525
523
519
517
514
513
512
512
512
512
512
512
512
512
512
512
511
510
508
507
507
506
506
505
505
505
505
505
504
504
504
504
504
503
503
503
502
502
502
502
502
501
501
501
502
502
502
502
501
497
495
495
496
496
496
496
496
496
496
496
496
496
495
495
495
495
495
495
495
495
495
495
495
495
495
495
494
494
493
493
495
495
495
496
496
496
496
495
493
493
491
490
490
490
490
490
490
490
491
491
491
491
491
491
491
491
491
491
491
490
489
489
489
489
489
489
489
489
489
489
489
489
489
489
489
490
490
490
491
491
491
491
491
491
491
491
491
491
491
491
491
491
491
491
491
492
492
492
492
492
492
492
492
492
492
492
492
492
491
490
490
490
490
490
490
490
490
490
490
490
490
490
489
489
489
489
489
489
488
487
486
485
485
485
486
486
486
486
488
488
488
488
487
485
485
485
485
484
483
482
481
481
479
479
479
479
479
480
480
480
480
480
480
481
481
481
481
481
481
481
481
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
481
482
482
482
482
482
482
482
482
482
482
482
482
482
482
482
482
482
483
482
482
482
482
482
482
481
481
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
481
481
482
482
482
482
482
482
481
481
480
479
479
479
479
479
478
478
478
479
480
480
479
479
479
479
479
479
479
478
478
478
477
477
477
477
477
477
477
477
477
477
478
478
478
478
478
479
479
479
479
479
479
479
480
481
482
482
482
482
482
482
482
481
480
479
479
479
479
479
475
473
473
473
473
474
474
474
475
475
476
476
475
475
476
476
477
477
477
477
477
477
477
477
477
477
476
476
476
476
476
475
474
473
473
472
472
472
472
472
472
472
472
472
472
472
472
471
471
471
471
471
471
470
469
468
468
468
468
469
470
470
471
472
472
472
473
474
474
474
474
474
474
475
475
475
475
475
475
475
475
475
475
474
474
473
473
472
472
471
471
470
471
474
474
474
474
473
472
471
470
470
469
469
470
471
470
469
469
469
469
469
470
472
472
472
471
470
470
471
473
473
473
472
472
471
470
470
470
470
469
469
469
469
468
468
468
467
467
467
466
465
465
466
468
469
470
470
470
470
470
469
468
468
468
468
467
466
466
466
466
466
468
467
466
466
466
466
466
466
466
466
466
466
466
466
466
466
467
467
467
468
468
469
470
473
470
470
473
471
469
466
466
465
465
465
464
464
463
462
462
462
463
464
464
464
464
464
468
463
463
459
459
459
459
459
461
462
462
460
460
460
460
460
460
461
462
462
462
462
462
462
462
462
462
462
462
462
465
465
465
466
466
466
466
466
466
466
466
466
465
465
465
465
465
465
465
465
465
465
465
465
465
465
465
465
465
464
463
462
462
462
463
463
462
460
463
463
460
460
460
460
460
460
460
460
460
461
461
461
461
462
462
462
461
461
459
459
459
461
462
462
463
464
461
460
459
459
458
458
458
458
458
458
458
458
458
458
457
457
457
457
457
458
458
458
458
457
455
455
455
456
457
458
458
458
458
458
457
457
457
457
457
457
462
459
459
459
459
459
460
460
462
462
460
458
458
459
460
460
460
460
460
460
460
460
460
460
460
461
462
462
461
461
460
460
460
460
460
460
460
460
460
460
460
460
460
461
461
461
462
462
462
461
461
461
461
461
460
460
460
460
460
460
460
459
459
459
459
458
458
458
459
459
459
460
460
461
461
461
461
462
463
464
467
467
467
467
467
467
467
466
466
466
465
465
465
464
464
464
463
463
464
464
464
464
464
464
465
465
466
466
468
468
467
467
469
469
469
469
474
475
475
475
475
475
475
476
476
476
477
478
479
479
480
480
480
480
482
484
486
486
486
486
485
486
487
488
490
493
494
495
497
499
502
505
508
508
508
512
513
515
552
554
575
580
587
585
582
575
571
571
571
571
564
570
570
570
568
566
562
558
555
553
551
550
549
548
546
542
541
538
534
528
524
522
520
518
519
519
520
520
521
521
521
521
521
521
521
521
518
517
516
516
515
515
515
514
514
514
515
516
517
518
518
518
518
518
517
516
516
515
516
517
517
517
517
517
517
517
517
517
517
517
517
515
515
514
514
513
513
513
513
514
514
515
516
516
517
517
517
517
517
518
519
520
521
522
523
524
525
524
523
523
522
520
516
515
515
514
514
514
514
516
519
518
517
516
517
520
520
523
526
528
529
536
539
542
543
546
547
547
548
549
550
551
551
551
550
550
549
549
549
548
548
548
547
545
540
540
540
540
540
540
538
538
538
537
537
537
537
538
538
539
540
540
540
540
537
537
537
538
538
540
541
541
541
541
541
541
541
539
537
544
546
548
549
549
550
550
551
553
554
554
555
556
557
559
560
562
564
564
564
565
566
567
568
569
569
570
570
571
571
571
571
574
575
575
576
578
579
580
580
580
580
580
580
580
581
581
582
583
580
579
579
579
581
585
587
590
589
589
590
590
589
589
589
588
588
590
592
594
595
595
595
595
595
595
595
595
595
595
595
595
595
595
595
595
596
596
596
596
596
596
597
605
606
607
608
608
611
612
612
612
612
613
613
611
606
605
606
607
609
614
617
619
621
621
620
618
616
614
612
608
608
608
608
608
610
612
612
612
612
612
611
611
611
611
611
610
610
609
609
609
607
605
601
601
601
600
600
601
603
604
605
605
606
606
607
607
607
607
606
606
606
606
605
605
604
603
602
601
603
605
606
606
605
605
605
605
606
608
608
609
609
610
610
610
611
606
608
608
608
609
613
614
614
615
616
617
618
619
619
620
620
620
620
622
623
624
624
625
625
625
625
625
626
626
626
627
627
628
628
628
628
629
629
629
626
625
625
625
625
626
623
620
620
624
625
625
625
622
626
631
632
631
637
635
636
634
637
644
644
647
648
648
650
653
654
654
654
653
653
653
652
652
652
652
652
652
652
652
652
652
652
652
652
651
650
650
650
650
649
649
649
649
648
648
647
647
646
646
644
644
644
642
642
642
642
642
642
641
640
640