232
232
232
232
232
232
232
232
233
233
233
233
233
234
234
234
235
235
235
235
236
236
236
236
237
238
238
239
241
242
243
243
244
244
244
245
245
245
245
245
250
253
254
254
255
259
260
261
262
262
262
262
262
262
262
263
263
264
264
265
265
266
266
266
266
264
260
260
259
259
258
258
257
257
255
254
254
255
255
256
256
257
263
264
265
265
267
267
268
272
272
274
274
273
272
272
267
268
268
270
270
270
271
272
274
276
276
277
277
277
277
278
278
278
278
278
279
279
280
280
280
280
280
280
280
280
280
280
280
280
280
280
281
281
281
281
282
282
283
283
284
284
284
285
286
288
288
288
288
288
288
288
288
288
288
289
290
294
296
297
298
298
301
303
304
305
305
306
306
306
307
307
307
307
307
308
308
308
308
309
310
321
322
324
325
323
322
320
318
312
312
313
313
314
314
314
314
315
315
316
316
317
317
318
319
319
322
322
322
322
323
323
323
324
324
324
324
324
324
324
324
324
324
324
323
323
323
323
323
323
323
323
323
324
324
326
327
328
329
329
329
330
330
331
331
332
332
332
332
332
332
332
333
333
333
334
334
334
334
335
335
335
335
336
336
336
336
336
336
337
337
337
337
337
338
338
338
338
339
339
339
340
341
342
342
344
344
344
345
346
347
347
348
348
348
349
349
349
349
349
348
351
352
352
352
352
353
353
354
356
357
358
358
358
359
359
360
361
363
364
365
365
366
366
367
367
367
367
367
367
368
368
368
368
369
369
369
369
369
369
369
369
369
369
371
374
374
375
378
378
379
379
382
382
382
382
382
382
382
382
383
383
384
384
385
385
386
387
388
388
388
389
390
391
393
394
394
394
394
394
395
397
397
398
398
399
400
401
402
403
404
407
407
407
409
414
413
411
410
409
409
409
408
408
409
409
410
411
414
416
418
418
417
414
412
411
411
411
413
414
415
416
416
421
422
425
427
428
428
430
430
431
432
432
432
433
434
434
434
433
432
431
430
429
430
431
434
434
439
441
442
442
442
443
443
443
443
444
444
444
444
445
445
449
449
449
449
449
449
449
448
448
447
447
448
449
450
450
452
455
455
454
454
454
453
452
454
454
454
456
457
459
460
461
462
463
473
475
479
476
475
475
474
471
470
470
471
473
474
474
475
475
476
478
479
480
481
483
490
490
490
490
490
490
490
490
490
490
490
489
489
488
487
487
485
485
487
488
488
489
489
490
492
493
495
496
496
496
496
496
496
496
495
495
495
495
494
494
491
491
492
493
498
500
506
507
507
505
505
504
502
501
501
500
501
501
503
504
506
509
509
509
509
509
509
510
511
511
512
513
516
517
518
519
519
520
527
527
528
529
529
529
530
530
530
530
530
530
530
530
530
530
530
530
530
530
531
532
533
534
536
537
537
539
541
544
546
548
550
552
555
557
560
562
565
567
572
570
568
566
564
562
561
560
558
556
553
551
547
549
551
552
553
554
555
556
557
561
562
564
566
567
568
573
573
574
574
575
577
578
579
580
581
581
582
583
581
580
579
575
574
569
567
566
564
565
566
567
568
569
570
570
570
570
571
571
571
572
572
572
573
573
573
574
574
574
574
575
575
575
575
575
576
576
576
577
577
578
578
579
580
581
582
583
584
585
585
586
587
589
589
590
590
590
590
591
591
591
591
591
592
594
596
599
600
602
604
605
607
611
612
613
615
615
615
616
617
617
617
617
617
616
616
616
616
619
622
625
627
629
630
631
632
633
634
635
636
637
638
640
641
643
643
644
646
647
650
652
653
654
655
655
656
657
659
659
662
665
672
675
679
683
686
689
691
695
698
701
705
710
718
719
721
723
729
733
736
738
740
740
746
748
752
754
755
758
761
763
767
769
771
774
777
779
780
784
785
787
791
792
794
799
802
803
806
810
813
817
820
821
822
824
825
828
829
831
834
835
837
837
838
839
840
842
843
846
849
854
855
857
859
861
865
868
870
873
875
878
882
884
886
889
892
895
897
899
901
903
904
908
909
910
912
917
921
931
933
936
939
942
944
946
948
949
952
958
960
962
964
966
968
970
971
976
978
979
982
984
987
994
996
998
1000
1003
1005
1008
1011
1017
1019
1024
1027
1029
1031
1033
1036
1038
1041
1042
1043
1045
1046
1048
1054
1058
1060
1062
1063
1064
1065
1070
1073
1075
1077
1079
1081
1083
1085
1087
1090
1092
1094
1096
1098
1100
1102
1106
1108
1110
1112
1115
1120
1122
1125
1127
1130
1133
1136
1139
1141
1142
1144
1147
1148
1151
1153
1155
1158
1160
1162
1168
1168
1169
1174
1180
1182
1185
1187
1191
1194
1198
1207
1223
1231
1234
1235
1236
1243
1248
1254
1257
1261
1265
1268
1271
1275
1280
1287
1289
1290
1292
1295
1297
1299
1301
1303
1307
1312
1321
1343
1345
1347
1349
1350
1352
1352
1353
1357
1358
1360
1362
1364
1365
1368
1369
1371
1372
1374
1375
1376
1378
1380
1380
1380
1380
1380
1380
1380
1380
1380
1380
1380
1381
1382
1384
1385
1388
1389
1390
1391
1392
1393
1395
1398
1400
1401
1403
1404
1407
1415
1417
1419
1422
1424
1426
1431
1433
1434
1440
1447
1450
1456
1461
1464
1466
1467
1469
1475
1478
1481
1485
1488
1490
1492
1494
1495
1495
1495
1495
1496
1496
1497
1497
1497
1498
1498
1498
1499
1500
1501
1502
1502
1503
1503
1504
1505
1507
1507
1503
1501
1497
1497
1497
1497
1497
1491
1485
1479
1483
1485
1488
1493
1496
1497
1498
1499
1500
1502
1500
1496
1490
1486
1483
1480
1478
1472
1472
1474
1475
1476
1476
1477
1477
1478
1483
1488
1490
1494
1496
1501
1504
1511
1515
1517
1524
1530
1535
1540
1540
1540
1540
1540
1541
1541
1541
1541
1542
1547
1553
1559
1572
1572
1582
1585
1588
1591
1595
1595
1593
1587
1584
1582
1580
1578
1573
1570
1561
1545
1534
1533
1536
1538
1538
1539
1541
1542
1544
1546
1546
1548
1554
1555
1557
1559
1560
1560
1561
1562
1564
1564
1566
1567
1567
1567
1574
1582
1586
1592
1597
1603
1616
1626
1653
1664
1680
1683
1682
1680
1679
1676
1674
1673
1670
1669
1667
1660
1657
1645
1643
1640
1635
1629
1626
1619
1615
1608
1607
1608
1609
1610
1611
1612
1613
1614
1617
1618
1620
1622
1624
1626
1631
1633
1634
1636
1637
1640
1642
1644
1647
1658
1668
1674
1678
1683
1689
1690
1703
1706
1707
1709
1716
1719
1719
1719
1719
1717
1715
1711
1709
1706
1697
1691
1687
1679
1676
1677
1677
1678
1678
1680
1681
1681
1681
1681
1679
1674
1670
1667
1664
1661
1659
1655
1654
1651
1649
1648
1646
1645
1644
1644
1644
1643
1642
1642
1641
1641
1641
1640
1640
1640
1640
1639
1638
1637
1637
1637
1637
1637
1637
1637
1638
1643
1651
1660
1657
1647
1630
1619
1610
1600
1595
1587
1585
1582
1580
1579
1577
1576
1574
1573
1571
1569
1562
1560
1556
1554
1551
1545
1544
1544
1544
1544
1543
1543
1543
1542
1542
1542
1542
1536
1528
1523
1519
1513
1512
1508
1506
1503
1500
1497
1492
1489
1486
1483
1482
1474
1467
1458
1451
1443
1434
1424
1418
1412
1408
1404
1398
1390
1376
1352
1348
1346
1341
1338
1331
1328
1326
1321
1314
1310
1305
1302
1300
1293
1290
1287
1280
1275
1270
1267
1262
1258
1254
1247
1245
1232
1229
1227
1226
1224
1222
1220
1218
1216
1214
1210
1207
1205
1204
1203
1202
1194
1192
1190
1188
1184
1182
1179
1164
1160
1152
1141
1135
1128
1123
1122
1118
1114
1112
1108
1104
1097
1091
1085
1082
1079
1077
1074
1072
1068
1065
1062
1060
1056
1053
1050
1046
1045
1039
1036
1032
1029
1027
1024
1022
1018
1016
1014
1013
1012
1007
1006
1004
1002
998
996
994
988
981
980
977
973
971
968
965
961
960
959
958
954
948
941
938
937
937
936
934
927
922
914
907
904
902
896
894
887
883
879
874
872
867
866
862
860
858
852
851
851
851
850
850
850
838
834
830
830
829
824
822
819
816
809
804
797
793
785
781
771
760
756
750
747
732
725
719
717
708
703
696
696
695
694
693
690
686
680
677
673
669
664
661
659
658
655
652
650
645
642
636
635
633
629
628
627
625
624
623
622
622
621
621
621
621
621
621
621
621
621
622
622
622
623
625
625
625
626
626
626
627
627
627
627
627
627
626
626
627
627
627
628
628
629
629
629
629
629
629
630
631
633
635
636
638
639
639
639
638
637
636
635
635
636
637
638
638
638
639
639
639
639
639
639
640
640
640
640
641
641
641
641
642
642
642
643
643
646
646
646
647
647
647
647
649
650
650
650
650
650
652
652
652
652
653
653
654
654
654
656
656
657
658
659
661
663
663
663
667
671
672
672
673
677
678
689
689
690
690
691
693
694
701
701
699
699
699
699
698
698
698
700
701
701
710
710
711
712
714
714
717
718
720
720
720
722
722
722
723
723
723
724
725
726
726
727
727
727
728
729
729
730
732
733
734
734
735
735
735
735
735
734
734
734
734
733
733
733
732
732
732
732
731
731
731
731
732
732
732
732
733
733
734
734
735
736
738
740
740
740
741
741
741
742
744
749
751
753
755
755
757
758
758
758
759
759
760
760
761
761
761
762
763
763
764
766
766
767
767
769
770
771
772
774
775
776
776
777
779
779
779
779
780
780
781
781
782
783
783
788
789
790
791
792
795
797
798
799
801
801
802
804
805
805
808
809
810
812
813
814
817
818
819
819
820
820
821
821
821
822
822
823
823
823
824
825
825
826
826
827
828
828
828
828
829
830
831
831
831
831
832
832
832
834
835
836
837
840
841
844
846
847
848
850
851
852
853
855
855
855
856
856
857
858
859
859
860
860
861
861
862
863
864
866
867
869
869
870
870
870
870
872
873
873
873
880
883
888
890
892
895
897
901
907
911
913
915
922
923
924
925
926
928
930
936
939
942
946
951
959
969
974
980
987
993
1008
1014
1023
1028
1036
1050
1054
1059
1065
1069
1080
1086
1097
1116
1122
1125
1127
1132
1136
1139
1152
1159
1163
1171
1178
1182
1185
1189
1190
1194
1201
1204
1205
1206
1214
1215
1218
1220
1225
1227
1228
1229
1231
1233
1235
1238
1241
1244
1245
1247
1248
1248
1251
1258
1259
1261
1261
1263
1265
1270
1272
1272
1275
1276
1278
1280
1281
1282
1285
1286
1286
1287
1288
1289
1291
1292
1296
1298
1301
1302
1309
1312
1318
1321
1329
1332
1334
1337
1341
1350
1352
1356
1359
1359
1362
1365
1368
1372
1376
1395
1398
1401
1403
1406
1408
1410
1413
1419
1426
1430
1436
1439
1442
1444
1447
1450
1451
1455
1461
1463
1468
1472
1476
1481
1488
1492
1495
1497
1498
1501
1510
1515
1521
1522
1527
1529
1531
1534
1537
1539
1541
1545
1546
1552
1555
1559
1560
1566
1569
1576
1582
1585
1589
1594
1597
1598
1600
1604
1608
1612
1618
1620
1621
1622
1625
1631
1633
1638
1641
1647
1651
1657
1661
1666
1672
1681
1689
1692
1704
1712
1715
1723
1741
1744
1755
1759
1761
1765
1768
1769
1771
1773
1774
1776
1777
1780
1783
1787
1789
1791
1794
1797
1805
1806
1806
1808
1811
1814
1816
1817
1820
1825
1829
1832
1837
1842
1844
1848
1851
1855
1861
1865
1870
1883
1887
1890
1890
1895
1910
1917
1927
1935
1944
1956
1971
2008
2025
2025
2025
2025
2015
1963
1942
1940
1940
1940
1940
1926
1913
1902
1888
1877
1856
1844
1841
1840
1837
1836
1835
1833
1832
1832
1831
1830
1829
1829
1828
1827
1826
1825
1824
1824
1824
1819
1815
1812
1810
1797
1793
1787
1784
1781
1775
1770
1766
1764
1762
1759
1757
1754
1751
1748
1741
1738
1731
1715
1712
1699
1694
1692
1687
1679
1677
1672
1666
1662
1658
1656
1649
1649
1635
1631
1625
1622
1614
1611
1610
1608
1605
1599
1593
1588
1583
1581
1580
1576
1570
1566
1562
1558
1552
1550
1545
1544
1542
1538
1533
1529
1527
1525
1522
1520
1519
1515
1515
1510
1506
1498
1495
1493
1490
1487
1480
1469
1463
1457
1450
1443
1440
1431
1426
1424
1418
1415
1411
1407
1402
1394
1390
1384
1379
1377
1375
1373
1371
1370
1367
1365
1350
1346
1343
1341
1338
1334
1331
1328
1323
1317
1313
1308
1305
1305
1300
1298
1293
1290
1282
1279
1277
1273
1273
1271
1270
1269
1268
1268
1267
1264
1263
1262
1261
1259
1258
1257
1256
1255
1250
1248
1247
1247
1246
1245
1239
1237
1236
1235
1234
1233
1231
1228
1226
1224
1221
1219
1217
1215
1213
1208
1204
1201
1199
1190
1189
1187
1183
1175
1170
1169
1163
1162
1158
1149
1140
1136
1127
1113
1109
1105
1098
1096
1093
1087
1063
1055
1055
1051
1045
1031
1027
1022
1018
1014
1003
996
991
984
979
965
961
955
950
945
937
930
925
921
919
916
913
911
910
909
908
907
906
902
900
898
895
891
888
886
884
883
882
878
876
871
868
868
868
867
867
867
867
867
867
866
866
865
864
864
863
863
863
862
862
861
861
860
859
859
859
858
858
857
856
854
853
850
849
847
844
841
839
836
834
833
832
829
828
828
828
828
828
828
828
828
828
828
828
828
828
828
828
828
828
827
826
826
825
823
823
822
821
820
819
818
817
816
813
812
811
810
808
808
805
805
804
803
802
801
799
799
798
796
794
793
792
791
790
789
789
786
784
783
781
779
777
776
775
775
774
774
772
772
772
771
771
770
769
769
769
768
768
767
767
766
765
764
764
763
762
762
761
760
760
759
758
756
755
753
752
748
747
742
741
739
739
738
738
738
737
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
735
734
734
733
732
731
729
727
725
725
724
724
724
723
722
721
720
720
720
719
719
719
719
717
715
714
712
711
709
709
708
699
699
698
695
695
695
695
696
696
696
699
697
697
695
694
694
693
693
693
692
675
673
667
666
666
665
662
661
659
658
657
656
655
654
654
654
654
654
654
653
653
653
653
652
652
651
651
651
650
650
650
650
652
653
654
655
657
658
659
659
664
665
666
667
667
668
669
671
672
673
675
678
678
678
679
679
679
679
680
681
681
681
682
691
692
692
692
692
691
691
690
690
690
690
690
690
694
694
695
696
696
697
698
698
698
698
699
699
699
701
701
703
704
705
709
712
712
713
713
714
714
714
714
715
715
715
715
715
715
716
716
716
716
717
717
719
719
722
723
724
725
725
728
729
731
732
732
733
733
733
734
734
734
734
735
735
736
736
737
737
738
738
739
740
741
741
742
743
744
744
745
746
746
746
747
747
748
748
749
749
749
750
751
751
752
752
753
755
756
756
757
758
759
759
760
761
761
762
763
764
765
767
767
768
768
768
769
769
770
770
771
772
772
773
774
774
775
775
775
775
776
776
776
777
778
778
779
779
779
780
780
781
781
782
782
782
783
783
784
784
785
785
785
786
787
788
789
790
790
791
792
793
794
796
797
797
798
799
800
802
803
804
805
805
805
806
806
807
808
808
809
810
810
811
811
812
812
813
814
815
815
815
816
816
817
818
818
819
820
823
823
823
824
825
825
828
829
831
832
833
834
835
837
837
838
838
839
840
840
841
842
845
846
846
848
848
849
849
850
850
851
851
852
852
853
854
854
855
856
856
857
857
858
858
859
860
861
862
862
863
863
864
865
866
867
869
870
871
872
873
874
875
876
877
877
877
878
878
879
880
880
881
881
882
883
886
888
890
892
893
894
896
897
898
898
899
901
902
904
905
907
908
910
911
911
912
912
913
914
914
917
917
918
918
920
921
923
925
926
927
928
929
931
935
939
940
942
945
951
952
953
955
957
958
960
962
963
965
966
967
971
973
976
979
982
987
995
996
997
998
999
1000
1002
1003
1008
1009
1010
1016
1017
1020
1022
1024
1027
1028
1030
1035
1036
1036
1039
1042
1046
1048
1049
1051
1051
1054
1056
1059
1061
1062
1064
1065
1066
1069
1074
1077
1080
1085
1086
1087
1089
1094
1096
1099
1102
1104
1106
1106
1107
1108
1109
1114
1120
1128
1132
1134
1134
1134
1137
1139
1145
1147
1152
1155
1157
1162
1165
1167
1171
1174
1175
1176
1180
1181
1181
1181
1184
1186
1187
1188
1189
1189
1190
1191
1191
1191
1191
1193
1191
1190
1187
1184
1181
1176
1174
1168
1164
1152
1151
1146
1141
1145
1147
1149
1154
1154
1159
1125
1065
1052
1051
1049
1048
1047
1047
1046
1046
1045
1044
1044
1043
1043
1042
1041
1040
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1039
1039
1039
1039
1039
1039
1039
1039
1039
1042
1043
1044
1044
1045
1048
1048
1050
1051
1051
1053
1055
1056
1057
1057
1058
1059
1059
1059
1060
1060
1059
1056
1055
1054
1050
1048
1046
1044
1043
1041
1039
1036
1034
1032
1030
1029
1028
1026
1025
1022
1021
1021
1021
1020
1019
1016
1015
1015
1014
1013
1012
1010
1008
1006
1006
1007
1008
1008
1009
1010
1010
1011
1011
1011
1012
1013
1017
1018
1018
1017
1016
1015
1012
1011
1008
1007
1005
1004
1002
1001
999
998
996
995
992
991
990
989
988
985
982
981
978
977
976
975
970
970
969
968
968
967
966
965
965
964
964
963
962
959
957
956
955
954
953
952
951
950
950
950
949
949
949
948
947
947
947
946
946
944
941
937
934
934
932
928
923
920
918
917
914
909
906
903
902
900
898
891
887
886
886
885
885
885
884
884
883
883
883
883
883
882
882
882
881
881
881
880
880
879
879
879
878
878
877
877
877
876
873
870
868
866
864
861
860
857
854
852
851
845
842
840
839
838
838
837
836
835
835
834
834
833
832
831
830
828
827
827
825
824
823
822
820
820
818
817
815
814
810
809
808
806
805
804
803
803
803
803
802
802
802
802
801
801
801
801
800
799
799
799
797
797
796
795
794
794
793
792
791
790
789
789
788
787
786
785
785
784
784
783
782
781
780
780
780
780
781
781
781
782
782
783
783
783
784
784
784
784
783
782
782
782
781
780
779
778
780
782
783
784
784
785
787
788
789
790
791
793
794
794
793
792
791
790
789
787
786
785
782
781
780
777
770
766
762
759
755
752
750
744
742
740
737
734
729
723
718
714
713
713
713
714
714
715
719
718
710
708
708
704
699
699
699
699
699
699
699
699
699
698
697
694
693
691
678
676
675
674
673
672
669
666
665
663
661
654
654
653
651
651
650
648
648
647
646
645
644
644
644
644
644
644
644
644
643
642
641
640
640
640
640
640
639
639
639
638
638
638
637
636
636
635
635
634
633
634
635
638
639
639
639
640
638
636
636
631
627
617
615
612
611
611
609
608
607
606
604
603
602
601
600
599
599
597
593
593
592
591
591
590
590
590
589
588
586
586
586
586
586
585
583
583
583
583
582
581
580
580
578
576
576
575
575
575
575
574
574
574
574
574
573
573
573
573
572
572
571
570
569
569
569
569
568
568
568
568
569
569
569
569
571
572
573
576
577
579
580
581
580
579
578
577
576
575
574
573
572
571
570
570
569
566
565
565
563
562
561
559
558
558
558
557
556
556
555
554
555
555
556
557
557
558
558
559
559
560
560
560
557
555
554
553
551
550
548
547
546
545
543
542
540
539
538
537
535
534
532
531
533
534
535
536
537
538
538
539
539
540
541
543
544
544
545
545
546
546
546
547
547
547
546
546
546
546
546
546
545
545
545
545
545
545
546
548
548
550
554
556
557
557
558
559
560
560
562
565
565
567
567
569
570
571
571
571
575
575
576
576
576
577
578
579
582
586
591
592
592
592
592
592
592
593
594
597
597
598
599
599
601
603
603
605
606
606
607
609
609
611
612
613
614
615
616
618
619
627
630
632
633
635
635
645
650
652
659
660
661
663
666
669
677
684
688
689
695
705
713
718
725
735
738
753
755
759
761
764
764
765
766
766
768
769
770
772
773
774
776
777
780
783
787
788
788
791
792
793
795
796
799
800
802
804
806
808
810
812
812
815
816
819
823
828
836
841
847
854
858
860
864
869
871
871
872
872
874
878
879
880
881
882
885
887
890
890
891
892
894
896
898
899
899
901
902
904
906
907
908
909
911
912
915
915
915
913
907
903
902
898
893
886
884
882
879
877
873
872
872
869
866
865
863
862
857
856
855
855
854
847
846
846
839
836
834
833
832
830
824
823
822
821
820
814
813
813
812
811
807
805
805
803
802
801
799
795
794
793
792
791
785
782
775
774
773
773
771
764
759
754
751
750
749
748
748
747
746
746
743
741
738
736
735
733
733
732
732
731
731
727
724
716
714
711
709
702
698
694
690
687
685
681
678
676
674
671
668
668
664
661
660
654
652
650
649
646
643
642
642
638
637
635
634
633
633
631
630
629
628
627
625
621
619
617
614
611
609
607
604
603
603
602
601
601
600
598
596
590
589
588
587
586
585
585
583
582
580
577
575
574
573
572
571
570
568
567
566
565
564
564
564
564
564
564
564
564
564
564
564
564
564
564
563
562
562
561
561
561
560
560
559
559
558
556
556
556
555
555
555
554
553
550
552
553
554
554
555
557
558
558
559
560
562
564
564
565
565
565
565
565
565
566
566
566
566
567
569
569
569
571
571
574
575
576
576
576
576
576
578
578
579
580
580
581
585
586
587
587
586
586
585
585
584
585
585
586
586
588
588
592
593
593
593
593
594
600
601
602
603
604
607
608
608
608
608
607
607
607
607
607
607
607
607
607
608
609
610
611
612
615
618
618
621
621
622
622
622
622
623
623
623
624
625
626
627
628
632
633
634
635
635
637
637
639
639
640
640
641
641
641
642
642
642
642
643
643
643
643
645
645
646
647
647
649
650
652
652
652
653
653
654
654
655
655
657
662
663
663
664
665
667
667
668
668
669
669
669
670
670
670
670
671
671
671
671
673
673
673
674
674
672
671
671
671
673
674
679
684
687
688
688
688
688
688
688
689
689
689
689
690
690
690
690
690
691
691
691
691
691
693
693
693
693
694
694
695
695
695
696
696
696
698
698
700
700
701
701
704
706
707
707
709
710
710
710
712
714
715
715
716
716
716
717
718
718
719
722
722
724
725
726
727
728
732
733
734
737
737
738
738
739
739
739
739
740
742
743
745
746
747
749
750
751
752
753
754
754
756
756
758
760
759
757
756
756
755
755
754
754
756
756
756
757
758
758
759
759
759
760
761
762
763
764
766
767
767
768
768
769
773
774
775
777
777
778
779
779
779
780
781
783
783
783
783
784
785
785
785
787
787
789
789
791
791
794
796
799
799
800
801
802
802
804
805
808
809
812
815
818
819
819
821
822
824
828
829
829
830
830
830
831
831
832
832
833
833
834
835
835
841
842
846
847
849
849
850
851
851
856
857
857
857
856
855
854
854
854
856
864
865
866
867
870
873
875
878
881
882
884
885
887
889
899
902
905
913
914
915
917
924
928
932
950
952
955
958
960
965
975
978
984
986
989
991
993
996
1000
1003
1003
1003
1002
1002
1002
1001
1001
1001
1000
1000
998
997
996
995
995
994
994
993
992
992
992
992
992
992
992
991
991
990
990
990
989
989
989
989
988
987
986
986
985
985
983
982
980
979
979
977
975
973
972
971
971
970
969
967
964
961
959
958
956
955
953
949
947
941
938
936
934
932
931
919
915
910
900
898
896
894
882
878
874
859
855
854
854
853
852
850
849
847
846
844
844
843
843
839
839
838
842
843
844
847
851
851
851
851
850
850
850
850
850
849
849
848
848
843
842
840
837
834
832
831
828
825
823
822
822
820
818
818
817
817
817
817
816
816
816
813
807
806
801
799
796
794
793
792
792
792
790
788
787
786
785
785
784
784
782
782
782
781
780
780
780
780
780
779
778
777
777
776
775
775
774
773
772
770
766
765
765
765
764
764
762
761
760
760
759
759
759
759
759
759
759
759
759
758
758
758
757
757
757
756
755
754
753
753
753
752
752
752
750
748
746
744
742
741
738
736
734
733
733
733
733
733
733
733
733
732
732
731
731
731
730
730
729
729
729
727
726
722
721
719
719
717
717
717
714
714
713
709
705
705
704
702
699
699
699
701
704
704
704
705
706
706
707
707
707
706
705
705
702
699
696
695
694
694
689
689
687
687
686
685
684
684
683
682
684
685
689
690
693
694
694
696
698
699
698
692
687
678
677
676
677
678
681
686
682
682
681
680
671
670
670
669
668
667
666
666
668
668
669
669
670
672
673
679
681
683
690
692
696
701
702
704
708
710
715
721
722
724
725
726
727
729
729
730
731
731
734
734
737
738
740
741
743
745
748
751
753
755
757
759
763
767
774
777
780
782
787
789
791
794
798
802
804
805
806
807
808
809
809
817
821
822
824
832
834
836
841
844
848
850
854
856
863
864
866
870
871
873
878
880
885
886
888
888
888
888
888
888
888
888
888
888
888
888
888
888
888
888
888
888
887
886
885
884
882
880
879
879
878
877
875
872
870
867
861
858
855
853
846
843
841
840
838
833
828
823
817
811
808
793
791
789
788
788
787
787
786
785
784
783
779
777
776
775
774
765
763
761
759
756
750
746
739
736
733
732
730
714
709
704
702
700
698
696
694
692
689
684
681
679
665
662
659
648
633
628
624
619
608
604
604
604
604
603
603
602
602
602
601
600
599
596
579
577
575
563
559
551
538
531
526
525
524
522
521
521
522
523
524
524
526
526
527
527
527
527
524
523
522
514
511
509
506
503
502
500
500
499
497
496
495
495
495
494
490
488
488
488
487
485
477
474
471
471
470
468
467
466
466
465
464
463
463
460
458
453
451
448
446
444
444
442
442
441
441
440
439
439
438
438
437
437
438
438
438
439
440
440
440
440
440
440
440
440
442
442
443
443
444
444
446
446
446
446
445
445
461
462
463
463
463
463
462
461
460
459
459
458
458
456
454
454
454
453
453
452
452
452
452
452
452
451
451
451
451
451
450
450
449
449
449
449
450
450
450
451
451
452
452
453
453
453
455
455
455
456
456
456
457
457
457
457
458
460
461
461
461
461
461
462
464
464
464
464
464
464
466
466
466
466
466
466
466
466
466
466
468
469
468
468
469
469
470
471
471
472
472
473
474
475
476
477
477
478
478
479
481
481
482
483
484
486
488
488
489
490
491
491
491
491
491
490
490
490
490
489
489
489
493
495
497
499
501
510
509
507
506
505
504
505
505
510
510
511
511
513
513
513
513
513
511
511
510
508
507
505
505
505
505
507
507
507
507
507
507
506
506
506
506
506
506
506
506
511
513
513
516
516
515
514
514
514
514
514
514
514
514
515
515
516
518
518
521
521
521
521
521
522
522
522
522
523
523
523
524
524
524
525
525
525
525
526
526
527
530
530
531
532
534
535
535
536
536
536
537
537
537
537
538
538
539
539
541
542
542
542
542
542
542
542
541
541
541
541
542
545
546
547
548
549
549
550
551
551
551
551
551
551
551
551
551
551
551
551
553
554
555
555
558
559
560
560
561
563
564
565
566
567
568
569
569
569
571
573
574
575
577
577
577
576
576
575
575
575
576
576
576
578
578
579
579
579
580
580
580
581
582
583
583
584
584
585
585
586
586
587
587
588
589
589
590
597
599
600
600
602
603
604
604
604
604
605
605
606
606
607
609
610
612
613
613
614
614
614
615
617
618
618
618
619
619
620
623
624
625
626
627
630
631
634
636
640
642
642
643
644
646
649
649
650
653
656
657
661
663
664
666
667
670
670
675
678
690
691
697
700
707
710
711
712
714
715
716
718
719
720
721
722
722
722
723
723
723
724
724
724
725
726
726
727
726
725
724
717
716
713
711
710
709
709
708
708
707
706
704
702
702
701
700
699
698
691
690
688
680
680
678
676
668
665
654
653
638
635
628
626
624
621
620
617
612
611
609
604
602
602
599
599
598
597
596
595
594
592
590
589
586
586
583
582
582
580
579
577
575
575
574
568
566
565
565
565
565
564
564
562
561
560
556
556
552
551
550
550
549
548
545
545
544
544
544
544
543
543
543
543
543
542
539
538
536
535
534
534
534
533
532
531
531
531
530
530
528
528
527
527
527
527
526
526
526
525
525
525
524
524
524
522
522
521
521
520
518
518
516
516
515
514
513
513
512
509
508
508
501
498
497
497
495
495
494
493
493
490
490
489
489
489
487
487
487
487
490
490
491
491
492
493
494
494
494
494
494
495
495
496
497
498
498
501
501
502
503
504
505
506
510
512
519
522
524
525
534
539
539
542
544
548
549
550
551
551
552
552
552
553
554
556
559
561
565
565
569
575
577
583
584
585
586
587
587
588
592
596
597
597
599
600
601
601
602
603
603
605
606
607
608
609
611
609
609
608
607
605
602
600
598
595
591
588
586
584
582
578
576
574
572
571
569
568
567
565
564
564
564
563
563
562
562
560
558
557
554
554
553
552
551
550
549
548
548
547
547
546
546
543
541
540
537
535
534
532
529
527
522
521
520
517
513
511
510
509
508
508
507
507
507
506
505
501
500
500
499
499
498
497
496
496
494
494
494
493
492
491
490
489
488
488
488
488
488
487
486
486
485
485
485
485
484
484
484
483
483
482
482
482
481
481
480
480
479
476
476
475
475
474
474
474
474
473
472
471
471
470
470
470
469
468
467
467
466
466
465
465
464
463
463
462
462
462
461
461
459
456
454
454
452
451
451
451
451
451
446
446
444
444
436
432
432
431
431
431
431
432
432
432
433
434
434
435
435
435
435
434
433
433
433
432
429
429
427
427
426
426
425
425
425
425
425
424
423
423
422
417
416
415
415
415
415
415
415
415
415
412
411
410
409
408
408
407
407
407
406
405
404
403
403
403
403
403
403
403
403
403
402
402
402
402
402
402
402
402
402
401
401
400
400
400
400
400
400
400
400
400
399
399
398
398
397
396
394
394
393
392
392
391
391
392
392
392
392
393
393
393
394
395
395
395
395
396
396
395
389
390
390
391
391
386
385
384
384
383
382
381
380
379
376
371
371
371
372
372
372
373
375
375
376
377
379
380
381
382
382
382
383
383
383
383
383
386
387
390
392
398
401
403
406
406
406
408
409
410
411
411
412
414
416
416
418
420
421
421
427
429
430
431
438
439
441
447
448
449
449
455
455
461
461
461
462
462
464
464
464
465
467
468
471
472
479
480
481
488
490
491
495
500
502
503
505
506
510
513
515
516
518
524
525
527
529
531
532
534
537
537
538
538
539
539
543
543
544
545
545
545
546
546
548
556
557
561
560
560
560
560
559
559
559
558
558
556
556
555
555
554
554
553
553
552
549
547
546
545
544
542
541
541
539
538
535
533
532
528
526
521
513
512
503
501
500
498
493
492
491
488
487
486
485
485
484
482
481
480
476
475
474
472
471
468
463
446
445
444
443
441
438
437
436
435
434
433
431
427
420
418
388
387
383
382
380
380
378
376
376
375
352
351
350
349
348
347
346
346
336
335
334
334
332
329
328
322
316
314
313
313
312
312
310
310
310
309
308
306
305
303
299
293
292
286
285
285
282
281
279
279
278
278
277
274
273
273
272
272
272
271
270
268
268
267
264
262
262
261
261
257
253
253
252
251
250
249
249
249
248
248
246
246
246
246
247
247
247
249
250
250
250
251
252
254
254
255
255
256
257
257
258
258
258
259
259
259
259
259
259
259
259
259
259
259
259
259
259
259
258
258
258
258
257
257
257
257
257
257
257
257
257
257
257
257
257
257
257
258
258
258
259
259
259
260
261
261
263
267
267
270
271
274
276
276
276
276
275
274
274
273
273
273
273
274
275
275
275
280
280
280
280
280
281
282
284
284
285
285
286
286
288
289
289
290
290
291
293
293
294
295
295
295
296
297
298
298
301
302
303
303
304
304
305
305
305
305
306
309
311
312
313
314
314
315
317
317
317
318
318
319
320
320
321
321
323
326
326
327
327
328
330
333
334
336
339
339
340
342
344
347
348
349
350
350
353
353
358
360
362
363
364
366
367
370
372
372
373
375
376
380
380
380
381
381
381
382
383
387
387
389
389
390
391
392
392
393
393
394
394
395
396
396
399
399
400
402
403
406
406
405
405
404
403
403
403
403
402
401
400
400
399
398
398
398
397
395
394
393
390
389
389
388
388
387
387
386
384
382
381
379
379
378
377
374
373
373
372
371
369
367
365
364
359
358
356
355
353
352
351
348
346
343
342
339
334
326
324
316
314
312
311
310
308
304
303
301
301
300
300
300
300
299
299
299
298
298
297
297
296
295
295
294
293
293
292
291
288
286
286
284
283
282
282
282
282
282
282
281
281
281
281
281
283
283
284
286
286
290
290
291
291
293
286
280
274
268
267
263
261
259
256
254
250
250
244
243
242
242
242
241
241
240
240
240
240
239
239
238
238
238
238
236
235
235
234
231
226
226
226
226
226
225
225
222
222
222
222
220
215
215
215
215
212
210
211
211
210
210
209
207
206
206
203
203
201
197
195
194
199
201
201
202
202
202
202
201
200
198
197
196
194
194
186
186
193
195
196
195
195
195
194
191
189
185
185
180
180
180
180
180
181
181
181
182
186
186
188
186
186
175
174
174
171
165
165
164
164
164
164
161
161
162
162
162
162
162
162
162
162
162
162
162
162
162
162
163
164
165
165
165
164
164
163
163
162
162
162
161
161
161
161
161
161
159
159
157
157
156
155
155
154
154
153
152
152
152
152
152
152
152
152
152
152
152
150
150
149
148
148
148
148
148
148
148
148
148
148
148
148
148
149
150
150
150
150
150
151
155
155
155
156
156
156
156
156
156
155
154
154
154
153
153
153
152
152
151
151
150
150
148
148
148
148
147
147
145
145
147
149
149
149
149
149
149
149
149
149
149
150
151
153
153
154
154
155
155
154
154
151
149
149
149
149
151
151
152
152
153
153
153
153
153
152
152
152
152
152
152
152
153
155
155
155
155
153
151
149
149
149
151
152
153
154
157
158
158
158
159
158
157
157
156
155
152
150
147
146
146
144
143
141
140
139
137
136
135
135
135
134
134
134
133
133
132
132
131
131
131
131
132
132
132
132
132
132
132
132
131
131
131
131
131
131
131
131
131
132
132
132
132
132
133
133
133
133
133
133
133
133
133
133
133
133
131
129
129
129
128
128
128
128
126
126
125
125
125
125
126
126
123
123
123
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
123
123
123
123
123
123
123
123
123
123
122
122
120
120
120
120
121
121
121
121
121
120
120
120
120
120
120
120
119
119
119
119
119
119
119
119
119
119
119
119
119
119
120
120
121
121
122
122
125
125
125
126
126
127
127
127
126
126
126
126
126
125
125
125
124
124
123
123
123
123
123
123
123
123
123
122
122
122
122
122
121
121
121
119
119
119
119
119
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
119
119
119
119
119
120
120
120
120
119
120
120
121
121
122
121
121
121
121
121
121
123
123
123
123
123
123
123
123
123
122
122
122
122
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
123
125
125
126
126
127
127
128
128
128
129
129
129
129
129
130
130
132
132
132
132
133
134
134
134
134
134
134
134
134
134
133
133
133
133
133
133
133
133
133
133
133
133
132
132
132
132
132
132
131
131
131
131
131
132
133
133
134
135
136
138
140
142
143
144
145
147
149
150
151
152
154
155
155
156
156
156
158
159
162
162
161
159
158
154
151
150
150
151
152
153
154
155
155
156
157
157
156
155
155
155
155
155
155
155
155
155
155
154
153
152
151
151
150
150
150
151
152
153
153
154
154
152
152
152
151
150
150
150
150
150
150
150
150
150
150
149
148
148
147
147
144
148
148
151
152
152
152
152
154
154
154
154
154
154
154
153
153
153
153
153
152
152
152
151
151
151
150
150
150
149
149
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
149
150
151
151
151
151
151
151
152
152
152
152
152
152
154
156
157
158
158
159
159
159
160
160
160
160
163
163
163
163
163
163
163
164
164
164
164
164
164
164
164
164
164
164
164
164
163
163
163
162
162
161
161
161
161
161
164
164
162
162
161
161
164
177
180
180
181
184
184
182
180
180
179
179
178
178
179
179
181
181
186
187
187
188
189
189
190
191
191
192
193
194
194
194
194
194
194
194
193
193
192
190
189
189
188
187
189
190
191
192
192
198
200
200
201
202
203
204
205
207
207
209
209
211
211
212
213
223
227
228
229
230
231
231
234
235
235
237
240
243
244
251
252
254
255
257
258
258
258
258
258
257
257
257
257
257
257
257
257
257
257
257
257
257
257
258
258
258
259
259
259
259
260
260
261
261
262
262
262
262
262
262
262
262
262
261
261
261
260
260
259
259
259
259
260
260
261
261
261
261
261
264
264
265
266
266
266
267
267
268
269
269
269
274
275
276
276
279
280
282
285
286
287
288
291
293
296
297
298
299
299
300
301
302
302
303
304
304
305
306
307
308
310
311
312
314
315
316
317
319
319
320
322
322
323
323
325
326
327
329
331
332
334
336
337
338
338
339
342
344
344
344
345
345
346
347
348
349
351
361
362
375
379
382
390
390
391
393
394
396
396
397
398
399
400
401
404
405
406
406
407
408
409
410
412
414
415
416
417
419
420
421
422
424
429
432
433
436
438
441
443
444
446
448
450
452
453
454
455
456
457
459
460
463
466
467
468
470
471
475
477
479
481
483
487
490
493
495
496
499
504
511
513
515
517
526
529
531
533
534
535
536
539
543
543
544
546
548
548
549
550
551
551
552
552
553
553
554
555
555
556
556
558
558
559
560
561
561
563
564
564
565
568
569
571
572
576
577
578
580
581
583
584
588
591
597
600
602
604
607
612
614
616
617
619
620
620
622
623
624
625
626
627
629
629
629
631
631
632
634
635
636
637
638
640
647
647
649
650
654
654
655
656
659
662
663
666
668
669
671
673
674
678
687
691
693
694
695
699
701
701
703
705
707
708
713
716
718
724
725
726
727
732
735
741
743
746
748
752
753
756
757
759
760
762
765
766
768
769
773
774
775
776
778
782
783
783
784
784
789
790
791
793
794
797
798
799
799
800
800
803
816
822
823
825
828
832
837
843
844
845
845
847
848
849
850
857
859
864
865
866
867
868
869
870
871
878
882
888
894
900
905
910
919
922
932
938
944
963
971
977
980
985
986
987
987
989
1008
1010
1012
1013
1013
1014
1014
1020
1026
1030
1044
1047
1051
1054
1057
1061
1063
1069
1070
1071
1072
1073
1075
1083
1089
1092
1097
1099
1103
1103
1104
1105
1106
1109
1111
1115
1120
1127
1135
1138
1143
1154
1161
1162
1164
1166
1173
1188
1196
1199
1201
1203
1205
1206
1209
1211
1215
1218
1222
1224
1226
1228
1232
1233
1242
1244
1245
1248
1249
1254
1256
1257
1259
1260
1262
1274
1283
1285
1287
1288
1293
1296
1297
1299
1304
1304
1305
1307
1311
1313
1322
1353
1359
1368
1379
1388
1394
1396
1398
1400
1413
1419
1421
1427
1436
1439
1441
1447
1453
1461
1463
1466
1466
1464
1462
1461
1461
1461
1460
1460
1460
1459
1459
1458
1458
1458
1458
1457
1457
1457
1456
1456
1455
1453
1447
1444
1439
1436
1424
1415
1405
1402
1398
1385
1378
1376
1370
1356
1353
1351
1349
1342
1332
1320
1312
1305
1297
1275
1269
1268
1267
1266
1266
1266
1264
1263
1263
1262
1260
1259
1258
1258
1254
1248
1246
1246
1241
1238
1233
1221
1219
1212
1211
1206
1197
1196
1193
1190
1189
1188
1184
1182
1179
1176
1175
1173
1171
1170
1168
1166
1158
1140
1136
1131
1128
1126
1125
1115
1100
1093
1090
1080
1072
1066
1062
1059
1055
1054
1053
1053
1052
1048
1045
1039
1035
1029
1023
1021
1020
1019
1019
1017
1012
1009
1006
1003
1001
997
994
981
978
974
970
969
969
969
968
967
965
952
951
950
950
949
945
943
939
930
907
900
892
881
878
869
865
861
856
851
846
842
837
836
835
835
834
833
832
831
828
826
820
819
818
817
816
815
814
813
807
801
796
793
791
790
783
768
766
765
764
764
763
760
758
757
756
754
748
747
747
746
745
740
738
737
735
734
730
728
726
724
720
718
717
715
713
710
709
704
702
699
698
693
690
685
685
684
683
678
676
673
669
667
666
664
663
662
661
658
657
656
655
652
644
640
639
637
636
635
633
631
630
627
625
624
623
623
620
618
618
617
612
609
607
606
605
604
602
601
600
598
598
598
595
594
593
591
590
589
587
586
585
583
582
580
579
576
574
573
572
570
567
565
564
563
562
561
560
560
559
557
556
555
555
553
553
552
551
548
547
546
544
544
543
540
540
539
538
537
536
535
535
534
533
533
531
530
529
527
525
523
522
520
516
511
510
508
507
505
502
496
484
482
480
479
471
465
462
460
458
455
452
449
448
447
445
444
441
440
440
439
438
436
434
433
432
431
431
430
429
429
427
425
424
422
421
419
417
415
413
412
410
406
404
403
402
402
400
399
398
397
396
394
392
391
390
388
387
385
383
378
375
373
371
370
368
367
363
362
359
358
356
350
348
345
336
334
328
328
327
327
327
326
326
326
325
325
324
322
322
321
321
320
319
317
315
313
312
311
309
308
308
307
307
305
305
304
303
302
301
300
298
297
295
294
291
290
290
288
287
287
286
285
284
283
282
281
280
279
277
275
274
273
273
272
271
270
269
269
267
267
266
266
264
264
263
263
262
261
260
260
260
260
258
258
258
258
258
258
258
258
259
260
261
262
262
263
264
264
266
266
266
266
266
264
264
263
263
262
260
260
258
257
257
256
256
255
254
252
252
252
251
251
251
251
251
250
250
250
250
250
249
249
249
249
248
248
247
245
243
241
240
239
237
231
230
227
225
224
223
223
222
222
221
221
220
220
217
210
208
207
206
204
204
203
202
201
200
199
199
197
196
196
194
190
190
189
189
188
187
192
194
195
197
200
202
203
201
200
195
194
191
188
183
182
182
181
181
181
181
181
180
180
180
179
179
179
179
179
183
185
185
186
184
184
171
170
170
167
165
166
166
166
166
165
164
163
163
163
163
164
165
166
166
167
167
167
167
167
167
167
166
165
164
163
162
162
161
161
161
161
161
161
161
161
161
158
158
155
154
153
152
152
152
152
152
152
152
152
152
152
152
152
152
150
150
149
147
147
147
147
148
148
148
149
149
149
149
149
149
149
149
149
149
149
149
150
151
152
153
153
154
157
158
157
157
157
156
156
156
155
155
155
154
153
153
152
151
151
151
151
151
151
150
149
149
148
148
148
148
144
144
147
147
148
148
149
149
150
150
150
150
150
149
148
148
148
148
148
148
148
148
148
152
153
154
155
160
161
161
161
159
158
158
156
155
155
155
155
155
155
155
155
157
157
158
158
160
160
159
158
158
157
157
157
156
156
156
156
157
158
158
158
157
153
146
144
141
141
140
138
137
137
137
137
137
136
136
136
135
135
135
135
135
134
134
133
133
132
132
132
132
131
131
131
131
131
131
131
131
131
132
133
133
133
133
133
134
134
134
134
134
134
134
134
134
134
134
134
134
134
133
133
130
130
129
129
129
129
129
129
129
129
129
127
127
126
126
126
126
126
126
125
125
124
124
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
122
122
122
122
121
121
121
121
121
121
121
121
121
121
121
121
121
120
120
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
120
120
120
120
120
120
120
119
119
119
119
119
119
119
119
119
119
119
119
119
119