328
328
328
328
328
328
330
330
330
330
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
329
330
341
341
341
346
348
348
346
346
348
352
366
366
366
366
365
365
365
365
370
374
374
374
374
375
375
376
376
380
385
393
391
390
390
390
391
391
387
386
388
389
393
396
399
416
430
437
462
465
470
470
472
473
478
481
483
483
483
483
482
482
482
482
490
492
504
505
507
509
514
515
517
517
517
518
519
519
522
522
524
524
525
527
529
530
537
539
541
544
548
553
564
563
563
562
561
561
560
558
558
557
556
555
553
558
561
562
562
555
556
556
556
560
563
573
573
573
572
572
572
572
569
568
566
565
563
562
562
568
570
579
590
595
598
600
604
614
617
620
627
634
639
647
650
655
666
669
672
675
677
681
683
685
688
689
686
687
687
687
694
694
692
689
685
687
692
692
692
692
693
692
692
691
691
690
690
685
684
683
683
682
682
682
682
683
683
683
682
681
677
675
674
672
661
659
657
649
648
645
644
641
635
633
626
622
611
606
601
593
580
574
570
566
565
565
565
565
565
560
558
557
554
553
553
552
551
545
532
530
529
527
523
522
518
518
518
518
517
515
514
513
512
511
510
509
504
500
498
497
492
490
470
466
464
462
461
460
460
459
458
458
456
454
453
451
449
439
436
434
431
423
422
422
421
420
423
424
425
426
428
430
436
437
438
439
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
446
447
452
453
454
455
458
462
465
468
469
468
468
467
467
469
472
474
476
476
472
471
470
469
469
468
465
463
462
464
479
483
485
488
486
485
481
480
476
475
473
474
475
476
476
476
477
477
478
478
478
478
479
479
480
480
480
480
480
480
480
482
483
485
488
492
495
503
504
505
505
505
504
504
501
500
500
500
502
502
503
503
504
505
506
507
507
508
509
509
510
511
511
521
523
524
526
527
527
528
529
530
530
532
543
544
545
545
544
542
540
540
540
540
540
547
550
553
554
555
558
559
559
559
559
559
561
561
562
562
570
576
581
581
581
580
580
580
580
581
585
586
587
589
590
593
595
596
597
598
598
598
599
600
601
602
604
604
605
606
606
606
604
604
607
610
612
613
615
614
610
606
599
595
592
589
587
584
584
583
583
583
583
583
584
591
593
596
597
598
604
604
607
608
608
609
611
611
612
611
611
610
610
609
606
599
597
595
594
592
591
589
588
588
586
581
580
580
579
579
578
575
574
571
566
564
561
559
557
556
552
551
549
548
547
544
543
541
537
535
534
533
533
531
529
529
528
528
520
518
517
516
512
510
508
505
500
489
480
480
480
480
480
480
480
481
481
481
481
480
480
482
484
486
491
493
496
496
500
500
500
500
500
500
500
500
500
501
506
507
509
510
513
514
516
518
534
537
539
541
542
543
547
552
563
567
573
576
578
580
581
581
581
581
581
581
581
580
580
578
578
579
581
582
584
587
588
589
594
600
605
607
610
612
613
613
614
614
615
620
620
621
621
622
622
626
627
629
629
630
630
630
630
633
637
652
658
665
667
670
674
675
677
681
682
684
684
685
685
685
686
687
688
694
698
701
706
712
720
727
733
740
742
744
750
753
755
755
752
756
762
769
772
775
775
776
777
777
777
778
778
771
769
765
762
761
760
760
760
759
758
757
754
753
752
749
749
746
738
735
734
728
727
725
723
721
717
712
704
700
698
696
694
689
687
682
679
675
668
664
659
656
648
644
625
617
608
594
581
578
578
578
578
578
577
576
574
574
569
567
566
565
563
561
559
558
555
553
552
551
550
549
549
546
544
541
539
538
538
537
536
528
526
523
519
516
512
510
502
499
498
498
497
494
491
489
486
483
479
479
479
479
479
479
478
477
474
473
469
464
461
460
460
460
460
460
460
460
460
458
457
450
448
447
443
440
438
437
433
431
430
430
430
430
430
430
430
430
430
430
430
429
429
428
427
425
424
424
421
420
420
420
420
420
420
420
420
420
420
420
420
419
419
419
419
420
419
418
418
416
416
415
410
410
409
406
401
400
400
400
400
400
402
406
407
407
407
400
400
400
400
400
400
400
400
400
400
400
400
399
398
397
396
396
394
388
383
383
382
382
381
380
380
380
380
380
380
380
380
380
382
382
383
384
384
384
383
385
390
394
417
416
416
415
415
414
408
402
400
401
403
408
411
412
408
406
400
400
401
404
409
413
416
418
419
420
421
423
427
427
422
422
422
419
411
404
394
394
396
403
416
405
402
395
394
394
394
397
400
403
407
407
409
410
411
412
417
417
417
417
414
411
411
411
425
421
419
415
411
410
408
406
405
404
399
401
403
404
404
404
407
419
421
422
424
425
427
433
434
434
434
434
434
434
434
434
435
433
431
422
415
405
403
400
400
400
400
403
404
406
405
404
400
399
398
398
398
398
398
398
398
398
398
398
398
398
398
399
399
399
399
401
404
407
409
407
407
404
403
404
408
409
408
407
407
406
406
406
407
407
408
408
408
406
407
410
412
415
415
416
418
418
417
417
417
416
414
411
412
418
423
426
431
431
432
433
434
431
418
418
425
428
429
429
427
425
422
420
425
440
451
459
460
460
459
458
457
457
457
457
457
457
456
456
456
454
453
452
454
455
456
454
449
442
429
423
420
418
415
411
407
407
407
407
407
407
407
407
408
408
410
413
418
424
444
449
450
453
451
439
439
437
436
436
454
456
457
458
460
462
466
469
470
472
474
475
475
475
475
475
475
475
475
474
474
474
474
474
474
474
473
473
472
471
471
471
469
469
469
467
466
466
465
465
465
465
465
464
464
464
463
463
462
462
461
460
460
460
460
460
459
458
457
456
455
454
453
452
451
447
439
434
431
427
423
421
418
417
414
416
417
419
421
420
420
420
420
420
420
420
420
420
420
420
420
420
421
427
428
428
429
432
434
435
443
447
447
447
447
447
447
447
442
440
440
440
440
440
440
440
441
442
444
444
445
452
456
457
458
459
459
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
475
477
478
479
480
480
480
480
480
480
480
480
480
480
480
480
481
483
488
492
496
496
497
497
497
498
498
499
499
500
500
500
500
500
502
504
511
516
517
518
518
519
520
520
520
522
523
524
524
525
525
525
525
524
523
526
529
531
534
543
547
543
540
539
539
539
538
538
538
537
536
535
534
534
531
531
521
518
518
518
518
518
518
518
518
518
518
518
520
520
520
520
520
520
521
521
522
522
522
524
534
536
536
535
534
533
532
531
529
528
525
522
522
521
521
520
520
520
520
520
520
520
520
520
520
522
524
529
536
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
544
546
546
557
564
572
575
578
579
579
579
579
579
579
579
580
580
580
582
588
592
596
599
603
604
605
607
613
615
618
620
622
631
636
641
649
651
654
656
650
643
643
643
643
648
655
658
659
660
661
673
679
679
680
680
680
680
680
680
680
683
690
693
696
703
706
711
716
717
718
720
720
720
720
720
720
720
720
720
720
722
723
725
726
733
736
741
742
750
752
756
758
759
759
759
759
760
760
760
760
764
768
775
778
780
780
780
780
781
781
781
791
796
801
806
811
820
822
823
824
819
812
812
812
812
812
813
813
813
814
816
817
818
819
821
822
825
826
828
828
830
831
832
832
833
839
842
844
847
848
848
848
846
845
844
844
845
845
844
843
841
840
840
840
840
840
840
841
843
845
847
850
851
851
850
847
848
852
854
855
856
856
849
825
817
803
799
793
788
786
781
781
781
777
774
772
772
771
770
769
765
759
732
719
712
706
704
703
703
702
701
701
700
700
699
698
698
717
718
713
710
705
699
691
678
670
667
669
674
674
670
668
666
665
664
663
661
660
657
656
654
654
654
652
651
650
648
647
646
646
643
642
642
640
637
636
635
635
635
635
635
635
634
634
629
629
628
628
627
625
624
623
622
622
620
618
618
615
615
615
615
614
613
613
612
610
608
607
607
609
609
610
611
611
609
609
609
609
609
609
609
610
619
620
620
620
620
620
620
620
618
615
614
614
615
616
619
620
621
621
622
622
623
623
624
625
625
627
630
632
633
634
635
637
640
641
642
644
647
648
649
654
656
666
682
685
691
698
702
709
712
719
729
735
747
755
764
771
775
777
779
780
782
786
788
792
797
800
805
811
812
812
813
814
814
816
825
830
833
840
849
850
851
853
853
853
853
857
860
865
871
874
875
876
877
878
879
879
879
880
880
880
881
881
885
886
888
894
899
905
906
907
910
911
911
911
915
919
925
931
933
935
937
938
939
939
939
941
944
946
947
957
961
962
963
964
966
972
976
977
977
978
980
981
981
981
981
981
983
986
990
997
1002
1013
1014
1014
1015
1016
1019
1020
1022
1022
1023
1024
1024
1025
1026
1029
1030
1032
1033
1033
1031
1031
1030
1029
1029
1028
1027
1027
1026
1023
1021
1022
1024
1027
1037
1043
1048
1051
1053
1055
1057
1063
1070
1077
1079
1088
1090
1093
1099
1099
1099
1099
1099
1099
1099
1099
1099
1099
1100
1101
1101
1102
1103
1104
1106
1108
1109
1111
1112
1120
1125
1132
1139
1140
1140
1140
1140
1139
1138
1135
1131
1127
1123
1111
1107
1102
1100
1100
1099
1098
1097
1096
1095
1093
1093
1090
1090
1089
1076
1064
1058
1048
1042
1036
1023
1004
984
966
949
930
917
910
908
903
901
900
896
891
885
878
872
865
855
840
830
816
814
810
807
802
801
801
800
799
799
796
795
793
789
783
780
777
774
769
765
760
759
757
756
755
749
746
746
743
739
737
731
730
727
722
717
714
708
705
701
699
698
695
694
694
693
693
693
694
695
696
696
696
697
698
699
699
699
699
700
700
700
700
700
700
701
702
702
704
705
705
706
706
707
707
707
707
707
707
708
709
711
713
714
714
715
717
717
721
722
725
727
732
734
735
735
736
738
737
741
744
751
754
757
758
758
757
755
754
754
754
754
754
754
754
755
755
756
757
758
759
761
761
762
765
769
774
776
778
792
793
797
798
798
799
801
817
823
834
855
868
873
876
887
899
903
905
916
922
926
931
932
935
937
941
945
948
954
956
956
958
959
962
964
965
973
970
966
963
959
959
959
959
959
959
960
960
960
961
962
963
964
965
965
966
966
970
970
971
973
975
979
980
981
982
983
983
982
981
981
980
980
980
980
980
980
980
980
980
980
989
992
993
994
996
997
997
998
998
998
998
999
999
999
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1006
1015
1019
1019
1019
1020
1020
1020
1020
1021
1022
1024
1025
1027
1029
1031
1033
1036
1038
1039
1040
1045
1051
1055
1056
1058
1058
1073
1083
1089
1094
1097
1100
1103
1109
1129
1130
1131
1132
1132
1133
1133
1138
1140
1140
1140
1144
1150
1157
1162
1168
1173
1176
1178
1186
1193
1203
1223
1234
1235
1235
1235
1235
1234
1234
1234
1234
1234
1235
1235
1235
1236
1236
1237
1237
1238
1239
1243
1245
1249
1251
1252
1255
1258
1260
1261
1265
1267
1265
1264
1263
1262
1262
1261
1261
1261
1261
1261
1261
1262
1264
1265
1268
1269
1269
1269
1269
1269
1268
1265
1262
1259
1253
1250
1249
1247
1246
1242
1233
1227
1226
1226
1228
1231
1232
1233
1234
1233
1232
1230
1230
1229
1227
1227
1227
1227
1227
1228
1229
1230
1231
1232
1232
1234
1234
1234
1233
1233
1232
1231
1230
1228
1229
1230
1230
1231
1231
1232
1235
1238
1238
1238
1240
1242
1246
1252
1255
1257
1257
1256
1255
1254
1254
1249
1244
1241
1238
1227
1225
1222
1212
1207
1201
1195
1189
1186
1181
1179
1177
1176
1175
1173
1172
1171
1171
1169
1166
1162
1160
1160
1159
1159
1159
1158
1158
1157
1155
1154
1153
1152
1151
1149
1147
1146
1140
1140
1140
1140
1140
1139
1139
1139
1139
1139
1138
1137
1136
1135
1130
1128
1127
1125
1122
1120
1120
1120
1120
1119
1119
1119
1117
1117
1116
1116
1115
1114
1112
1112
1112
1111
1111
1110
1108
1107
1106
1106
1105
1104
1103
1103
1102
1101
1100
1100
1100
1100
1100
1100
1100
1100
1100
1101
1101
1101
1100
1098
1097
1097
1095
1094
1092
1091
1090
1089
1089
1087
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1080
1079
1079
1076
1074
1072
1070
1068
1067
1066
1066
1065
1064
1064
1063
1062
1061
1060
1060
1060
1060
1060
1060
1060
1060
1060
1060
1060
1060
1060
1060
1060
1059
1059
1055
1048
1042
1040
1040
1039
1038
1038
1035
1035
1035
1036
1037
1033
1029
1027
1025
1025
1025
1024
1024
1022
1019
1018
1018
1017
1016
1016
1015
1015
1014
1012
1006
1006
1009
1011
1014
1015
1009
1005
1002
999
1002
1003
1003
1002
1000
999
999
999
999
999
999
998
997
996
995
993
991
990
988
987
987
988
990
990
989
987
981
978
977
975
975
974
973
972
971
970
970
970
970
970
970
971
971
971
971
971
971
971
971
971
971
971
970
970
969
967
965
964
962
962
962
960
960
959
959
956
955
953
953
952
952
951
951
951
951
951
951
951
951
948
946
945
946
947
948
951
951
952
954
954
954
954
955
958
961
964
968
968
967
962
960
957
953
945
939
939
939
939
939
939
933
933
935
942
943
943
937
933
925
923
920
917
914
913
913
913
913
914
914
914
914
914
914
914
914
914
914
914
914
914
913
912
911
911
910
910
910
910
910
910
910
910
909
909
908
908
908
908
909
910
910
911
912
913
914
914
915
916
916
917
918
917
917
914
913
910
909
908
907
907
906
906
905
905
905
904
904
903
903
903
903
903
903
902
902
902
901
901
900
900
900
900
900
899
899
898
898
898
898
899
899
898
897
900
901
902
903
905
906
912
914
917
918
917
917
915
914
913
913
913
914
915
916
917
917
917
917
917
915
913
907
904
901
896
893
893
894
895
895
896
897
899
899
899
899
899
898
898
898
898
898
896
895
893
893
892
891
891
890
890
890
890
890
891
891
888
887
887
887
887
887
882
876
873
871
870
868
865
863
860
858
857
856
855
855
854
854
854
851
851
851
848
843
842
842
842
840
839
838
839
838
835
833
832
822
822
820
820
820
820
820
819
818
817
817
815
814
813
810
809
808
806
805
804
804
804
804
804
805
806
807
808
809
809
810
811
813
816
814
813
811
805
805
805
802
799
797
794
787