628
627
627
627
626
623
623
622
622
617
615
610
610
610
603
599
594
592
590
590
590
586
585
585
585
585
585
585
586
586
588
589
590
591
592
595
596
596
597
597
598
600
601
601
601
601
605
606
607
610
612
615
619
621
623
623
623
623
623
623
623
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
624
623
623
623
623
623
622
622
622
622
622
622
622
622
622
622
621
621
621
621
621
621
620
620
620
620
620
620
620
620
620
621
621
621
621
621
621
623
623
624
624
624
625
625
625
625
625
625
625
625
625
625
625
625
625
623
623
623
623
623
623
623
622
622
622
622
623
623
623
623
623
624
624
624
624
624
626
627
627
627
627
627
627
627
627
627
631
631
631
631
631
631
631
631
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
634
633
633
633
633
633
633
633
633
633
633
633
633
633
632
632
631
631
631
631
630
630
630
630
630
629
629
626
626
626
626
625
625
624
624
623
623
622
618
618
616
615
613
612
612
611
607
606
606
605
603
602
600
600
599
599
599
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
598
597
597
597
597
597
596
596
596
596
595
595
595
595
594
594
594
594
594
594
593
593
592
592
592
591
591
591
590
590
590
590
590
590
589
589
589
588
588
587
587
587
587
589
590
590
591
591
592
592
592
592
592
592
592
592
592
593
593
593
593
594
595
595
595
595
595
595
595
596
596
596
596
596
597
598
600
601
600
598
597
595
593
592
592
588
587
585
584
582
581
580
580
580
580
580
580
579
579
571
571
570
570
570
570
570
570
570
569
569
569
569
569
569
568
568
566
565
565
562
562
559
556
556
556
556
556
556
555
547
546
546
546
544
544
544
543
542
542
541
541
538
538
538
538
537
537
537
537
537
536
536
536
536
535
535
533
533
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
532
533
533
533
533
533
533
533
533
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
534
535
535
535
536
536
536
537
537
538
538
539
542
542
543
560
560
561
561
561
561
562
562
562
562
568
569
572
573
573
573
573
573
586
587
587
588
588
588
589
591
591
591
593
594
594
594
594
594
595
595
595
598
599
600
602
603
603
604
604
604
604
604
607
608
609
609
611
613
614
614
617
618
618
618
619
619
620
621
622
624
624
624
624
624
625
625
627
627
628
628
629
629
630
631
632
633
633
634
634
634
634
635
635
635
636
636
637
637
639
640
642
644
645
647
647
649
652
655
659
660
660
661
661
661
661
662
662
663
664
665
665
667
668
669
671
672
675
677
686
687
688
693
695
716
717
719
721
723
725
728
736
737
737
743
753
753
752
752
752
751
750
749
748
748
746
746
745
745
745
745
745
745
745
745
745
744
744
744
741
740
739
735
734
734
734
734
734
733
733
733
733
733
727
717
715
714
712
711
710
709
702
696
693
690
686
683
680
678
676
672
657
653
650
648
646
644
641
638
635
626
621
618
614
612
612
609
598
594
588
587
586
585
584
584
583
583
582
582
582
581
581
580
579
579
578
577
577
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
576
575
575
575
575
575
575
575
574
574
574
574
574
574
573
573
573
573
573
573
573
573
572
572
572
572
572
573
574
575
575
575
576
576
577
577
577
577
577
578
578
579
579
579
579
580
580
580
580
580
580
581
581
581
581
582
584
584
584
584
584
585
585
585
585
585
586
586
586
586
586
586
586
586
586
585
585
585
585
585
585
585
585
584
584
584
584
584
583
583
583
583
583
583
583
583
583
582
582
582
582
582
582
582
582
581
581
581
581
581
581
581
581
581
581
581
581
581
582
582
582
582
582
582
582
582
583
583
583
583
583
584
584
584
584
584
584
584
585
585
585
585
585
585
585
586
586
586
586
586
586
586
586
586
586
586
586
586
586
586
586
586
586
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
588
588
588
588
588
588
588
588
588
588
588
588
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
589
590
590
590
590
591
592
592
592
593
593
595
595
596
596
596
600
601
602
602
602
603
603
603
604
605
606
607
607
607
608
609
612
612
613
618
620
621
623
623
624
626
627
629
630
631
636
636
637
637
638
638
638
639
642
643
646
647
647
649
650
651
654
664
665
666
666
667
667
671
671
672
673
674
675
679
680
681
683
690
693
695
697
697
697
700
700
701
704
704
705
710
710
715
716
717
720
724
725
726
727
728
729
730
730
731
732
734
735
735
736
736
736
737
737
738
740
742
743
744
745
746
746
747
748
749
750
750
751
752
753
753
754
754
754
753
752
752
752
752
752
752
752
751
751
751
751
751
751
751
750
750
750
750
750
745
744
743
743
741
739
737
736
733
732
730
729
727
726
726
725
722
720
715
713
712
710
708
707
705
696
693
692
691
690
679
678
671
668
666
663
661
660
659
659
658
658
655
652
650
648
646
645
645
644
643
641
640
640
639
638
638
638
637
637
636
636
635
634
633
633
632
632
631
629
628
627
624
624
623
622
621
618
617
616
615
615
616
617
617
617
617
617
618
618
618
618
618
619
619
619
619
619
619
620
620
620
620
620
621
621
621
621
622
622
622
622
623
623
623
625
625
626
626
624
623
621
620
620
619
618
616
615
613
612
611
609
609
608
607
604
603
603
602
601
600
598
596
588
581
577
573
572
569
567
567
566
566
566
566
566
566
566
566
565
565
565
565
565
565
565
564
564
563
563
563
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
563
563
563
563
563
563
564
565
565
565
566
566
569
569
569
569
569
576
576
576
577
587
587
590
591
593
593
593
597
598
599
602
602
608
610
612
616
618
620
622
624
628
629
639
690
688
687
687
686
686
686
685
683
682
680
676
674
666
671
672
687
687
688
689
690
691
692
694
721
724
727
729
732
733
734
735
736
737
738
739
740
741
743
746
747
750
751
757
757
759
759
761
762
763
763
765
766
766
767
769
769
770
771
772
773
773
774
775
775
776
776
777
778
782
787
790
791
793
795
798
801
803
832
844
865
870
873
877
879
879
881
881
882
882
883
884
887
887
887
888
888
888
888
889
889
890
889
889
889
889
889
889
889
888
888
888
888
888
888
888
888
888
887
887
887
887
886
886
886
886
886
886
886
887
887
890
891
895
895
896
896
897
898
898
902
903
905
906
907
908
908
908
908
909
909
910
910
910
910
910
910
911
911
911
913
913
914
914
915
915
915
916
916
916
917
917
917
918
918
918
919
919
919
919
919
920
920
920
920
921
922
924
927
935
935
939
941
945
946
950
953
956
962
965
969
972
982
984
985
998
1000
1002
1017
1020
1022
1024
1030
1033
1040
1043
1047
1049
1053
1056
1059
1060
1064
1067
1068
1068
1069
1069
1071
1076
1078
1079
1081
1083
1086
1087
1091
1089
1088
1087
1083
1079
1076
1076
1073
1063
1059
1055
1053
1052
1050
1047
1042
1041
1040
1039
1037
1032
1015
1014
1013
1012
1011
1011
1010
1006
1000
999
998
998
996
994
990
977
975
972
970
969
967
958
956
955
951
951
950
947
946
946
945
945
944
944
943
943
943
942
941
940
939
938
937
933
931
930
926
920
904
897
896
885
884
881
880
876
876
877
884
884
885
891
892
900
901
902
906
907
911
912
912
918
918
919
919
920
920
921
921
921
921
921
922
922
922
922
922
922
923
923
923
923
924
924
925
926
930
930
930
932
932
932
932
930
930
928
925
925
923
922
920
918
917
917
916
913
912
911
910
910
909
907
906
902
900
899
895
891
888
884
878
878
877
872
871
870
867
865
859
858
857
856
855
852
850
846
845
844
843
839
838
836
835
834
833
833
832
832
831
829
825
824
824
823
822
822
819
818
818
818
817
817
816
816
815
815
814
813
813
810
809
808
808
801
801
800
800
799
799
797
796
796
796
796
796
796
796
797
797
797
797
797
798
798
799
799
799
800
800
800
800
800
800
800
801
801
802
802
802
802
803
804
804
805
806
806
808
809
811
813
812
810
808
806
802
800
798
795
791
783
780
781
782
782
783
783
784
784
785
785
785
786
787
788
789
790
790
791
791
792
793
793
794
794
796
798
798
799
799
800
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
805
806
809
811
812
814
815
816
818
821
826
830
830
830
830
829
829
829
829
829
829
829
829
829
828
828
828
827
827
827
827
827
827
828
828
828
828
828
829
829
829
829
829
830
831
831
832
832
832
833
836
837
837
838
838
839
841
841
841
842
842
843
843
843
843
843
843
843
843
843
843
843
842
842
842
842
842
842
842
841
841
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
844
845
846
846
851
852
853
859
860
860
861
863
863
863
863
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
864
865
866
867
867
867
867
867
867
867
868
869
869
869
870
870
870
871
871
871
871
872
872
873
874
875
875
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
876
878
878
885
886
886
887
892
892
892
895
895
896
896
896
897
898
898
898
900
903
904
904
904
905
905
905
906
906
906
906
906
906
906
906
907
907
907
907
907
907
907
907
907
908
908
908
908
908
909
909
909
909
909
909
909
909
909
909
909
909
909
909
910
910
910
910
910
910
910
910
910
910
910
910
910
911
911
911
911
911
911
911
912
915
916
918
919
920
921
921
923
924
924
930
930
930
931
931
935
937
944
946
947
947
950
953
953
953
954
955
955
956
958
958
959
959
960
966
966
967
967
970
971
971
971
971
971
971
972
973
973
973
974
974
981
982
988
989
996
997
1001
1009
1024
1030
1034
1045
1051
1057
1064
1075
1078
1080
1083
1085
1090
1093
1099
1103
1105
1108
1109
1110
1112
1116
1118
1119
1121
1123
1135
1136
1137
1139
1140
1142
1152
1154
1153
1149
1146
1144
1139
1133
1132
1128
1127
1106
1097
1092
1087
1083
1075
1073
1069
1058
1056
1049
1046
1043
1042
1039
1038
1037
1036
1035
1034
1028
1026
1022
1022
1019
1018
1017
1016
1015
1015
1014
1013
1012
1010
1008
1007
1007
1006
1006
1003
1003
1002
1001
1000
998
997
997
995
990
987
980
966
966
966
966
967
967
967
968
968
968
968
968
968
968
968
969
969
969
969
967
966
965
957
956
956
952
950
949
949
947
946
945
942
941
939
939
938
935
934
925
925
924
923
921
921
921
920
919
919
919
919
919
918
918
918
918
917
917
917
917
917
917
917
917
918
920
921
922
922
922
923
923
924
924
925
926
926
926
927
928
928
929
929
932
932
936
939
944
944
945
946
946
945
943
942
938
938
936
936
933
933
933
932
932
932
931
930
930
929
928
927
926
926
925
925
925
925
926
927
928
932
933
934
936
936
942
942
942
943
943
944
944
943
942
939
938
937
935
934
933
932
930
928
927
926
925
925
924
923
923
923
923
923
922
920
919
919
919
919
918
918
918
918
919
919
919
919
919
919
919
920
920
920
920
920
920
921
921
922
926
928
928
929
929
929
929
929
930
932
934
934
935
935
936
937
937
937
937
937
938
938
938
939
939
939
940
940
941
941
942
943
944
944
944
944
944
944
944
945
945
945
946
946
946
947
947
947
948
948
948
948
948
948
948
949
949
950
950
950
950
951
951
951
951
951
952
952
953
953
953
954
955
955
955
956
956
956
956
956
956
957
957
958
958
959
959
959
960
961
962
962
963
963
964
964
965
965
966
966
968
968
969
971
971
971
974
975
975
977
977
977
978
978
979
980
981
981
982
982
982
983
983
984
984
985
985
985
985
986
987
987
987
987
988
988
989
989
990
990
990
991
991
992
992
992
992
993
994
994
994
994
995
996
996
997
998
1001
1002
1003
1004
1005
1007
1008
1009
1011
1011
1012
1013
1013
1014
1014
1015
1016
1016
1017
1017
1017
1018
1019
1020
1021
1022
1024
1024
1025
1026
1027
1027
1027
1029
1029
1031
1032
1032
1034
1035
1036
1036
1036
1036
1038
1039
1039
1040
1045
1046
1047
1047
1048
1053
1053
1054
1058
1059
1060
1061
1066
1066
1067
1067
1069
1070
1072
1073
1073
1074
1076
1077
1078
1080
1081
1082
1082
1083
1084
1085
1086
1087
1091
1091
1092
1092
1092
1093
1093
1096
1098
1099
1100
1102
1103
1105
1106
1107
1108
1111
1113
1113
1114
1114
1114
1115
1116
1118
1121
1122
1123
1124
1125
1126
1128
1129
1129
1130
1130
1130
1131
1134
1135
1137
1138
1139
1140
1141
1146
1147
1150
1152
1153
1155
1155
1159
1160
1161
1165
1165
1166
1172
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1173
1175
1179
1181
1181
1182
1186
1187
1188
1190
1193
1194
1195
1200
1204
1205
1206
1206
1209
1210
1210
1220
1229
1232
1232
1236
1239
1240
1241
1247
1249
1250
1252
1255
1256
1256
1256
1257
1266
1267
1270
1274
1275
1275
1277
1281
1286
1287
1294
1295
1296
1298
1299
1299
1299
1300
1302
1302
1304
1304
1306
1313
1314
1315
1318
1319
1322
1319
1318
1318
1308
1307
1307
1306
1294
1294
1293
1291
1290
1288
1287
1285
1285
1284
1283
1282
1281
1281
1280
1278
1276
1273
1273
1271
1271
1270
1269
1269
1268
1267
1267
1266
1265
1265
1261
1261
1261
1261
1261
1261
1261
1262
1262
1262
1262
1263
1263
1263
1264
1264
1264
1264
1265
1266
1268
1269
1269
1270
1270
1272
1273
1284
1287
1288
1289
1294
1296
1297
1298
1303
1304
1306
1310
1311
1320
1321
1322
1322
1324
1329
1331
1333
1335
1338
1341
1343
1346
1347
1348
1349
1351
1352
1358
1361
1361
1360
1360
1360
1359
1359
1359
1359
1358
1357
1357
1356
1356
1355
1353
1353
1353
1353
1354
1355
1357
1360
1361
1362
1364
1365
1366
1366
1367
1369
1373
1375
1378
1380
1387
1391
1393
1394
1395
1397
1398
1399
1401
1403
1405
1404
1403
1395
1395
1393
1392
1390
1388
1387
1385
1385
1384
1384
1380
1378
1368
1367
1365
1359
1358
1358
1357
1356
1355
1354
1352
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1349
1350
1350
1351
1352
1352
1354
1356
1356
1357
1358
1358
1360
1362
1363
1365
1367
1368
1372
1373
1374
1377
1383
1384
1385
1386
1387
1388
1389
1390
1390
1390
1390
1391
1391
1391
1392
1392
1395
1396
1396
1396
1398
1399
1399
1400
1401
1401
1402
1402
1403
1403
1404
1404
1404
1405
1405
1406
1406
1407
1407
1408
1409
1412
1412
1412
1413
1413
1414
1414
1414
1416
1417
1418
1421
1423
1424
1425
1427
1428
1430
1432
1433
1433
1434
1434
1435
1435
1436
1436
1437
1437
1438
1440
1441
1447
1449
1453
1454
1455
1456
1457
1457
1457
1458
1458
1458
1459
1460
1461
1461
1461
1461
1461
1461
1462
1462
1462
1463
1463
1463
1464
1464
1465
1465
1466
1466
1467
1467
1467
1468
1468
1469
1470
1470
1470
1470
1470
1470
1469
1469
1469
1468
1468
1468
1466
1466
1464
1463
1462
1461
1461
1461
1460
1460
1460
1459
1457
1456
1455
1454
1453
1451
1447
1443
1441
1438
1437
1435
1433
1432
1431
1431
1430
1428
1426
1424
1412
1411
1409
1408
1406
1405
1404
1400
1399
1393
1391
1390
1389
1387
1386
1386
1385
1384
1381
1379
1378
1378
1377
1376
1376
1375
1374
1374
1371
1367
1367
1366
1364
1363
1361
1361
1359
1358
1356
1355
1355
1353
1351
1350
1349
1347
1345
1344
1343
1343
1342
1342
1337
1336
1335
1334
1334
1333
1332
1331
1330
1328
1328
1327
1326
1324
1323
1323
1322
1322
1322
1321
1319
1316
1315
1315
1313
1311
1307
1302
1300
1298
1297
1297
1297
1297
1296
1296
1296
1295
1295
1295
1295
1294
1294
1294
1294
1294
1294
1294
1294
1293
1293
1293
1293
1293
1292
1291
1291
1291
1291
1291
1290
1290
1290
1289
1289
1288
1288
1287
1287
1286
1286
1285
1285
1284
1284
1283
1282
1281
1280
1280
1279
1277
1277
1277
1275
1275
1275
1275
1274
1274
1273
1271
1270
1270
1267
1267
1267
1265
1262
1262
1261
1261
1260
1258
1257
1256
1254
1254
1253
1252
1249
1248
1245
1242
1242
1241
1241
1241
1240
1240
1239
1239
1238
1237
1235
1233
1233
1232
1232
1232
1231
1231
1231
1231
1230
1230
1229
1228
1227
1226
1226
1226
1226
1226
1225
1224
1223
1223
1220
1220
1220
1218
1218
1217
1217
1216
1216
1213
1209
1209
1208
1207
1207
1207
1197
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1191
1192
1192
1192
1192
1192
1192
1192
1192
1192
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1193
1194
1194
1194
1194
1194
1195
1195
1195
1195
1195
1195
1195
1195
1195
1195
1195
1195
1196
1196
1196
1196
1196
1196
1196
1196
1196
1196
1196
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1197
1198
1199
1200
1202
1203
1203
1203
1203
1203
1204
1204
1205
1205
1205
1206
1206
1206
1207
1207
1207
1208
1208
1208
1209
1209
1209
1209
1209
1209
1209
1209
1208
1208
1208
1208
1207
1207
1206
1206
1206
1206
1207
1208
1218
1218
1219
1220
1220
1221
1221
1222
1223
1223
1223
1224
1224
1224
1227
1228
1229
1231
1231
1231
1230
1230
1230
1230
1229
1229
1229
1228
1228
1228
1228
1228
1228
1227
1227
1227
1227
1225
1225
1222
1225
1226
1226
1227
1228
1228
1228
1229
1229
1229
1229
1231
1231
1231
1231
1232
1232
1235
1236
1237
1239
1241
1242
1243
1245
1245
1246
1246
1246
1247
1251
1260
1269
1271
1273
1275
1276
1277
1279
1281
1282
1284
1285
1287
1289
1291
1298
1300
1302
1319
1322
1327
1329
1333
1336
1338
1343
1345
1346
1347
1353
1354
1358
1362
1367
1370
1373
1376
1376
1380
1384
1384
1385
1386
1387
1388
1390
1390
1391
1392
1393
1395
1396
1399
1401
1404
1406
1407
1408
1410
1412
1414
1416
1419
1422
1425
1426
1433
1435
1437
1441
1442
1443
1444
1451
1453
1454
1455
1456
1457
1460
1461
1466
1468
1470
1472
1474
1480
1482
1484
1485
1489
1490
1490
1493
1494
1497
1499
1501
1503
1504
1506
1508
1509
1510
1511
1513
1513
1514
1515
1516
1518
1521
1521
1522
1524
1526
1527
1530
1531
1532
1534
1538
1538
1539
1540
1540
1543
1543
1544
1545
1546
1546
1548
1554
1554
1555
1555
1556
1557
1559
1561
1561
1563
1565
1570
1571
1573
1574
1579
1582
1584
1590
1590
1591
1593
1593
1594
1594
1595
1596
1597
1604
1606
1607
1610
1615
1616
1617
1618
1619
1619
1619
1619
1619
1619
1619
1619
1619
1619
1619
1619
1620
1620
1620
1620
1620
1620
1620
1620
1620
1620
1620
1620
1621
1621
1621
1621
1621
1621
1621
1621
1622
1622
1622
1622
1622
1622
1622
1622
1622
1622
1623
1623
1623
1623
1623
1624
1624
1624
1624
1624
1624
1624
1624
1624
1624
1623
1623
1622
1622
1622
1621
1621
1620
1620
1618
1617
1617
1616
1616
1615
1615
1614
1614
1614
1614
1613
1613
1613
1613
1612
1612
1612
1612
1611
1611
1610
1610
1609
1609
1608
1608
1608
1607
1606
1606
1606
1605
1605
1605
1605
1605
1605
1605
1605
1605
1604
1604
1604
1604
1603
1603
1603
1603
1603
1602
1602
1602
1602
1602
1600
1595
1593
1591
1590
1587
1584
1583
1581
1577
1574
1572
1571
1569
1567
1566
1564
1562
1561
1560
1559
1558
1557
1556
1555
1555
1543
1541
1535
1535
1536
1537
1537
1537
1537
1537
1537
1537
1538
1538
1539
1539
1539
1539
1539
1539
1540
1540
1540
1540
1541
1541
1542
1544
1545
1547
1548
1551
1554
1562
1564
1567
1570
1577
1579
1580
1582
1583
1583
1584
1586
1587
1588
1589
1590
1596
1605
1618
1625
1631
1633
1637
1640
1648
1666
1678
1686
1694
1699
1708
1711
1714
1718
1718
1719
1720
1721
1722
1724
1725
1726
1727
1728
1730
1730
1731
1732
1733
1734
1735
1735
1736
1738
1738
1739
1740
1741
1742
1745
1748
1749
1750
1741
1725
1716
1709
1700
1686
1679
1674
1669
1664
1655
1651
1646
1643
1638
1631
1626
1623
1608
1606
1592
1581
1576
1573
1570
1569
1567
1566
1565
1565
1564
1563
1562
1561
1559
1559
1558
1556
1555
1555
1554
1553
1551
1550
1550
1548
1546
1545
1544
1544
1543
1541
1540
1537
1536
1531
1528
1527
1527
1525
1525
1525
1524
1523
1522
1521
1521
1521
1520
1518
1515
1515
1515
1514
1513
1510
1509
1508
1508
1508
1508
1507
1507
1507
1507
1507
1507
1507
1508
1509
1509
1509
1510
1511
1511
1512
1513
1514
1518
1519
1520
1525
1527
1528
1529
1532
1533
1535
1538
1540
1541
1542
1544
1546
1548
1550
1551
1554
1557
1560
1562
1564
1565
1567
1571
1573
1576
1581
1591
1600
1601
1600
1600
1597
1596
1596
1595
1595
1595
1595
1594
1594
1594
1593
1591
1590
1589
1589
1588
1585
1584
1583
1582
1575
1573
1564
1563
1562
1558
1557
1556
1556
1564
1565
1565
1566
1569
1570
1571
1572
1577
1579
1580
1584
1585
1586
1587
1589
1589
1590
1591
1592
1592
1593
1596
1597
1597
1598
1608
1611
1611
1612
1613
1617
1618
1619
1620
1621
1622
1625
1628
1629
1631
1635
1636
1636
1637
1638
1638
1639
1640
1640
1641
1642
1644
1647
1648
1648
1649
1648
1648
1648
1647
1647
1647
1646
1646
1646
1645
1644
1644
1643
1643
1643
1642
1641
1641
1640
1640
1640
1639
1638
1638
1637
1637
1637
1638
1639
1639
1641
1643
1644
1645
1647
1648
1648
1649
1649
1650
1651
1652
1653
1654
1655
1657
1658
1659
1664
1665
1665
1664
1663
1662
1661
1653
1650
1649
1647
1645
1644
1638
1622
1621
1621
1621
1621
1620
1620
1620
1619
1619
1618
1618
1618
1618
1617
1617
1616
1616
1616
1617
1620
1628
1629
1634
1639
1644
1648
1649
1649
1650
1658
1664
1664
1665
1665
1667
1667
1668
1669
1669
1669
1670
1671
1671
1672
1673
1674
1674
1675
1676
1677
1678
1680
1681
1685
1686
1688
1690
1690
1691
1691
1694
1695
1697
1698
1699
1700
1704
1708
1709
1709
1710
1712
1712
1712
1712
1711
1710
1710
1709
1707
1706
1705
1705
1704
1704
1703
1703
1702
1701
1700
1700
1699
1699
1698
1698
1695
1695
1694
1694
1694
1693
1693
1689
1687
1686
1685
1683
1679
1674
1654
1651
1649
1645
1643
1642
1641
1640
1638
1636
1634
1628
1620
1618
1615
1611
1606
1600
1598
1595
1593
1591
1589
1587
1586
1585
1583
1578
1577
1574
1573
1572
1569
1567
1565
1564
1563
1562
1561
1561
1560
1558
1558
1557
1557
1555
1554
1550
1548
1548
1547
1546
1544
1543
1541
1540
1538
1536
1534
1532
1531
1530
1529
1528
1527
1527
1525
1523
1522
1520
1514
1513
1511
1509
1508
1507
1506
1505
1502
1502
1501
1501
1501
1500
1500
1499
1498
1498
1497
1496
1495
1493
1488
1485
1483
1481
1477
1475
1473
1472
1471
1469
1467
1464
1461
1460
1452
1450
1449
1445
1444
1441
1440
1439
1438
1436
1431
1424
1420
1406
1399
1394
1388
1385
1380
1382
1384
1386
1389
1394
1397
1400
1403
1405
1408
1411
1413
1418
1421
1422
1422
1423
1424
1424
1425
1426
1428
1431
1433
1436
1439
1441
1447
1451
1456
1467
1470
1471
1468
1463
1457
1452
1442
1439
1414
1413
1412
1408
1407
1406
1406
1405
1405
1405
1405
1404
1404
1402
1401
1400
1394
1380
1374
1372
1369
1357
1356
1353
1351
1346
1341
1342
1346
1350
1353
1354
1357
1358
1359
1362
1364
1360
1351
1332
1326
1319
1315
1312
1307
1300
1296
1291
1286
1281
1277
1273
1269
1264
1260
1256
1253
1247
1244
1242
1235
1227
1222
1218
1212
1207
1202
1198
1193
1190
1186
1181
1176
1170
1166
1165
1164
1163
1162
1160
1157
1151
1149
1147
1144
1142
1140
1131
1124
1112
1091
1075
1073
1070
1067
1065
1063
1061
1057
1056
1055
1052
1050
1048
1032
1031
1029
1028
1025
1024
1021
1017
1005
997
996
991
988
988
987
987
986
986
986
985
985
984
984
984
984
985
985
985
985
985
985
987
989
990
990
990
992
992
992
995
995
995
995
995
996
996
996
996
996
996
996
997
997
997
997
1036
1095
1102
1102
1103
1108
1110
1111
1111
1129
1129
1129
1129
1129
1129
1129
1125
1125
1125
1125
1123
1123
1123
1123
1121
1121
1121
1122
1123
1129
1130
1130
1131
1137
1138
1184
1185
1187
1191
1192
1194
1199
1199
1196
1196
1196
1196
1198
1199
1214
1215
1216
1229
1232
1236
1255
1256
1257
1257
1258
1259
1260
1270
1279
1280
1281
1282
1286
1286
1287
1281
1279
1270
1268
1267
1265
1238
1236
1235
1234
1233
1231
1231
1230
1228
1227
1221
1220
1205
1199
1199
1199
1198
1198
1195
1192
1188
1188
1187
1186
1186
1187
1187
1188
1188
1192
1196
1199
1202
1206
1210
1212
1213
1211
1210
1209
1207
1206
1205
1201
1200
1199
1193
1192
1191
1189
1189
1188
1188
1188
1187
1187
1187
1187
1186
1186
1186
1186
1186
1185
1185
1185
1184
1184
1183
1183
1183
1183
1183
1183
1183
1190
1199
1204
1207
1202
1201
1201
1197
1195
1192
1192
1191
1191
1191
1190
1190
1190
1190
1189
1188
1188
1188
1195
1203
1208
1217
1219
1221
1222
1238
1239
1240
1244
1245
1249
1249
1251
1254
1254
1255
1255
1255
1256
1256
1256
1256
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1257
1260
1261
1262
1262
1263
1263
1263
1265
1265
1265
1265
1266
1266
1266
1267
1271
1273
1281
1282
1293
1298
1299
1301
1309
1311
1312
1314
1315
1317
1321
1323
1325
1326
1326
1334
1335
1336
1336
1334
1329
1326
1324
1323
1321
1318
1316
1314
1312
1311
1309
1306
1304
1304
1303
1302
1300
1299
1298
1298
1296
1294
1293
1292
1292
1291
1287
1284
1282
1281
1280
1279
1278
1278
1278
1276
1275
1274
1274
1274
1273
1272
1271
1270
1270
1269
1268
1268
1268
1267
1267
1267
1262
1258
1254
1253
1252
1250
1249
1247
1245
1244
1243
1242
1240
1237
1237
1237
1235
1234
1233
1229
1227
1225
1222
1218
1217
1216
1214
1206
1202
1198
1196
1196
1195
1188
1187
1187
1186
1181
1180
1179
1178
1177
1176
1172
1170
1168
1167
1163
1162
1157
1157
1155
1153
1152
1151
1151
1151
1150
1150
1148
1148
1147
1146
1146
1134
1133
1130
1129
1128
1128
1127
1127
1117
1116
1112
1110
1108
1108
1107
1105
1105
1104
1101
1096
1095
1094
1092
1090
1089
1092
1094
1096
1098
1098
1099
1100
1106
1108
1109
1112
1113
1114
1116
1117
1120
1127
1128
1128
1130
1132
1133
1133
1134
1134
1136
1137
1137
1138
1139
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1153
1159
1159
1160
1160
1161
1162
1163
1164
1164
1164
1166
1167
1168
1170
1171
1177
1180
1180
1181
1181
1181
1182
1183
1184
1184
1184
1185
1185
1187
1188
1189
1190
1190
1191
1192
1192
1192
1194
1195
1198
1199
1200
1202
1203
1204
1212
1212
1210
1208
1204
1202
1201
1195
1183
1180
1178
1177
1176
1173
1172
1155
1153
1152
1149
1145
1131
1118
1104
1098
1094
1079
1070
1065
1062
1050
1038
1027
1020
1019
1017
1010
1008
1007
1006
1006
1005
1004
1003
1003
1002
1001
1000
1000
997
996
995
994
994
993
993
993
993
993
993
990
989
989
989
990
990
991
991
991
991
992
992
992
992
992
992
993
993
993
993
994
994
995
995
996
996
997
997
997
998
999
999
1001
1002
1002
1003
1004
1004
1005
1005
1006
1006
1007
1007
1008
1009
1010
1011
1012
1013
1014
1017
1017
1018
1019
1021
1022
1026
1029
1029
1030
1031
1031
1032
1032
1040
1043
1044
1045
1046
1047
1048
1051
1053
1054
1056
1060
1060
1059
1059
1059
1059
1059
1059
1058
1058
1058
1058
1058
1058
1057
1057
1057
1056
1058
1058
1059
1061
1061
1062
1081
1086
1092
1097
1101
1111
1116
1126
1141
1156
1167
1177
1188
1190
1190
1189
1187
1187
1186
1185
1184
1182
1182
1181
1181
1181
1180
1180
1180
1181
1182
1183
1186
1187
1188
1189
1190
1191
1192
1193
1194
1197
1198
1199
1200
1211
1212
1212
1213
1214
1215
1215
1216
1217
1220
1221
1222
1223
1224
1224
1225
1220
1218
1216
1214
1212
1210
1208
1204
1188
1182
1180
1177
1175
1170
1167
1164
1142
1140
1137
1134
1129
1126
1124
1121
1090
1088
1087
1085
1080
1079
1077
1075
1073
1071
1069
1068
1065
1061
1060
1062
1064
1070
1072
1076
1083
1088
1090
1093
1103
1107
1111
1113
1115
1117
1121
1124
1126
1128
1134
1136
1139
1138
1137
1134
1132
1125
1122
1119
1114
1113
1111
1110
1108
1103
1101
1100
1096
1093
1092
1092
1091
1090
1090
1088
1088
1087
1085
1085
1083
1083
1082
1082
1080
1079
1079
1075
1073
1072
1071
1070
1069
1068
1068
1068
1068
1068
1063
1062
1061
1061
1060
1060
1059
1059
1057
1055
1053
1053
1046
1044
1036
1035
1031
1029
1027
1022
1019
1013
1011
1010
1009
1009
1009
1008
1007
1006
1004
1004
1002
1001
998
995
992
991
991
990
989
985
984
983
980
978
978
976
976
976
976
972
971
959
958
957
956
956
955
954
953
950
949
947
947
947
946
946
946
945
945
945
945
945
945
944
944
944
944
944
943
943
943
942
942
942
942
942
942
942
942
942
942
942
942
942
942
942
943
943
944
944
944
944
945
945
945
945
945
946
946
946
946
946
947
947
947
947
947
947
947
947
948
948
948
948
949
949
950
950
951
952
952
953
953
954
955
955
955
955
954
954
953
952
952
951
951
951
950
949
949
949
950
957
958
959
960
961
965
967
968
971
972
972
972
973
973
974
975
974
974
973
972
972
971
967
953
950
947
943
940
937
935
932
926
923
921
918
913
911
910
907
904
899
885
880
867
866
866
864
863
854
848
844
837
835
833
828
825
822
822
822
822
822
821
821
821
820
820
819
819
822
824
832
835
837
838
844
848
848
847
847
846
846
846
846
846
846
846
846
846
846
846
845
845
845
845
844
843
843
842
842
842
841
839
839
839
839
838
838
838
838
836
836
836
835
835
834
834
834
831
828
827
826
826
824
824
823
822
821
813
810
807
806
804
803
801
799
794
789
784
783
782
781
781
778
777
776
774
772
771
770
769
769
761
758
749
748
747
745
743
742
742
740
737
731
730
729
728
727
727
726
726
725
725
723
723
721
721
721
721
720
720
719
718
718
718
718
718
717
717
717
717
717
716
716
716
716
715
715
715
714
714
714
714
714
714
714
713
713
713
712
712
711
711
711
711
711
711
711
710
710
710
710
710
710
709
709
709
709
709
708
708
708
708
708
707
706
706
705
705
702
702
702
701
701
701
700
700
700
700
698
696
694
692
688
686
679
677
673
667
665
660
656
650
645
634
630
627
623
621
620
619
618
615
614
613
609
605
605
605
605
605
605
605
605
605
605
605
605
605
605
605
605
601
598
595
593
590
588
583
578
574
573
568
565
563
560
558
554
553
553
553
554
555
555
555
555
556
556
556
556
553
551
550
549
548
546
544
543
541
540
539
539
538
538
537
537
536
535
534
533
532
532
531
531
530
529
529
528
528
527
526
524
524
524
523
522
521
513
511
506
505
493
488
487
486
479
478
470
469
461
457
453
449
448
446
445
444
443
442
441
440
439
438
435
434
434
433
432
429
427
424
424
422
420
420
417
416
410
409
407
402
400
391
391
390
390
390
389
389
388
388
387
384
383
382
382
382
381
381
380
380
379
379
378
378
377
377
377
376
376
375
375
374
374
374
366
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
364
363
363
363
361
361
361
361
360
359
359
359
357
356
356
354
352
352
351
345
344
344
343
343
340
339
336
335
335
334
334
334
334
333
333
332
332
331
331
331
330
330
330
330
329
329
329
328
328
328
328
328
328
328
328
327
327
327
327
327
327
327
327
326
326
325
325
325
325
325
325
325
324
324
324
323
323
323
322
321
321
321
321
321
321
321
321
321
321
321
320
320
320
319
319
319
319
319
319
319
318
318
318
318
318
317
317
317
317
317
316
316
315
315
315
315
315
315
314
314
313
312
311
311
311
310
310
310
310
310
310
309
309
309
309
308
308
307
306
306
305
304
304
303
302
302
302
302
303
303
303
304
305
305
305
306
306
307
307
307
307
307
307
307
307
308
308
309
309
311
312
312
313
313
311
310
306
304
302
301
300
298
297
298
299
301
304
304
308
323
330
342
352
362
366
369
375
377
379
383
384
388
393
401
402
406
411
415
420
422
423
428
433
442
447
451
459
461
468
482
486
490
493
497
524
522
520
520
519
519
520
521
522
523
524
525
525
526
526
527
527
528
528
529
530
532
535
536
537
538
540
542
544
545
548
549
551
556
556
557
555
552
544
540
539
539
540
540
540
540
540
540
537
536
535
534
533
531
526
518
514
513
510
509
508
506
505
503
502
501
500
499
497
496
492
490
489
487
487
486
486
484
484
483
483
481
481
480
480
479
479
478
477
476
465
464
462
462
461
459
458
456
453
452
450
449
447
446
445
443
441
440
435
433
432
431
429
428
426
425
422
423
425
426
426
426
427
428
428
428
429
429
430
430
431
432
434
437
440
441
443
445
447
448
450
464
467
471
474
480
481
482
485
486
487
496
496
497
498
501
503
509
518
520
522
524
525
530
534
535
535
537
538
539
540
541
543
545
546
546
547
548
553
557
560
563
565
566
573
572
570
569
569
569
569
569
568
567
565
550
549
547
546
542
540
539
538
534
533
530
525
523
521
518
516
511
508
506
504
499
495
492
489
487
485
483
464
463
462
461
459
457
456
455
454
454
453
452
449
445
440
438
438
437
436
436
431
430
430
430
432
447
450
450
447
446
444
427
427
429
429
429
429
423
421
420
416
414
412
410
409
407
405
400
399
394
394
389
387
384
383
382
381
380
378
378
377
377
377
377
377
377
376
376
376
376
376
376
375
375
375
375
375
375
375
374
373
372
359
356
353
337
330
329
324
320
318
316
315
314
306
306
304
304
297
296
295
290
289
287
278
277
277
274
273
272
270
269
269
269
266
265
265
264
264
264
265
266
266
267
267
267
268
268
269
269
269
270
270
271
271
271
269
267
264
261
261
259
257
255
254
252
250
249
248
246
240
238
236
235
238
240
241
245
247
249
252
258
260
270
273
276
277
267
261
253
220
216
213
211
208
197
189
188
185
184
184
183
179
179
176
175
174
171
169
169
167
167
167
166
166
165
165
164
164
163
162
162
161
161
160
157
151
150
148
146
145
140
139
138
137
131
131
130
127
126
125
125
125
124
124
122
120
114
106
104
103
102
101
100
99
97
92
90
86
85
85
84
82
82
81
76
75
72
70
69
63
60
58
56
55
54
53
53
52
51
50
46
45
45
43
42
40
39
39
38
36
34
30
28
27
26
25
25
24
23
22
22
21
21
21
20
20
19
19
18
18
18
18
18
19
19
20
20
21
21
21
21
22
22
22
22
22
23
23
23
23
24
24
24
24
25
26
26
27
27
27
27
26
26
26
25
25
24
24
23
23
22
22
20
20
19
19
19
19
19
19
19
20
20
21
21
21
22
22
22
22
23
23
24
24
24
25
25
25
25
26
26
26
26
26
27
27
27
27
28
28
28
28
29
29
29
29
29
28
28
27
27
27
25
25
25
24
24
24
24
23
23
23
23
22
22
21
21
19
19
19
19
18
18
18
18
19
20
23
27
30
31
34
35
36
38
40
41
41
42
42
43
44
45
45
46
46
47
47
48
49
50
51
51
52
52
53
53
53
54
54
54
54
56
58
59
60
61
64
65
66
68
69
70
71
74
77
78
79
80
82
82
83
83
84
84
85
85
86
87
88
89
89
90
90
91
92
93
94
95
96
97
98
99
101
104
104
105
106
108
109
110
111
113
114
114
115
116
119
119
121
121
122
123
123
124
124
125
126
128
129
132
132
132
133
133
134
136
137
138
138
139
139
141
143
146
149
150
152
152
154
154
156
157
157
159
160
160
161
162
163
164
165
166
167
168
170
171
172
173
174
175
177
183
184
188
192
194
195
196
196
196
196
196
196
196
196
195
195
195
195
194
194
194
194
194
194
194
194
194
193
193
193
193
193
193
193
192
192
192
192
192
192
192
191
191
191
191
191
191
191
191
191
190
190
190
190
190
190
190
190
190
189
189
189
189
189
189
189
188
188
188
188
187
187
187
186
186
185
184
183
183
182
182
181
181
180
179
179
178
178
178
177
177
176
175
175
175
174
174
173
173
173
172
171
171
171
170
170
170
170
169
168
168
167
166
166
165
165
164
164
163
163
162
162
161
161
160
160
159
158
158
158
158
158
157
157
156
156
156
155
155
155
154
154
154
154
152
152
152
152
152
151
151
151
151
150
150
149
149
148
147
147
146
145
144
143
143
143
142
142
142
142
141
141
140
140
140
139
138
137
137
137
137
135
134
133
132
131
130
129
129
128
127
128
128
131
132
133
134
134
135
136
137
140
141
142
144
144
144
144
144
144
144
145
145
145
145
145
145
145
143
141
140
140
140
140
141
141
141
141
141
141
141
141
141
142
142
142
142
142
143
143
144
144
144
145
145
145
145
145
146
146
146
146
146
146
146
146
147
147
147
148
148
148
149
149
150
150
151
151
151
151
152
152
152
154
155
155
155
155
155
156
157
157
158
158
158
159
159
159
159
159
159
160
160
160
160
161
161
161
161
161
161
162
162
162
162
162
162
163
163
164
164
164
164
165
165
166
166
166
167
167
168
168
168
168
168
169
169
169
169
170
170
170
171
172
172
173
173
174
174
176
176
177
178
178
179
179
180
180
181
181
181
182
183
183
183
184
186
186
187
188
188
189
189
189
189
189
189
190
190
190
190
190
190
191
191
191
191
191
191
192
192
192
192
192
192
193
193
193
193
193
193
193
194
194
194
195
195
195
196
196
197
197
197
197
197
198
198
199
199
199
199
203
205
206
207
208
209
210
211
211
212
213
215
216
217
218
219
219
222
224
224
224
225
225
225
225
226
226
226
227
227
227
228
228
228
228
229
229
229
230
231
231
231
232
232
232
232
232
233
233
233
233
233
233
234
234
234
234
234
235
235
235
235
235
236
236
236
236
236
236
236
236
237
237
237
237
237
237
237
238
238
238
238
238
239
239
239
240
240
240
241
241
241
241
242
242
243
243
244
244
244
244
244
244
244
245
245
245
245
245
245
245
244
243
243
243
242
242
242
242
241
241
241
240
240
240
239
239
238
238
238
237
237
237
236
236
235
235
234
234
234
234
234
233
233
232
232
232
232
231
231
230
230
230
230
229
229
229
228
228
227
227
227
227
226
226
226
225
225
225
225
224
223
223
223
223
222
222
221
220
220
218
218
217
215
214
212
211
210
209
209
208
207
207
206
206
205
204
204
201
200
199
198
196
196
195
194
194
193
192
190
190
189
186
186
186
184
183
182
182
181
180
179
178
177
175
174
171
170
170
169
168
168
167
167
166
166
166
165
165
165
164
164
163
162
162
162
161
161
161
161
160
160
159
157
156
154
145
142
142
141
140
139
138
136
136
135
134
133
132
131
130
130
130
129
128
128
127
126
126
125
124
122
122
122
121
121
120
120
119
119
118
116
115
115
115
114
114
114
114
114
113
113
113
113
112
112
111
111
111
112
113
113
113
113
114
115
115
115
115
116
116
116
116
117
117
117
117
117
118
118
118
118
118
118
119
119
119
119
120
122
122
122
122
122
123
123
123
123
123
123
123
123
123
123
123
123
123
123
124
124
124
124
124
124
124
124
125
125
125
125
125
125
126
127
127
127
127
131
131
131
131
131
131
131
132
132
132
132
132
132
132
132
132
132
132
133
133
133
133
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
133
133
133
133
133
133
133
133
133
133
133
133
133
133
132
132
132
132
130
129
129
129
128
128
127
127
127
125
125
124
123
122
122
122
122
122
121
121
121
119
117
115
113
110
107
103
99
86
84
81
81
80
79
77
76
75
74
73
71
70
69
69
68
67
67
66
65
65
63
61
58
56
51
51
51
50
50
50
50
49
47
47
47
47
47
47
46
46
46
46
45
45
45
44
44
44
44
43
43
42
42
42
42
41
41
41
40
40
38
37
36
36
37
38
40
41
42
43
43
44
45
47
47
47
47
47
47
48
49
49
50
51
52
54
56
57
62
62
62
62
62
62
61
61
61
61
60
60
60
60
60
60
59
58
57
56
56
54
54
53
51
50
49
48
46
45
45
44
43
42
39
39
38
30
29
29
28
28
28
26
23
19
19
19
19
20
20
20
20
20
21
21
21
21
22
22
22
23
23
23
22
22
21
21
21
21
20
16
14
14
12
10
9
6
6
6
6
6
7
7
8
8
9
9
9
10
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
13
13
13
15
16
16
19
19
19
19
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
16
16
16
16
17
17
18
18
18
18
18
19
19
19
19
19
21
21
21
22
23
23
23
23
23
24
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
26
26
26
26
26
26
26
25
25
25
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
32
33
33
33
33
34
34
34
34
34
35
35
35
35
35
35
35
36
36
36
37
37
37
37
37
37
37
37
37
37
37
36
36
36
35
35
35
34
34
33
32
32
32
32
32
32
32
31
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
27
27
27
26
26
26
26
26
26
26
26
25
25
25
22
22
22
22
22
22
23
23
24
25
25
28
28
28
29
29
29
29
29
29
29
30
30
30
31
25
25
24
24
24
24
24
24
24
24
23
23
16
16
10
10
10
10
10
9
9
9
9
9
9
8
8
8
8
8
9
11
11
15
15
25
25
25
25
26
26
26
28
28
29
29
29
30
30
30
33
37
38
38
39
39
40
40
40
40
40
41
41
41
41
40
39
38
38
29
29
28
28
28
28
28
26
16
14
12
8
7
7
7
7
7
8
8
8
13
13
13
13
13
14
15
15
15
16
16
16
17
17
18
18
18
16
14
13
13
13
12
12
11
5
4
3
3
3
3
4
4
4
5
5
6
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
10
11
11
11
10
10
10
9
9
8
8
6
5
5
7
7
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
9
9
8
8
8
8
8
8
7
6
6
6
6
6
6
6
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
5
5
5
6
6
6
6
6
6
6
6
6
5
4
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
4
4
4
5
5
5
5
5
6
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
10
10
11
11
11
11
11
12
12
13
13
13
13
13
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
15
14
14
12
12
12
11
10
10
10
9
9
9
9
9
10
11
11
12
12
12
13
13
13
13
13
13
13
14
14
15
15
16
16
18
19
19
19
19
19
20
20
21
21
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
20
20
20
20
19
19
18
18
18
18
18
18
18
17
17
16
16
16
15
15
15
15
15
15
15
16
17
18
18
19
20
20
21
21
22
22
24
24
25
25
25
26
27
27
27
27
27
27
27
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
29
29
30
30
31
31
31
31
31
32
32
32
32
32
32
33
33
33
33
32
31
30
29
28
26
22
18
17
17
16
13
12
11
11
11
11
11
10
8
7
6
6
6
6
6
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
4
4
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
4
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
11
11
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
17
17
19
19
19
19
19
19
19
20
20
21
23
23
23
24
24
24
26
26
26
27
27
27
27
27
27
28
28
28
29
29
32
33
33
33
33
34
34
39
39
39
40
40
44
44
44
45
45
45
45
47
47
47
41
41
41
40
40
38
34
33
32
30
29
29
28
27
26
26
25
25
22
22
22
21
21
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
13
14
15
15
17
17
18
18
18
18
18
18
18
19
19
19
19
19
19
20
20
20
20
21
21
21
21
21
21
21
22
22
22
22
22
22
24
24
25
25
25
25
25
25
25
26
26
27
27
27
27
27
28
28
28
29
29
30
30
30
30
31
31
31
31
31
33
34
36
36
36
37
37
38
38
38
38
38
38
38
38
38
38
39
39
39
39
40
40
40
40
41
41
41
41
42
42
42
42
42
43
43
43
43
43
43
44
44
45
45
45
46
46
46
46
47
47
47
47
47
48
48
48
49
49
49
49
49
49
48
48
48
47
47
46
46
46
46
44
44
43
42
42
42
41
41
41
40
40
40
39
39
38
38
38
38
37
37
37
36
36
36
35
35
35
34
34
34
33
33
33
32
32
32
32
31
31
30
29
29
28
28
28
28
28
28
28
28
28
29
29
29
29
29
30
30
30
31
31
31
31
32
32
32
32
33
33
34
34
34
34
35
35
35
36
36
36
36
37
37
38
38
38
38
38
39
39
40
40
41
41
41
41
42
42
43
43
43
43
43
44
48
48
49
50
51
52
52
55
56
57
59
59
60
60
61
61
62
63
63
64
64
65
66
67
67
67
68
71
71
73
74
74
75
83
84
85
85
86
86
86
86
86
86
86
86
86
85
85
85
85
85
85
85
85
85
85
84
84
84
84
84
84
84
84
84
84
84
84
84
84
84
83
83
83
83
83
83
83
83
83
83
83
82
81
80
80
79
78
77
76
76
75
75
73
72
72
71
71
70
70
70
69
69
65
62
62
61
61
60
59
58
56
54
54
53
50
49
49
48
48
48
45
44
43
43
42
41
38
37
37
33
33
32
31
31
30
29
29
28
28
27
27
26
26
27
27
27
27
28
28
28
29
32
32
34
35
35
36
37
37
37
37
38
38
38
39
39
39
39
42
42
42
43
43
43
43
44
45
45
46
46
46
45
44
44
43
42
42
42
42
41
41
41
40
39
37
37
36
35
35
35
35
34
32
31
31
27
26
26
26
25
24
24
24
23
22
21
20
20
20
19
18
18
17
17
17
17
17
15
14
14
13
13
13
13
12
12
12
12
11
11
10
10
10
9
9
8
8
7
3
4
6
6
6
6
7
7
8
9
9
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
10
10
10
10
11
11
11
11
11
11
10
10
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
18
18
19
20
21
22
22
23
23
23
23
23
23
23
24
25
25
25
26
26
27
27
27
28
28
28
28
29
29
29
29
29
29
30
31
31
31
31
31
31
31
32
32
33
33
33
34
34
34
34
34
35
36
37
36
36
35
35
35
35
35
34
34
34
33
33
33
32
32
32
12
12
11
11
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
11
11
11
10
10
9
9
9
9
8
8
8
7
7
6
6
6
7
7
7
8
8
8
8
8
8
8
9
11
11
11
12
9
8
8
8
8
7
7
6
5
3
3
3
3
3
3
3
3
3
3
4
7
7
8
9
10
10
11
11
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
11
12
12
12
12
12
13
13
14
14
14
14
15
15
15
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
18
18
19
19
20
20
20
21
22
22
22
22
22
23
24
24
24
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
27
27
29
30
31
34
38
38
38
39
39
39
39
40
40
40
40
40
40
41
42
42
42
43
43
44
44
45
45
45
45
45
46
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
48
48
48
49
49
49
50
50
51
51
52
52
53
53
55
55
55
55
56
56
57
57
58
59
59
59
59
60
60
60
60
60
61
61
61
61
61
61
62
62
62
62
62
63
63
63
63
63
63
63
63
63
63
63
64
64
64
64
64
64
64
64
64
67
69
71
71
72
72
72
73
73
73
74
75
75
76
76
78
78
79
79
80
81
81
82
82
82
83
83
83
83
83
83
83
83
82
81
80
80
80
80
79
79
78
78
78
77
77
76
75
75
74
73
73
73
72
72
72
71
71
71
71
71
70
71
71
72
72
72
73
73
74
74
75
75
75
76
76
76
77
77
78
78
78
78
79
79
80
81
82
85
85
85
85
85
85
85
86
87
87
89
90
91
92
92
95
95
96
100
101
102
105
107
109
111
112
113
114
116
117
119
120
120
122
125
128
129
130
131
133
134
136
137
138
139
143
144
144
144
145
145
145
145
145
151
152
152
153
153
153
154
155
156
157
163
165
165
166
166
168
171
178
180
185
190
195
196
197
200
202
204
205
207
212
213
214
214
218
220
221
227
228
238
241
244
244
243
243
243
242
242
241
240
239
239
239
239
239
238
238
238
238
237
236
236
235
234
233
231
224
221
221
218
217
215
213
212
206
206
203
202
201
200
198
197
195
194
193
192
190
189
188
187
187
190
190
190
190
190
190
190
190
190
190
190
190
190
190
191
191
192
192
193
193
193
194
194
201
204
204
204
204
204
204
204
204
201
200
200
199
199
199
199
199
199
196
195
194
193
192
190
190
190
190
190
190
190
190
190
190
190
190
190
190
190
190
192
193
194
195
196
197
197
197
197
198
198
199
199
200
200
200
200
200
200
201
201
203
204
204
205
205
206
206
207
207
207
208
209
210
210
210
210
210
210
210
210
209
209
209
209
209
208
208
208
208
207
207
207
207
207
207
206
206
206
205
205
205
204
204
204
204
204
204
203
203
203
203
203
201
199
199
198
198
198
196
194
194
193
192
192
191
190
188
187
187
187
187
187
186
182
179
177
174
173
173
172
172
171
168
167
167
164
163
162
160
160
159
158
154
153
152
152
152
152
152
152
151
151
151
150
150
150
149
149
149
149
148
148
147
147
147
146
146
145
145
145
144
144
143
143
143
143
143
143
143
143
143
143
142
142
142
141
141
139
139
138
138
138
137
137
136
136
135
135
135
134
133
132
132
132
132
131
131
130
130
129
129
129
128
128
128
128
128
127
126
124
122
122
122
121
121
120
120
120
120
120
120
118
115
114
114
112
110
110
109
109
109
109
108
108
108
107
107
107
107
107
106
106
106
105
105
105
104
103
103
103
102
102
102
102
102
102
101
99
99
98
98
98
98
97
96
95
95
94
93
93
92
92
92
92
92
92
92
92
91
90
90
89
89
89
89
89
87
87
85
83
83
83
83
82
81
81
81
80
80
80
80
79
79
79
79
79
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
77
76
75
75
74
74
73
72
72
72
72
72
72
72
71
71
70
70
70
69
69
69
69
66
67
72
76
78
78
78
78
81
82
82
83
83
84
84
85
85
86
86
86
87
87
87
87
87
87
87
87
88
88
88
89
90
90
90
89
84
83
83
82
79
76
71
68
67
66
62
61
60
59
59
58
57
57
57
57
57
57
58
58
58
58
59
59
59
60
60
60
60
60
60
60
60
60
61
61
61
62
63
63
63
64
64
65
65
65
65
65
65
66
66
66
66
66
66
67
67
67
67
67
67
67
67
68
68
68
68
68
68
68
68
69
69
68
68
68
68
67
67
67
67
67
66
66
66
66
65
65
65
64
64
64
64
65
65
65
66
66
66
67
67
67
67
68
68
69
69
69
69
70
70
70
70
70
71
71
71
71
71
71
71
71
72
72
72
72
72
72
73
73
73
73
74
74
74
74
74
75
75
75
75
76
76
76
76
77
78
78
78
78
78
79
79
80
80
80
81
81
82
84
84
84
85
85
85
87
88
88
93
97
98
102
103
103
100
99
99
99
98
95
94
94
94
93
93
91
88
88
88
87
87
86
86
85
84
83
83
83
83
83
83
86
86
87
88
89
89
89
91
94
95
96
97
98
110
111
112
112
113
113
113
113
113
113
113
114
114
114
114
114
114
114
114
114
114
114
115
116
116
117
117
118
122
122
122
123
123
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
123
123
122
122
122
122
122
122
122
122
122
122
122
121
117
116
115
115
115
115
114
114
114
114
113
113
113
113
112
112
112
112
111
111
111
111
110
110
110
111
113
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
113
113
113
112
112
112
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
113
113
113
114
114
114
114
114
114
114
114
114
114
113
112
112
112
112
112
112
112
112
112
113
113
113
113
113
114
114
114
114
114
115
115
115
115
115
115
116
116
116
116
117
117
117
117
117
117
117
117
117
118
118
118
119
119
119
119
119
116
116
116
116
115
115
115
115
115
115
111
105
104
103
102
100
100
99
99
98
98
98
98
98
98
97
97
97
97
97
96
96
95
95
95
95
95
95
95
94
94
94
94
92
92
92
92
91
91
90
90
90
90
90
90
90
89
89
89
89
89
89
89
88
88
88
88
88
88
88
87
87
87
87
87
87
87
87
87
87
87
83
83
83
83
82
82
82
82
82
82
82
82
81
80
80
80
79
77
76
76
76
76
76
76
76
76
74
73
73
73
72
72
72
72
72
72
72
73
73
74
74
74
74
75
75
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
77
77
75
75
75
75
75
75
75
75
75
74
74
73
73
73
73
73
73
73
73
73
72
70
69
69
69
68
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
65
64
64
64
63
63
62
62
62
62
62
62
61
61
61
59
57
57
57
57
57
57
57
57
56
56
56
56
56
56
55
55
54
54
54
54
54
53
53
53
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
52
52
52
52
52
52
52
52
52
52
51
51
51
51
51
51
51
51
51
50
50
50
50
50
50
50
49
49
49
49
48
48
48
47
47
47
47
47
46
46
46
46
46
45
45
45
45
44
44
44
44
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
43
43
43
43
43
43
43
43
42
42
42
42
42
42
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
41
42
42
42
42
43
43
43
44
44
44
44
44
44
45
49
50
51
54
54
55
57
58
62
64
65
67
70
72
72
73
75
75
76
76
81
82
87
89
89
90
93
96
98
98
99
100
100
100
101
101
102
102
102
103
104
104
111
111
111
111
111
111
111
112
112
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
113
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
113
113
111
110
109
108
108
107
107
107
107
106
105
104
103
101
101
100
100
99
99
98
98
98
98
97
97
97
96
96
96
96
96
96
95
95
95
95
95
95
95
94
94
94
94
93
93
93
92
92
91
91
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
92
92
92
92
92
92
92
92
92
92
92
92
93
93
93
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
94
94
94
94
94
94
94
93
93
92
92
92
91
90
90
90
88
88
87
87
86
85
85
85
85
85
85
85
84
84
84
84
80
79
78
77
75
75
75
75
75
75
76
76
76
76
76
76
77
77
77
77
78
78
78
78
78
78
78
78
78
78
77
77
76
76
76
76
75
75
74
74
72
72
60
59
58
57
56
55
52
52
50
49
48
47
46
43
43
41
39
36
33
33
35
36
36
38
38
39
43
43
44
45
45
45
46
47
52
52
52
53
55
55
58
59
66
67
67
68
69
69
69
73
74
75
76
78
78
79
80
80
83
88
90
91
91
92
96
98
99
100
101
102
104
101
101
101
100
100
99
99
96
95
94
93
93
93
93
91
91
90
90
88
88
87
87
86
85
84
82
81
81
80
79
78
78
76
75
75
75
74
74
74
73
73
72
71
71
66
66
66
66
64
61
60
59
59
58
58
57
56
55
54
54
52
51
50
50
48
47
46
46
45
44
44
43
43
43
43
43
42
42
42
41
41
41
41
40
40
40
40
40
40
40
40
40
40
39
39
39
39
38
38
38
37
37
37
36
36
36
35
35
35
35
35
35
35
35
35
35
35
34
34
34
33
33
33
32
32
32
31
31
31
31
31
31
31
31
31
30
30
30
29
29
29
29
29
29
28
28
28
27
27
27
27
27
27
27
26
26
26
26
27
28
29
29
29
29
29
30
32
33
33
33
33
34
34
35
35
35
35
35
35
35
35
34
34
33
32
30
28
26
26
25
22
21
21
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
20
20
20
20
21
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
25
27
28
29
29
31
31
32
34
35
35
35
35
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
37
40
41
42
43
44
46
46
46
46
47
47
48
49
50
50
51
51
52
52
52
53
53
53
53
54
54
55
55
55
55
55
56
56
57
58
58
59
59
59
60
60
61
61
61
62
63
63
65
66
68
68
68
69
69
71
73
74
74
75
76
77
78
79
80
82
82
83
84
84
84
85
85
85
86
89
89
89
90
91
91
92
92
92
92
93
93
93
94
94
95
95
96
96
96
96
96
97
97
98
98
98
98
99
99
99
100
101
101
102
102
103
104
104
105
105
105
106
106
107
108
108
108
109
109
109
110
110
110
110
110
110
110
111
111
111
111
111
111
112
112
112
112
112
112
112
112
112
113
113
113
113
113
113
113
114
114
114
114
114
115
115
116
116
117
117
118
119
120
121
122
122
123
123
124
124
124
124
127
127
128
128
129
129
130
131
131
132
133
133
133
134
135
136
137
141
142
143
144
145
145
146
148
149
150
151
152
153
153
154
155
157
157
158
158
159
160
161
162
163
163
164
165
165
166
166
167
167
168
168
168
169
169
169
169
170
170
171
172
172
174
174
174
174
174
174
174
175
175
175
175
175
175
175
175
175
175
175
176
176
176
176
176
176
176
176
176
176
177
177
177
177
177
177
177
178
178
178
178
178
178
178
178
178
178
176
174
170
168
167
166
165
165
164
163
148
147
145
139
138
137
136
135
135
131
130
128
127
127
126
126
124
123
122
121
121
120
119
119
118
118
118
118
117
117
117
117
116
116
116
115
115
115
115
115
115
114
114
114
114
114
112
112
112
112
112
112
111
110
110
110
110
108
108
109
109
109
110
110
110
110
110
111
111
112
112
112
113
113
113
113
113
113
113
114
118
118
118
119
119
119
120
121
121
121
121
131
133
135
136
149
150
150
151
151
152
153
155
157
165
165
168
169
170
171
172
172
172
173
173
173
174
174
175
176
178
181
181
182
182
183
184
191
191
195
199
208
209
212
214
216
223
225
227
229
231
233
236
239
243
245
246
249
250
252
253
256
257
258
259
261
262
263
264
264
261
261
261
258
258
258
257
256
250
250
250
249
248
248
247
247
246
246
246
247
248
248
249
249
249
250
251
251
251
252
252
253
253
255
255
255
256
256
257
257
257
257
258
258
258
258
259
259
259
259
259
260
261
261
261
261
261
261
262
262
262
263
263
263
263
264
264
264
264
264
264
263
261
259
257
255
254
252
250
248
245
243
241
239
238
236
231
230
225
224
223
221
221
220
218
213
212
211
207
205
204
194
192
190
188
187
186
184
180
179
177
176
175
174
173
172
171
170
164
163
163
162
161
160
158
157
157
157
156
156
155
155
154
154
154
153
153
153
153
152
152
152
151
151
151
150
150
149
149
147
147
146
146
146
146
145
145
144
143
142
142
142
142
140
139
139
139
139
138
138
137
136
136
136
135
135
134
134
134
133
132
132
132
132
131
131
131
130
129
128
128
127
126
121
120
119
118
117
116
115
114
113
109
108
107
105
104
103
102
102
100
100
99
99
98
98
97
97
96
96
96
95
94
94
94
93
92
92
92
91
91
91
90
90
90
90
90
89
89
89
89
89
89
88
88
88
87
87
86
86
85
85
85
85
85
84
84
84
84
83
83
83
83
83
83
82
82
81
81
80
79
78
78
78
77
77
77
77
77
77
77
77
77
76
76
76
76
76
76
76
75
72
72
71
70
70
70
70
70
70
70
70
70
68
68
68
67
66
65
65
64
63
63
62
62
61
61
60
60
60
60
60
60
60
60
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
57
57
56
55
55
54
54
54
53
53
53
53
53
52
51
51
51
51
51
51
51
50
50
50
50
50
50
50
50
50
50
49
49
48
48
47
46
46
46
45
45
45
45
44
44
44
44
44
44
44
44
49
49
49
49
50
50
51
51
51
51
51
51
52
52
52
52
52
52
52
52
51
51
50
50
50
50
50
50
49
49
49
48
45
40
40
40
39
38
38
37
36
35
34
33
30
29
28
27
27
25
25
24
24
23
23
21
19
18
17
16
14
14
13
12
12
11
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
6
5
5
5
5
4
4
4
4
3
3
3
3
3
3
3
3
2
2
1
1
1
1
1
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
5
6
7
8
8
9
10
10
10
11
14
14
15
15
15
15
15
15
16
16
16
16
16
16
15
15
14
13
13
13
13
12
11
11
11
11
11
11
11
11
9
9
9
8
7
7
7
7
7
7
7
7
6
4
4
4
4
4
3
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
5
5
6
7
8
9
9
10
10
11
12
13
14
14
14
14
15
15
16
19
20
21
21
22
22
23
24
24
26
27
28
28
28
29
29
29
30
30
31
32
32
32
32
33
33
33
33
34
34
37
38
39
39
39
40
40
40
41
41
41
42
43
43
44
45
46
46
46
46
46
45
45
44
43
43
43
43
42
42
42
42
41
41
41
41
41
40
40
40
40
40
40
39
39
39
39
39
38
38
38
38
38
38
38
37
37
36
36
36
35
34
34
33
32
31
30
30
28
28
27
27
25
22
21
18
15
15
14
13
13
12
11
11
10
9
8
6
6
5
4
3
2
2
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
4
4
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
3
3
3
3
3
3
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
5
5
5
4
4
4
4
4
4
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
4
6
10
12
15
16
16
17
18
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
19
19
18
18
17
16
16
16
16
16
16
16
16
16
16
16
16
16
15
15
15
14
14
13
13
13
12
11
11
10
10
10
10
10
10
10
9
9
9
9
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
5
4
4
4
3
3
3
3
3
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
2
2
3
3
3
4
4
4
4
4
5
5
5
7
9
9
9
9
9
10
10
10
11
11
11
11
11
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
9
9
8
7
7
6
5
5
6
6
6
7
11
9
9
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
8
8
8
9
10
10
10
10
11
11
12
13
14
15
15
15
15
16
17
15
11
11
12
13
14
14
14
14
12
12
11
17
18
18
19
19
20
21
21
26
24
22
21
20
20
20
19
18
11
11
10
10
10
10
10
10
10
10
9
9
9
9
8
8
8
7
7
7
7
7
9
10
10
11
12
13
13
14
14
14
15
16
16
18
18
18
19
19
19
19
19
20
21
21
21
22
22
23
24
24
24
25
25
26
27
27
29
30
31
33
33
34
34
35
36
36
38
39
39
39
40
40
40
41
41
43
44
44
45
46
47
47
47
47
48
48
49
52
52
56
58
60
60
61
62
64
65
65
66
67
70
71
72
73
73
74
74
74
75
75
75
76
76
77
77
77
78
78
79
79
79
80
80
80
81
81
82
83
84
85
85
85
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
85
85
84
82
81
80
79
78
77
77
75
72
72
71
71
71
65
64
62
60
57
56
54
53
53
49
48
46
46
45
45
44
43
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
40
40
39
39
37
37
37
37
36
36
36
35
35
35
35
42
44
48
48
48
49
49
54
55
56
57
59
61
62
62
62
62
61
60
59
59
59
58
57
56
56
55
54
52
51
51
51
51
51
50
50
50
49
49
49
48
48
48
47
47
46
46
46
46
45
45
44
43
43
42
41
40
39
39
38
37
37
36
36
36
35
34
34
33
33
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
28
27
27
27
25
25
24
24
23
23
24
24
25
25
26
26
26
28
28
28
32
34
34
35
34
33
32
32
31
31
31
31
31
30
30
30
30
29
28
28
28
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
30
30
30
30
31
31
31
31
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
35
35
35
35
36
38
43
45
47
47
48
48
49
50
51
53
55
56
57
58
58
58
59
59
61
63
64
64
65
65
65
65
66
66
66
66
67
67
67
67
67
67
67
68
68
68
68
68
68
68
68
68
69
69
69
70
70
71
71
72
72
73
73
73
73
72
71
71
71
71
71
71
71
70
69
69
68
68
68
67
66
66
66
66
66
65
65
65
65
64
64
63
63
62
62
62
62
61
61
61
61
61
61
61
60
60
60
60
60
60
60
60
59
59
59
59
58
58
58
58
58
57
57
57
57
57
56
56
56
56
56
56
56
56
56
57
58
59
59
59
60
61
62
62
62
62
62
63
63
63
63
63
63
64
64
66
66
68
69
70
70
70
71
71
71
71
74
74
74
74
73
73
73
72
71
69
69
69
68
67
66
66
66
66
62
61
61
61
61
61
60
59
59
58
58
58
57
56
55
55
54
53
52
48
48
47
47
47
46
46
46
46
46
45
45
44
44
44
44
44
45
45
45
45
46
46
46
46
47
47
47
49
49
49
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
53
53
53
54
54
54
54
54
54
54
55
55
55
56
56
56
56
57
58
58
58
58
58
58
58
59
59
59
60
60
60
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
59
59
59
59
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
60
60
63
63
67
68
70
74
74
74
75
75
75
75
75
75
78
79
80
80
81
82
82
82
83
83
83
84
85
89
89
89
89
90
90
90
90
90
90
90
90
91
92
92
93
94
94
94
94
98
100
102
103
103
103
103
103
104
104
104
104
104
104
105
105
105
106
106
106
106
106
106
106
106
106
106
107
108
109
110
111
113
113
113
113
112
109
107
106
105
103
102
101
96
93
89
88
86
86
85
83
80
78
77
77
77
77
77
77
77
77
77
77
77
77
77
76
76
76
76
76
76
76
76
76
76
75
75
75
75
75
74
74
74
74
74
73
73
73
73
73
72
72
72
72
72
72
72
72
73
74
74
75
75
76
77
77
78
78
78
77
70
70
65
65
63
63
62
61
60
59
58
58
56
56
55
54
54
54
53
53
53
52
52
52
52
52
52
51
50
50
50
49
49
48
48
48
48
46
46
45
44
44
43
43
43
43
43
43
43
42
41
40
39
37
35
34
33
33
32
29
27
27
26
26
26
26
27
27
27
27
27
28
28
28
28
28
28
28
29
29
29
29
30
30
30
31
31
31
32
32
33
33
34
34
34
34
34
34
34
34
33
33
33
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
30
30
30
30
30
30
29
29
29
29
29
29
29
29
30
30
30
30
30
31
32
32
32
32
33
35
35
35
35
36
36
36
36
36
36
36
36
37
37
37
37
37
37
38
39
40
41
41
44
44
45
47
48
49
50
51
54
55
59
60
61
61
61
62
62
62
63
63
64
65
65
66
69
69
73
73
76
76
77
77
77
77
77
77
78
79
80
83
85
87
87
89
90
91
92
92
93
94
95
95
96
97
97
97
97
97
97
98
98
98
98
98
97
97
96
95
93
93
91
85
85
84
83
82
81
80
79
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
79
79
79
79
80
80
80
81
81
81
81
90
93
94
103
104
105
107
108
109
112
113
114
120
121
123
123
125
127
129
131
132
133
135
136
139
141
146
147
147
147
147
147
147
147
147
147
147
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
145
142
139
139
134
126
123
120
120
118
116
116
115
115
114
112
111
110
110
109
108
108
107
107
107
107
106
106
105
104
104
103
102
102
102
101
101
100
99
98
98
97
96
96
94
92
92
92
92
92
92
91
91
91
89
89
88
88
87
87
86
85
85
85
85
85
85
85
84
84
84
83
83
83
83
82
82
82
81
81
81
81
81
81
81
81
81
81
81
81
80
80
80
80
80
79
79
79
79
78
78
78
78
78
78
78
77
77
77
77
77
77
77
76
76
75
74
74
73
73
72
72
71
70
70
69
69
68
68
68
68
67
67
67
67
67
67
67
67
66
65
65
65
65
65
65
65
65
65
64
64
64
64
64
63
63
63
62
62
62
61
61
61
61
62
64
65
65
65
66
66
67
68
70
71
72
72
70
68
68
67
67
66
65
64
63
62
62
61
60
60
60
60
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
62
63
63
63
63
63
63
63
64
64
64
64
64
65
65
65
65
65
65
66
66
66
66
66
66
67
68
68
68
68
69
69
69
70
70
70
70
70
70
71
72
72
74
74
76
76
76
76
76
77
77
78
78
93
98
100
101
105
109
115
119
121
121
108
107
105
104
103
103
103
103
103
103
103
102
102
101
99
98
97
95
89
89
88
87
85
85
83
82
82
81
81
80
80
77
76
76
76
75
78
80
81
83
84
85
86
88
92
93
94
96
97
102
105
106
107
108
109
110
110
111
111
115
116
118
118
119
119
119
120
120
122
122
122
123
123
123
124
124
125
125
125
126
126
127
128
128
129
130
130
130
130
131
132
133
133
134
134
135
135
135
136
132
125
125
124
124
124
124
124
123
122
121
120
120
119
119
118
118
117
117
115
115
115
115
114
114
113
113
112
112
112
111
110
110
109
108
108
107
107
106
103
102
101
101
100
99
97
97
96
95
95
94
93
92
91
89
87
86
85
85
84
82
85
85
85
86
86
86
87
88
89
89
89
89
91
93
93
94
94
96
97
98
100
103
104
104
106
106
107
107
108
113
113
113
113
114
114
114
115
115
115
115
115
115
116
116
116
116
116
116
116
116
119
122
123
125
126
126
127
130
131
132
135
138
139
140
142
148
149
151
152
153
154
156
157
158
160
163
164
165
167
169
170
171
173
173
174
175
178
181
183
185
187
188
190
190
190
192
192
192
193
193
194
194
195
196
199
200
200
201
202
204
204
204
208
208
208
209
210
212
213
214
216
220
221
223
224
225
227
229
229
229
226
225
222
221
219
219
217
216
215
215
213
213
213
213
212
212
212
212
212
211
211
211
211
211
211
211
211
211
210
210
210
210
210
210
210
210
210
210
209
209
209
209
209
209
209
209
208
208
208
208
208
208
208
207
207
207
207
207
207
207
207
207
206
206
206
206
206
206
206
205
194
192
189
180
177
176
175
174
173
168
167
166
161
160
159
158
158
157
157
156
156
153
134
133
133
132
130
129
128
127
124
123
122
121
121
118
118
116
115
113
112
111
110
109
108
105
102
100
98
97
95
94
92
92
91
91
91
90
90
90
90
90
90
90
90
89
89
89
89
89
89
89
88
88
88
88
87
86
86
85
84
84
84
83
83
83
83
83
83
83
82
82
82
82
82
81
81
81
80
80
80
80
80
80
81
82
83
83
83
83
83
85
86
86
87
87
88
89
89
89
90
90
90
90
90
90
90
90
89
89
89
88
88
88
88
88
87
87
87
86
86
86
86
86
85
84
82
82
80
79
78
77
76
74
73
72
71
70
70
69
69
68
67
67
67
67
67
67
66
65
65
65
64
64
64
64
63
63
63
62
62
62
62
62
62
62
62
62
62
62
62
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
59
59
59
58
57
54
53
53
52
51
51
51
51
50
50
50
49
49
48
48
47
47
46
45
45
45
44
44
43
43
43
42
42
42
42
41
41
40
46
46
47
48
48
48
49
49
50
51
51
53
54
56
57
62
63
63
64
64
65
67
68
70
71
76
76
77
87
88
88
90
90
91
91
90
90
89
88
88
88
87
86
85
84
83
83
82
80
80
78
77
76
75
74
74
72
71
70
69
69
69
70
71
72
73
73
75
76
77
78
81
83
85
87
87
87
87
87
87
87
87
87
88
88
88
88
88
88
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
89
87
84
81
76
74
72
68
66
64
62
62
61
60
59
57
56
56
54
53
53
50
49
42
41
39
39
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
46
46
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
48
48
48
48
48
47
47
47
47
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
52
52
52
52
52
52
52
52
52
52
52
52
51
51
51
51
51
51
51
52
52
53
53
54
54
54
54
54
55
55
55
55
56
56
57
57
57
57
57
57
57
58
58
58
58
58
58
58
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
60
60
59
59
59
59
59
58
58
58
58
58
58
58
57
57
57
56
56
56
55
55
55
55
55
55
55
55
54
54
54
54
54
54
54
54
54
54
55
55
55
55
55
56
57
57
57
57
58
58
58
59
59
59
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
61
61
61
61
60
60
59
59
59
59
59
59
59
59
60
61
61
62
62
62
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
62
62
62
62
62
62
62
62
61
61
61
61
61
61
61
61
61
61
61
62
62
62
62
62
63
63
63
64
64
64
64
64
64
65
66
66
66
66
66
68
70
70
70
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
70
70
70
70
70
69
69
69
69
69
69
69
69
69
69
70
70
70
70
70
70
70
71
71
71
72
73
73
74
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
74
74
74
74
74
74
74
73
72
72
72
72
72
72
72
72
71
71
71
71
71
71
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
71
71
72
73
73
73
73
73
73
73
73
73
73
73
72
72
72
72
71
71
71
70
70
70
70
70
70
69
69
69
69
69
74
75
78
80
81
87
93
95
99
102
103
115
119
124
126
128
130
130
131
132
132
138
138
139
139
140
141
141
142
142
145
147
149
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
151
149
148
148
147
147
147
146
145
144
144
144
143
142
142
142
141
141
141
140
140
139
139
138
137
137
136
134
133
131
128
126
125
125
121
120
120
119
117
115
113
112
112
111
111
109
108
107
106
105
105
104
103
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
101
101
100
97
96
96
95
95
94
93
92
92
89
88
87
87
86
86
86
85
83
82
82
82
81
81
81
81
82
82
82
82
82
82
82
83
83
83
83
84
84
84
84
84
84
84
84
84
84
84
84
84
84
84
83
83
83
83
83
83
83
83
83
83
84
84
84
84
84
84
84
85
85
85
85
85
85
85
84
84
84
84
84
84
85
85
86
86
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
88
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
91
91
91
91
91
91
91
92
92
92
92
92
92
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
95
95
95
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
95
95
95
95
95
95
95
95
95
95
95
94
94
94
94
94
94
94
94
94
94
94
94
94
94
94
94
95
95
95
95
95
95
96
96
96
96
96
96
96
96
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
98
98
98
98
98
99
99
100
100
101
101
101
102
103
103
103
103
103
103
103
103
103
103
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
103
103
103
103
103
103
103
103
102
102
102
102
102
102
102
102
102
102
102
102
102
102
101
101
101
101
101
101
101
101
101
101
101
101
102
102
102
102
102
102
102
103
103
103
103
103
103
103
103
103
103
103
104
104
104
105
105
105
105
106
106
107
107
107
107
107
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
110
110
111
111
111
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
114
116
116
117
117
118
118
118
118
118
118
118
118
119
119
119
120
120
120
120
120
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
120
120
120
120
120
119
119
119
118
118
118
118
117
117
117
116
115
115
114
114
114
114
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
114
115
116
116
117
118
119
120
121
121
121
121
122
122
123
123
123
124
124
125
125
125
125
125
126
126
126
126
126
126
127
127
127
127
128
128
128
128
128
129
129
129
129
129
129
128
128
127
124
124
123
123
122
120
119
119
118
117
116
116
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
117
117
117
117
118
118
118
118
118
118
118
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
120
120
120
120
120
120
120
120
120
120
120
120
120
121
121
121
121
121
121
121
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
123
123
123
123
123
123
124
124
124
124
124
124
124
124
124
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
127
128
128
129
129
131
131
133
133
133
134
134
135
135
135
135
135
135
134
134
134
133
133
133
133
132
132
131
131
131
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
128
128
128
128
128
128
128
128
128
128
128
128
128
128
129
129
130
130
130
131
131
131
133
134
134
135
135
135
135
135
135
135
135
135
134
133
133
132
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
132
132
132
132
132
132
132
132
133
133
133
133
133
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
135
135
136
136
136
136
136
136
137
138
138
139
139
139
139
139
139
138
138
138
138
138
138
138
137
137
137
137
137
136
136
136
136
136
136
136
136
136
136
136
136
136
137
137
137
138
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
138
138
138
137
137
137
137
137
137
137
134
134
134
134
134
134
134
134
134
134
134
134
134
134
136
136
137
138
138
138
138
138
138
138
138
138
138
138
138
138
138
138
138
138
138
139
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
141
141
141
141
141
141
141
141
141
141
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
142
141
141
141
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
140
141
141
141
141
142
142
142
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
144
145
145
145
145
145
145
145
145
145
145
145
145
145
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
147
147
147
147
147
147
147
147
148
148
148
148
148
149
149
149
149
149
149
149
149
149
149
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
149
149
149
149
148
148
147
147
146
146
146
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
147
147
147
147
147
148
149
151
154
154
155
155
155
155
156
156
157
157
157
158
160
160
160
159
159
159
159
158
158
158
158
157
157
157
157
156
156
156
156
156
155
155
155
155
154
154
154
153
153
153
152
152
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
152
152
152
152
153
153
153
153
153
153
153
154
154
154
154
154
154
154
154
154
154
154
155
155
155
155
155
155
155
155
155
155
156
156
156
156
156
156
156
156
157
157
157
157
157
157
157
157
157
157
157
157
157
157
157
157
157
157
158
158
158
157
157
156
156
156
156
156
155
155
155
155
155
155
155
155
155
154
154
153
153
153
153
153
153
153
153
153
154
154
154
154
154
154
155
155
155
156
156
156
156
156
157
157
157
157
157
157
157
157
157
158
158
158
158
158
159
159
159
159
159
159
159
159
159
159
159
159
159
159
159
159
159
160
160
160
160
160
160
160
160
161
161
161
161
161
161
162
162
162
162
162
163
163
163
163
163
163
163
163
163
163
163
164
164
164
165
166
166
167
168
168
171
172
173
174
175
177
177
178
183
185
187
187
188
189
190
192
192
192
192
193
193
193
194
196
197
197
197
198
198
199
199
199
200
200
200
200
201
201
201
201
202
202
202
202
202
202
202
202
203
203
203
203
203
203
204
204
204
205
205
205
205
206
206
207
208
208
209
210
210
210
210
210
210
210
209
209
209
209
209
209
209
209
208
208
208
208
208
208
208
208
207
207
207
207
207
207
206
206
206
206
205
205
205
205
205
204
204
204
204
204
203
203
203
203
203
203
203
203
203
203
204
205
205
205
206
206
206
206
207
207
207
207
208
208
208
209
210
210
210
210
210
212
213
213
213
213
213
214
214
214
215
215
216
216
217
217
217
218
220
222
223
224
225
226
227
228
229
230
232
234
237
241
242
243
243
243
244
244
245
248
248
249
249
249
250
250
250
250
252
254
254
258
260
260
262
262
263
267
268
269
270
271
271
274
274
275
275
276
277
278
278
279
281
283
284
284
284
284
284
284
285
285
286
287
290
292
293
293
294
294
294
294
295
295
295
296
296
296
297
298
298
298
298
299
299
299
300
300
301
302
303
303
304
304
304
304
304
303
303
303
302
302
301
299
299
299
299
298
298
297
296
296
295
295
295
294
294
294
293
293
293
293
293
293
293
292
291
290
290
290
288
288
287
287
285
283
282
281
280
279
278
277
274
272
272
271
270
268
268
267
266
266
266
264
264
263
262
262
259
258
254
251
250
249
249
249
249
248
247
246
248
248
249
250
251
251
251
252
253
254
256
259
260
261
262
262
263
264
265
266
266
267
268
269
270
271
271
274
274
275
275
275
276
276
277
277
279
280
280
280
281
283
284
284
284
284
284
284
284
284
284
285
285
285
285
285
285
285
285
286
286
286
286
286
286
286
286
286
286