1183
1182
1182
1182
1182
1181
1181
1181
1181
1180
1179
1178
1178
1177
1176
1175
1174
1174
1173
1173
1171
1171
1166
1166
1165
1164
1164
1163
1156
1154
1153
1152
1151
1149
1149
1149
1149
1149
1149
1149
1150
1150
1150
1150
1150
1151
1151
1151
1151
1152
1152
1152
1152
1152
1152
1152
1152
1152
1152
1153
1153
1153
1153
1153
1153
1153
1153
1154
1154
1154
1155
1155
1155
1155
1155
1154
1154
1154
1154
1154
1154
1154
1154
1154
1154
1154
1155
1161
1162
1163
1164
1165
1169
1170
1173
1173
1174
1174
1175
1177
1178
1183
1183
1183
1183
1185
1185
1184
1183
1182
1180
1180
1180
1180
1181
1181
1181
1181
1181
1182
1183
1184
1185
1186
1185
1184
1181
1181
1181
1181
1181
1181
1181
1181
1181
1182
1182
1182
1182
1184
1188
1188
1189
1190
1191
1191
1191
1191
1191
1190
1190
1189
1189
1189
1189
1189
1190
1191
1191
1196
1197
1198
1199
1200
1202
1203
1204
1205
1206
1206
1206
1206
1206
1206
1206
1206
1206
1206
1206
1206
1208
1209
1209
1210
1211
1212
1212
1218
1218
1220
1220
1225
1228
1233
1245
1246
1247
1249
1250
1252
1253
1254
1257
1257
1257
1255
1261
1265
1272
1276
1279
1281
1283
1285
1289
1290
1290
1291
1292
1292
1293
1293
1294
1294
1295
1295
1295
1296
1297
1298
1298
1298
1299
1299
1300
1300
1302
1304
1305
1307
1307
1309
1311
1312
1313
1314
1320
1324
1324
1325
1332
1334
1333
1333
1333
1332
1332
1332
1332
1332
1332
1333
1335
1337
1340
1341
1343
1346
1348
1351
1355
1355
1356
1356
1357
1360
1361
1364
1364
1362
1361
1360
1359
1357
1357
1356
1354
1353
1352
1352
1352
1347
1346
1345
1344
1344
1343
1343
1342
1342
1342
1341
1340
1339
1337
1337
1337
1337
1338
1340
1342
1344
1347
1351
1353
1355
1355
1355
1354
1354
1354
1354
1354
1353
1353
1352
1351
1351
1350
1349
1347
1347
1346
1345
1343
1342
1342
1342
1341
1341
1341
1341
1340
1340
1339
1337
1336
1336
1336
1336
1335
1335
1335
1335
1335
1334
1333
1333
1332
1333
1335
1337
1337
1337
1337
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1340
1341
1341
1342
1342
1342
1342
1343
1343
1343
1343
1344
1345
1346
1346
1346
1347
1347
1348
1349
1349
1350
1350
1351
1351
1351
1351
1351
1351
1351
1351
1351
1351
1351
1351
1350
1348
1348
1335
1334
1332
1332
1331
1330
1327
1323
1323
1323
1322
1322
1320
1320
1319
1319
1318
1318
1317
1317
1317
1317
1317
1317
1317
1317
1318
1318
1318
1318
1319
1319
1319
1319
1319
1319
1320
1320
1320
1320
1320
1320
1321
1321
1322
1322
1322
1323
1323
1323
1323
1329
1334
1336
1337
1339
1340
1340
1341
1346
1355
1356
1356
1356
1360
1361
1363
1364
1366
1377
1381
1383
1389
1392
1395
1395
1398
1400
1401
1401
1403
1403
1404
1404
1404
1404
1405
1405
1406
1407
1410
1411
1416
1418
1423
1436
1441
1442
1444
1452
1458
1462
1466
1467
1471
1472
1472
1481
1511
1511
1513
1514
1514
1514
1514
1516
1517
1520
1527
1528
1530
1533
1536
1544
1548
1552
1553
1560
1562
1564
1566
1567
1569
1570
1571
1572
1574
1575
1578
1579
1582
1584
1585
1586
1589
1591
1592
1594
1594
1595
1597
1602
1603
1605
1607
1609
1611
1616
1618
1621
1624
1628
1630
1631
1633
1635
1636
1638
1641
1643
1647
1649
1651
1653
1654
1657
1659
1665
1669
1671
1674
1676
1678
1681
1685
1687
1688
1690
1698
1702
1703
1706
1710
1713
1716
1719
1721
1723
1726
1730
1733
1735
1738
1740
1743
1747
1751
1754
1758
1761
1763
1768
1774
1780
1784
1786
1789
1791
1797
1800
1804
1808
1813
1815
1819
1823
1833
1840
1844
1859
1864
1866
1867
1868
1869
1875
1882
1886
1894
1897
1905
1911
1913
1915
1924
1929
1933
1941
1944
1947
1951
1953
1965
1968
1970
1972
1975
1978
1986
1994
2007
2011
2019
2025
2027
2029
2031
2032
2034
2035
2037
2040
2041
2044
2049
2051
2052
2053
2055
2067
2073
2080
2084
2098
2102
2105
2117
2121
2127
2130
2134
2137
2141
2144
2158
2159
2159
2160
2160
2161
2161
2162
2162
2163
2163
2163
2163
2164
2165
2165
2166
2166
2166
2167
2167
2167
2165
2163
2158
2154
2149
2147
2145
2143
2138
2136
2132
2130
2128
2126
2112
2107
2096
2093
2087
2083
2079
2072
2068
2063
2062
2061
2061
2059
2055
2040
2026
2025
2023
2022
2014
2010
2006
2005
2003
2000
1997
1993
1988
1982
1981
1979
1979
1976
1973
1968
1967
1966
1965
1964
1963
1961
1960
1958
1957
1956
1951
1949
1947
1946
1920
1908
1907
1900
1899
1897
1895
1894
1893
1890
1888
1885
1883
1882
1875
1873
1871
1864
1861
1853
1851
1851
1850
1850
1847
1845
1843
1842
1840
1840
1839
1838
1834
1831
1830
1829
1828
1828
1827
1827
1826
1825
1824
1824
1823
1819
1816
1812
1810
1807
1802
1800
1798
1794
1790
1787
1785
1784
1779
1776
1772
1769
1766
1761
1756
1753
1751
1745
1740
1738
1736
1735
1734
1733
1731
1729
1727
1725
1723
1718
1716
1716
1715
1714
1713
1712
1708
1691
1685
1676
1672
1659
1650
1641
1635
1631
1625
1622
1617
1612
1608
1605
1598
1595
1594
1594
1592
1592
1591
1589
1589
1588
1586
1586
1585
1585
1583
1582
1581
1580
1580
1579
1578
1578
1577
1576
1575
1574
1572
1571
1570
1564
1571
1572
1573
1576
1576
1577
1579
1581
1582
1583
1584
1585
1587
1588
1589
1590
1589
1588
1588
1586
1585
1585
1585
1584
1584
1583
1583
1582
1581
1581
1582
1583
1584
1588
1592
1593
1595
1599
1600
1601
1602
1603
1603
1605
1607
1609
1610
1611
1613
1615
1616
1617
1618
1618
1618
1617
1616
1616
1615
1615
1615
1615
1614
1614
1614
1614
1613
1613
1613
1612
1612
1611
1611
1611
1610
1609
1609
1608
1609
1616
1620
1621
1622
1626
1628
1629
1630
1631
1633
1638
1647
1648
1649
1650
1651
1652
1653
1653
1653
1653
1654
1654
1655
1655
1658
1658
1659
1659
1659
1659
1660
1660
1660
1660
1661
1661
1661
1661
1661
1662
1662
1663
1663
1664
1668
1668
1669
1670
1670
1671
1671
1673
1675
1681
1683
1685
1687
1688
1689
1691
1691
1692
1693
1694
1695
1697
1703
1706
1708
1714
1719
1721
1723
1725
1726
1727
1729
1732
1735
1736
1737
1738
1739
1742
1743
1747
1750
1753
1760
1762
1763
1768
1770
1775
1782
1784
1786
1787
1789
1791
1798
1802
1807
1808
1808
1808
1808
1807
1806
1806
1804
1804
1803
1803
1803
1802
1802
1801
1801
1801
1801
1800
1800
1799
1799
1799
1798
1798
1798
1798
1799
1800
1802
1804
1805
1807
1808
1811
1813
1823
1827
1830
1835
1835
1835
1837
1838
1838
1838
1839
1839
1840
1840
1837
1833
1832
1830
1827
1826
1823
1823
1821
1821
1819
1817
1815
1814
1813
1812
1811
1810
1809
1808
1807
1806
1806
1805
1805
1804
1803
1804
1805
1806
1806
1809
1810
1811
1811
1813
1816
1816
1817
1818
1820
1820
1821
1822
1823
1823
1825
1828
1829
1829
1830
1831
1832
1832
1833
1834
1835
1835
1836
1836
1837
1838
1840
1842
1845
1846
1849
1849
1852
1854
1858
1859
1860
1860
1867
1870
1872
1873
1876
1880
1881
1883
1884
1886
1887
1887
1888
1889
1887
1882
1873
1869
1867
1866
1859
1852
1846
1845
1843
1838
1836
1833
1831
1829
1846
1865
1873
1883
1894
1915
1876
1866
1862
1857
1852
1845
1843
1842
1840
1839
1836
1836
1835
1833
1832
1832
1831
1829
1827
1826
1824
1823
1821
1820
1818
1816
1814
1812
1811
1809
1807
1803
1801
1800
1799
1796
1795
1793
1792
1791
1788
1789
1789
1792
1793
1794
1796
1797
1797
1798
1799
1800
1800
1801
1802
1802
1803
1804
1805
1805
1804
1802
1802
1802
1801
1801
1800
1799
1799
1798
1798
1797
1797
1809
1823
1842
1856
1867
1909
1911
1909
1904
1896
1888
1885
1875
1863
1860
1858
1854
1849
1845
1841
1838
1837
1835
1832
1831
1830
1829
1827
1826
1822
1821
1820
1817
1815
1815
1815
1815
1815
1815
1815
1815
1816
1816
1816
1816
1816
1817
1817
1817
1817
1818
1819
1819
1821
1821
1821
1822
1823
1823
1828
1829
1829
1830
1830
1830
1830
1830
1830
1830
1830
1830
1830
1830
1831
1832
1833
1834
1836
1836
1837
1837
1837
1838
1840
1842
1843
1844
1845
1853
1854
1856
1856
1857
1859
1859
1859
1860
1860
1860
1860
1860
1861
1861
1861
1862
1863
1863
1863
1863
1863
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1864
1865
1866
1867
1869
1872
1873
1874
1875
1875
1876
1876
1877
1878
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1879
1878
1878
1878
1878
1878
1878
1879
1879
1879
1881
1883
1884
1885
1890
1891
1896
1897
1900
1901
1902
1905
1906
1906
1906
1906
1907
1907
1908
1908
1908
1911
1911
1911
1912
1912
1912
1912
1912
1912
1912
1912
1911
1911
1911
1911
1911
1911
1911
1911
1910
1910
1910
1910
1911
1911
1912
1914
1915
1916
1917
1918
1919
1920
1921
1921
1926
1926
1927
1927
1927
1928
1928
1928
1928
1929
1930
1931
1931
1931
1932
1933
1933
1933
1935
1935
1935
1935
1937
1937
1937
1937
1937
1939
1940
1941
1943
1944
1945
1945
1946
1946
1946
1947
1947
1948
1948
1949
1950
1950
1951
1952
1952
1952
1953
1953
1954
1955
1956
1957
1957
1957
1957
1959
1959
1959
1959
1960
1961
1961
1962
1962
1962
1963
1963
1964
1964
1964
1964
1965
1965
1967
1969
1970
1971
1971
1972
1972
1973
1976
1977
1977
1978
1984
1985
1985
1985
1986
1987
1990
1990
1990
1991
1991
1991
1992
1993
1993
1993
1997
1998
1999
1999
1999
1999
2000
2000
2000
2000
2001
2001
2001
2001
2001
2001
2001
2002
2002
2002
2002
2003
2009
2009
2010
2011
2013
2014
2015
2016
2017
2017
2018
2019
2019
2020
2020
2021
2021
2022
2023
2024
2024
2025
2026
2026
2027
2028
2029
2029
2030
2032
2034
2035
2036
2037
2038
2039
2042
2043
2044
2046
2049
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2051
2052
2053
2054
2055
2055
2058
2058
2059
2060
2060
2065
2066
2068
2069
2070
2072
2074
2077
2078
2079
2080
2081
2082
2082
2083
2083
2084
2085
2087
2088
2091
2092
2093
2094
2096
2097
2099
2100
2101
2103
2104
2105
2106
2107
2107
2108
2110
2111
2112
2115
2116
2119
2120
2122
2122
2123
2124
2125
2126
2128
2130
2130
2133
2134
2135
2139
2140
2142
2143
2143
2143
2144
2145
2145
2145
2146
2147
2149
2151
2153
2154
2156
2157
2158
2160
2161
2165
2168
2170
2173
2180
2184
2185
2185
2185
2186
2186
2186
2186
2186
2189
2189
2190
2191
2191
2192
2195
2196
2198
2199
2199
2200
2201
2201
2202
2203
2204
2204
2205
2205
2205
2206
2207
2207
2207
2207
2208
2208
2208
2209
2210
2210
2210
2211
2212
2213
2213
2216
2220
2221
2223
2224
2225
2226
2232
2240
2244
2251
2255
2258
2261
2264
2265
2266
2270
2273
2277
2276
2274
2269
2269
2268
2267
2266
2265
2263
2260
2257
2255
2252
2251
2249
2249
2253
2259
2270
2273
2279
2286
2293
2300
2311
2316
2321
2328
2335
2341
2349
2355
2357
2359
2361
2362
2364
2364
2365
2367
2369
2372
2374
2376
2378
2379
2381
2382
2383
2384
2384
2384
2384
2384
2385
2385
2390
2391
2392
2393
2394
2395
2395
2396
2397
2397
2400
2401
2404
2405
2406
2407
2408
2418
2430
2439
2443
2455
2460
2467
2477
2484
2488
2491
2494
2494
2493
2493
2492
2490
2489
2489
2488
2487
2487
2487
2487
2486
2486
2485
2484
2483
2482
2482
2482
2481
2481
2485
2487
2494
2505
2510
2514
2518
2521
2523
2529
2536
2544
2552
2563
2567
2572
2577
2581
2585
2608
2625
2668
2687
2706
2737
2771
2675
2665
2659
2657
2656
2655
2652
2650
2649
2647
2642
2641
2641
2640
2639
2638
2637
2635
2633
2628
2627
2624
2622
2619
2612
2610
2600
2596
2589
2586
2579
2578
2577
2576
2574
2569
2567
2564
2563
2562
2561
2560
2558
2552
2549
2547
2545
2543
2533
2531
2529
2527
2525
2523
2521
2516
2512
2499
2491
2483
2479
2476
2469
2457
2455
2455
2456
2457
2457
2458
2459
2460
2461
2461
2462
2458
2456
2455
2451
2444
2443
2441
2437
2435
2433
2429
2425
2421
2421
2420
2419
2419
2417
2415
2413
2405
2402
2400
2398
2395
2393
2390
2387
2386
2385
2380
2378
2375
2370
2365
2359
2355
2353
2351
2348
2345
2344
2339
2337
2335
2333
2331
2330
2329
2327
2326
2323
2321
2319
2316
2312
2309
2304
2303
2302
2300
2299
2298
2298
2297
2297
2296
2295
2294
2293
2291
2290
2290
2289
2287
2285
2283
2281
2280
2279
2278
2277
2277
2276
2271
2270
2269
2269
2268
2267
2267
2267
2266
2266
2265
2265
2259
2255
2250
2244
2238
2231
2216
2214
2212
2201
2196
2188
2185
2182
2177
2173
2168
2163
2158
2154
2151
2149
2142
2135
2134
2133
2132
2131
2128
2127
2125
2123
2118
2117
2116
2113
2111
2110
2107
2105
2104
2101
2098
2095
2091
2089
2087
2086
2084
2083
2082
2080
2078
2078
2077
2077
2076
2076
2075
2073
2069
2067
2064
2062
2052
2051
2050
2045
2040
2036
2028
2024
2020
2018
2018
2017
2015
2014
2012
2007
2003
2002
2001
1999
1998
1997
1996
1995
1994
1993
1991
1988
1987
1986
1985
1983
1982
1978
1976
1966
1961
1959
1957
1946
1937
1934
1931
1928
1926
1924
1921
1912
1911
1911
1910
1908
1908
1906
1905
1904
1904
1903
1902
1901
1899
1899
1898
1898
1898
1898
1898
1898
1898
1898
1898
1897
1897
1897
1897
1897
1897
1897
1897
1897
1897
1897
1897
1897
1897
1888
1885
1881
1873
1870
1865
1863
1862
1858
1853
1842
1831
1823
1821
1819
1818
1815
1813
1812
1811
1810
1809
1808
1807
1806
1805
1800
1798
1796
1793
1788
1784
1782
1779
1776
1774
1772
1771
1767
1766
1764
1763
1762
1761
1760
1758
1756
1754
1753
1751
1749
1749
1752
1752
1752
1753
1754
1754
1755
1756
1756
1756
1757
1757
1759
1760
1761
1762
1762
1763
1763
1765
1766
1767
1767
1768
1769
1770
1770
1771
1772
1772
1773
1773
1774
1775
1776
1776
1777
1778
1778
1778
1776
1773
1769
1762
1760
1753
1751
1748
1745
1744
1738
1736
1734
1730
1727
1721
1716
1711
1708
1699
1695
1690
1684
1672
1671
1668
1663
1656
1653
1652
1656
1658
1663
1667
1685
1692
1703
1658
1615
1587
1565
1546
1544
1540
1538
1536
1534
1531
1528
1525
1522
1517
1513
1510
1507
1505
1500
1498
1497
1494
1493
1491
1490
1489
1489
1488
1487
1485
1481
1479
1476
1474
1470
1468
1462
1459
1457
1457
1456
1456
1456
1455
1449
1446
1444
1440
1437
1432
1427
1422
1420
1418
1415
1411
1410
1409
1409
1408
1408
1407
1405
1403
1400
1396
1394
1392
1390
1378
1376
1375
1374
1373
1372
1370
1369
1368
1367
1367
1364
1363
1362
1361
1360
1360
1360
1360
1361
1361
1361
1361
1361
1362
1362
1362
1362
1362
1362
1362
1362
1362
1363
1363
1350
1341
1335
1331
1318
1314
1309
1306
1306
1305
1305
1304
1303
1299
1298
1296
1296
1296
1297
1297
1298
1299
1299
1299
1300
1301
1302
1302
1303
1305
1305
1306
1306
1307
1301
1294
1288
1286
1283
1281
1279
1277
1274
1265
1263
1258
1256
1252
1249
1245
1240
1232
1230
1229
1219
1215
1211
1206
1202
1196
1193
1192
1186
1180
1178
1176
1174
1169
1169
1170
1170
1171
1171
1171
1172
1172
1173
1173
1174
1174
1174
1174
1175
1175
1175
1175
1175
1175
1175
1174
1174
1174
1174
1174
1173
1173
1173
1173
1173
1173
1173
1169
1162
1155
1149
1144
1139
1129
1120
1095
1074
1053
1042
1036
1031
1026
1023
1018
1012
1010
1005
1003
999
995
992
988
976
971
968
965
962
959
958
956
954
950
948
945
942
940
937
934
930
929
927
921
916
913
910
908
906
903
893
888
886
882
881
878
876
874
874
874
874
874
874
874
874
874
874
874
874
874
874
872
864
858
850
840
833
825
821
816
811
806
803
801
800
798
797
793
792
788
785
782
777
773
769
767
765
762
759
756
751
747
742
738
735
727
723
718
710
703
707
715
720
720
712
693
687
686
684
683
696
709
722
727
731
732
735
736
738
740
737
730
726
723
721
719
712
704
698
688
684
681
679
677
677
677
677
677
677
677
677
670
648
639
629
619
611
604
597
581
576
576
576
575
575
567
566
564
561
557
554
551
531
528
525
521
518
513
508
503
499
492
487
487
485
485
484
481
481
479
479
479
479
479
479
479
480
480
480
480
480
480
480
480
480
480
480
479
479
478
477
473
467
463
461
459
453
451
450
450
449
447
446
445
444
431
429
423
422
420
414
408
407
406
405
404
404
403
403
403
403
404
405
406
407
409
412
412
413
412
408
407
405
403
398
394
393
390
388
384
383
381
377
375
373
372
370
369
367
364
362
360
359
357
355
346
344
342
341
341
340
340
336
336
336
335
334
334
334
333
332
330
329
329
328
328
328
327
327
327
327
326
326
325
325
324
323
323
323
322
322
322
321
320
319
318
318
317
316
315
315
313
312
312
311
310
309
308
306
306
305
305
304
303
300
299
298
297
297
296
296
295
294
294
293
292
291
288
288
286
286
285
284
284
283
283
282
282
281
281
281
280
280
279
279
278
278
276
275
273
271
270
268
266
265
264
264
263
263
262
262
260
260
259
258
257
257
256
256
255
254
254
253
253
252
252
251
251
250
248
247
246
246
245
244
243
242
241
240
240
239
239
238
237
236
235
234
232
232
231
230
229
227
225
223
223
222
222
221
220
219
218
215
213
211
210
210
209
209
209
209
210
211
215
216
218
218
221
219
214
211
207
205
202
200
195
193
190
187
178
173
172
170
169
168
165
163
162
160
158
157
156
155
153
153
150
147
146
144
143
141
140
138
136
134
133
132
131
125
124
124
123
123
122
121
120
120
119
119
118
118
118
117
117
116
116
116
116
115
115
113
113
112
112
111
109
108
107
106
105
104
104
103
103
102
102
100
100
97
96
95
94
94
93
93
95
97
98
99
103
106
112
113
106
99
94
70
54
53
53
52
52
50
48
48
47
47
47
46
45
44
44
44
42
42
41
43
43
44
44
44
43
43
42
41
41
41
41
41
41
43
46
77
78
77
77
76
76
75
75
74
71
49
49
48
47
47
46
46
46
38
37
37
36
36
35
34
33
32
31
31
31
30
30
29
29
29
29
28
27
26
26
25
25
25
23
23
23
22
22
21
21
20
20
20
19
19
19
18
18
18
18
18
18
16
16
16
16
16
16
15
15
15
14
13
12
12
12
11
11
10
10
6
5
5
4
4
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
3
3
3
2
2
2
2
2
2
2
2
2
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
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
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
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
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
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
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
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
19
15
15
15
15
15
14
14
12
11
11
11
11
9
9
9
8
8
8
7
6
6
6
5
5
4
3
2
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
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
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
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
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
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
2
2
2
2
2
2
2
12
12
11
11
11
10
9
9
9
8
8
7
6
6
6
6
5
5
4
4
4
3
3
3
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
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
2
2
3
3
4
4
5
5
5
5
5
6
6
6
6
7
8
8
8
9
9
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
17
18
19
19
20
20
21
21
21
21
21
21
22
22
22
22
22
22
23
20
17
12
8
7
7
4
2
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
1
2
2
3
3
3
4
4
4
3
3
3
2
2
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
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
2
2
2
2
2
2
2
2
2
2
3
5
6
6
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
5
5
5
5
4
4
4
3
3
3
3
2
2
2
2
2
1
2
2
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
2
2
2
2
2
2
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
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
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
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
6
6
6
6
6
6
6
6
56
55
55
54
54
53
53
61
61
61
61
61
61
61
61
62
62
62
62
62
63
63
63
63
63
63
47
31
30
28
24
18
13
11
5
4
4
4
4
4
11
11
11
10
5
0
0
1
2
11
14
16
17
18
19
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
20
20
20
18
17
17
16
14
13
11
9
8
8
8
9
10
11
10
8
6
4
2
0
2
6
8
7
7
5
2
0
1
2
3
3
3
3
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
28
28
29
29
30
32
33
33
35
37
39
40
42
45
45
45
46
47
49
50
51
52
53
53
53
53
52
51
49
47
47
49
53
51
47
43
40
38
36
34
33
31
30
28
28
22
21
20
20
20
20
20
20
20
20
20
20
20
20
25
26
27
29
30
31
32
33
33
34
35
37
38
41
41
41
41
43
47
51
53
53
53
53
53
53
53
53
53
52
52
52
52
52
51
49
49
48
47
47
42
41
41
40
40
39
39
39
39
38
37
36
36
36
36
36
36
35
35
35
35
35
35
35
36
36
36
36
36
35
35
35
35
34
34
34
34
32
32
32
31
23
22
18
17
16
15
15
15
15
15
14
14
12
12
12
11
11
10
10
10
9
9
9
9
9
9
10
10
10
10
10
9
9
7
7
7
7
7
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
6
6
5
2
1
1
0
0
0
0
0
0
0
1
2
5
5
3
2
2
2
3
4
4
5
6
7
7
7
8
8
9
10
11
13
14
15
15
15
15
15
15
15
14
13
13
12
11
8
8
6
4
2
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
1
1
2
2
2
3
4
5
5
6
8
9
9
10
11
11
11
11
11
11
11
11
11
11
11
11
11
10
9
9
6
6
4
3
2
0
0
0
0
0
0
0
0
0
0
0
0
5
6
6
7
9
9
8
7
5
3
2
2
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
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
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
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
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
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
2
3
3
4
5
6
7
7
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
12
15
16
18
20
21
22
23
24
24
26
27
26
25
24
22
25
27
31
39
41
42
44
45
46
48
57
69
81
82
85
87
89
91
92
93
94
95
99
99
100
101
103
106
113
115
118
120
125
126
128
129
129
130
131
132
133
134
137
140
143
156
160
163
165
166
166
166
166
165
165
165
165
164
164
164
163
163
163
163
163
164
164
165
166
166
167
167
179
193
199
215
220
225
230
237
237
237
237
238
243
247
252
261
262
264
266
268
270
282
286
293
297
304
308
315
318
324
343
346
350
355
370
375
379
383
388
392
394
398
403
413
424
427
431
433
436
439
442
445
455
463
468
476
479
482
483
485
485
489
491
493
494
497
498
499
501
502
504
507
508
509
512
519
526
531
539
543
550
561
563
564
565
566
567
569
573
577
580
583
599
610
612
614
617
620
623
626
629
633
634
636
639
648
658
678
680
685
686
688
690
695
701
709
710
712
713
713
714
715
716
728
732
740
741
742
743
744
745
753
758
763
766
770
773
776
783
788
791
798
804
812
815
817
821
838
845
848
849
851
853
855
860
862
864
867
871
876
878
879
880
881
883
886
889
891
893
894
900
910
918
924
934
935
936
945
947
948
951
952
953
955
956
957
959
961
962
963
963
964
966
969
973
977
982
984
986
987
989
990
1001
1009
1012
1015
1018
1030
1033
1035
1037
1038
1040
1040
1041
1042
1045
1047
1050
1052
1055
1061
1061
1062
1064
1065
1068
1079
1081
1082
1084
1086
1088
1094
1100
1102
1103
1105
1108
1118
1123
1124
1125
1126
1129
1131
1134
1139
1143
1144
1148
1151
1152
1153
1154
1155
1157
1163
1166
1168
1170
1171
1173
1189
1191
1192
1194
1195
1199
1211
1213
1215
1216
1218
1220
1224
1236
1256
1265
1270
1273
1275
1281
1287
1291
1295
1299
1302
1305
1308
1311
1317
1327
1331
1334
1336
1339
1343
1346
1355
1364
1374
1378
1383
1387
1390
1394
1397
1401
1404
1408
1412
1428
1432
1436
1440
1444
1448
1453
1457
1461
1464
1468
1472
1475
1479
1482
1485
1488
1496
1499
1512
1521
1530
1538
1548
1551
1554
1557
1562
1566
1575
1593
1601
1610
1619
1628
1613
1607
1601
1593
1587
1581
1574
1524
1515
1511
1508
1505
1501
1500
1499
1497
1497
1496
1496
1494
1491
1487
1480
1477
1473
1470
1469
1469
1469
1467
1465
1463
1461
1452
1450
1449
1444
1442
1442
1441
1440
1439
1439
1441
1443
1443
1444
1444
1444
1444
1443
1441
1441
1441
1441
1434
1433
1432
1431
1429
1428
1427
1441
1441
1456
1456
1455
1454
1453
1452
1448
1447
1446
1445
1444
1440
1439
1438
1436
1435
1434
1433
1432
1430
1428
1426
1424
1421
1417
1416
1415
1414
1413
1413
1413
1412
1411
1408
1408
1405
1404
1401
1400
1392
1392
1391
1391
1391
1390
1390
1389
1389
1386
1385
1383
1383
1383
1383
1382
1382
1382
1382
1381
1381
1380
1380
1380
1378
1376
1373
1372
1368
1360
1359
1357
1352
1341
1338
1335
1334
1333
1331
1325
1323
1322
1321
1320
1319
1314
1313
1312
1311
1308
1307
1307
1307
1307
1307
1307
1308
1308
1308
1309
1310
1310
1310
1310
1310
1310
1310
1310
1310
1310
1310
1310
1312
1312
1312
1311
1313
1314
1314
1316
1318
1318
1319
1319
1319
1320
1320
1320
1320
1320
1321
1321
1322
1322
1322
1323
1323
1324
1324
1325
1325
1326
1328
1328
1329
1329
1332
1333
1334
1335
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1337
1337
1337
1337
1337
1337
1335
1334
1333
1333
1333
1333
1333
1333
1333
1333
1333
1334
1334
1335
1335
1336
1337
1338
1338
1339
1340
1341
1342
1343
1343
1344
1344
1345
1346
1347
1347
1347
1347
1348
1348
1348
1348
1348
1348
1349
1349
1349
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1350
1351
1351
1351
1351
1351
1351
1351
1351
1351
1352
1352
1352
1352
1352
1352
1353
1353
1353
1354
1354
1355
1355
1355
1356
1356
1356
1356
1356
1356
1356
1356
1357
1357
1357
1357
1358
1358
1358
1358
1358
1358
1358
1359
1359
1359
1359
1360
1360
1360
1360
1360
1360
1361
1361
1361
1361
1362
1362
1363
1365
1365
1365
1366
1366
1366
1366
1366
1366
1366
1370
1372
1374
1375
1375
1376
1376
1376
1376
1377
1378
1380
1381
1381
1381
1382
1382
1382
1383
1384
1388
1391
1396
1398
1407
1408
1408
1410
1412
1413
1414
1414
1414
1413
1413
1412
1412
1413
1411
1411
1413
1415
1416
1415
1430
1438
1442
1440
1438
1437
1435
1435
1435
1450
1453
1452
1452
1450
1450
1449
1449
1449
1449
1452
1452
1455
1465
1470
1473
1475
1477
1477
1477
1478
1478
1479
1480
1480
1482
1482
1482
1482
1482
1483
1483
1483
1483
1485
1489
1491
1491
1491
1491
1492
1492
1493
1496
1496
1498
1499
1501
1502
1504
1506
1533
1537
1545
1552
1564
1579
1575
1571
1570
1570
1569
1567
1565
1563
1562
1565
1569
1569
1570
1570
1571
1572
1572
1573
1574
1574
1574
1575
1576
1576
1576
1575
1575
1580
1591
1592
1592
1592
1592
1594
1596
1598
1601
1603
1604
1612
1612
1612
1612
1612
1612
1612
1612
1612
1612
1614
1614
1614
1615
1618
1618
1618
1619
1620
1621
1621
1621
1620
1620
1618
1616
1616
1615
1615
1615
1615
1615
1615
1615
1615
1614
1614
1614
1613
1613
1610
1611
1611
1612
1615
1616
1616
1616
1616
1620
1624
1632
1635
1638
1640
1644
1647
1652
1668
1672
1675
1679
1682
1686
1707
1708
1707
1706
1703
1700
1687
1686
1684
1676
1679
1684
1690
1692
1693
1693
1695
1698
1705
1711
1714
1715
1723
1727
1746
1751
1752
1754
1755
1755
1758
1765
1771
1788
1794
1806
1808
1810
1810
1814
1818
1823
1828
1834
1838
1843
1848
1852
1858
1863
1869
1882
1888
1890
1893
1897
1893
1889
1888
1882
1884
1885
1890
1892
1896
1898
1901
1904
1916
1917
1924
1926
1930
1937
1943
1948
1954
1954
1955
1957
1959
1961
1962
1964
1966
1968
1971
1973
1973
1973
1973
1973
1972
1972
1972
1971
1970
1970
1970
1970
1969
1969
1969
1968
1970
1970
1973
1975
1981
1981
1975
1976
1977
1977
1978
1980
1980
1980
1980
1988
1990
1992
1992
1995
1995
1997
2005
2010
2026
2028
2030
2031
2020
2013
1974
1971
1969
1967
1964
1962
1954
1950
1948
1944
1922
1922
1921
1921
1921
1918
1915
1912
1909
1904
1901
1899
1898
1897
1897
1896
1896
1896
1895
1894
1893
1891
1891
1887
1883
1878
1873
1866
1864
1861
1854
1849
1846
1842
1833
1829
1820
1805
1792
1790
1785
1784
1784
1784
1784
1784
1784