298
297
289
287
285
285
284
283
282
282
282
282
288
288
288
288
289
291
291
290
297
298
298
298
299
300
302
302
303
304
305
305
305
306
307
307
307
307
307
308
309
310
311
310
310
309
309
310
311
312
314
315
315
315
315
314
314
314
314
314
314
314
314
315
316
329
337
336
335
335
334
333
333
332
331
330
329
329
329
330
330
330
330
330
330
331
332
333
333
334
334
334
335
335
335
335
335
335
335
335
339
340
341
342
342
342
340
339
339
339
344
345
346
346
349
350
350
356
358
358
359
359
362
364
367
367
366
364
363
361
358
356
356
357
360
361
361
361
361
361
362
362
364
367
369
369
370
371
373
375
375
375
375
378
378
379
379
379
379
379
380
382
384
386
387
388
388
388
390
392
393
393
394
394
395
396
399
399
399
399
400
401
405
406
409
410
411
412
414
415
417
420
424
426
426
426
428
432
435
438
439
439
438
438
437
438
438
438
438
438
438
439
440
442
445
446
449
451
453
453
456
458
458
459
460
460
462
464
467
468
468
474
478
485
487
491
493
494
496
496
496
496
496
497
497
494
492
490
489
489
487
487
488
488
490
491
493
493
494
495
496
503
504
506
505
504
504
504
504
505
505
507
508
518
520
521
523
524
526
527
527
528
529
530
532
532
531
529
529
528
528
527
527
529
532
533
534
535
536
537
538
540
540
540
541
541
541
541
541
541
542
542
542
541
541
541
541
541
542
543
543
544
547
548
549
550
551
553
553
554
554
555
556
557
561
563
564
565
565
565
566
569
573
579
584
587
587
587
588
588
587
585
584
585
586
587
587
587
587
588
589
589
589
589
590
591
591
593
597
599
600
601
602
602
605
606
607
607
608
608
609
611
612
613
615
616
618
621
621
622
622
623
623
625
626
626
627
631
633
634
635
635
635
635
635
635
636
638
639
639
640
640
640
641
641
642
644
644
649
651
655
656
660
662
662
664
664
664
665
665
665
665
666
666
668
669
671
680
681
682
683
684
685
686
686
687
688
688
691
692
693
693
693
694
694
695
695
695
695
694
693
694
695
695
698
700
701
701
701
704
704
705
705
706
706
707
707
712
714
716
719
719
720
720
721
723
724
725
726
726
725
724
723
721
720
719
720
722
723
726
728
729
729
729
730
737
739
741
744
747
747
747
747
747
747
750
754
756
761
763
763
762
759
762
772
775
776
778
781
783
784
784
786
787
790
791
791
791
791
791
792
794
795
795
798
799
802
803
804
805
806
808
809
810
810
810
811
812
812
812
813
813
813
813
813
813
814
815
815
816
816
818
819
820
821
822
823
826
827
830
831
837
838
838
839
840
843
843
843
843
843
843
843
843
843
843
844
844
844
844
845
845
846
846
844
844
843
843
843
845
845
845
846
846
847
852
853
858
859
860
865
868
872
872
874
872
872
870
870
870
869
869
868
868
870
871
873
874
881
882
886
890
892
897
901
909
908
907
907
906
906
905
901
902
903
904
907
908
909
909
908
908
912
919
920
923
923
923
923
923
923
923
923
926
929
933
936
937
937
937
938
939
939
939
940
940
941
942
943
943
950
964
967
968
970
971
973
973
973
973
973
973
973
972
970
970
966
964
964
967
969
971
972
974
976
984
986
987
989
991
989
987
986
984
988
998
999
1001
1002
1003
1009
1013
1014
1016
1016
1014
1014
1012
1012
1011
1012
1014
1016
1017
1024
1028
1032
1033
1033
1034
1035
1035
1036
1037
1040
1041
1044
1045
1046
1047
1048
1049
1052
1056
1060
1067
1069
1072
1072
1072
1072
1072
1072
1072
1072
1073
1078
1079
1082
1083
1088
1092
1094
1093
1092
1091
1090
1090
1089
1088
1084
1082
1075
1073
1066
1063
1061
1059
1054
1052
1045
1043
1043
1043
1041
1034
1029
1026
1020
1015
1009
1008
1008
1007
1005
1005
1005
1005
1004
1003
1001
998
991
987
986
984
978
978
978
978
978
978
978
978
978
978
970
967
964
964
964
964
964
962
958
948
945
944
941
941
942
942
943
943
944
944
942
940
937
926
925
924
923
920
918
917
915
915
915
915
912
911
909
907
904
901
893
890
889
887
886
885
884
881
876
871
863
861
860
857
854
854
854
854
854
854
854
854
853
849
847
840
833
833
832
832
832
831
831
830
830
829
828
828
827
827
827
828
828
828
830
830
827
811
810
809
807
794
790
789
788
788
787
786
786
786
786
785
782
780
780
780
780
780
780
779
778
776
773
762
763
763
762
762
762
763
763
762
761
761
765
765
764
764
768
769
765
763
763
764
764
764
764
764
764
764
764
765
765
765
766
766
766
766
764
763
763
763
763
763
764
765
766
766
770
770
770
770
770
770
769
769
767
767
763
754
752
750
748
743
740
737
728
724
723
722
722
722
721
721
718
717
721
721
722
720
722
719
714
710
709
705
705
701
695
695
695
688
689
689
689
688
683
674
674
674
674
673
672
671
670
666
666
666
666
666
665
664
664
664
663
663
663
663
663
663
663
663
664
664
664
665
665
666
666
666
666
665
664
668
668
671
672
673
672
672
673
677
680
683
684
685
687
688
688
689
690
689
689
693
695
697
697
697
697
696
695
694
693
693
693
692
692
692
692
692
691
691
689
685
684
684
684
684
683
682
682
681
678
677
676
676
676
676
675
675
675
674
671
671
668
667
665
663
663
661
660
660
660
660
658
658
658
657
657
658
658
659
661
661
660
658
657
657
657
657
657
657
657
662
666
667
671
674
690
688
687
684
684
683
682
678
672
671
671
670
670
670
669
668
668
668
667
666
666
665
665
664
664
664
664
662
662
661
660
659
659
659
659
659
657
654
650
650
650
650
650
648
645
644
643
642
642
642
640
640
639
638
638
638
638
640
641
641
643
646
651
651
652
655
655
654
652
647
644
638
635
634
633
633
632
631
629
628
627
626
626
626
626
625
625
626
625
625
625
623
622
622
622
622
622
622
622
622
622
622
622
622
623
623
623
623
622
622
621
621
621
621
621
621
621
622
622
622
621
619
618
618
618
618
619
619
619
619
618
618
619
620
621
620
620
620
620
620
621
621
621
620
620
620
621
621
622
621
620
620
621
621
620
619
619
619
619
619
619
619
620
620
620
618
622
622
621
621
622
622
622
625
625
628
629
629
629
628
628
628
629
629
630
630
630
630
630
630
630
630
630
638
638
638
636
639
639
640
642
642
643
645
645
647
649
650
650
652
655
656
658
659
659
659
658
658
658
658
658
658
658
658
657
656
656
656
656
656
656
656
655
652
653
654
654
656
657
658
658
660
660
660
660
662
663
664
665
671
673
674
678
681
682
683
684
685
688
690
691
692
692
693
694
695
696
697
698
698
699
699
699
700
700
700
700
697
695
693
690
689
688
687
683
678
678
678
678
679
680
681
681
680
680
677
676
674
672
671
670
669
667
667
668
669
670
670
670
670
669
667
665
664
662
662
663
663
663
661
660
659
658
654
654
653
650
649
648
648
641
638
637
633
632
632
632
632
632
631
630
629
628
628
628
628
627
626
626
626
627
627
627
627
627
627
627
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
628
627
627
627
627
627
627
628
628
628
627
627
627
627
627
627
627
627
627
627
627
627
627
628
628
628
627
626
626
626
626
627
628
628
627
625
625
625
626
626
629
629
629
629
629
629
629
629
629
629
629
629
629
629
632
632
632
632
632
632
632
632
632
632
633
635
635
636
636
636
637
637
637
637
638
638
639
640
640
640
639
639
639
639
639
640
641
641
642
643
643
643
643
643
644
644
644
644
645
648
648
650
651
654
656
657
657
658
660
661
664
671
672
673
676
680
689
692
695
702
704
705
708
710
712
713
714
715
718
723
724
726
728
729
730
731
731
732
733
740
741
742
744
745
746
749
750
751
752
757
764
767
769
771
774
776
780
785
787
798
803
808
816
827
829
836
838
840
842
843
845
848
851
852
854
856
865
873
877
881
882
883
883
885
886
887
888
889
890
891
892
895
896
898
900
902
903
904
904
913
914
919
921
927
932
935
937
938
941
945
949
952
967
974
992
999
1003
998
995
991
980
974
970
965
965
962
964
966
971
972
973
976
977
976
960
955
941
938
936
933
932
931
929
928
925
921
919
913
911
901
899
898
897
896
894
893
892
888
886
885
884
882
881
880
879
876
876
875
873
871
869
863
857
855
854
853
849
846
842
840
838
835
834
829
827
818
811
807
800
788
785
779
775
772
769
767
766
764
758
752
751
749
748
744
743
742
741
740
739
734
732
730
729
728
725
724
721
720
719
716
714
713
712
712
709
707
703
702
700
695
692
691
682
677
672
672
671
664
660
660
660
658
657
655
652
650
649
648
647
645
645
645
645
645
644
644
644
644
643
643
642
641
640
639
639
639
639
639
640
640
640
639
639
638
637
635
635
635
636
636
634
633
633
633
632
632
632
632
632
632
632
632
632
632
630
629
628
628
628
628
629
629
629
629
629
629
629
627
626
626
625
625
626
627
627
627
626
626
626
626
627
628
628
628
628
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
627
628
628
628
628
628
628
628
627
627
627
627
627
627
627
627
627
627
627
627
628
628
628
627
627
627
628
629
629
629
629
629
629
628
628
628
629
629
630
630
630
630
630
630
631
644
645
645
646
646
647
647
647
647
649
649
649
648
648
648
648
648
648
648
648
651
651
651
651
651
650
650
650
651
651
651
652
654
656
658
659
659
660
660
660
660
661
661
661
661
661
661
661
661
662
662
663
663
664
667
667
668
670
670
670
671
672
677
678
678
679
680
680
682
684
684
684
685
686
686
687
687
687
687
686
686
686
686
686
687
688
688
690
690
690
690
691
692
693
694
700
705
708
711
717
718
719
722
721
720
720
724
725
738
744
744
744
744
746
750
754
755
758
764
770
771
773
777
779
782
786
795
798
803
804
805
806
806
816
819
828
831
835
847
850
852
855
859
869
871
873
875
876
877
888
890
891
893
896
897
898
901
902
902
903
904
905
905
903
901
900
899
899
923
935
932
930
929
934
939
942
944
948
950
960
938
927
925
922
919
917
916
908
903
902
900
898
889
887
903
906
908
908
906
900
897
898
911
917
921
928
931
930
929
928
926
925
924
932
935
937
939
941
942
943
944
944
945
945
942
941
939
937
934
931
926
921
917
921
922
923
924
923
921
896
886
883
879
877
878
892
869
829
791
769
787
826
850
874
892
876
858
847
826
790
764
746
741
735
713
697
703
706
705
709
723
722
719
715
712
706
703
709
710
712
718
725
727
732
733
735
733
730
727
724
710
707
705
703
699
704
711
716
728
735
740
740
733
721
710
703
704
709
712
715
718
722
725
726
727
732
734
732
730
726
721
706
700
696
696
696
697
697
697
678
673
647
652
659
665
675
678
681
687
687
687
687
686
686
685
685
682
675
668
661
656
656
656
656
652
648
639
632
630
629
626
624
621
620
619
619
620
621
623
607
600
596
595
594
593
592
591
589
586
581
577
574
572
574
578
580
582
585
588
584
582
580
574
570
555
555
554
550
546
543
541
534
533
531
531
530
527
525
523
522
523
524
525
525
524
523
521
519
514
514
513
513
510
508
508
508
508
508
505
500
500
499
497
496
496
496
496
497
499
501
499
497
491
488
467
467
462
462
460
459
459
459
451
431
433
435
446
437
435
444
437
449
452
445
433
413
424
424
422
414
403
403
398
397
395
396
400
406
408
413
415
418
418
417
417
416
415
412
408
397
397
398
399
405
409
409
401
389
384
385
388
389
391
392
394
395
394
392
388
383
379
377
373
367
366
366
365
364
364
363
363
363
362
362
361
361
361
362
363
364
365
365
370
372
367
360
358
355
358
360
362
363
365
366
366
365
357
356
356
349
352
347
341
342
342
343
341
336
334
334
334
334
335
335
336
339
339
339
339
341
345
346
346
345
345
345
343
341
340
335
334
334
331
329
327
329
331
334
327
322
320
320
319
319
318
318
318
317
317
317
317
317
316
316
315
314
313
312
311
308
307
307
307
306
306
306
306
306
306
306
306
306
306
306
307
308
310
312
313
315
316
313
307
305
301
302
302
300
298
297
297
297
298
299
300
300
300
299
298
296
296
296
296
296
293
292
290
289
289
289
289
289
289
289
288
288
287
287
287
286
284
282
282
282
282
284
276
273
273
272
272
271
271
271
268
268
268
269
273
281
274
272
270
268
266
266
266
265
266
266
267
271
271
271
273
277
276
281
275
282
277
280
281
282
282
284
285
283
282
283
284
286
291
296
296
290
285
283
283