520
519
519
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
515
515
515
515
515
515
515
516
516
516
516
516
516
516
516
515
515
515
515
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
515
515
515
515
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
516
517
517
517
517
517
518
518
518
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
518
518
518
518
517
517
517
517
517
517
517
517
517
517
517
517
517
517
517
517
517
517
517
518
518
518
518
518
518
518
518
518
518
518
518
518
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
520
520
520
520
520
520
520
520
521
521
521
521
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
522
523
523
523
523
523
523
523
523
523
523
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
525
525
525
525
525
525
526
526
526
526
526
526
527
527
527
527
527
527
528
528
528
528
529
529
529
529
529
529
529
529
529
529
529
529
530
531
531
532
532
533
533
534
534
535
535
535
536
536
537
538
539
539
539
539
539
539
539
540
540
540
540
540
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
541
544
545
546
547
548
549
549
550
551
552
553
554
554
555
555
558
558
559
559
560
561
561
562
563
563
564
564
565
566
566
567
567
568
568
568
568
569
569
569
570
570
570
571
571
572
572
572
572
573
573
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
592
592
593
594
595
595
595
595
594
594
594
594
593
593
592
592
592
591
591
591
590
590
590
590
589
589
588
588
588
588
588
588
589
589
590
590
591
591
592
592
593
593
594
594
595
595
596
596
596
597
597
598
599
599
600
600
601
601
602
602
603
603
604
604
605
605
606
606
607
607
608
608
609
610
610
611
611
612
613
614
614
615
616
617
618
618
619
620
620
621
622
623
623
624
625
626
627
628
628
629
630
631
631
631
632
632
632
633
633
633
634
634
634
635
635
635
635
636
636
636
637
637
637
638
638
638
639
639
640
640
641
641
642
642
643
643
644
645
645
646
646
647
647
648
649
649
650
650
651
651
652
653
653
654
655
655
655
656
656
657
657
657
658
659
659
659
660
660
661
661
662
662
663
664
664
665
666
667
668
668
669
670
671
672
672
673
675
676
678
679
681
682
683
683
683
683
682
682
682
681
681
681
680
680
680
679
679
679
679
678
678
678
677
677
677
677
676
676
676
676
675
675
675
675
675
674
674
674
674
674
674
675
676
677
678
679
679
680
681
682
683
684
684
685
686
687
688
689
689
690
691
693
693
694
695
695
696
696
696
697
698
698
699
699
700
700
701
701
702
702
703
703
704
704
705
705
706
706
707
707
708
709
710
710
711
712
713
713
714
715
715
716
717
717
718
719
720
721
721
722
723
723
724
725
726
726
727
728
728
729
730
730
731
732
732
733
734
734
735
736
736
737
737
738
739
740
741
741
742
743
743
744
745
746
746
747
747
748
749
749
750
750
751
752
753
754
754
755
756
756
757
758
760
760
762
763
764
766
767
768
768
769
770
772
773
774
775
776
777
778
779
780
780
780
780
780
780
780
780
780
780
780
780
781
781
781
781
781
781
781
781
781
781
781
781
781
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
797
799
799
800
801
802
803
804
805
806
806
807
807
808
809
809
810
810
811
812
812
813
813
814
815
815
816
816
817
817
818
818
819
820
820
821
822
823
823
824
824
825
826
827
827
828
828
829
830
830
831
832
833
834
835
836
837
839
840
842
843
844
846
848
849
851
852
854
855
856
857
859
861
862
864
866
867
869
869
869
869
869
869
869
869
870
870
870
870
870
870
870
870
870
871
871
871
871
871
871
871
871
871
872
872
873
873
874
874
875
875
876
876
877
877
878
878
879
879
880
881
881
881
882
882
883
883
884
884
884
885
886
886
887
888
888
888
889
889
890
891
891
892
892
892
893
894
895
895
896
897
898
898
899
899
900
900
901
901
901
902
902
903
903
904
904
904
905
905
906
906
906
907
907
908
908
908
908
908
908
909
909
909
909
909
910
910
910
910
910
910
911
911
911
911
911
911
912
913
914
914
915
916
917
917
918
919
920
920
921
922
923
923
924
925
925
926
927
927
928
929
930
930
931
932
932
933
934
934
935
936
937
937
938
939
940
941
942
943
944
945
946
947
947
948
949
950
951
951
952
952
953
954
954
955
956
956
957
958
958
959
959
960
960
961
961
962
962
962
963
965
965
966
968
969
970
971
972
973
974
975
976
977
978
980
981
982
983
984
985
986
987
988
988
988
989
989
989
990
990
990
990
991
991
991
992
992
993
993
994
994
994
995
995
995
996
998
999
1001
1003
1005
1007
1009
1011
1013
1016
1018
1019
1022
1023
1025
1027
1029
1030
1032
1033
1034
1036
1038
1040
1040
1040
1040
1039
1039
1039
1038
1038
1038
1037
1037
1036
1036
1036
1035
1035
1035
1035
1034
1034
1034
1033
1033
1033
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1044
1045
1046
1048
1049
1049
1051
1052
1054
1055
1055
1056
1057
1058
1059
1060
1060
1061
1061
1062
1062
1063
1064
1065
1066
1066
1067
1067
1068
1068
1069
1070
1071
1071
1055
1054
1054
1055
1056
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1066
1068
1068
1069
1071
1071
1072
1073
1074
1074
1074
1075
1075
1076
1076
1076
1077
1077
1078
1078
1078
1079
1079
1079
1080
1080
1080
1081
1081
1082
1082
1082
1083
1083
1083
1084
1084
1085
1085
1085
1086
1086
1087
1087
1087
1088
1088
1089
1089
1089
1090
1090
1091
1091
1091
1092
1093
1093
1094
1095
1096
1096
1098
1099
1099
1100
1101
1102
1102
1103
1104
1105
1106
1107
1107
1109
1110
1111
1112
1112
1113
1113
1114
1114
1115
1115
1115
1116
1117
1117
1118
1119
1119
1120
1120
1121
1121
1122
1122
1123
1123
1124
1124
1125
1125
1126
1126
1126
1127
1127
1127
1128
1128
1129
1129
1130
1130
1130
1131
1131
1132
1132
1132
1133
1133
1134
1134
1134
1135
1135
1136
1136
1136
1137
1137
1138
1138
1138
1139
1140
1140
1140
1141
1141
1142
1142
1143
1143
1144
1144
1144
1145
1145
1145
1146
1146
1146
1146
1147
1147
1147
1147
1148
1148
1148
1148
1149
1149
1149
1149
1150
1150
1150
1150
1150
1150
1151
1151
1151
1152
1152
1152
1152
1152
1152
1153
1153
1153
1153
1154
1154
1154
1154
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1172
1173
1174
1175
1177
1178
1179
1181
1181
1181
1182
1183
1183
1184
1185
1185
1186
1186
1187
1187
1188
1189
1189
1189
1190
1191
1191
1192
1192
1193
1194
1194
1195
1195
1196
1196
1197
1197
1198
1198
1199
1199
1200
1200
1201
1202
1202
1202
1203
1203
1204
1204
1205
1205
1206
1207
1208
1209
1209
1210
1211
1212
1213
1214
1214
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1226
1226
1226
1225
1225
1224
1224
1223
1223
1223
1222
1222
1222
1221
1221
1220
1220
1219
1219
1219
1218
1218
1217
1217
1216
1215
1214
1214
1213
1212
1211
1210
1209
1208
1207
1206
1206
1204
1203
1202
1201
1200
1199
1199
1199
1198
1197
1196
1195
1194
1193
1193
1193
1192
1192
1191
1190
1190
1189
1189
1188
1188
1187
1187
1186
1186
1185
1185
1184
1184
1183
1183
1183
1181
1180
1179
1178
1177
1176
1174
1172
1171
1170
1168
1167
1166
1165
1164
1163
1162
1161
1160
1159
1158
1156
1156
1155
1154
1154
1153
1152
1151
1151
1150
1149
1148
1147
1147
1146
1145
1145
1144
1143
1143
1142
1141
1140
1140
1139
1138
1137
1136
1135
1134
1133
1132
1131
1130
1129
1129
1128
1127
1126
1125
1124
1123
1122
1121
1120
1119
1119
1118
1116
1115
1115
1114
1114
1113
1112
1111
1110
1109
1108
1107
1107
1106
1105
1104
1104
1103
1102
1101
1100
1099
1098
1098
1097
1096
1096
1096
1095
1095
1095
1094
1094
1094
1093
1093
1092
1091
1090
1090
1089
1088
1087
1087
1086
1086
1085
1084
1083
1082
1081
1080
1079
1078
1077
1075
1074
1073
1072
1071
1070
1070
1069
1068
1067
1066
1066
1065
1064
1063
1063
1062
1061
1061
1060
1060
1059
1058
1057
1055
1054
1054
1053
1053
1052
1052
1052
1051
1051
1051
1050
1049
1049
1048
1048
1047
1047
1046
1045
1045
1044
1043
1042
1041
1041
1040
1039
1038
1037
1037
1036
1035
1034
1033
1033
1033
1033
1034
1034
1035
1035
1036
1036
1037
1037
1037
1036
1035
1034
1033
1031
1030
1029
1027
1026
1025
1024
1023
1022
1021
1021
1020
1020
1019
1019
1018
1018
1017
1017
1016
1015
1014
1013
1012
1011
1009
1008
1007
1006
1005
1004
1003
1003
1002
1001
998
996
995
994
994
993
993
992
991
991
990
989
988
988
987
986
985
985
984
983
982
981
980
978
977
977
976
976
975
975
975
974
974
973
972
972
971
970
969
968
967
966
965
964
963
962
961
959
958
956
955
953
952
951
950
949
947
945
943
941
939
937
935
933
931
930
928
927
926
925
924
923
923
922
921
920
919
918
918
917
917
916
916
915
915
914
914
913
913
912
912
912
912
912
911
911
910
910
909
908
907
907
906
905
905
904
904
903
903
902
896
894
893
890
889
887
886
884
882
880
877
875
873
653
651
648
646
643
641
639
636
635
635
635
635
634
634
634
633
633
633
633
632
631
630
628
627
625
624
623
621
619
617
615
613
612
610
609
608
606
605
603
601
599
598
596
595
595
595
595
595
595
595
595
595
595
595
595
595
593
592
590
588
586
584
582
581
579
578
577
576
575
574
572
572
572
572
572
571
571
571
571
570
570
570
570
570
569
569
569
569
567
566
565
564
563
562
560
559
558
557
556
554
553
551
551
550
549
548
547
546
545
545
544
543
542
542
542
542
542
542
542
542
542
542
542
542
542
542
542
542
541
541
541
540
540
539
539
538
537
536
535
534
532
531
530
529
529
529
529
529
529
529
529
528
528
528
527
527
527
526
526
526
525
525
525
525
525
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
524
523
523
523
523
523
522
522
522
522
522
522
521
521
521
521
521
521
521
521
521
521
521
521
521
521
521
521
521
522
522
523
523
523
524
524
524
525
525
526
526
526
527
527
527
527
527
527
527
527
527
527
527
528
528
528
528
528
528
528
528
528
527
527
527
526
526
525
525
525
524
523
522
521
521
520
520
519
519
519
518
518
518
517
517
517
517
517
516
516
516
516
516
516
516
516
516
516
516
516
516
516
517
517
517
517
517
517
518
518
518
518
518
518
518
518
518
518
518
518
518
518
519
519
519
519
519
519
519
520
520
520
520
520
520
520
520
520
520
520
520
520
520
520
519
519
519
519
519
519
519
519
518
518
518
518
518
517
517
517
517
516
516
516
516
516
516
515
515
515
515
515
515
514
514
514
514
515
515
515
515
515
515
515
515
515
515
514
514
514
514
514
514
513
513
513
513
513
512
512
512
512
511
511
511
511
511
511
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
510
511
511
511
511
511
511
511
511
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
512
513
513
513
513
513
513
513
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
514
513
513
513
513
513
513
513
513
513
513
513
513
513
513
513
513
513
514
514
514
515
515
515
516
516
516
517
517
517
517
517
518
518
518
518
518
518
518
518
519
519
519
519
519
519
519
519
519