A => .hgignore +1 -0
@@ 0,0 1,1 @@
+\.class$
No newline at end of file
A => Java/pom.xml +13 -0
@@ 0,0 1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>com.ajtjp</groupId>
+ <artifactId>Advent2021</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.target>1.8</maven.compiler.target>
+ </properties>
+</project>
No newline at end of file
A => Java/src/main/java/com/ajtjp/advent2021/Sonar.java +2043 -0
@@ 0,0 1,2043 @@
+
+package com.ajtjp.advent2021;
+
+/**
+ *
+ * @author Andrew
+ */
+public class Sonar {
+ public static void main(String[] args) {
+ String input = "131\n" +
+"140\n" +
+"136\n" +
+"135\n" +
+"155\n" +
+"175\n" +
+"178\n" +
+"186\n" +
+"187\n" +
+"189\n" +
+"194\n" +
+"195\n" +
+"203\n" +
+"193\n" +
+"178\n" +
+"179\n" +
+"180\n" +
+"188\n" +
+"204\n" +
+"214\n" +
+"215\n" +
+"252\n" +
+"253\n" +
+"261\n" +
+"281\n" +
+"294\n" +
+"293\n" +
+"299\n" +
+"300\n" +
+"301\n" +
+"307\n" +
+"333\n" +
+"324\n" +
+"322\n" +
+"323\n" +
+"335\n" +
+"319\n" +
+"312\n" +
+"313\n" +
+"312\n" +
+"320\n" +
+"323\n" +
+"324\n" +
+"336\n" +
+"341\n" +
+"347\n" +
+"357\n" +
+"358\n" +
+"363\n" +
+"357\n" +
+"334\n" +
+"348\n" +
+"364\n" +
+"365\n" +
+"367\n" +
+"370\n" +
+"369\n" +
+"373\n" +
+"344\n" +
+"328\n" +
+"330\n" +
+"327\n" +
+"339\n" +
+"340\n" +
+"341\n" +
+"335\n" +
+"342\n" +
+"347\n" +
+"349\n" +
+"355\n" +
+"348\n" +
+"359\n" +
+"360\n" +
+"341\n" +
+"342\n" +
+"322\n" +
+"321\n" +
+"324\n" +
+"323\n" +
+"322\n" +
+"324\n" +
+"327\n" +
+"340\n" +
+"341\n" +
+"353\n" +
+"383\n" +
+"387\n" +
+"391\n" +
+"422\n" +
+"424\n" +
+"422\n" +
+"426\n" +
+"429\n" +
+"427\n" +
+"428\n" +
+"445\n" +
+"421\n" +
+"423\n" +
+"429\n" +
+"414\n" +
+"411\n" +
+"407\n" +
+"409\n" +
+"402\n" +
+"422\n" +
+"425\n" +
+"423\n" +
+"427\n" +
+"424\n" +
+"430\n" +
+"428\n" +
+"432\n" +
+"433\n" +
+"434\n" +
+"429\n" +
+"430\n" +
+"406\n" +
+"407\n" +
+"411\n" +
+"420\n" +
+"412\n" +
+"419\n" +
+"422\n" +
+"424\n" +
+"425\n" +
+"426\n" +
+"428\n" +
+"430\n" +
+"432\n" +
+"431\n" +
+"432\n" +
+"433\n" +
+"449\n" +
+"450\n" +
+"453\n" +
+"457\n" +
+"459\n" +
+"462\n" +
+"482\n" +
+"470\n" +
+"471\n" +
+"488\n" +
+"495\n" +
+"496\n" +
+"499\n" +
+"503\n" +
+"516\n" +
+"526\n" +
+"531\n" +
+"532\n" +
+"541\n" +
+"555\n" +
+"554\n" +
+"567\n" +
+"558\n" +
+"557\n" +
+"560\n" +
+"561\n" +
+"566\n" +
+"580\n" +
+"581\n" +
+"582\n" +
+"594\n" +
+"595\n" +
+"598\n" +
+"599\n" +
+"582\n" +
+"589\n" +
+"593\n" +
+"589\n" +
+"592\n" +
+"593\n" +
+"590\n" +
+"606\n" +
+"615\n" +
+"623\n" +
+"627\n" +
+"628\n" +
+"630\n" +
+"636\n" +
+"641\n" +
+"657\n" +
+"658\n" +
+"693\n" +
+"695\n" +
+"698\n" +
+"707\n" +
+"713\n" +
+"714\n" +
+"720\n" +
+"721\n" +
+"723\n" +
+"721\n" +
+"720\n" +
+"707\n" +
+"679\n" +
+"699\n" +
+"676\n" +
+"667\n" +
+"663\n" +
+"664\n" +
+"666\n" +
+"660\n" +
+"663\n" +
+"673\n" +
+"677\n" +
+"662\n" +
+"660\n" +
+"663\n" +
+"683\n" +
+"681\n" +
+"674\n" +
+"689\n" +
+"698\n" +
+"699\n" +
+"704\n" +
+"705\n" +
+"696\n" +
+"697\n" +
+"702\n" +
+"693\n" +
+"694\n" +
+"700\n" +
+"699\n" +
+"681\n" +
+"684\n" +
+"690\n" +
+"669\n" +
+"673\n" +
+"688\n" +
+"691\n" +
+"692\n" +
+"691\n" +
+"688\n" +
+"685\n" +
+"656\n" +
+"638\n" +
+"634\n" +
+"651\n" +
+"665\n" +
+"670\n" +
+"672\n" +
+"685\n" +
+"689\n" +
+"709\n" +
+"711\n" +
+"714\n" +
+"715\n" +
+"735\n" +
+"734\n" +
+"738\n" +
+"737\n" +
+"738\n" +
+"744\n" +
+"765\n" +
+"769\n" +
+"776\n" +
+"809\n" +
+"819\n" +
+"812\n" +
+"814\n" +
+"821\n" +
+"794\n" +
+"793\n" +
+"796\n" +
+"794\n" +
+"815\n" +
+"827\n" +
+"831\n" +
+"834\n" +
+"840\n" +
+"850\n" +
+"846\n" +
+"849\n" +
+"842\n" +
+"847\n" +
+"846\n" +
+"849\n" +
+"850\n" +
+"857\n" +
+"885\n" +
+"887\n" +
+"888\n" +
+"887\n" +
+"883\n" +
+"894\n" +
+"895\n" +
+"913\n" +
+"917\n" +
+"913\n" +
+"915\n" +
+"917\n" +
+"918\n" +
+"920\n" +
+"929\n" +
+"959\n" +
+"961\n" +
+"958\n" +
+"954\n" +
+"956\n" +
+"962\n" +
+"966\n" +
+"959\n" +
+"966\n" +
+"967\n" +
+"969\n" +
+"972\n" +
+"978\n" +
+"993\n" +
+"998\n" +
+"1006\n" +
+"1007\n" +
+"1010\n" +
+"1011\n" +
+"1015\n" +
+"1037\n" +
+"1047\n" +
+"1051\n" +
+"1029\n" +
+"1050\n" +
+"1052\n" +
+"1054\n" +
+"1033\n" +
+"1040\n" +
+"1036\n" +
+"1021\n" +
+"1031\n" +
+"1033\n" +
+"1058\n" +
+"1070\n" +
+"1066\n" +
+"1064\n" +
+"1052\n" +
+"1051\n" +
+"1057\n" +
+"1058\n" +
+"1059\n" +
+"1060\n" +
+"1071\n" +
+"1080\n" +
+"1081\n" +
+"1083\n" +
+"1086\n" +
+"1075\n" +
+"1083\n" +
+"1092\n" +
+"1095\n" +
+"1101\n" +
+"1113\n" +
+"1078\n" +
+"1080\n" +
+"1075\n" +
+"1077\n" +
+"1080\n" +
+"1083\n" +
+"1090\n" +
+"1092\n" +
+"1091\n" +
+"1092\n" +
+"1093\n" +
+"1097\n" +
+"1099\n" +
+"1103\n" +
+"1104\n" +
+"1105\n" +
+"1109\n" +
+"1084\n" +
+"1101\n" +
+"1103\n" +
+"1109\n" +
+"1101\n" +
+"1099\n" +
+"1096\n" +
+"1099\n" +
+"1103\n" +
+"1104\n" +
+"1105\n" +
+"1119\n" +
+"1123\n" +
+"1095\n" +
+"1096\n" +
+"1095\n" +
+"1132\n" +
+"1149\n" +
+"1164\n" +
+"1165\n" +
+"1182\n" +
+"1180\n" +
+"1198\n" +
+"1207\n" +
+"1210\n" +
+"1213\n" +
+"1218\n" +
+"1239\n" +
+"1235\n" +
+"1236\n" +
+"1242\n" +
+"1243\n" +
+"1276\n" +
+"1279\n" +
+"1282\n" +
+"1283\n" +
+"1299\n" +
+"1301\n" +
+"1294\n" +
+"1298\n" +
+"1304\n" +
+"1301\n" +
+"1303\n" +
+"1313\n" +
+"1312\n" +
+"1316\n" +
+"1317\n" +
+"1319\n" +
+"1320\n" +
+"1315\n" +
+"1318\n" +
+"1326\n" +
+"1330\n" +
+"1332\n" +
+"1331\n" +
+"1334\n" +
+"1319\n" +
+"1316\n" +
+"1308\n" +
+"1306\n" +
+"1309\n" +
+"1312\n" +
+"1310\n" +
+"1329\n" +
+"1318\n" +
+"1321\n" +
+"1335\n" +
+"1310\n" +
+"1311\n" +
+"1313\n" +
+"1329\n" +
+"1331\n" +
+"1335\n" +
+"1341\n" +
+"1355\n" +
+"1356\n" +
+"1357\n" +
+"1360\n" +
+"1378\n" +
+"1373\n" +
+"1374\n" +
+"1373\n" +
+"1377\n" +
+"1378\n" +
+"1383\n" +
+"1379\n" +
+"1380\n" +
+"1376\n" +
+"1370\n" +
+"1369\n" +
+"1380\n" +
+"1381\n" +
+"1382\n" +
+"1381\n" +
+"1383\n" +
+"1377\n" +
+"1401\n" +
+"1403\n" +
+"1408\n" +
+"1417\n" +
+"1406\n" +
+"1407\n" +
+"1409\n" +
+"1411\n" +
+"1414\n" +
+"1420\n" +
+"1419\n" +
+"1426\n" +
+"1456\n" +
+"1452\n" +
+"1453\n" +
+"1454\n" +
+"1453\n" +
+"1450\n" +
+"1442\n" +
+"1430\n" +
+"1434\n" +
+"1435\n" +
+"1439\n" +
+"1440\n" +
+"1441\n" +
+"1442\n" +
+"1463\n" +
+"1464\n" +
+"1471\n" +
+"1469\n" +
+"1471\n" +
+"1472\n" +
+"1433\n" +
+"1436\n" +
+"1434\n" +
+"1440\n" +
+"1446\n" +
+"1447\n" +
+"1452\n" +
+"1454\n" +
+"1441\n" +
+"1434\n" +
+"1420\n" +
+"1404\n" +
+"1396\n" +
+"1412\n" +
+"1423\n" +
+"1424\n" +
+"1437\n" +
+"1450\n" +
+"1452\n" +
+"1457\n" +
+"1458\n" +
+"1422\n" +
+"1423\n" +
+"1433\n" +
+"1436\n" +
+"1453\n" +
+"1484\n" +
+"1485\n" +
+"1460\n" +
+"1457\n" +
+"1458\n" +
+"1464\n" +
+"1465\n" +
+"1467\n" +
+"1468\n" +
+"1475\n" +
+"1476\n" +
+"1471\n" +
+"1470\n" +
+"1471\n" +
+"1473\n" +
+"1470\n" +
+"1473\n" +
+"1474\n" +
+"1490\n" +
+"1482\n" +
+"1484\n" +
+"1508\n" +
+"1515\n" +
+"1522\n" +
+"1521\n" +
+"1514\n" +
+"1518\n" +
+"1520\n" +
+"1522\n" +
+"1530\n" +
+"1528\n" +
+"1523\n" +
+"1535\n" +
+"1537\n" +
+"1539\n" +
+"1541\n" +
+"1533\n" +
+"1528\n" +
+"1531\n" +
+"1538\n" +
+"1539\n" +
+"1541\n" +
+"1547\n" +
+"1551\n" +
+"1550\n" +
+"1545\n" +
+"1546\n" +
+"1548\n" +
+"1551\n" +
+"1566\n" +
+"1577\n" +
+"1586\n" +
+"1587\n" +
+"1588\n" +
+"1613\n" +
+"1615\n" +
+"1631\n" +
+"1638\n" +
+"1639\n" +
+"1640\n" +
+"1645\n" +
+"1648\n" +
+"1642\n" +
+"1640\n" +
+"1643\n" +
+"1673\n" +
+"1679\n" +
+"1669\n" +
+"1673\n" +
+"1666\n" +
+"1669\n" +
+"1674\n" +
+"1682\n" +
+"1683\n" +
+"1700\n" +
+"1698\n" +
+"1709\n" +
+"1717\n" +
+"1729\n" +
+"1743\n" +
+"1745\n" +
+"1746\n" +
+"1744\n" +
+"1714\n" +
+"1722\n" +
+"1727\n" +
+"1734\n" +
+"1735\n" +
+"1745\n" +
+"1752\n" +
+"1751\n" +
+"1772\n" +
+"1788\n" +
+"1794\n" +
+"1798\n" +
+"1804\n" +
+"1798\n" +
+"1793\n" +
+"1796\n" +
+"1806\n" +
+"1809\n" +
+"1815\n" +
+"1816\n" +
+"1815\n" +
+"1813\n" +
+"1812\n" +
+"1817\n" +
+"1818\n" +
+"1821\n" +
+"1825\n" +
+"1821\n" +
+"1853\n" +
+"1827\n" +
+"1822\n" +
+"1825\n" +
+"1834\n" +
+"1833\n" +
+"1830\n" +
+"1836\n" +
+"1837\n" +
+"1838\n" +
+"1840\n" +
+"1841\n" +
+"1846\n" +
+"1841\n" +
+"1842\n" +
+"1845\n" +
+"1862\n" +
+"1863\n" +
+"1896\n" +
+"1898\n" +
+"1884\n" +
+"1885\n" +
+"1893\n" +
+"1892\n" +
+"1895\n" +
+"1896\n" +
+"1894\n" +
+"1903\n" +
+"1902\n" +
+"1907\n" +
+"1915\n" +
+"1919\n" +
+"1922\n" +
+"1923\n" +
+"1921\n" +
+"1924\n" +
+"1925\n" +
+"1927\n" +
+"1931\n" +
+"1932\n" +
+"1939\n" +
+"1940\n" +
+"1939\n" +
+"1959\n" +
+"1965\n" +
+"1975\n" +
+"1973\n" +
+"1974\n" +
+"1982\n" +
+"1983\n" +
+"1988\n" +
+"1992\n" +
+"1995\n" +
+"1994\n" +
+"1995\n" +
+"1994\n" +
+"2000\n" +
+"2001\n" +
+"2029\n" +
+"2030\n" +
+"2005\n" +
+"2006\n" +
+"2009\n" +
+"2013\n" +
+"2017\n" +
+"2014\n" +
+"2041\n" +
+"2042\n" +
+"2052\n" +
+"2047\n" +
+"2048\n" +
+"2052\n" +
+"2051\n" +
+"2053\n" +
+"2052\n" +
+"2069\n" +
+"2058\n" +
+"2059\n" +
+"2060\n" +
+"2061\n" +
+"2063\n" +
+"2062\n" +
+"2065\n" +
+"2066\n" +
+"2070\n" +
+"2072\n" +
+"2075\n" +
+"2061\n" +
+"2038\n" +
+"2037\n" +
+"2024\n" +
+"2022\n" +
+"2023\n" +
+"2011\n" +
+"2032\n" +
+"2037\n" +
+"2026\n" +
+"2027\n" +
+"2028\n" +
+"2034\n" +
+"2038\n" +
+"2039\n" +
+"2029\n" +
+"2042\n" +
+"2031\n" +
+"2033\n" +
+"2046\n" +
+"2048\n" +
+"2041\n" +
+"2049\n" +
+"2050\n" +
+"2052\n" +
+"2063\n" +
+"2064\n" +
+"2065\n" +
+"2067\n" +
+"2086\n" +
+"2070\n" +
+"2078\n" +
+"2087\n" +
+"2086\n" +
+"2089\n" +
+"2075\n" +
+"2076\n" +
+"2101\n" +
+"2103\n" +
+"2115\n" +
+"2095\n" +
+"2109\n" +
+"2112\n" +
+"2115\n" +
+"2126\n" +
+"2152\n" +
+"2129\n" +
+"2132\n" +
+"2117\n" +
+"2116\n" +
+"2119\n" +
+"2128\n" +
+"2127\n" +
+"2139\n" +
+"2140\n" +
+"2141\n" +
+"2145\n" +
+"2146\n" +
+"2125\n" +
+"2136\n" +
+"2132\n" +
+"2121\n" +
+"2125\n" +
+"2126\n" +
+"2134\n" +
+"2135\n" +
+"2142\n" +
+"2148\n" +
+"2149\n" +
+"2133\n" +
+"2137\n" +
+"2156\n" +
+"2160\n" +
+"2161\n" +
+"2162\n" +
+"2164\n" +
+"2176\n" +
+"2177\n" +
+"2179\n" +
+"2183\n" +
+"2184\n" +
+"2186\n" +
+"2187\n" +
+"2190\n" +
+"2195\n" +
+"2216\n" +
+"2210\n" +
+"2209\n" +
+"2206\n" +
+"2214\n" +
+"2211\n" +
+"2216\n" +
+"2223\n" +
+"2224\n" +
+"2225\n" +
+"2230\n" +
+"2242\n" +
+"2246\n" +
+"2248\n" +
+"2268\n" +
+"2272\n" +
+"2273\n" +
+"2278\n" +
+"2279\n" +
+"2280\n" +
+"2281\n" +
+"2275\n" +
+"2276\n" +
+"2282\n" +
+"2283\n" +
+"2278\n" +
+"2285\n" +
+"2288\n" +
+"2289\n" +
+"2286\n" +
+"2290\n" +
+"2285\n" +
+"2291\n" +
+"2294\n" +
+"2287\n" +
+"2293\n" +
+"2315\n" +
+"2314\n" +
+"2315\n" +
+"2325\n" +
+"2323\n" +
+"2328\n" +
+"2308\n" +
+"2312\n" +
+"2322\n" +
+"2361\n" +
+"2364\n" +
+"2366\n" +
+"2364\n" +
+"2369\n" +
+"2368\n" +
+"2384\n" +
+"2387\n" +
+"2390\n" +
+"2396\n" +
+"2370\n" +
+"2371\n" +
+"2377\n" +
+"2378\n" +
+"2377\n" +
+"2379\n" +
+"2395\n" +
+"2384\n" +
+"2381\n" +
+"2395\n" +
+"2401\n" +
+"2412\n" +
+"2411\n" +
+"2412\n" +
+"2414\n" +
+"2420\n" +
+"2422\n" +
+"2408\n" +
+"2425\n" +
+"2427\n" +
+"2428\n" +
+"2438\n" +
+"2442\n" +
+"2445\n" +
+"2456\n" +
+"2462\n" +
+"2461\n" +
+"2469\n" +
+"2467\n" +
+"2472\n" +
+"2471\n" +
+"2469\n" +
+"2449\n" +
+"2448\n" +
+"2442\n" +
+"2459\n" +
+"2460\n" +
+"2474\n" +
+"2477\n" +
+"2478\n" +
+"2480\n" +
+"2483\n" +
+"2468\n" +
+"2444\n" +
+"2442\n" +
+"2444\n" +
+"2460\n" +
+"2456\n" +
+"2445\n" +
+"2437\n" +
+"2430\n" +
+"2432\n" +
+"2457\n" +
+"2463\n" +
+"2467\n" +
+"2474\n" +
+"2477\n" +
+"2475\n" +
+"2478\n" +
+"2477\n" +
+"2478\n" +
+"2480\n" +
+"2485\n" +
+"2471\n" +
+"2495\n" +
+"2509\n" +
+"2514\n" +
+"2522\n" +
+"2523\n" +
+"2533\n" +
+"2515\n" +
+"2518\n" +
+"2539\n" +
+"2535\n" +
+"2543\n" +
+"2580\n" +
+"2586\n" +
+"2601\n" +
+"2602\n" +
+"2600\n" +
+"2602\n" +
+"2598\n" +
+"2597\n" +
+"2598\n" +
+"2605\n" +
+"2597\n" +
+"2596\n" +
+"2600\n" +
+"2602\n" +
+"2599\n" +
+"2605\n" +
+"2613\n" +
+"2614\n" +
+"2611\n" +
+"2603\n" +
+"2602\n" +
+"2601\n" +
+"2607\n" +
+"2608\n" +
+"2606\n" +
+"2598\n" +
+"2599\n" +
+"2602\n" +
+"2597\n" +
+"2605\n" +
+"2611\n" +
+"2612\n" +
+"2613\n" +
+"2645\n" +
+"2657\n" +
+"2662\n" +
+"2668\n" +
+"2669\n" +
+"2652\n" +
+"2655\n" +
+"2661\n" +
+"2663\n" +
+"2662\n" +
+"2664\n" +
+"2677\n" +
+"2695\n" +
+"2702\n" +
+"2738\n" +
+"2739\n" +
+"2738\n" +
+"2740\n" +
+"2728\n" +
+"2720\n" +
+"2714\n" +
+"2720\n" +
+"2712\n" +
+"2724\n" +
+"2725\n" +
+"2736\n" +
+"2745\n" +
+"2742\n" +
+"2747\n" +
+"2749\n" +
+"2744\n" +
+"2746\n" +
+"2750\n" +
+"2753\n" +
+"2759\n" +
+"2760\n" +
+"2761\n" +
+"2731\n" +
+"2733\n" +
+"2735\n" +
+"2736\n" +
+"2737\n" +
+"2741\n" +
+"2739\n" +
+"2740\n" +
+"2744\n" +
+"2745\n" +
+"2755\n" +
+"2744\n" +
+"2746\n" +
+"2748\n" +
+"2752\n" +
+"2750\n" +
+"2755\n" +
+"2736\n" +
+"2740\n" +
+"2742\n" +
+"2753\n" +
+"2752\n" +
+"2755\n" +
+"2780\n" +
+"2781\n" +
+"2783\n" +
+"2786\n" +
+"2788\n" +
+"2786\n" +
+"2796\n" +
+"2790\n" +
+"2789\n" +
+"2798\n" +
+"2816\n" +
+"2817\n" +
+"2815\n" +
+"2817\n" +
+"2819\n" +
+"2820\n" +
+"2825\n" +
+"2823\n" +
+"2827\n" +
+"2853\n" +
+"2856\n" +
+"2861\n" +
+"2862\n" +
+"2854\n" +
+"2873\n" +
+"2887\n" +
+"2884\n" +
+"2888\n" +
+"2884\n" +
+"2885\n" +
+"2893\n" +
+"2902\n" +
+"2901\n" +
+"2902\n" +
+"2904\n" +
+"2908\n" +
+"2909\n" +
+"2911\n" +
+"2914\n" +
+"2929\n" +
+"2931\n" +
+"2935\n" +
+"2934\n" +
+"2935\n" +
+"2934\n" +
+"2917\n" +
+"2918\n" +
+"2921\n" +
+"2926\n" +
+"2932\n" +
+"2937\n" +
+"2947\n" +
+"2928\n" +
+"2946\n" +
+"2971\n" +
+"2973\n" +
+"2972\n" +
+"2969\n" +
+"2972\n" +
+"2973\n" +
+"2978\n" +
+"2977\n" +
+"2968\n" +
+"2961\n" +
+"2962\n" +
+"2982\n" +
+"2987\n" +
+"2989\n" +
+"2990\n" +
+"2993\n" +
+"2995\n" +
+"2987\n" +
+"2991\n" +
+"2992\n" +
+"3002\n" +
+"3003\n" +
+"3004\n" +
+"3005\n" +
+"3011\n" +
+"3012\n" +
+"3031\n" +
+"3029\n" +
+"3036\n" +
+"3041\n" +
+"3069\n" +
+"3070\n" +
+"3087\n" +
+"3077\n" +
+"3090\n" +
+"3087\n" +
+"3066\n" +
+"3078\n" +
+"3080\n" +
+"3081\n" +
+"3071\n" +
+"3074\n" +
+"3075\n" +
+"3074\n" +
+"3069\n" +
+"3070\n" +
+"3078\n" +
+"3086\n" +
+"3080\n" +
+"3086\n" +
+"3088\n" +
+"3096\n" +
+"3098\n" +
+"3103\n" +
+"3117\n" +
+"3114\n" +
+"3143\n" +
+"3148\n" +
+"3149\n" +
+"3150\n" +
+"3149\n" +
+"3151\n" +
+"3165\n" +
+"3169\n" +
+"3172\n" +
+"3183\n" +
+"3184\n" +
+"3185\n" +
+"3190\n" +
+"3204\n" +
+"3218\n" +
+"3230\n" +
+"3231\n" +
+"3248\n" +
+"3249\n" +
+"3252\n" +
+"3249\n" +
+"3246\n" +
+"3268\n" +
+"3273\n" +
+"3274\n" +
+"3277\n" +
+"3289\n" +
+"3257\n" +
+"3269\n" +
+"3279\n" +
+"3267\n" +
+"3284\n" +
+"3312\n" +
+"3315\n" +
+"3314\n" +
+"3317\n" +
+"3310\n" +
+"3315\n" +
+"3314\n" +
+"3304\n" +
+"3305\n" +
+"3308\n" +
+"3322\n" +
+"3326\n" +
+"3331\n" +
+"3336\n" +
+"3339\n" +
+"3345\n" +
+"3348\n" +
+"3349\n" +
+"3348\n" +
+"3350\n" +
+"3348\n" +
+"3350\n" +
+"3362\n" +
+"3363\n" +
+"3373\n" +
+"3368\n" +
+"3349\n" +
+"3347\n" +
+"3344\n" +
+"3362\n" +
+"3364\n" +
+"3365\n" +
+"3374\n" +
+"3380\n" +
+"3390\n" +
+"3387\n" +
+"3389\n" +
+"3391\n" +
+"3392\n" +
+"3390\n" +
+"3388\n" +
+"3389\n" +
+"3395\n" +
+"3415\n" +
+"3416\n" +
+"3414\n" +
+"3415\n" +
+"3416\n" +
+"3417\n" +
+"3420\n" +
+"3418\n" +
+"3422\n" +
+"3421\n" +
+"3428\n" +
+"3421\n" +
+"3422\n" +
+"3424\n" +
+"3421\n" +
+"3422\n" +
+"3419\n" +
+"3416\n" +
+"3392\n" +
+"3396\n" +
+"3408\n" +
+"3399\n" +
+"3400\n" +
+"3403\n" +
+"3392\n" +
+"3398\n" +
+"3393\n" +
+"3415\n" +
+"3436\n" +
+"3458\n" +
+"3459\n" +
+"3467\n" +
+"3469\n" +
+"3472\n" +
+"3480\n" +
+"3489\n" +
+"3491\n" +
+"3490\n" +
+"3521\n" +
+"3518\n" +
+"3517\n" +
+"3518\n" +
+"3502\n" +
+"3510\n" +
+"3505\n" +
+"3506\n" +
+"3508\n" +
+"3509\n" +
+"3510\n" +
+"3506\n" +
+"3504\n" +
+"3505\n" +
+"3522\n" +
+"3525\n" +
+"3531\n" +
+"3524\n" +
+"3522\n" +
+"3517\n" +
+"3523\n" +
+"3526\n" +
+"3512\n" +
+"3516\n" +
+"3521\n" +
+"3535\n" +
+"3544\n" +
+"3539\n" +
+"3514\n" +
+"3519\n" +
+"3525\n" +
+"3523\n" +
+"3530\n" +
+"3529\n" +
+"3534\n" +
+"3526\n" +
+"3523\n" +
+"3525\n" +
+"3522\n" +
+"3509\n" +
+"3510\n" +
+"3523\n" +
+"3522\n" +
+"3516\n" +
+"3518\n" +
+"3522\n" +
+"3539\n" +
+"3540\n" +
+"3546\n" +
+"3551\n" +
+"3556\n" +
+"3566\n" +
+"3545\n" +
+"3573\n" +
+"3574\n" +
+"3576\n" +
+"3581\n" +
+"3582\n" +
+"3602\n" +
+"3604\n" +
+"3606\n" +
+"3590\n" +
+"3596\n" +
+"3598\n" +
+"3599\n" +
+"3607\n" +
+"3573\n" +
+"3592\n" +
+"3599\n" +
+"3607\n" +
+"3609\n" +
+"3617\n" +
+"3621\n" +
+"3606\n" +
+"3602\n" +
+"3599\n" +
+"3609\n" +
+"3602\n" +
+"3598\n" +
+"3607\n" +
+"3612\n" +
+"3613\n" +
+"3630\n" +
+"3632\n" +
+"3634\n" +
+"3636\n" +
+"3642\n" +
+"3651\n" +
+"3655\n" +
+"3662\n" +
+"3687\n" +
+"3688\n" +
+"3689\n" +
+"3684\n" +
+"3664\n" +
+"3663\n" +
+"3667\n" +
+"3645\n" +
+"3647\n" +
+"3649\n" +
+"3660\n" +
+"3673\n" +
+"3665\n" +
+"3663\n" +
+"3633\n" +
+"3656\n" +
+"3658\n" +
+"3669\n" +
+"3672\n" +
+"3673\n" +
+"3675\n" +
+"3683\n" +
+"3684\n" +
+"3685\n" +
+"3683\n" +
+"3687\n" +
+"3699\n" +
+"3703\n" +
+"3707\n" +
+"3717\n" +
+"3749\n" +
+"3763\n" +
+"3767\n" +
+"3771\n" +
+"3774\n" +
+"3790\n" +
+"3801\n" +
+"3808\n" +
+"3813\n" +
+"3814\n" +
+"3819\n" +
+"3835\n" +
+"3834\n" +
+"3835\n" +
+"3836\n" +
+"3837\n" +
+"3836\n" +
+"3837\n" +
+"3839\n" +
+"3844\n" +
+"3845\n" +
+"3831\n" +
+"3830\n" +
+"3828\n" +
+"3829\n" +
+"3830\n" +
+"3846\n" +
+"3844\n" +
+"3825\n" +
+"3811\n" +
+"3806\n" +
+"3809\n" +
+"3807\n" +
+"3826\n" +
+"3836\n" +
+"3847\n" +
+"3848\n" +
+"3849\n" +
+"3850\n" +
+"3863\n" +
+"3869\n" +
+"3868\n" +
+"3869\n" +
+"3870\n" +
+"3871\n" +
+"3867\n" +
+"3868\n" +
+"3872\n" +
+"3871\n" +
+"3874\n" +
+"3875\n" +
+"3874\n" +
+"3876\n" +
+"3879\n" +
+"3884\n" +
+"3901\n" +
+"3904\n" +
+"3901\n" +
+"3915\n" +
+"3905\n" +
+"3904\n" +
+"3889\n" +
+"3914\n" +
+"3917\n" +
+"3931\n" +
+"3932\n" +
+"3930\n" +
+"3932\n" +
+"3937\n" +
+"3943\n" +
+"3939\n" +
+"3941\n" +
+"3943\n" +
+"3930\n" +
+"3929\n" +
+"3945\n" +
+"3954\n" +
+"3972\n" +
+"3996\n" +
+"3997\n" +
+"4000\n" +
+"4001\n" +
+"3995\n" +
+"4025\n" +
+"4027\n" +
+"4034\n" +
+"4035\n" +
+"4050\n" +
+"4074\n" +
+"4071\n" +
+"4077\n" +
+"4078\n" +
+"4085\n" +
+"4087\n" +
+"4088\n" +
+"4091\n" +
+"4090\n" +
+"4091\n" +
+"4092\n" +
+"4089\n" +
+"4091\n" +
+"4096\n" +
+"4094\n" +
+"4095\n" +
+"4107\n" +
+"4109\n" +
+"4130\n" +
+"4131\n" +
+"4124\n" +
+"4136\n" +
+"4139\n" +
+"4153\n" +
+"4161\n" +
+"4173\n" +
+"4149\n" +
+"4154\n" +
+"4148\n" +
+"4150\n" +
+"4128\n" +
+"4160\n" +
+"4164\n" +
+"4168\n" +
+"4169\n" +
+"4158\n" +
+"4165\n" +
+"4174\n" +
+"4171\n" +
+"4195\n" +
+"4200\n" +
+"4201\n" +
+"4195\n" +
+"4198\n" +
+"4201\n" +
+"4202\n" +
+"4196\n" +
+"4203\n" +
+"4211\n" +
+"4209\n" +
+"4210\n" +
+"4217\n" +
+"4220\n" +
+"4203\n" +
+"4193\n" +
+"4194\n" +
+"4197\n" +
+"4193\n" +
+"4195\n" +
+"4196\n" +
+"4195\n" +
+"4197\n" +
+"4218\n" +
+"4222\n" +
+"4236\n" +
+"4223\n" +
+"4225\n" +
+"4242\n" +
+"4262\n" +
+"4265\n" +
+"4256\n" +
+"4260\n" +
+"4270\n" +
+"4271\n" +
+"4276\n" +
+"4272\n" +
+"4275\n" +
+"4297\n" +
+"4304\n" +
+"4297\n" +
+"4299\n" +
+"4302\n" +
+"4303\n" +
+"4301\n" +
+"4306\n" +
+"4337\n" +
+"4341\n" +
+"4342\n" +
+"4343\n" +
+"4345\n" +
+"4346\n" +
+"4351\n" +
+"4350\n" +
+"4338\n" +
+"4331\n" +
+"4337\n" +
+"4331\n" +
+"4345\n" +
+"4309\n" +
+"4311\n" +
+"4327\n" +
+"4328\n" +
+"4335\n" +
+"4360\n" +
+"4362\n" +
+"4364\n" +
+"4360\n" +
+"4357\n" +
+"4359\n" +
+"4367\n" +
+"4368\n" +
+"4352\n" +
+"4351\n" +
+"4347\n" +
+"4360\n" +
+"4356\n" +
+"4357\n" +
+"4362\n" +
+"4363\n" +
+"4357\n" +
+"4362\n" +
+"4367\n" +
+"4385\n" +
+"4388\n" +
+"4392\n" +
+"4395\n" +
+"4397\n" +
+"4398\n" +
+"4387\n" +
+"4395\n" +
+"4399\n" +
+"4402\n" +
+"4403\n" +
+"4424\n" +
+"4434\n" +
+"4443\n" +
+"4444\n" +
+"4445\n" +
+"4456\n" +
+"4457\n" +
+"4466\n" +
+"4470\n" +
+"4469\n" +
+"4470\n" +
+"4471\n" +
+"4505\n" +
+"4499\n" +
+"4500\n" +
+"4476\n" +
+"4483\n" +
+"4475\n" +
+"4476\n" +
+"4486\n" +
+"4496\n" +
+"4495\n" +
+"4504\n" +
+"4503\n" +
+"4516\n" +
+"4518\n" +
+"4517\n" +
+"4525\n" +
+"4527\n" +
+"4530\n" +
+"4532\n" +
+"4533\n" +
+"4535\n" +
+"4537\n" +
+"4541\n" +
+"4544\n" +
+"4546\n" +
+"4549\n" +
+"4551\n" +
+"4552\n" +
+"4555\n" +
+"4556\n" +
+"4563\n" +
+"4580\n" +
+"4583\n" +
+"4600\n" +
+"4589\n" +
+"4581\n" +
+"4585\n" +
+"4583\n" +
+"4585\n" +
+"4592\n" +
+"4585\n" +
+"4595\n" +
+"4605\n" +
+"4598\n" +
+"4601\n" +
+"4600\n" +
+"4603\n" +
+"4598\n" +
+"4628\n" +
+"4630\n" +
+"4626\n" +
+"4630\n" +
+"4632\n" +
+"4631\n" +
+"4632\n" +
+"4619\n" +
+"4633\n" +
+"4643\n" +
+"4630\n" +
+"4640\n" +
+"4660\n" +
+"4671\n" +
+"4675\n" +
+"4682\n" +
+"4697\n" +
+"4695\n" +
+"4700\n" +
+"4704\n" +
+"4705\n" +
+"4710\n" +
+"4721\n" +
+"4727\n" +
+"4732\n" +
+"4728\n" +
+"4729\n" +
+"4735\n" +
+"4743\n" +
+"4744\n" +
+"4754\n" +
+"4760\n" +
+"4766\n" +
+"4758\n" +
+"4762\n" +
+"4760\n" +
+"4763\n" +
+"4782\n" +
+"4786\n" +
+"4787\n" +
+"4789\n" +
+"4801\n" +
+"4804\n" +
+"4782\n" +
+"4752\n" +
+"4755\n" +
+"4757\n" +
+"4758\n" +
+"4757\n" +
+"4766\n" +
+"4778\n" +
+"4779\n" +
+"4769\n" +
+"4781\n" +
+"4777\n" +
+"4785\n" +
+"4786\n" +
+"4788\n" +
+"4796\n" +
+"4795\n" +
+"4796\n" +
+"4797\n" +
+"4805\n" +
+"4804\n" +
+"4814\n" +
+"4812\n" +
+"4815\n" +
+"4806\n" +
+"4805\n" +
+"4807\n" +
+"4805\n" +
+"4806\n" +
+"4807\n" +
+"4810\n" +
+"4845\n" +
+"4846\n" +
+"4855\n" +
+"4853\n" +
+"4859\n" +
+"4862\n" +
+"4867\n" +
+"4873\n" +
+"4879\n" +
+"4881\n" +
+"4880\n" +
+"4883\n" +
+"4880\n" +
+"4886\n" +
+"4892\n" +
+"4898\n" +
+"4903\n" +
+"4902\n" +
+"4905\n" +
+"4909\n" +
+"4914\n" +
+"4915\n" +
+"4917\n" +
+"4939\n" +
+"4941\n" +
+"4933\n" +
+"4932\n" +
+"4940\n" +
+"4945\n" +
+"4961\n" +
+"4966\n" +
+"4955\n" +
+"4960\n" +
+"4979\n" +
+"4980\n" +
+"4981\n" +
+"4970\n" +
+"4968\n" +
+"4970\n" +
+"4989\n" +
+"4996\n" +
+"5003\n" +
+"4983\n" +
+"4984\n" +
+"5006\n" +
+"5014\n" +
+"5018\n" +
+"5023\n" +
+"5042\n" +
+"5043\n" +
+"5050\n" +
+"5051\n" +
+"5076\n" +
+"5052\n" +
+"5055\n" +
+"5068\n" +
+"5059\n" +
+"5058\n" +
+"5035\n" +
+"5059\n" +
+"5060\n" +
+"5061\n" +
+"5068\n" +
+"5044\n" +
+"5043\n" +
+"5044\n" +
+"5045\n" +
+"5047\n" +
+"5048\n" +
+"5051\n" +
+"5044\n" +
+"5045\n" +
+"5049\n" +
+"5072\n" +
+"5080\n" +
+"5078\n" +
+"5101\n" +
+"5100\n" +
+"5092\n" +
+"5112\n" +
+"5111\n" +
+"5107\n" +
+"5113\n" +
+"5116\n" +
+"5123\n" +
+"5129\n" +
+"5127\n" +
+"5151\n" +
+"5176\n" +
+"5188\n" +
+"5189\n" +
+"5202\n" +
+"5204\n" +
+"5197\n" +
+"5199\n" +
+"5196\n" +
+"5201\n" +
+"5200\n" +
+"5203\n" +
+"5207\n" +
+"5209\n" +
+"5217\n" +
+"5218\n" +
+"5204\n" +
+"5206\n" +
+"5207\n" +
+"5208\n" +
+"5195\n" +
+"5201\n" +
+"5202\n" +
+"5199\n" +
+"5229\n" +
+"5228\n" +
+"5229\n" +
+"5233\n" +
+"5232\n" +
+"5227\n" +
+"5228\n" +
+"5229\n" +
+"5238\n" +
+"5236\n" +
+"5238\n" +
+"5243\n" +
+"5245\n" +
+"5244\n" +
+"5245\n" +
+"5230\n" +
+"5244\n" +
+"5258\n" +
+"5259\n" +
+"5268\n" +
+"5271\n" +
+"5274\n" +
+"5271\n" +
+"5272\n" +
+"5277\n" +
+"5300\n" +
+"5327\n" +
+"5358\n" +
+"5359\n" +
+"5360\n" +
+"5361\n" +
+"5364\n" +
+"5370\n" +
+"5375\n" +
+"5376\n" +
+"5384\n" +
+"5383\n" +
+"5384\n" +
+"5385\n" +
+"5389\n" +
+"5390\n" +
+"5395\n" +
+"5397\n" +
+"5413\n" +
+"5418\n" +
+"5434\n" +
+"5433\n" +
+"5449\n" +
+"5445\n" +
+"5447\n" +
+"5453\n" +
+"5454\n" +
+"5458\n" +
+"5460\n" +
+"5448\n" +
+"5452\n" +
+"5464\n" +
+"5469\n" +
+"5480\n" +
+"5481\n" +
+"5482\n" +
+"5486\n" +
+"5496\n" +
+"5499\n" +
+"5500\n" +
+"5527\n" +
+"5501\n" +
+"5476\n" +
+"5474\n" +
+"5475\n" +
+"5463\n" +
+"5462\n" +
+"5458\n" +
+"5459\n" +
+"5470\n" +
+"5473\n" +
+"5481\n" +
+"5493\n" +
+"5494\n" +
+"5495\n" +
+"5496\n" +
+"5497\n" +
+"5498\n" +
+"5495\n" +
+"5498\n" +
+"5496\n" +
+"5490\n" +
+"5491\n" +
+"5493\n" +
+"5495\n" +
+"5489\n" +
+"5514\n" +
+"5533\n" +
+"5541\n" +
+"5531\n" +
+"5537\n" +
+"5513\n" +
+"5531\n" +
+"5532\n" +
+"5533\n" +
+"5532\n" +
+"5526\n" +
+"5535\n" +
+"5553\n" +
+"5551\n" +
+"5554\n" +
+"5553\n" +
+"5555\n" +
+"5551\n" +
+"5557\n" +
+"5556\n" +
+"5558\n" +
+"5555\n" +
+"5554\n" +
+"5552\n" +
+"5566\n" +
+"5574\n" +
+"5577\n" +
+"5583\n" +
+"5584\n" +
+"5588\n" +
+"5590\n" +
+"5603\n" +
+"5610\n" +
+"5617\n" +
+"5619\n" +
+"5618\n" +
+"5619\n" +
+"5618\n" +
+"5630\n" +
+"5635\n" +
+"5638\n" +
+"5650\n" +
+"5659\n" +
+"5660\n" +
+"5672\n" +
+"5670\n" +
+"5676\n" +
+"5673\n" +
+"5675\n" +
+"5680\n" +
+"5682\n" +
+"5685\n" +
+"5688\n" +
+"5682\n" +
+"5683\n" +
+"5696\n" +
+"5700\n" +
+"5722\n" +
+"5714\n" +
+"5713\n" +
+"5710\n" +
+"5712\n" +
+"5740\n" +
+"5741\n" +
+"5739\n" +
+"5740\n" +
+"5746\n" +
+"5756\n" +
+"5769\n" +
+"5770\n" +
+"5757\n" +
+"5748\n" +
+"5766\n" +
+"5770";
+
+ String[] split = input.split("\n");
+ int[] ints = new int[split.length];
+ int i = 0;
+ for (String s : split) {
+ System.out.println(s);
+ ints[i] = Integer.parseInt(s);
+ i++;
+ }
+
+ int increases = 0;
+ for (int j = 1; j < ints.length; j++) {
+ System.out.println(ints[j - 1] + ", " + ints[j]);
+ if (ints[j] > ints[j - 1]) {
+ increases++;
+ }
+ }
+ System.out.println("Silver: " + increases);
+
+ int[] threeSums = new int[split.length];
+ for (int k = 2; k < threeSums.length; k++) {
+ threeSums[k] = ints[k - 2] + ints[k - 1] + ints[k];
+ }
+
+ int threeI = 0;
+ for (int c = 3; c < ints.length; c++) {
+ if (threeSums[c] > threeSums[c-1]) {
+ threeI++;
+ }
+ }
+
+ System.out.println("Gold: " + threeI);
+ }
+}