From e5fdc2e5fcad2021910df80a0f40ace49630b8f9 Mon Sep 17 00:00:00 2001 From: Rokas Puzonas Date: Mon, 9 May 2022 01:04:07 +0000 Subject: [PATCH] feat: clean up old solutions --- 1/input.txt | 390 +++--- 10/input.txt | 180 ++- 10/part1.py | 4 +- 10/part2.py | 28 +- 11/input.txt | 196 +-- 11/part1.py | 4 +- 11/part2.py | 4 +- 12/input.txt | 1446 ++++++++++--------- 13/input.txt | 4 +- 13/part2.py | 21 +- 14/input.txt | 1120 +++++++-------- 14/part1.py | 4 +- 14/part2.py | 4 +- 15/input.txt | 2 +- 15/part1.py | 2 +- 15/part2.py | 26 +- 16/input.txt | 521 ++++--- 16/part1.py | 47 +- 16/part2.py | 81 +- 16/test1.txt | 2 +- 17/input.txt | 16 +- 2/input.txt | 2000 +++++++++++++------------- 3/input.txt | 646 ++++----- 4/input.txt | 2041 +++++++++++++-------------- 5/input.txt | 1711 ++++++++++++----------- 5/part1.py | 29 +- 5/part2.py | 27 +- 6/input.txt | 3796 +++++++++++++++++++++++++------------------------- 6/part2.py | 17 +- 6/test.txt | 15 + 7/input.txt | 1188 ++++++++-------- 7/part1.py | 6 +- 7/part2.py | 6 +- 8/input.txt | 1191 ++++++++-------- 8/part2.py | 4 +- 9/input.txt | 1964 +++++++++++++------------- 9/part1.py | 2 +- 9/part2.py | 21 +- 9/test.txt | 20 + 39 files changed, 9428 insertions(+), 9358 deletions(-) create mode 100644 6/test.txt create mode 100644 9/test.txt diff --git a/1/input.txt b/1/input.txt index 31f932b..594a991 100644 --- a/1/input.txt +++ b/1/input.txt @@ -1,200 +1,200 @@ -1844 -1123 -1490 -1478 -1108 -1120 -1594 -1101 -1831 -1146 -1084 -1535 -1016 -1722 -1388 -1188 -1351 -1477 -1215 -1678 -1159 -1558 -1581 -1400 -1550 -1306 -1852 -1745 -1224 -1896 -1596 -1005 -1499 -1797 -976 -1777 -1129 -1601 -1058 -1510 -1704 -1818 -1795 -1364 -1276 -1362 -1801 -1985 -1421 -1311 -1855 -1977 -1613 -1951 -2001 -1327 -1872 -1517 -1040 -1692 -1595 -1769 -1956 -1763 -1470 -1898 -1366 -1443 -312 -1685 -1014 -1409 -1717 -1105 -1290 -1703 -1732 -1939 -1790 -1164 -1225 -1474 -1713 -1413 -1906 -1488 -1931 -1702 -1848 -1668 -1737 -1614 -1719 -1647 -1171 -1508 -1035 -1133 -1179 -1180 -1472 -1414 -1659 -1820 -1544 -1697 -1175 -1033 -1805 -1576 -1196 -1597 -1739 -1291 -1103 -1457 -1514 -1462 -1619 -1683 -1338 -1604 -1372 -1653 -16 -1725 -1181 -1952 -1201 -1531 -1505 -1912 -1527 -1853 -1905 -1833 -1913 -1131 -1069 -1537 +1757 +1890 +1750 +1440 +1822 +1957 +2005 +1979 +1405 +2003 +1997 +1741 +1494 +1780 +1774 +1813 +447 +1429 +1990 +1767 +1969 +1787 +1944 +1863 +1778 +2004 +1991 1754 -1551 -1435 -1914 -1093 -1273 -1726 -1094 -1439 -1689 -1607 -1646 -1588 -1698 -1539 -1493 -1352 -1163 -1482 -1044 +1748 +1756 +1977 +611 +1934 +1818 +1924 +528 +1753 +1867 +1865 +1799 +1743 +1955 +1993 +1972 +1987 +1960 +1817 +1837 +1900 +1839 +1946 +1786 +1857 +1840 +1985 +1850 +1801 +1926 1523 -1142 -1253 -1250 +1886 +1492 +1737 +1909 +1766 1986 -1049 -1330 -1219 -1162 -1088 -1100 -1532 -1727 -1761 -1107 -1916 -1220 -1319 -1098 -1431 -1260 -1642 -1269 -1102 -1432 -1267 -1824 -1658 -1149 -1024 -1963 -1498 -1904 -1812 -1600 1773 -1283 -1463 +1749 +1781 +1760 +1849 +1833 +1854 +1814 +1820 +2000 +1834 +1851 +1779 +1825 +1885 +1882 +1912 +962 +1988 +302 +1965 +1751 +1764 +1844 +1949 +1984 +1933 +958 +1746 +1999 +1914 +1989 +1879 +1954 +1827 +1816 +1918 +633 +1797 +1811 +1936 +1961 +1937 +1829 +1788 +1772 +1505 +1905 +1304 +1404 +1868 +1978 +1872 +2006 +1256 +1883 +1966 +1931 +1796 +1793 +714 +1904 +1841 +1824 +1962 +1739 +1897 +1906 +1735 +1876 +873 +1959 +1963 +1917 +1804 +1789 +1782 +1848 +1828 +1826 +1929 +1525 +1862 +1952 +1878 +1775 1776 -1406 \ No newline at end of file +1430 +1943 +1938 +1941 +1594 +1928 +1856 +1903 +1871 +1836 +1847 +1956 +1915 +1870 +1875 +1892 +276 +1896 +1945 +1821 +1947 +1898 +1802 +1853 +1895 +1790 +1819 +1980 +1832 +1673 +1964 +1800 +1971 +1842 +2002 +1921 +1940 +1845 +1527 +1428 +1932 +1893 +1908 +1889 +1974 +1981 +1791 +1975 diff --git a/10/input.txt b/10/input.txt index fc054fe..8ae9092 100644 --- a/10/input.txt +++ b/10/input.txt @@ -1,100 +1,98 @@ -30 -73 -84 -136 -132 -117 -65 -161 -49 -68 -139 -46 -21 -127 -109 -153 -163 -160 -18 -22 -131 -146 -62 -113 -172 -150 -171 +118 +14 98 -93 -130 -170 -59 -1 -110 +154 +71 +127 +38 +50 +36 +132 +66 +121 +65 +26 +119 +46 2 -55 -37 -44 -148 -102 +140 +95 +133 +15 40 -28 -35 -43 +32 +137 +45 +155 +156 +97 +145 +44 +153 +96 +104 +58 +149 +75 +72 +57 +76 56 -169 +143 +11 +138 +37 +9 +82 +62 +17 +88 33 5 -141 -83 -15 -105 -142 -36 -116 -11 -45 -82 10 -17 -159 -140 -12 -108 -29 -72 -121 -52 -91 -166 -88 -97 -118 -99 -124 -149 -16 -9 -143 -104 -57 -79 -123 -58 -96 -24 -162 +134 +114 23 -92 -69 -147 -156 -25 -133 -34 -8 -85 -76 +111 +81 +21 103 -122 \ No newline at end of file +126 +18 +8 +43 +108 +120 +16 +146 +110 +144 +124 +67 +79 +59 +89 +87 +131 +80 +139 +31 +115 +107 +53 +68 +130 +101 +22 +125 +83 +92 +30 +39 +102 +47 +109 +152 +1 +29 +86 diff --git a/10/part1.py b/10/part1.py index d34ab7e..0682050 100644 --- a/10/part1.py +++ b/10/part1.py @@ -1,7 +1,7 @@ adapters = [] with open("input.txt") as f: - adapters = list(int(num) for num in f.read().split("\n")) + adapters = list(int(num) for num in f.read().splitlines()) adapters.append(0) adapters.sort() @@ -15,4 +15,4 @@ for i in range(0, len(adapters)-1): numOf1Diff += 1 elif diff == 3: numOf3Diff += 1 -print(numOf1Diff * numOf3Diff) \ No newline at end of file +print(numOf1Diff * numOf3Diff) diff --git a/10/part2.py b/10/part2.py index 7285438..7deb034 100644 --- a/10/part2.py +++ b/10/part2.py @@ -1,7 +1,7 @@ adapters = [] with open("input.txt") as f: - adapters = list(int(num) for num in f.read().split("\n")) + adapters = list(int(num) for num in f.read().splitlines()) adapters.append(0) adapters.sort() @@ -10,17 +10,17 @@ adapters.append(adapters[-1]+3) memo = {} memo[adapters[-1]] = 1 def getNumOfCombinations(adapterList): - if memo.get(adapterList[0]): - return memo[adapterList[0]] - combinations = 1 - for i in range(1, len(adapterList)): - diff = adapterList[i] - adapterList[0] - if 0 < diff <= 3: - combinations += getNumOfCombinations(adapterList[i:]) - else: - break - combinations = combinations - 1 - memo[adapterList[0]] = combinations - return combinations + if memo.get(adapterList[0]): + return memo[adapterList[0]] + combinations = 1 + for i in range(1, len(adapterList)): + diff = adapterList[i] - adapterList[0] + if 0 < diff <= 3: + combinations += getNumOfCombinations(adapterList[i:]) + else: + break + combinations = combinations - 1 + memo[adapterList[0]] = combinations + return combinations -print(getNumOfCombinations(adapters)) \ No newline at end of file +print(getNumOfCombinations(adapters)) diff --git a/11/input.txt b/11/input.txt index e146d8f..23827a8 100644 --- a/11/input.txt +++ b/11/input.txt @@ -1,97 +1,99 @@ -LLLLLLLLL.L.LLL.L.LLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLL.LLLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLL.LLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL -L..LL.L.L....L..L.L....L.....L.L.L......L..L..L....L.LL.......L.....L....L..L................L.... -LLLLLLLLLLLLLLL.LLL.LLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLL..LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL.LLLLLLLLL.LLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLL.LLL.LLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLL -LL.LLLLLLLLLLLL.LLL.LLL.LLLLLLLL.LLLLLLLL.LLLLLLL..LLLL.LLLLLLL.LLLL.LLLLLL.LLLLL.LLLL.LL.LLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLL.L.LLLLLLL.LLLL.LLLLLL.LLLLLLLLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLL.LLLL.LLL.LLLLLLLL.LLLLLLLLL.LLLLLLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLL.LLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLLLLL.LL.LLLLLLLLLLLLLLLL -.LLLL..L.L..L....L.LLL...LLL..L.L....L.L.L...L.....L...L.....L...L..L...LL...L..LLL..L...L....L..L -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLLL.LLLLLLLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL.LLLL..LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL..LLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -.....LL...LL..L...L..L..LL.L..LLL...L..L.LLL...LLL..L.....L...L.....L........LLLL..LLL.....L....L. -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLL.LLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLL.LLLLLLLLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLL.LLLL.LLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLLLLLLLL.LL -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLL.LL.LLLLLLLLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLL.L -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLL.LLLLLLLLL.LLLLLLL.LLLL.LLL.LL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.L.LLLLL.LLLLLLLL -....L..LL.L.L......L..LL.......LL......L..L...L..L.........LL....LL.LLL..LLLL..L..L.......L....L.. -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLL.LLL.L.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLL.LLLLLLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL -.LL..LLLLL.LL.L...L...L...L....LLLL...LLLL.LL...LL...L.LL...LL..LL.L..L......L....L.L.L.L...LL...L -LLLLLLLLL.LLLLLLLLLLLLL..LLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLLLLL.LL.LLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLL.L.LLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLL..LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LL.LL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLLLL.LLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLLLL.LLLLLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLLLLLLL.LLLLL.L.LLLLLLLL -....L.........LL...L.L..LL.L.L..L......L.L.L...L....L.......LL.LL....L.L...L....L...L....L...L.... -L.LLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LL..LLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLL..LLLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLL.L.LLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLL.LL.LLLLLLLLLLLLL.LLLL.LLLLLLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLL..L.L........L...L..L.LLLLLLL..LLLL..L...L..L.L..LLL....L..L.LLL..L...L..L.......L.LLLLLL.LL.L. -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LL.LLLL.LLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLLLLLLL.LLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LL.LL.LLLLLLL.LLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLL.LLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL -L...L.....LL....L.L.LLLLL.....L....LL..L.....L...L.L.LL.......LL...LL............L.L..L..LLL..LL.. -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLL.LLLLL.LL -LL.LLLLLLLLLLLL.L.LLL.LLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLL.LL.LLLL.LLLLLL.LLLLL.LLLLLLL.L.LLLLLL -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLL.LLL.LLLL -LLLLLLLLL.LLLLL.L.LLLLL.LLLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLL.LLLLLLLLLLLLLL -LLLL.LLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LLLLLL..LLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LL...L.........L..LLL........L.L..L....L.L.L....LLLL.LL.L....LL....L.LL.LLL..L..L....LL.L......LLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL.LLLLLL.L.LLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL -...L........L....L.L.LL.LL.L.L.....L.L..L.....LL....L..L.L.L..L..L.L...L.........L.LL.LLLLL..L.... -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL..LLLL.LLLLLLL.LLLLLLLLLLL.LLL.L.LLLLLLLLLLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLLLL.L.LLLLLLLL -LLLLLLLLL.LLLLLLLLLLLLL.LL.LLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLL..LLLLLLL -LLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL -..LLLL.L..LL.L......LL.L...L.L..L....LLL.........L....L.......LL.LLL.L.L.....LL.L...L.LLL....L.... -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.L.LLL.LLLLLLL.LLLL.LLLLLL.LLLL..LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLLLLLL.LLLLLLLLL.L.LLLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLLLLLLL.LL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLL.LLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LL...LLLLL.....LL..L.....L....L......L.L........LL......LL.LL..L..LLL.L...L..L..L.L.....LLLL...LLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LL.LLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLL.LLLLL.LLL.LLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -.LL..L.....LLLL.LL..L.LL....L.LL...L..LL......L..LL...LL..L.L.LLLL...LL.L..L..LLL.L.L.....L.LL.LL. -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLL.LL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLL.LLLLLLLLLLL.LLLL.LLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL.LLLLL.LL -LLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLL.LLLLLL.LLLLL.LLLLLLLLLLLLLLLL -LLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLL.LLLLLLL.LLLL..LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL -LLLLLLLLL.LLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL.LLLLLLL.LLL.L.LLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLL \ No newline at end of file +LLLLLLL.LLLLLLLLLLLLLLL.LLL.LLLL.LLLLLLL.L.LLLLLLL.LLLLLL.LLLLLLLL.LLLLL..LLLLLLLLLLLLLLLLLL +LLLLLLL.LLLLLL.LLLL.LLL.LLLLLLLLLL.LLLLLLL.LLLLL.L.LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL +.LLLLLLLLLLLLLLL.LLLLLL.LLLLLL.LLLLLLLL.LL.LLLLLLL.LLL.LL.LLLLLLLLLLL.LLL..LLLLLLLL.LLLLLLLL +LLLLLLLLLLLLLLL..LLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLLLLLLLL.L.LLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL +LLLLL.L.LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLL.LLLLLLL.LLL..LLL.LLLLLL.LLLLLL.LLLL.LLLL.L.LLLLLL +LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLL.L.LL.LLLL.LLLLLL..LLLLLL.LLLLLLLL..LLLLL.LLLLLLLL..LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL.LLLLL.L.LLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLL +.LLLLLL..LLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLL.L.LLLLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLLL.LLL +..LLLL......L.L..L..L..L.....LL..L.....L.....LLL.L.L.LL...L.....L...LL..L......L...LL......L +LL.LLLL.LLLLLLLLL.LLLLL.LLLLL.LLLLLLL.LLLL.LLLLLL..LLLLLL.LLLL.LLL.LLLLLLLLLLLLLLLLLLLLLLLLL +LLLLLLL.LLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLLLL.LLLLLL..LLLLLLLLLLLLLLLLLLLLLLLL +LLLLLLLLLLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLL.LL.LLLLLL.LLLL.LLLLLLLL.LLLLLL..LL.LLLLL.LLLL..L. +LLLLLLLLLLLLLL.LL.LLLLL.LLLLLLLLLLLLL.L.LL.LLLLLLL.L.LLLL.LLLLLLLL.LLLLLL.L.LLLLLLLLLLLLLLLL +LLLLLLL.L.LLLLLL.LLLLLLLLL.LL.LLLLL.LLLLL..L.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LL +LLLLLLLLLLLLLLLL.LLLLLLLLL.LL.LLLLLLL.LLLL.LLLLLLL.LLLLLLLLLLLLLL..LLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLL..LLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLL.LL.LLLLLLLLLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLL.LLLLLL.L.LLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLLLLLLLLLLL.LLLLL..LLLLLLLLLL.LLL.LLLLLLLLLLLLLL.LLL.LLLLLLLLL.LLLLL.L.LLLL.LLLLLLLLLLL +.L......L.LL.L...L.....L..L..L...LL.L.......L.............LL.L......LL.L...LL.L...L.....LL.. +LL.LLLL.LLLLLLLLLLLLLLL.LLLLL.LLLLLLLLL.LLLLLLLLLL.LLLLLL.LLLLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLL +LLLLL.L.L.LLLLLLLLL.LLLLLLLLLLLLL.LL.LLLLLLLLLLLLL.LLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLL +LLLL.LL.LL.LLLLL.LLLL.L.LLLLL.LLLLLLLLLL.LLLLLLLLL..L.LLLLLLLLLLL.L.LLLLL.LLLLLLLLLLLLLLLL.L +LLLLLLL.LLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLL.LLLLLL.LLLLLLLL.LLLLLL.LLLLLLLLL.LLLLLL.L +.......LL...L.......LL...L.......LLL......L..L...L...L.....LL..L.L......L.LL.....LL.....L... +LLLLLLLLLLLLLLLL.LLLLLL.LLLLL.LLLL.LL.LLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLL +LLLLLLL.LLLLLLLLLLLLLL..LLLLLLLLLLLLL.LLLL.LL.LLLL.LLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLLLLL.LLLLLL.L.LLL.L.LLL.LLL.LLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLLLLLLL +L.LLLLLLL.LLLLLL.LLLLLLL.LLLLLLLLLLLL.LLLLLLLLL.LLLLLLL.LLLLLLLLL..LLLLLL.LLLLLLLLL.LLLLLLLL +LL.LLLL.LLLLLLLL.LLLLLL.LLLLL.LL.LLLLLLLLL.LLLLLLL.LLLLLLLLL.LLLLL.LLLLLL.LLLLLL.LL.LLLLLLLL +LLLLL.L.LLLLLLLL.LLLLLLLLLL.L.LLL.LLL.LLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLL.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL.LLLLL.LLLLL.L.LLLLLLLLLLLL.LLLLLL.LLLLLLLL.LLLLLL.LLLLLL.LL.LLL.LLLL +L..LL.........L....L....L..L.LL.....LL.L.LL...L........L...L...L...L.LLL..LL..LLLLL.L....... +LLLLLLL.LLLLLLLLLLLL.LL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLL.L.LLLLLLLL.LLLLLL.LLLLLLL.L..LLLLLLL +LLLLLLLL.LLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLL.LLLLLLLL.LLLLLL.LLLL.L.LL.LLLLLLLL +.LLLLLL.LLLLLL.L.LLLLLL.LLLLL.LLLLLLL.L.LL.LLLLLLLLLLL.LLLLLLLLLLL.LLLLLL.LLLLLLLL..LLLLLLLL +LL.LLLL..LLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLL..LLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLL +L..LL..........L......L..L....L..L.L.LL.LLL..L.L.L.LLLL...L..L..L.L.L..LLLL.L.L...L..LL..... +LLLLLLLLLLLLLLLLLLLLLLL.LL.LLLLLLLLLL.LL.L.LLLLLLL.LLLLLL.LLL.LLLLLLLLLLLLLLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLLLLLLLL.LLLL.LL.LLLLL.LL.LLL.LLLLLLLLLLLLLLL.LLL.LLLLLLLLLLLLL.LLLLLL. +LLLLLL.LLLLLLLLL.LLLLL.LLLLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLLLL.LLLLLL.LLLLLLL.LLLLLLLLLL +LLLLLLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL.LLLL.LLLLLLLLLLLLLL.LLLLLLLL.LLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLL.LLLL.LLL.LLLLLL.LLL.L.LLLLLLLLL.LL.LLLLLLLLLLLLLL.LLLLLLLL.LLLLLLLLLLLL.LLL.L.LLLLLL +LLLLLLLLLLLLL.LL.LLLLLL.LLL.L.LLLLLLL.LLLLLLLLLLLL.LLLLLL.LLLL.LLL.LLLLLL.LLLLLL.LLLLLLLLLLL +.L.LLLL.L.LLL.L....L...LL.L.L..LL.L.LLLL.L..L..L.L.LL...LL..L.L.L...LL.L.......LL..LLL...... +LLLLL.L..LLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLL.LL.LLLL.LLLLLL.LLLLLL.L.LLLLLL.LLLLLLLLLLLL.LLLLL +LLLLLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLL..LLL.LLLLLLL.LLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLL.L.LLLLLL +LLLLLLL.LLLLLLLL.LLLL.L.LLL.LLLLLLLLL.LLLL.LLLLLLL.L..LLL.LLLLLLL..LL.LLL.LLLLLLLLL.LLL.LLL. +LLLLLLL.LLLLLLLL.LLLLLL.L.LLLLLLLLLL..LLLLLLLLLLLL.L.LLLL.LLLLLLLL.LLLLLL.L.LLLL.LL.LLLL.LLL +LLLL.LLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLLL.LLLLLL.LL.LLLLL.LLL.LL.LLLLLLLLLLLLLLLLLL +LL.LLLLLLLLLLLLL.LLLLLLLLLLLL.LLL.LLL.LLLL.LLLLLLLLLLLL.L.LLLLL.LL.LLLLLL.L.L.LLLLLLLLLLLLLL +LLLLLL.LLLLLL.LL.LLLLLLLLL.LLLLLLLLLL.LLLL.LL.LLLLLLLLLLL.LL.LLLLL.LLLLL.LLLLLLLLLL.LLLLLLLL +.LLL.......LL.LL....L..L.....LL.....L..L...LLL....L...L..LLL...L............LLLL.LL.......L. +LLLLL.L.LLLLLLLLLLLLLLLLLLLLL.L.LLLLLLLLLLLLLL.LLLLLLLLLL.LLLLLLLLLLL.LLLLLLLLLL.LL.LLLLLLLL +LLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLL.LLLL.LLLLLLLLLLLLLL.LLLLLLLL.LLLL.LLLLLLLLLLLLLLLLLLLL +L.LLLLL...LLLLLLLLLLLLL.LLLLLLLLLLLLL..LLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL +LLLLLLLLLLLLLLLL.L.L.LLLLLLLL.LLLLLLL.LLLL.LLLLL.L.LLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL +LLL.LLLLLLLLLLLLLLLLLLL.LLL.LLLLLLLLLL.LLL.LLLLLL..LLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL +L..L.LL...LLL.L...LLL....L.L.L.L.....LL..........LL...L.L.L.LLLL....L.....L....LLL......LLLL +LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLLLL.L.LLLLLL.LLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLL..LLLLLLLLLLLLLL.LLLLLLLLLLLLLL.LLL.LLLLLLL.LLLLLLLLLLLLLLLLLL.LLL.L.L.LL.LLLLLLLLLLL +LLLLLLLLLLLLLLLL.LLLL.L.LLLLL.LLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLL.L.LLLLLLLL.LLLLLLLLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLL.LLLLLL.L +LLLLLLLL.LLLLLLL.LLLLLLLLLLLL.LLLLLLL.LLLL.LLL.LLL.LLLLLL.LLLLLLLL.LLLLLL.LLL.LLLLL.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL..LLLLLLLLLLLL.LLLL.L..L.LL.LLLLLL.LLLLLLLLLLLLLLLLLLLLLLL.L.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL.LLLLLLLLLLLL..LLLLLLLLLLLL.LLLLLLLLLL.LLLL.LLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLLLLLLLLLLL.LLLLLL.LLLLLLLLLLLLLLLL.L.LLLLLLL.LLLLLL.LLLLLLLL.LLLLLL.LLLLLLLLLLLLLLLLLL +LLLLLL..LLLLLLLL.LLLLLLLLLLLL.LLLLLL..LLLL.LLLL.LL.L.LLLL.LLLL.LLL.LLLLLL.LLLLLLLLLLLL.LLLLL +........LL..LL..L............L..L.L..L....L.......LL...L......L....LLL..L.L......LL..LL.L.L. +LLLLLLL.LLLLLLLL.LLLLLLLLLLLL.LLLLLL..LLLL.LLLLLLL.LLL.LL.LLLLLLLL.LLLLLL.LLLLLLLLL.LLL.LLLL +LLLLLL.LLLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLL.LLLLL.LLLLLLLL.LLLLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLL +LLL.LLL.LLLLLLL.LLLLLLL.LLLLL.LLLLLLLLLLL..LLL.LLL.LLLLLL.LLLLLLLLLLLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLL.L.LLLLL.LL.LLLL.LLLL.L.LLLLL.LL.LLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL +LLLL.LLLLLLLLLLLLLLLLLL.LLLLLLLLLLLL..LLLL.LLLLLL.LLLLLLL.LLLLLL.LLLLLLLL.LLLLLLL.L.LLLLLLLL +LLLLLLL.LLLLL.LL.LLL.LL.LLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL.LLLLLLLLLLLLL.LLLLLL.LLLL.LL.LLLLL +LLLLLLLLLL.LLLLLLLLLLLL.LLLLL.LLLLLLL.LLLLLLLLLLLLLLLLLLL.LLLLLLLL.LL.LLLLLLLLLLLLL.LLLLLLLL +LLLL.L.L...L.......L..LL.LL.LL....LL..L.L.L......L...LLL..L.L.L...LLL...L.....L.LLLL........ +.LLLLLL.L.LLLLLL.LLLLLLLLLLL..LLLLLLL.LLLL.LLLLLLL.LLLLLL.LLLLL.LLLLLLLLL.LLLL.LLLL.LLLLLLLL +LLLLLLL.LLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLL.LLLLLLL.LLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLL. +LLLLLLL.L.LLLLLLLLLLLLL.LLLLL.LLL.LLL.LLLL.LLLLLLL.LLLLLLLLLLLLLLL.LLL.LL.L.LLLLLLLLLLLLLLLL +LLLLLLL.LLLLL.LL.LLLLLL.LLLLLLLLLLLLL.LLLL.LLLLLLLLLLL.LL.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL +L.LLLLL.LLLLL.LLLLLLLLL.LLLLL..LLLLLL.LLLL.LLLLLLL.L.LLLL.LLLLLLLL.LLLLLL.LLLLLLLLL.LLL.LL.. +..L...L.L.......LL.LLL.LLL..L....L..L.L.L..L.L........L...L.LL.L.........LLLLL.L.LL.L...L.LL +LLLLLLL.LLLLL.LL.LLLLLL.LLLL..LLLLL.L.LL.LLLLLL.LL.LLLLLLLLLLLLLLL.LLL.LLLLLLLLLLLLLLLLLLLLL +LLLLLLL.L.LLLLLLLLLLLLL.LLLLL.LL.LLLLLLL.LLLLLLLLL.LLL.LL.LLLLLLLL.LLL.LL.LLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLL..L.LLLLLLLLLLLL.LLLLLL.L.LLLLLL.LLLLLL.LLLLLLLLL.LLL.LLLL +.LLLLLL.LL.LL.LLLLLL.L..LLLLLLL.LLLLL.LLLL.LL.LL.L.LL.L.L.LLLLLLLL.LLLLLLLLLLLLLLLL.LLLLLLLL +LLLLLLLLLLLLLLLLLLLLLLL..LLLLLLLL.LLL.LLLLLLLLLLLLLLLLLL..LLLLLLLL.LLLLLL.LLLLLLLLLLLLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL.LLLLL.LLLLLLLLLLLL.LLLLLLL.LL.LL..LLLLLLLL.LLLLLLLLLLLLLLLL.LLL..LLL +LLLLLLLLL.LL.LLL.LLLLLLLLLLLLLLLLLLLL.LLL..LLLLLLLLLLLLLL.LLLLLLLL.LLLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLL.LLLL.LLLLLLLLLLL.LLLL.LLLLLLLLLL.L.LLLLLLL.LLLLLL.LLLLLLLLLLLLLLLLLLLLLLLLLLLL.LLLLL +LLL......LL...L...L..LL..L..L......L...L.L..L.........L.LL.LL..L..L.L......L..L........L..L. +LL.LLLLLLLLLLLLL.LL.LLLLLLLLLLLLLLLLLLLLLL.LLLLLLL.LLLLLLLLLLLLLLL.LLLLLLLLLLLLL.LLLLLLLLLLL +LLLLLLLLLLLLLL.L.LLLLLLLLLLLL.LL.LLLL..LLL.LLLLLLLLLLLLLLLLLLLLLLL.LLLLLL.LLLLLL.LL.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLL.LLLLL.LLLLLLL.LLLLLLLLLL.L.LLLLLL.LLLLLLLL..LLLLL.LLLLLLLLL.LLLLLLLL +LLLLLLL.LLLLLLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLLLLLL.LLL.LLLLLL.LL.LLLLLL.LLLLLLLL +LLLLLLLLLLLLLLLL.LLLLLL.LLL.L.LLLLLLL.LLLLLLLLLLLL.LLLLLLLLL.LLL.L.LLLLLL.LLLLLLLLLLLLLLLLLL +LLLLLLL.LLLLL.LL.LL.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL..LLLLLLLLLLLLLLLLLLLLLLLL.LLLLLLLL +LLL.LLLLLLLLLLLL.LLLLLLLLLLLL.LLLLLLLLLLLLLLLLLLLL.LLLLLL.LLL.LLLLLLLLLLL.LLLLLLLLL.LLLLLLLL diff --git a/11/part1.py b/11/part1.py index f3b4c4d..67dd179 100644 --- a/11/part1.py +++ b/11/part1.py @@ -1,7 +1,7 @@ initialState = [] with open("input.txt", "r") as f: - initialState = f.read().split("\n") + initialState = f.read().splitlines() stateWidth = len(initialState[0]) stateHeight = len(initialState) @@ -59,4 +59,4 @@ while True: if currentState == lastState: break -print(getNumOfOccupiedSeats(currentState)) \ No newline at end of file +print(getNumOfOccupiedSeats(currentState)) diff --git a/11/part2.py b/11/part2.py index 5fba5b2..b2dae65 100644 --- a/11/part2.py +++ b/11/part2.py @@ -1,7 +1,7 @@ initialState = [] with open("input.txt", "r") as f: - initialState = f.read().split("\n") + initialState = f.read().splitlines() stateWidth = len(initialState[0]) stateHeight = len(initialState) @@ -69,4 +69,4 @@ while True: if currentState == lastState: break -print(getNumOfOccupiedSeats(currentState)) \ No newline at end of file +print(getNumOfOccupiedSeats(currentState)) diff --git a/12/input.txt b/12/input.txt index 34e1df2..aaa450e 100644 --- a/12/input.txt +++ b/12/input.txt @@ -1,786 +1,784 @@ -S2 -W5 -F20 -E3 -S5 -R90 -W5 -F48 -R180 -E3 -S3 -E5 -S3 -F83 -S1 -W5 -F81 -W3 R90 F88 -S2 -R90 -E2 -L90 -W4 -F77 -E1 -R90 -S4 -E2 -F89 -N2 -L90 -N2 -N2 -E3 -L180 -N1 -F82 -R90 -S3 -F64 -W1 R180 -S2 -R180 -F28 -L180 -S3 -F100 -E1 -S4 -S5 -R90 -F3 -W5 -N4 -F9 -N5 -E4 -R90 -F83 -L180 -W3 -N5 -W2 -R180 -W1 -S4 -L90 -S5 -R90 -R90 -F36 -L180 -W1 -F88 -E3 -R90 -F13 -W1 -F13 -W4 -R90 -E3 F98 -S4 -E5 -R90 -F77 -E5 -L180 -N5 -R90 -E1 -F70 -L180 -F54 -E5 -F9 -L180 -N3 -F77 -E2 -F81 -E2 -S1 -F41 -L90 -F32 -S3 -F66 -N2 -E4 -R90 -F80 -R90 -W1 -R90 -S3 -F65 -S4 -R90 -W4 -S4 -R90 -W4 -S2 -E1 -F44 -R90 -F53 -E3 -F67 S5 -L90 -R90 -W2 -S2 -E3 -N5 -F97 -N3 -E1 -R90 -W4 -N5 -S4 -F38 -N5 -N1 -W4 -S3 -E1 -S3 -F87 -E1 -R90 -E2 -L180 -S1 -L90 -F29 -R90 -S2 -F95 -N2 -E5 -F24 -W1 -F71 -E3 -L90 -F16 -L90 -S5 -L90 -W1 -F95 -L90 -W2 -F97 -E4 -R90 -N5 -F77 -E2 -L90 -F71 -L90 -W2 -R90 -F75 -E1 -S1 -F28 -F86 -R90 -E3 -F9 -N2 -W4 -S1 -L90 -F10 -W4 -L90 -S5 -E1 -L90 -W2 -S3 -F41 -L90 -S5 -F73 -L90 -S4 -F80 -W4 -R180 -S4 -E3 -F89 -E5 -N5 -L90 -F66 -N4 -W1 -F93 -W1 -F27 -F68 -N4 -F23 -L90 F14 -S3 -F74 -N2 -E2 -R90 S4 -F85 -N2 -L180 -L180 -F55 -S5 -E5 -F42 -N2 -R90 -F53 -S4 -F70 -E2 -F73 -S4 -F71 -L90 -E1 -S3 -E5 -N3 -E2 -N5 L270 -F69 -E5 -F30 -N1 -R90 -N4 -F15 -E4 -R180 -F12 -E2 -F95 -E2 -S4 -F13 -S1 -E1 -N4 -E3 -L270 -E4 -S5 -E3 -N2 -R180 -S2 -W2 -L90 -S3 -W4 -R90 -E1 -L180 -W5 -F23 -E5 -F67 -R90 -N2 -W4 -L90 -S1 -L90 -F17 -W2 -F80 -E1 -F13 -S2 -E3 -S4 -F46 -F70 -R180 -E3 -L90 -E4 -L90 -S3 -F31 -W5 -R90 -F21 -S5 -L90 -F12 -L90 -F70 -S1 -R180 -W5 -F14 -S5 -W5 -S1 -F56 -L90 -F43 -S4 -N4 -E1 -R180 S1 R90 -E3 -N4 -R90 -S2 -E5 -S4 -W4 -R90 -F88 -S4 -R90 -F79 -L90 -N2 -E3 -F74 -L90 -F72 -W1 -N3 -R90 -E2 -F38 -W3 -L90 -E3 -N2 -R90 -E2 -L90 -N3 -E1 -F96 -E3 -S4 -R180 -F28 -S2 -F93 -L270 -N3 -R90 -N2 -E4 -S1 -F47 -L270 -F9 -N2 -F80 -S4 -L180 -N5 -W2 -L90 -W4 -N5 -L90 -F82 -R90 -N3 -F4 +F34 R90 F96 -W5 +N1 +E5 +F94 R90 -F28 -W2 -S2 -F16 -S4 -R90 -F9 -N5 -W4 -F78 -E3 -F84 -L90 -F42 -W2 -F43 -W4 -L90 -F95 +N1 E1 R90 +S5 F59 -L90 -F82 -W1 -F17 -S4 -R180 -F91 -L180 -N1 -R90 -N3 -F57 -L90 -F90 -N3 -R90 -F98 -N5 -R90 -N2 -R90 -F4 S2 -F80 -S2 -N2 -W4 L90 E2 -F67 -R90 -W4 -L180 -F22 L90 -S3 -F9 -N5 -W2 -L180 -S3 -F23 -S4 -W4 -F90 -S2 +S1 +W3 +N2 +L90 +S1 F32 -S3 -E5 -R90 -E1 -F64 -R180 -F17 -E3 -R90 -N2 -E1 -F90 -W3 -N5 -F19 -S5 -E4 -N5 -R90 -W1 -F18 -R180 +F92 +N1 +F10 E2 -R90 -F76 -L90 -N2 -F96 -F38 -R180 -F94 -S4 -W4 -S4 -F63 +F92 +N1 E4 -L90 -F69 -S2 -W3 -N1 -L270 -N1 -L90 -N4 -R90 -E5 -F67 -F85 -S1 -F2 F68 +W1 +R90 +F53 +N3 +F29 +S1 +R180 +W5 +R90 +E1 +F79 W2 R90 -E4 -R90 -S3 -W4 +F70 S2 -N5 -F13 -R180 -W1 -F31 -S1 -F23 -S1 -R90 -F86 -L90 -N5 -W3 -F47 -R90 -R270 -S1 -L90 -S1 -F40 -N4 -R180 -N1 -L180 -W3 -S1 -W5 -L90 -W5 +F17 +S5 +S3 F41 -S4 -E2 -N5 -E4 -N1 -F97 -L90 -F62 -N5 -R90 -F98 -R180 -S5 -L270 -N5 -W5 N4 -E3 -F38 -L90 -S2 -F79 -R270 +E5 +F65 E1 -F14 -W1 -F38 -E3 -L180 N4 -L90 -S5 -F90 -S1 -F7 -N1 -F11 -W4 -R180 -F73 -L90 -F54 -F25 -W5 +E4 S3 -F39 +F1 +N1 +E5 +F73 +S5 +F4 +L90 +F100 E2 -F37 +S5 E2 +F67 +N3 +F27 S4 +E4 +F12 +S4 +W3 +W2 +F10 +L90 +N5 +E2 +R90 +W4 +F76 +S5 +F48 +R90 +F28 +L90 +F36 +N4 +F27 +E4 +N3 +F12 +L90 +S1 +R180 +S2 +F77 +E2 +N5 +E3 +S2 +E1 +L90 +E5 +W4 +F3 +W4 +L90 +N2 +E1 +F61 +W4 +F12 +N2 +F41 +W2 +W4 +L90 +W3 +F42 +S5 +W4 +N5 +E5 F94 W5 -S2 -L180 -W3 -F70 -S3 -R180 -W1 -N5 R90 -S4 -F12 -S3 -F45 -E1 -N3 -R90 -S2 -L180 -E4 -S3 -W5 -F9 -S4 -R90 -F19 W3 -N4 -W5 R90 -F16 -W3 -S4 -W1 -S3 -R180 -S4 -E4 -N1 -W3 -F10 -N5 E2 +S3 +L90 +E1 +S4 +W1 +L90 +E4 +F57 +S3 +S4 +W4 +S1 +W2 +F22 +W5 +L180 +F93 +R90 +N2 +R90 +E5 +R180 +E5 +F22 +R90 F61 E4 +L180 +E2 +L90 +W5 +L90 +N1 +E1 +N3 +W3 +L90 +N2 +W4 +S1 +L180 +W5 +S4 +F69 +R90 +N2 +R90 +N3 +R90 +F100 +S2 +L180 +F13 +S4 +E3 +L90 +F88 +W3 +N4 +R90 +W3 +R90 +F19 +E4 +F28 +W3 +R90 +N2 +F5 +W4 +F88 +S3 +L180 +F14 +N4 +R180 +W3 +N1 +F87 +N2 +F73 +S1 +F53 +N1 +L90 +S2 +L180 +W5 +N2 +L90 +R90 +F1 +L90 +E1 +R90 +N3 +F73 +E4 +F58 +S5 +E3 +E4 +F88 +L90 +E3 +L90 +F8 +N2 +W3 +F62 +S3 +F25 +E3 +N5 +F24 +F21 +W1 +S3 +W3 +F18 +S5 +F93 +L90 +N3 +L180 +S5 +F55 +W1 +F38 +L90 +E2 +L180 +F66 +S3 +F55 +R90 +N5 +R90 +F31 +R90 +F70 +L90 +E3 +L90 +E1 +F95 +W3 +E5 +L90 +F58 +R90 +F26 +R90 +L180 +N1 +F14 +L90 +N4 +E5 +S2 +E1 +R90 +W5 +S5 +L90 +S5 +R270 +F96 +L90 +W3 +F48 +S5 +W4 +F76 +L90 +S3 +W5 +S3 +F71 +S1 +F96 +N4 +R90 +E5 +F16 +L270 +N2 +L90 +N2 +R90 +S1 +N2 +R90 +F13 +L90 +N2 +L90 +F67 +R180 +F26 +R270 +R270 +W1 +S4 +R180 +E2 +F86 +S5 +E5 +N4 +W5 +N4 +L90 +E4 +F96 +R180 +F61 +W4 +L90 +F45 +L90 +F62 +E4 +N5 +E4 +R90 +N3 +L90 +F53 +N4 +W1 +L90 +F82 +F33 +N3 +F24 +R90 +F97 +E3 +F13 +N5 +R90 +W4 +N1 +E5 +L90 +E2 +L180 +S2 +F41 +N1 +E2 +S1 +F98 +E2 +R180 +F70 +N4 +F33 +N5 +F64 +R180 +W1 +R180 +F24 +N1 +L180 +W1 +L90 +E1 +N3 +E1 +L90 +W3 +S5 +E4 +L90 +W1 +F26 +L90 +N1 +W2 +F22 +W4 +S1 +R90 +S3 +R90 +F7 +E1 +S5 +W5 +L180 +F55 +E4 +N5 +R90 +F29 +L90 +S3 +F9 +S4 +R270 +F72 +W4 +N3 +L180 +W2 +L90 +S4 +F84 +N1 +F40 +N3 +F100 +N5 +R180 +S4 +R90 +S2 +L90 +W1 +N5 +E4 +S5 +R90 +F23 +L90 +E4 +E1 +R180 +S2 +F81 +S5 +E1 +E1 +R90 +F72 +N2 +W4 +S3 +L180 +N5 +W2 +F50 +W5 +F28 +L90 +E3 +R90 +N2 +N2 +L90 +N5 +F84 +N5 +F85 +W3 +L90 +F55 +E2 +R90 +W5 +R90 +W1 +F4 +N4 +L180 +N1 +E1 +R180 +E4 +L270 +E5 +R90 +F60 +N1 +W5 +N3 +E5 +R90 +F73 +E3 +N4 +W1 +F32 +R90 +E3 +L90 +F91 +E3 +S3 +W2 +L90 +E1 +L90 +E1 +N5 +L180 +F87 +W3 +N4 +F78 +W5 +L90 +F34 +N4 +R90 +E5 +R180 +N2 +F52 +W4 +L90 +E1 +F17 +S2 +E3 +L180 +E3 +E2 +N5 +E5 +R90 S1 W3 N5 -W2 +L90 +W1 +F13 +W4 +S4 +N5 +E5 +S4 +F26 +E5 +F59 +W1 +N4 +S4 +L90 +F85 L90 W5 -N2 -W1 -F8 -W4 -S5 -L180 -F76 -N1 -R180 -S3 -R180 -S3 -E1 -R90 -W1 -F38 -R90 -F74 -N2 -F60 -L90 -E2 -S3 -F78 -W1 -F57 -R90 -F39 -N5 -F2 -E3 -R90 -F81 -E2 -F2 -S3 -R90 -F95 -S4 -F1 -E2 -N5 -L270 -F59 -W2 R90 S1 -F42 E2 +F86 +R90 +S2 +R90 +F72 +L270 +W5 +W4 +L90 +N2 +R90 +F12 +R90 +F21 +R180 +S4 +L180 +E5 +R90 +S5 +W5 +F87 +E3 +R90 +E3 +S1 +L270 +F74 +R90 +S3 +W5 +F3 +R90 +W2 +L90 +F11 +S2 +W3 +R90 +S3 +N1 +W4 +F67 +S1 +E2 +N4 +L270 +E5 +L90 +N1 +E2 +F75 +E1 +L90 +F63 +E4 +R90 +S4 +F62 N5 E4 -L90 -W1 -F17 -E2 -F91 +N4 +F65 +S2 +W2 +F15 +R90 +W3 +W5 +F71 R90 -E3 -F30 S1 -R90 -W5 -F74 -W5 -N1 -N4 -R180 -S5 -R180 -F92 -N4 -N3 -E3 -R90 -F60 -S4 L90 +S1 +F43 +S3 +F82 +L90 +F7 +W1 +S3 +E2 +E1 +S1 +F74 +R90 +N4 +E4 +F12 +W2 +L180 +S2 +E2 +S1 +F5 +N5 +W5 +N5 +S1 +W5 +F42 +S5 +L90 +N2 +F2 +W2 +R90 +S4 +L180 +F53 +W5 +R90 +F38 +L90 +W3 +W3 +F50 +R90 +N4 +F25 +E1 +N5 +E4 +S3 +F50 +L90 +E2 +R180 +F31 +S1 +E5 +F46 +L90 +E3 +F88 +L90 +F95 +N4 +F57 +S4 E4 R270 -F3 -E1 -L180 -E1 -S5 -F84 -E3 +R90 +E5 +F11 +R90 +N5 L90 -N3 -F27 -W1 -F58 -N1 -F93 +F54 N2 -F30 -L90 -N2 -L90 -N2 -F99 -W4 +W2 +F32 +N4 +R270 S2 -F13 -L90 -N3 +F44 +R90 +R90 W4 -F100 \ No newline at end of file +L90 +F78 +F42 +W1 +R90 +N5 +F83 +W2 +L90 +W3 +L180 +S1 +R90 +F38 +S5 +N2 +F46 +W3 +F83 +W3 +R90 +F41 +W1 +R180 +E4 +N1 +F39 +F36 +S3 +L90 +E3 +F42 +N3 +E4 +F60 diff --git a/13/input.txt b/13/input.txt index fd1a522..dd1551f 100644 --- a/13/input.txt +++ b/13/input.txt @@ -1,2 +1,2 @@ -1000186 -17,x,x,x,x,x,x,x,x,x,x,37,x,x,x,x,x,907,x,x,x,x,x,x,x,x,x,x,x,19,x,x,x,x,x,x,x,x,x,x,23,x,x,x,x,x,29,x,653,x,x,x,x,x,x,x,x,x,41,x,x,13 \ No newline at end of file +1000677 +29,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,41,x,x,x,x,x,x,x,x,x,661,x,x,x,x,x,x,x,x,x,x,x,x,13,17,x,x,x,x,x,x,x,x,23,x,x,x,x,x,x,x,521,x,x,x,x,x,37,x,x,x,x,x,x,x,x,x,x,x,x,19 diff --git a/13/part2.py b/13/part2.py index fdf5cd4..36e6b1a 100644 --- a/13/part2.py +++ b/13/part2.py @@ -1,16 +1,19 @@ +def parseBuses(line): + return {i:int(x) for i, x in enumerate(line.split(",")) if x != "x"} + def getBuses(filename): - with open(filename, "r") as f: - f.readline() - return {i:int(x) for i, x in enumerate(f.readline().split(",")) if x != "x"} + with open(filename, "r") as f: + f.readline() + return parseBuses(f.readline()) buses = getBuses("input.txt") -step = list(buses.values())[0] -t = step +step = 1 +t = 0 for dt, busId in buses.items(): - while (t + dt) % busId != 0: - t += step - step *= busId + while (t + dt) % busId != 0: + t += step + step *= busId -print(t) \ No newline at end of file +print(t) diff --git a/14/input.txt b/14/input.txt index 61d00dc..adedb81 100644 --- a/14/input.txt +++ b/14/input.txt @@ -1,549 +1,571 @@ -mask = 111101X010011110100100110100101X0X0X -mem[37049] = 1010356 -mem[5632] = 28913 -mem[9384] = 7522 -mask = 00X1011X11X0000010100X011X10X10X10XX -mem[25379] = 7906399 -mem[16059] = 904 -mem[2132] = 163108832 -mask = 001X00000X011X1X100X000001X001X11XX1 -mem[2469] = 46318 -mem[24674] = 15229 -mem[30896] = 743 -mem[55599] = 1710 -mask = 111X01X0100X111X1X010XX01X1111101100 -mem[2201] = 2380 -mem[47171] = 21857 -mem[6021] = 7287595 -mem[49580] = 3837 -mem[65412] = 28041507 -mem[32992] = 99064028 -mask = 011111100X0101111XXX1101X0101X01X010 -mem[2629] = 12036738 -mem[60110] = 3985 -mem[41436] = 2216 -mem[19863] = 17395296 -mask = 00100001100XXX101001X11010101X011100 -mem[16044] = 7248570 -mem[330] = 230 -mem[48382] = 48086230 -mem[40678] = 108001 -mem[62875] = 406660 -mask = XXX00XX000X111110X010000100X01001101 -mem[12613] = 32311025 -mem[39377] = 34791 -mem[65154] = 966 -mem[10459] = 430 -mask = 1XX00100000111XX0X01001X00000X000100 -mem[6418] = 116508 -mem[14345] = 12616 -mem[7328] = 187562 -mask = X010X1X010011111X0010101X1X0X0100101 -mem[28854] = 69124 -mem[10581] = 2102343 -mem[5064] = 8954 -mem[53938] = 9972323 -mask = 11X10110X0X111111X110001X11001011111 -mem[53175] = 41406445 -mem[44587] = 824360210 -mem[15218] = 2192587 -mem[27476] = 146 -mem[47148] = 195 -mem[30041] = 7439 -mask = 011X1110X0XXX11110X00000100000X101X1 -mem[62141] = 301264 -mem[2797] = 113383 -mem[56055] = 10421 -mem[25190] = 22658 -mem[48346] = 774379 -mask = 1X10011100011X1X1001101000X01X110XX0 -mem[53351] = 7500 -mem[32711] = 35862 -mem[49953] = 136939 -mem[54272] = 653 -mem[10725] = 14756 -mask = 001X0001X001X1XX100101X00010X10X111X -mem[5178] = 215121044 -mem[7485] = 2612 -mem[46367] = 3136721 -mem[60928] = 952320 -mem[35848] = 30664825 -mem[18833] = 35880 -mem[5251] = 31816 -mask = 00110110110000X01010001X01XX00110011 -mem[65480] = 33015758 -mem[11882] = 418279079 -mem[12794] = 993098 -mem[14684] = 23634 -mem[5284] = 325131 -mem[53421] = 813 -mem[28834] = 14981 -mask = 0X11001X100101111X00010XXX0110X11101 -mem[32442] = 4146416 -mem[19331] = 885 -mem[25467] = 2204 -mem[2871] = 7670 -mask = 0X1001X0010110X1100101010X1111011000 -mem[14801] = 2579830 -mem[45126] = 1714 -mem[2338] = 209130 -mask = 1110011X1XX111101001101X10XXX10100X0 -mem[22942] = 859315 -mem[36322] = 1574906 -mem[10928] = 7421 -mem[37807] = 51884453 -mem[9354] = 39143194 -mem[62973] = 11860 -mask = 11X101101001X111101101001010011X1X10 -mem[31502] = 56496763 -mem[21129] = 2962 -mem[62973] = 3663259 -mem[10709] = 6403 -mem[38977] = 15315 -mask = 01X01X10X001111X100000X0X00011X01XX1 -mem[62133] = 498160429 -mem[531] = 553487 -mem[411] = 777030385 -mask = X1100100X0X11111010X10X110XX1001X001 -mem[6228] = 1713 -mem[51367] = 396473 -mem[62453] = 96391 -mask = 001XX1101100X00010100100111100001XX1 -mem[33445] = 2761 -mem[52666] = 39423328 -mem[14758] = 622201665 -mem[14945] = 33891 -mem[52088] = 94 -mem[51131] = 22350 -mask = X010001000011X1111011XX000010000110X -mem[57553] = 88950985 -mem[57903] = 440 -mem[23955] = 6318441 -mem[30448] = 946292536 -mem[7028] = 4478449 -mem[31497] = 493251886 -mem[33016] = 275462 -mask = 0XX00010100XX1110000000X111001XX01X0 -mem[3595] = 796519126 -mem[905] = 217493 -mask = 00100X100X1110111000000X111X00001X0X -mem[50727] = 817675 -mem[2615] = 1140 -mem[31960] = 80747 -mem[19071] = 167215900 -mem[3408] = 540853 -mem[16589] = 5161 -mask = 0X0001X0001111110101001X10000X001001 -mem[14467] = 115424408 -mem[4421] = 203554 -mem[39690] = 43419 -mem[60124] = 20364545 -mem[4045] = 592 -mask = 00110X1X10X010X0101X0X0X1110010X01X1 -mem[33919] = 3440852 -mem[4168] = 5247 -mem[62598] = 3006098 -mem[985] = 803 -mem[53351] = 31335 -mem[6231] = 934222 -mask = 011000XX10X11111X00X00000001X001000X -mem[27828] = 24343 -mem[2504] = 1003 -mem[18671] = 4434215 -mem[58493] = 59534182 -mask = 00100XXXX0011X11X001000010X11100X1X1 -mem[3324] = 1293 -mem[10581] = 136295 -mask = 001X0110101X10001XXXX001101100000X10 -mem[49440] = 53178 -mem[42866] = 824856 -mem[29940] = 24261823 -mem[34839] = 24643 -mem[15218] = 25062 -mem[16615] = 532684240 -mask = 100X01011001101110011010100111X11X1X -mem[37973] = 398383827 -mem[9995] = 60944 -mem[50087] = 213 -mem[10877] = 24617462 -mem[22319] = 98329242 -mem[18804] = 8442 -mem[15218] = 6567 -mask = 011X00101000X1110001X111X00001010000 -mem[1144] = 191 -mem[4977] = 25877834 -mem[61839] = 891 -mem[28455] = 1803393 -mem[20126] = 304512 -mem[5157] = 53364453 -mask = 0X10X11010011111X00XX000XX1X10110000 -mem[56583] = 121318560 -mem[2527] = 4351729 -mem[35848] = 107737120 -mask = 1010011100X10111100X10X01111110001X0 -mem[27109] = 567808 -mem[33424] = 1664 -mem[2527] = 34412 -mask = 11XX0100X0011111010011010X10X0001111 -mem[51781] = 85436 -mem[55487] = 140238989 -mem[43566] = 3597793 -mem[18841] = 1770027 -mem[353] = 39838355 -mem[46209] = 75205509 -mask = 0X010010X0X1011110X0110011001011XX00 -mem[333] = 584 -mem[37351] = 35049323 -mem[50567] = 8503452 -mem[50009] = 1037 -mem[41067] = 558449 -mem[48631] = 124 -mem[40369] = 113478590 -mask = 0101XX11X0010111100001X11101001X1001 -mem[28490] = 181563760 -mem[18571] = 8337 -mem[44808] = 1314 -mask = 1010011100X111X0XX01000X00X1XXX10101 -mem[43089] = 1900272 -mem[6977] = 22862 -mem[49214] = 2431545 -mask = 01X000X010X01111000100X1XX0011X11101 -mem[14804] = 26046 -mem[9366] = 60909483 -mem[16097] = 238936 -mask = 01001010100X1111X000X00010011001X010 -mem[2523] = 6760572 -mem[12107] = 433898 -mem[57031] = 77090 -mem[33537] = 362161 -mask = 1X10001000011111110X0100X1X10000000X -mem[39070] = 303156 -mem[41188] = 1047577 -mem[41056] = 3574711 -mem[11162] = 1738300 -mask = 0X100X1X0X0110111001000000X111010001 -mem[3493] = 2425241 -mem[31960] = 96 -mem[34845] = 221 -mem[64844] = 233 -mask = 0X100X0100X1X11X1001X1000110X010101X -mem[39377] = 104653 -mem[65436] = 149841506 -mem[22237] = 3616149 -mem[61480] = 7187 -mem[27012] = 7017895 -mask = 00XX0101000111X11001X010100X10XX1XX1 -mem[50003] = 2355 -mem[469] = 88842 -mem[25093] = 1179395 -mask = 0110010X1001111101000X11100101X0X001 -mem[50334] = 50100973 -mem[35316] = 21836 -mem[61908] = 22783 -mem[21656] = 197177 -mask = 0010001010X111110X0X10001010X1010111 -mem[29845] = 143666 -mem[32060] = 561672787 -mem[36707] = 405059 -mem[19863] = 162 -mem[25227] = 188028832 -mem[2066] = 162548071 -mem[45165] = 259779 -mask = 1010010000011X1X0X010X10100011X00000 -mem[5284] = 8659870 -mem[5336] = 164190934 -mem[48215] = 20381190 -mem[9554] = 17192 -mem[47703] = 4580 -mask = 111X0110100111111001X000100X1X0XXX0X -mem[17439] = 219185 -mem[34316] = 7642851 -mem[16097] = 1322995 -mem[63489] = 26333 -mem[8564] = 239317 -mask = 001X0X1110X11011XX010000111X00111110 -mem[2549] = 48026 -mem[49893] = 529734 -mem[12282] = 10740 -mask = X01X0X0XX0X111X11X01001010100101111X -mem[2527] = 3463 -mem[30720] = 760291 -mem[15059] = 83546 -mem[19085] = 37777469 -mem[53803] = 552 -mem[9990] = 880 -mem[40536] = 2290 -mask = X110001010111111XX000000X00X0100X010 -mem[15218] = 12935 -mem[18551] = 450 -mem[30680] = 520194451 -mem[36464] = 6697282 -mem[36217] = 51281648 -mask = X0100101X001X0110001000000X010000101 -mem[65308] = 11452431 -mem[32308] = 578640 -mem[33016] = 395020 -mem[146] = 4075063 -mem[10581] = 6323 -mask = 111X011010X1X1111001101101000X000100 -mem[1124] = 939 -mem[59082] = 1101187 -mem[771] = 3031 -mem[40567] = 304221164 -mem[30736] = 723012 -mask = 001000010X0111XXX0X1001000X11100X000 -mem[37497] = 12765 -mem[42349] = 345 -mem[38653] = 22973 -mem[23706] = 32907 -mem[2325] = 57317553 -mem[14023] = 2586828 -mask = 0X00111X000111111000000000010X0X1100 -mem[8589] = 417 -mem[10771] = 261822994 -mem[39783] = 2745013 -mem[49893] = 449844 -mem[4972] = 822896 -mask = 00X100011001010XX0X10001XX100100111X -mem[49414] = 834562 -mem[17225] = 1582894 -mem[23955] = 3148561 -mem[12247] = 56753 -mask = X010000001X11XX010X100X0X10010100010 -mem[3449] = 152127 -mem[12501] = 17379211 -mask = 0X1000X010011XX11001011001010010X100 -mem[49214] = 3490251 -mem[41052] = 328973 -mask = 001X0X0000X1X01XXX010XX1110010010001 -mem[28455] = 29564233 -mem[26490] = 414988 -mem[19657] = 13471121 -mem[45429] = 79102559 -mask = 01100100100111X1XX0XX010X00X1X1101X0 -mem[2501] = 227077 -mem[4763] = 339106 -mem[16589] = 43005 -mem[2325] = 1301 -mem[61707] = 110061832 -mask = 0010001000X110X110XX000011010XX10110 -mem[19243] = 31993 -mem[5497] = 16163 -mem[49219] = 376 -mem[2293] = 70350 -mem[6805] = 2436214 -mask = 0100X101X0011111100100X0001XX1011X01 -mem[11655] = 5152 -mem[31460] = 11602 -mem[4977] = 145091169 -mem[42202] = 833458 -mem[29542] = 711 -mem[12217] = 5625 -mask = XX1001X01001111110010XX01X0111X10101 -mem[31497] = 253099 -mem[20926] = 12754500 -mem[46425] = 39605909 -mem[16087] = 71713 -mem[29845] = 25701 -mem[1168] = 234 -mask = 0111001X1011X11110000X11000100X001X0 -mem[62012] = 1540164 -mem[22679] = 534776422 -mem[17479] = 137590180 -mem[10339] = 38375 -mem[37358] = 447 -mem[56428] = 23904960 -mask = 001000X000011011110X0X1000X11001010X -mem[8739] = 33671897 -mem[24788] = 95773 -mem[45589] = 44176 -mem[1168] = 79291 -mem[16933] = 53672410 -mem[45502] = 106610 -mem[54973] = 17925 -mask = 0X0X1X101X01101110001100000X010X00X1 -mem[37609] = 71849 -mem[45642] = 2382124 -mem[47190] = 50948518 -mem[15016] = 972332 -mem[44808] = 11636 -mask = 000100100X11X1111010X10011X000111001 -mem[28997] = 1558 -mem[2528] = 234583 -mem[51337] = 1525 -mem[64900] = 38121855 -mem[53607] = 21522241 -mem[8665] = 16698630 -mem[2825] = 4655465 -mask = 1X11011010X1111110X10XX11X00000XX100 -mem[47190] = 353685875 -mem[60172] = 923 -mem[28868] = 112106 -mem[36463] = 36720 -mem[26769] = 2479472 -mem[38188] = 28414 -mask = 1X10011XX001X11X100110001XX011X1000X -mem[37152] = 3921062 -mem[63714] = 30760 -mem[42997] = 955114 -mem[41168] = 1065869 -mem[61522] = 3462489 -mask = XX1X010000111111X100XX01X0X011011X01 -mem[42280] = 139618 -mem[36909] = 189834 -mem[20969] = 33843 -mem[16059] = 18609129 -mem[41693] = 2838 -mem[2417] = 501526 -mem[37152] = 70388201 -mask = X01001000X011111000XX0000000X1010100 -mem[808] = 2969 -mem[35836] = 1345 -mem[6157] = 596830 -mem[12107] = 119 -mem[20072] = 25414 -mask = 001X0010000110111X01XX00X0001X010X01 -mem[26904] = 185000628 -mem[2031] = 18885539 -mem[11204] = 6826362 -mask = 01110010X011011XX000111X000X110001X1 -mem[31647] = 22585 -mem[38116] = 33020167 -mem[32992] = 217342345 -mem[41167] = 3050 -mem[61980] = 4001756 -mem[62005] = 19633 -mask = 11110110100111X110010011X00X0110100X -mem[11108] = 1045 -mem[16463] = 730 -mem[44526] = 3005934 -mem[16120] = 14440473 -mask = 00100X101X01101X1X0X00XX111X011001X1 -mem[29849] = 1224 -mem[496] = 14957 -mem[55083] = 194047 -mem[42431] = 11237807 -mask = 001101011001X1X11X01X0XX000X110X101X -mem[3845] = 21873557 -mem[48657] = 334901 -mem[13919] = 29628952 -mem[42349] = 6148 -mask = 111X011010X1111X1001X011X1X0001XX00X -mem[48724] = 70703519 -mem[11408] = 4581 -mem[57553] = 85089 -mask = 01X00010X0X0X1110X01000X000111010111 -mem[2143] = 531 -mem[59659] = 2027 -mask = 0010XXX1X00111111001001X101111010110 -mem[2293] = 5556 -mem[13572] = 489821002 -mem[328] = 346 -mem[51240] = 56336112 -mem[11162] = 655 -mem[41419] = 3227 -mem[9636] = 1286 -mask = 111001001X01X11X100100X1100X010011X1 -mem[31352] = 15612 -mem[61439] = 349664457 -mem[985] = 3131435 -mask = 001101101XX0XX0010100X01101X0X0X011X -mem[3595] = 903157 -mem[18722] = 2090814 -mem[44603] = 7639414 -mem[40369] = 3205 -mem[52725] = 783 -mem[48724] = 705041 -mask = 0011001010101XX010X110X010100X110X01 -mem[14902] = 25442 -mem[59213] = 659231 -mem[1584] = 3041350 -mask = X10X1XX0100X1X1X10X00000100010001001 -mem[63266] = 16366 -mem[44587] = 1548 -mem[5271] = 17272 -mem[2683] = 130438219 -mask = X01X0110101X1XXX101110011X010X100X00 -mem[23078] = 26703985 -mem[65154] = 1358 -mem[36912] = 299 -mask = 001X001010011X1100001X00100000X10X01 -mem[8920] = 313883810 -mem[2506] = 3273 -mem[25221] = 9461384 -mem[33362] = 736 -mask = 001000X00X011X11000X00001000X0110010 -mem[2031] = 1010 -mem[61542] = 13692 -mem[5497] = 3407774 -mask = 00100000X10XX011100XX1110X001X011001 -mem[15608] = 515444 -mem[56525] = 185613 -mem[32303] = 16754 -mask = 0001X11111X0XX00101000100011X1101000 -mem[30591] = 25695 -mem[37807] = 116328 -mem[6242] = 234258 -mask = 111001XX100111X11001X0101000X0100100 -mem[32442] = 2767797 -mem[4593] = 1693 -mask = 0X10001010XX1111000XX0XX100111011XX1 -mem[6033] = 8168 -mem[8528] = 388750736 -mask = 010X11101X111111X0000010X00100101X01 -mem[7469] = 45 -mem[61980] = 27055 -mem[65447] = 194171 -mask = 101X011010X1111X100101X01X0110010100 -mem[39746] = 1296 -mem[353] = 48147876 -mem[26904] = 1727 -mask = 0000X11X00111111010X0X010000X0000X11 -mem[61522] = 1753 -mem[23985] = 23215529 -mem[11204] = 72089150 -mem[61128] = 804774 -mem[36744] = 27992562 -mask = XXXX0X0110011X1110010XX01010X1011100 -mem[3953] = 37147 -mem[11231] = 10994 -mem[58707] = 39480 -mask = 101001X0001111X1110X0X11000000XX1001 -mem[39732] = 4528 -mem[11954] = 14445 -mem[28017] = 43025334 -mem[2269] = 394695349 -mem[31909] = 11219 -mem[28113] = 63433 -mask = 01XX001X1001X1111000X10XX1X110110X01 -mem[11408] = 332041 -mem[24495] = 10080269 -mem[56525] = 12577593 -mask = 00X0X1101X0X101110000X101X1011101X10 -mem[33357] = 4390 -mem[53607] = 951 -mem[24287] = 266786 -mem[13131] = 18212 -mem[603] = 79598 -mem[35836] = 26511461 -mask = X0100111001111001XX1X1XXX011000110X0 -mem[52978] = 1985754 -mem[39100] = 1279 -mem[34231] = 116905 -mem[16439] = 896 -mask = 010011101XX1111X100000000000XX10110X -mem[699] = 8153 -mem[15621] = 3406 -mem[3084] = 60170404 -mask = 01XX00101011X1X1100000100X0XX11XX000 -mem[6391] = 812 -mem[4690] = 7757 -mem[36912] = 1021 -mem[50287] = 633592703 -mask = 0110XX10XX100111101011X1X010110X00X1 -mem[55972] = 5779 -mem[32157] = 293228 -mem[56428] = 1966 -mem[18030] = 3580797 -mem[38977] = 489 -mem[34180] = 8866609 \ No newline at end of file +mask = 100X000X100X00XX1010X0001X11XX100110 +mem[33470] = 43619 +mem[17642] = 12960 +mem[54949] = 1594 +mem[25705] = 17992 +mem[28651] = 47662 +mask = 1000X01110X1101X111X010XX110000X0010 +mem[12764] = 8190 +mem[19395] = 450940 +mem[29461] = 13796 +mem[7984] = 2208 +mem[5722] = 224803 +mask = X0X100001000101010X0000001XXX00X11X0 +mem[35213] = 1839 +mem[62594] = 437706588 +mem[24939] = 26442 +mem[56565] = 1170057 +mem[38970] = 1610 +mem[12859] = 191077 +mask = 11000001X0010X1111XX010001X01XX0X011 +mem[28644] = 6832 +mem[648] = 510 +mem[26425] = 45751198 +mem[6121] = 877133150 +mem[645] = 504190 +mask = 1X0X0X10000100010X00101111X101X0X1XX +mem[574] = 5087144 +mem[31091] = 4987 +mem[30827] = 704 +mem[9302] = 63804165 +mem[62608] = 12748 +mem[13509] = 342715 +mask = 100X000010011011110001X111X0X11111X0 +mem[20873] = 16020708 +mem[2848] = 1636 +mem[56955] = 14139429 +mem[26453] = 102379 +mem[33525] = 1767526 +mask = 1010001X00X0X01X0101XXX110X000000001 +mem[21984] = 924398411 +mem[3374] = 1319620 +mem[48132] = 92618 +mask = 1X00000X100100110X0XX10011000000X010 +mem[648] = 35751 +mem[32653] = 3342 +mem[36924] = 34287704 +mem[52556] = 9004703 +mem[30098] = 397 +mem[65066] = 1309 +mem[12146] = 78457 +mask = X001000X10010011111001000X011XX00010 +mem[65334] = 1386 +mem[21909] = 447915212 +mem[1243] = 154088 +mem[7330] = 542311 +mem[25436] = 1409628 +mem[49661] = 1707251 +mask = 1110X000XX001XX1110001000000110110X1 +mem[24816] = 140319030 +mem[19331] = 1397 +mem[36701] = 26868 +mem[6958] = 59463077 +mem[23880] = 64111 +mem[14155] = 494925 +mask = 100100XX000X0X01X000X000100000000000 +mem[34272] = 321335 +mem[2789] = 800055021 +mem[31890] = 1268179 +mem[15735] = 64614 +mask = 10XX1X1000X1001X110000110X1100000010 +mem[52959] = 119 +mem[65334] = 240968 +mem[33670] = 984 +mem[29240] = 10577416 +mem[6234] = 42426 +mem[50296] = 4021 +mem[52522] = 282916082 +mask = 1X0000XXX001001X1100001X11111X0X0101 +mem[512] = 1718 +mem[24603] = 319597952 +mem[45957] = 490061 +mask = 1000X0111011011X1111XX101X001XXX1100 +mem[48088] = 3760968 +mem[12195] = 134 +mem[13250] = 125184937 +mem[6378] = 1909743 +mem[4524] = 34079900 +mem[33793] = 2715490 +mask = 10010X00X0X010X1110X0X100X000001X111 +mem[44762] = 164638769 +mem[1307] = 493922 +mem[2789] = 106385 +mask = 000000X0000X01X101X11001101011100010 +mem[33232] = 324866264 +mem[58828] = 13712 +mem[9792] = 500596 +mask = X00000111101X010111001X10100000X0100 +mem[35062] = 229144 +mem[13214] = 8870 +mem[29008] = 509129 +mem[23977] = 474 +mem[64509] = 232243215 +mem[539] = 213782318 +mem[41932] = 99693595 +mask = 1X0000XXX0010011X100X10X0111100X11X0 +mem[64393] = 12134 +mem[27639] = 51028341 +mem[8519] = 233404408 +mem[58948] = 1364 +mem[41638] = 969 +mask = 100000X0X10X0011X1001111X001110X110X +mem[48925] = 27022695 +mem[1668] = 555 +mask = 10XX00010111X001010X0X00110101101110 +mem[34785] = 107013907 +mem[30862] = 116531 +mem[37609] = 1169 +mem[29159] = 79893589 +mem[24124] = 4435 +mem[15848] = 211140 +mask = 1X1X0000X0X01011110001100X0X0101XX01 +mem[7306] = 9297181 +mem[39624] = 56652 +mem[19395] = 30903 +mem[26699] = 875378250 +mask = 10101X1000011X11110001XX111001010010 +mem[56955] = 131498335 +mem[13479] = 253473 +mem[32536] = 988562 +mask = X0XX0001X0011010XX1001010111010X1000 +mem[1872] = 79920634 +mem[14860] = 28428262 +mem[15623] = 48262125 +mask = 10010000X0X110111100XXX001000111XXXX +mem[8003] = 27178 +mem[19025] = 20797909 +mem[8426] = 594719044 +mem[19673] = 495624 +mask = 1X01000X100X0011111000110100101001X1 +mem[25330] = 326966540 +mem[17662] = 314119 +mem[61013] = 61395 +mem[5973] = 102759224 +mem[49957] = 94512 +mask = 100000X1X00110101110X11011111XX01100 +mem[962] = 30767404 +mem[53469] = 1017922130 +mem[45444] = 523349 +mask = X00100110X1100010X0000X0X1X000XX0011 +mem[9510] = 907 +mem[43012] = 935883084 +mem[54252] = 234136 +mem[26591] = 186879 +mask = 1100001X100X001111XXX110011X11011001 +mem[35978] = 382347 +mem[65344] = 2627 +mem[48039] = 425081487 +mem[25436] = 211461256 +mask = 10000110000100010100101XX100X0111X00 +mem[46678] = 2550 +mem[6842] = 94620 +mem[17740] = 331402 +mem[369] = 585126 +mem[29003] = 3361567 +mask = 00001X10000100110X01100110000X001X01 +mem[6641] = 3291 +mem[57684] = 1288724 +mem[10368] = 3092 +mem[1691] = 113 +mem[53521] = 66841458 +mask = XXX0001X00010011010X11X11XX01100000X +mem[14359] = 31504294 +mem[26973] = 65316095 +mem[25330] = 4502057 +mem[28782] = 391 +mem[50820] = 3613708 +mem[7396] = 2070289 +mask = 100X00000X11X011110010001X1X01110000 +mem[33830] = 2489618 +mem[10778] = 25554734 +mem[50275] = 4814 +mem[1337] = 894496769 +mem[22221] = 20298 +mem[32653] = 6210730 +mem[14132] = 20180210 +mask = 100X000X1001X01111X001XXX00010X11X11 +mem[9428] = 1226484 +mem[26591] = 41638310 +mem[9548] = 464177 +mask = 000100X1X01100010XX01X1X1X0000000110 +mem[43013] = 20788 +mem[31840] = 6618 +mem[55203] = 86199 +mem[18436] = 1218590 +mem[48492] = 54642 +mask = 11X10000101X1XX1X10001100000X1011011 +mem[13388] = 58912508 +mem[55154] = 1575819 +mem[14536] = 40492746 +mem[32028] = 899121184 +mem[19040] = 39364 +mem[30536] = 483556 +mem[39091] = 3409 +mask = 101XX010XX01X01111000X101101X1X00010 +mem[15883] = 954907 +mem[48631] = 791524 +mem[6842] = 392470 +mem[18541] = 3325672 +mask = 100000X0000100111100011111101XXX0101 +mem[53324] = 1115 +mem[19724] = 60827 +mem[226] = 145184 +mem[17218] = 3776 +mem[41773] = 26713 +mem[59756] = 239511831 +mask = 0X00X0XX0001001101011X011000X10X0X01 +mem[27218] = 21421 +mem[7812] = 23327426 +mem[333] = 7770 +mask = 1X0000X00X01001101XXX11000X101001111 +mem[39960] = 151 +mem[42954] = 6588004 +mask = X010XX0010001XX1X1X000000101X000X001 +mem[17822] = 11981484 +mem[64005] = 13365 +mem[14356] = 4133695 +mem[41591] = 1910 +mask = 101010X011X10011X10000011010111X1000 +mem[64393] = 246340 +mem[11682] = 335 +mem[4551] = 192 +mem[62286] = 7157612 +mask = X10X000XX00X011X010X1111000100101000 +mem[41086] = 24182 +mem[52688] = 13433903 +mem[27952] = 472864 +mem[15623] = 658 +mem[53618] = 13420832 +mem[50687] = 7916 +mask = 10X0X0011X01101011X00101X0000X101001 +mem[21585] = 79669 +mem[40443] = 667 +mem[11223] = 192963 +mem[64509] = 237828 +mem[59756] = 120881 +mask = 1X000011X0X10X1X110001X0X100X110100X +mem[41776] = 114946562 +mem[17318] = 12138 +mask = 1001X0100X010001X000XX111X0001001101 +mem[45444] = 39574336 +mem[45767] = 1001138 +mem[54857] = 28854058 +mem[53618] = 119933702 +mem[16087] = 217172082 +mem[39965] = 1038124 +mask = X001X010X1010X0X0110110001010100X101 +mem[26168] = 10252507 +mem[11431] = 517718220 +mem[9157] = 174396 +mem[50097] = 52617175 +mem[33525] = 22980 +mem[25687] = 438640 +mem[22317] = 186754300 +mask = X0001XX10001111X11XX1X11111001110010 +mem[43430] = 52170 +mem[7089] = 89721988 +mem[31879] = 17771306 +mask = 100000001000X011X11X010X010011001010 +mem[55787] = 20255 +mem[12215] = 2673234 +mem[27699] = 41544 +mem[43730] = 37137202 +mem[22189] = 2171684 +mem[16916] = 8417 +mem[59117] = 493 +mask = 0100XX100X0X00X1010X1XX110100000X011 +mem[21942] = 84253124 +mem[8387] = 285989 +mem[47595] = 43238786 +mem[11273] = 5891 +mem[18870] = 14700 +mem[31397] = 18891861 +mask = X1000001X0010X110100011100X1001X01X0 +mem[57801] = 61 +mem[24881] = 116648550 +mem[45565] = 8353393 +mem[30104] = 2206 +mem[47328] = 95481 +mask = 1XX1000010010001101110X01X011110011X +mem[54055] = 1602 +mem[20200] = 58023 +mem[30037] = 638 +mask = 100000111X0110X01110011X00000X01011X +mem[29371] = 3431 +mem[42750] = 3528 +mem[58948] = 181 +mem[50006] = 673 +mem[56011] = 27999 +mem[13828] = 12063430 +mask = XX0XX01000000XX101011100110110001X11 +mem[1905] = 12823719 +mem[333] = 1372760 +mask = X010XXX01101001111000XX111XX01X01000 +mem[23642] = 75901831 +mem[34749] = 609008654 +mem[12955] = 127972294 +mem[18507] = 4830711 +mem[21470] = 2045 +mem[37284] = 251298 +mem[49714] = 201296 +mask = 1X1000X0X00010111X00X1X0X10X01011101 +mem[2789] = 22193 +mem[7660] = 63 +mem[42432] = 50568 +mem[286] = 765 +mem[33793] = 469339 +mem[18119] = 35341 +mask = 1000000X0011101XX1000000111000X01001 +mem[35490] = 2442 +mem[20611] = 12075048 +mem[34677] = 3133 +mem[33881] = 894 +mem[8346] = 3515 +mask = 100X000X1X0X00111X1001XX000X1X001010 +mem[26390] = 624351 +mem[30882] = 13200 +mem[58137] = 104562 +mem[37620] = 36784591 +mask = 1X0000X00X0100X1X1000100X1101101X1X0 +mem[8667] = 620484 +mem[45957] = 828 +mem[38134] = 8355359 +mem[8519] = 5218065 +mem[64260] = 7873 +mask = 010X0X100X00001101001101X001XX0XX11X +mem[9421] = 372657 +mem[56122] = 62813 +mem[47934] = 978793189 +mem[32792] = 26560 +mem[31304] = 1765 +mask = 1001X00100X11101110000100111X110X1XX +mem[14692] = 25633 +mem[23742] = 637 +mem[50109] = 407566 +mask = 10XX0010000X0011010XX0X010X01X0000X1 +mem[55203] = 46787013 +mem[11467] = 3191791 +mem[41125] = 93231592 +mem[20366] = 27729722 +mem[31879] = 22982 +mem[61816] = 6962 +mask = 1X000001100XX0111110010XX0000001000X +mem[40255] = 55627314 +mem[50613] = 46448557 +mem[45214] = 23418478 +mem[7236] = 3872572 +mem[12215] = 769893 +mem[34578] = 24974787 +mask = 000XX00X00010111010X001111X00110XX0X +mem[37067] = 823 +mem[31124] = 11297 +mem[62421] = 738 +mem[10716] = 59263363 +mem[21184] = 12111474 +mem[46944] = 422007 +mask = 100XX00XX0011XX11100X11011X11111X011 +mem[14201] = 18573 +mem[15883] = 625820659 +mem[63146] = 15834139 +mem[32183] = 53278160 +mask = 100X00XX01X1000101XX11X101100100110X +mem[23880] = 254387 +mem[17709] = 535 +mem[12764] = 233258822 +mem[48039] = 4269 +mem[50109] = 68584 +mem[7591] = 122179383 +mask = 010X000000000110X1011X100X0000011110 +mem[37974] = 1548 +mem[63233] = 8930 +mem[44778] = 580 +mem[10051] = 1040 +mem[26492] = 30761 +mem[37244] = 112642 +mask = 110000X000010011X100X1110111X0101010 +mem[1292] = 3437 +mem[35025] = 9366905 +mask = 1X0X0000000110X11101X0001X001X100X0X +mem[7591] = 1608710 +mem[41818] = 12566 +mem[36016] = 116197417 +mask = 100000X110011X1X111001X1X10XX10100X0 +mem[18119] = 4227630 +mem[14505] = 15635472 +mem[48279] = 1404607 +mem[28911] = 69031387 +mem[24966] = 15866 +mem[42764] = 14196595 +mem[30536] = 144959 +mask = 1X000011X0011110111X10001011X100X1X0 +mem[15897] = 1863569 +mem[37284] = 731018 +mem[48279] = 2085462 +mask = 10X0X001X001101111X0010110100001X010 +mem[28911] = 16197451 +mem[6925] = 165614747 +mem[22080] = 265387922 +mem[59318] = 1779761 +mask = 00000XXX00X10011010011001100100X0111 +mem[65156] = 112050975 +mem[19901] = 889831505 +mem[58996] = 1264160 +mem[30802] = 2605 +mem[12608] = 1327785 +mask = 10000000100100111100001X00X1X000X10X +mem[30536] = 27834493 +mem[26591] = 245069 +mem[1428] = 520474 +mem[53343] = 17883 +mem[2814] = 23356 +mask = 10000011X001111XX11X00X00X0X110X111X +mem[28058] = 418 +mem[47970] = 3379204 +mem[32241] = 102702752 +mem[40499] = 252023 +mem[23125] = 1672 +mem[9536] = 63991 +mask = 10XX0010X0X10X011100XX1111101X0X0111 +mem[16311] = 126300735 +mem[58427] = 40289 +mem[32982] = 3884 +mem[14356] = 54916 +mem[17348] = 224162 +mem[48317] = 61261036 +mem[35998] = 729091 +mask = 10000X111X0X101011100X01000000010100 +mem[24655] = 85021463 +mem[61136] = 836486 +mem[35978] = 4899339 +mem[65066] = 4025758 +mem[52424] = 1033481 +mem[9536] = 3374650 +mem[8519] = 10572 +mask = 10X00001100100X11010010X0010001X1110 +mem[403] = 495031 +mem[26453] = 37096 +mem[55416] = 701491 +mem[33450] = 1673825 +mask = X0001X11X011X11X11X11000X1X0100011X1 +mem[22597] = 770136 +mem[11273] = 27425065 +mask = 0010001X00010011X100X01001X000111X11 +mem[29980] = 365 +mem[63378] = 228883 +mem[53819] = 66035413 +mask = 10010000100XX0XX101X0XXX01X010001100 +mem[28534] = 1807 +mem[47970] = 7119644 +mem[18194] = 1735 +mem[47877] = 3151 +mask = 1011000010X0X0111100X000101110X10011 +mem[25154] = 29964570 +mem[63129] = 10159624 +mask = 1000000110X100111X00X1010011X1001100 +mem[56487] = 870 +mem[58828] = 290175 +mask = X001000X10000010X010X010000110X11110 +mem[7471] = 39984 +mem[25738] = 966851148 +mask = 101X001X0010101101011X011011X000X111 +mem[24018] = 4476674 +mem[13140] = 291 +mem[25421] = 40046 +mem[15399] = 1294317 +mask = X0000001001XX010110010001110010110X1 +mem[112] = 311 +mem[3121] = 6243634 +mem[53286] = 4539 +mem[11587] = 103665767 +mask = 10X000010001001X110X01001X1XX1011000 +mem[5973] = 1483346 +mem[16087] = 18208048 +mem[31515] = 16445771 +mask = 1X10X0001X001011X00X000001101111X000 +mem[63378] = 436 +mem[25436] = 302283 +mem[46198] = 11243 +mem[11662] = 3899 +mem[52857] = 258122375 +mem[18733] = 714131 +mask = X1001001000X01110XXX1X1101X11110X110 +mem[37620] = 623911 +mem[49205] = 17280 +mem[15039] = 35801359 +mem[21629] = 739 +mem[48696] = 3250862 +mem[20379] = 953585581 +mask = 11X00X001001001100X0111X111X1000110X +mem[14356] = 6011 +mem[41598] = 136971765 +mem[12195] = 636 +mem[21511] = 501639396 +mem[19096] = 10274 +mem[51716] = 65184 +mask = 100100001X01001111X0XX110X001111X001 +mem[14156] = 2218677 +mem[45629] = 98324 +mem[18461] = 3590995 +mem[871] = 53862879 +mem[14400] = 23945494 +mask = X001X000X00110XX11X00000100011011010 +mem[65400] = 8312366 +mem[17561] = 21548519 +mem[2814] = 128148 +mask = 1000X010X0X10001110000XX1110110X011X +mem[58996] = 30993534 +mem[15623] = 1021 +mem[25554] = 318162731 +mem[32046] = 51129 +mem[61190] = 8349331 +mem[31091] = 30157588 +mask = XX00X001XX010111010X10100X01010X00X1 +mem[14900] = 187327555 +mem[56145] = 1592827 +mem[26453] = 6842063 +mem[53679] = 93694 +mem[28489] = 1913 +mask = 10XX00001000X0XX110011000110110X1001 +mem[32609] = 26490 +mem[17188] = 150719 +mem[1396] = 140150 +mem[48631] = 290304 +mem[29618] = 31699 +mask = XX0X001110X1X1111111X1X100111X0X1100 +mem[14350] = 15950 +mem[28058] = 24716 +mem[39402] = 2278565 +mask = 001000100001X011X1001111X1X0XXX1XX11 +mem[8502] = 118162 +mem[42034] = 2943 +mem[64089] = 22975 +mem[612] = 961538 +mem[2245] = 618000 +mem[8426] = 838813335 +mask = 10XX00X0100X1011110001X00000XX001111 +mem[55977] = 263096128 +mem[1243] = 11494211 +mem[27129] = 44889227 +mem[17879] = 526818471 +mem[20967] = 68907 +mem[19821] = 101439 +mask = X00X00X01011000111X00010X11111000110 +mem[41820] = 57481789 +mem[47715] = 15667172 +mem[16108] = 601 +mem[42045] = 64000414 +mem[3396] = 16801 +mem[41933] = 192293 +mem[21511] = 1735 +mask = 1X000X1110011XX11110XX010000110101X0 +mem[12491] = 1582234 +mem[35490] = 1901772 +mem[19673] = 137803450 +mem[48817] = 821120 +mem[17876] = 24649 +mem[53314] = 5813 +mem[10808] = 1281 +mask = 1001X00000X11011110XXX001X000X01X000 +mem[18609] = 22890216 +mem[9726] = 42312 +mem[14459] = 15520 diff --git a/14/part1.py b/14/part1.py index cd41363..5f3da39 100644 --- a/14/part1.py +++ b/14/part1.py @@ -2,7 +2,7 @@ def getInstructions(filename): with open(filename, "r") as f: - return list(line.split(" = ") for line in f.read().split("\n")) + return list(line.split(" = ") for line in f.read().splitlines()) def applyMask(value, mask): return (value | int(mask.replace("X", "0"), 2)) & int(mask.replace("X", "1"), 2) @@ -19,4 +19,4 @@ for instruction in instructions: memory[address] = applyMask(value, currentMask) memorySum = sum(memory.values()) -print(memorySum) \ No newline at end of file +print(memorySum) diff --git a/14/part2.py b/14/part2.py index 0b05357..d4fc6fd 100644 --- a/14/part2.py +++ b/14/part2.py @@ -1,7 +1,7 @@ def getInstructions(filename): with open(filename, "r") as f: - return list(line.split(" = ") for line in f.read().split("\n")) + return list(line.split(" = ") for line in f.read().splitlines()) def decToBin(decimal): binary = bin(decimal)[2:] @@ -31,4 +31,4 @@ for instruction in instructions: writeToMemory(memory, maskedAddress, value) memorySum = sum(memory.values()) -print(memorySum) \ No newline at end of file +print(memorySum) diff --git a/15/input.txt b/15/input.txt index 20bb2f3..909319b 100644 --- a/15/input.txt +++ b/15/input.txt @@ -1 +1 @@ -11,0,1,10,5,19 \ No newline at end of file +19,20,14,0,9,1 diff --git a/15/part1.py b/15/part1.py index c868659..9a4a863 100644 --- a/15/part1.py +++ b/15/part1.py @@ -18,4 +18,4 @@ while len(numbers) < 2020: occurences[number].append(len(numbers)) numbers.append(number) -print(numbers[2019]) \ No newline at end of file +print(numbers[2019]) diff --git a/15/part2.py b/15/part2.py index 9bad02f..ea119c7 100644 --- a/15/part2.py +++ b/15/part2.py @@ -5,20 +5,24 @@ def getStartingNumbers(filename): return [int(n) for n in f.read().split(",")] numbers = getStartingNumbers("input.txt") -occurences = {n: [i] for i,n in enumerate(numbers)} +positions = {n: i for i,n in enumerate(numbers)} +diff = {n: 0 for n in numbers} + lastNumber = numbers[-1] # 30000000 targetI = 30000000 + i = len(numbers)-1 while i+1 < targetI: - if len(occurences[lastNumber]) > 1: - number = occurences[lastNumber][-1] - occurences[lastNumber][-2] - else: - number = 0 - i += 1 - occurences[number] = occurences.get(number, []) - occurences[number].append(i) - occurences[number] = occurences[number][-2:] - lastNumber = number + number = -1 + if lastNumber in diff: + number = diff[lastNumber] + else: + number = 0 + i += 1 + if number in positions: + diff[number] = i - positions[number] + positions[number] = i + lastNumber = number -print(lastNumber) \ No newline at end of file +print(lastNumber) diff --git a/16/input.txt b/16/input.txt index 943a34c..0d932ef 100644 --- a/16/input.txt +++ b/16/input.txt @@ -1,266 +1,263 @@ -departure location: 31-221 or 241-952 -departure station: 27-780 or 787-957 -departure platform: 34-405 or 411-970 -departure track: 41-672 or 689-963 -departure date: 26-827 or 843-970 -departure time: 38-283 or 297-963 -arrival location: 50-250 or 259-970 -arrival station: 35-878 or 884-950 -arrival platform: 49-746 or 772-955 -arrival track: 37-457 or 481-954 -class: 28-418 or 443-970 -duration: 32-722 or 728-970 -price: 41-519 or 525-966 -route: 50-606 or 628-974 -row: 46-92 or 111-967 -seat: 41-112 or 135-972 -train: 25-540 or 556-957 -type: 39-574 or 585-954 -wagon: 32-699 or 719-957 -zone: 49-71 or 83-951 +departure location: 48-793 or 800-971 +departure station: 36-235 or 247-974 +departure platform: 25-850 or 862-964 +departure track: 40-173 or 193-959 +departure date: 42-895 or 902-955 +departure time: 43-692 or 715-951 +arrival location: 38-528 or 549-967 +arrival station: 43-133 or 141-963 +arrival platform: 40-651 or 675-951 +arrival track: 48-801 or 811-973 +class: 50-562 or 587-955 +duration: 43-520 or 527-968 +price: 44-745 or 752-950 +route: 41-929 or 941-963 +row: 37-828 or 838-958 +seat: 47-475 or 491-972 +train: 38-198 or 210-965 +type: 33-66 or 74-949 +wagon: 35-492 or 507-962 +zone: 35-358 or 381-965 your ticket: -61,151,137,191,59,163,89,83,71,179,67,149,197,167,181,173,53,139,193,157 +157,59,163,149,83,131,107,89,109,113,151,53,127,97,79,103,101,173,167,61 nearby tickets: -854,509,243,913,926,411,308,322,69,875,779,371,51,514,367,873,524,645,934,322 -358,885,814,800,197,363,388,50,138,820,854,793,89,738,733,306,796,334,387,8 -194,897,151,634,178,597,173,791,251,344,306,568,804,145,142,136,573,173,242,508 -793,667,856,328,284,596,215,70,873,507,777,948,851,922,694,153,743,250,926,142 -219,870,66,945,803,485,325,670,788,186,822,365,451,512,906,443,678,404,312,173 -329,572,654,409,804,563,847,330,265,148,875,904,173,411,927,259,945,536,148,920 -788,867,405,249,51,454,819,512,306,850,384,337,71,587,316,649,724,389,645,318 -271,143,266,447,322,187,650,254,497,155,860,405,655,946,635,862,517,937,729,721 -211,856,566,262,156,201,804,735,172,809,870,56,313,801,447,508,622,517,91,807 -312,334,928,657,776,276,319,893,163,162,244,206,446,719,568,856,391,831,722,931 -250,68,900,183,785,790,270,922,312,914,269,664,305,337,350,904,778,896,68,371 -516,650,391,333,604,730,406,779,341,354,447,162,884,53,803,327,861,721,321,328 -654,169,947,825,395,4,374,569,518,885,315,563,67,900,195,511,789,739,345,863 -909,871,876,874,194,141,151,54,805,381,943,413,556,553,268,305,629,774,179,540 -325,299,721,195,772,376,255,699,737,911,567,274,859,186,780,605,556,568,220,162 -482,799,304,784,495,136,949,938,140,58,773,152,855,342,884,393,276,445,557,821 -534,807,455,221,832,89,658,734,947,945,672,259,456,137,558,557,902,744,382,315 -274,775,797,928,940,299,821,653,216,918,163,814,162,63,929,640,321,456,362,257 -889,188,454,309,488,457,775,183,166,382,916,262,322,307,716,204,664,411,790,354 -366,894,820,567,180,641,146,859,517,497,735,186,310,362,203,381,824,885,718,513 -60,813,630,672,88,947,663,405,515,376,51,182,910,380,903,847,318,843,542,572 -447,300,897,602,55,918,664,272,623,245,368,411,699,157,735,587,722,641,574,356 -890,804,648,369,731,848,394,866,249,884,3,652,212,876,742,892,517,844,667,932 -89,524,529,628,324,944,860,449,887,392,112,805,592,181,905,929,323,787,140,54 -301,885,646,353,657,820,572,629,666,891,195,378,274,849,729,24,196,875,515,212 -709,197,454,827,733,742,91,175,366,572,508,314,170,282,744,316,164,69,178,801 -218,457,484,161,800,860,911,492,250,898,455,888,252,54,932,745,393,856,363,519 -207,923,189,314,182,483,179,730,174,186,324,481,658,494,294,167,492,854,803,778 -800,87,644,61,586,517,645,905,190,573,316,855,150,170,304,389,218,979,388,741 -846,482,84,326,798,745,926,725,362,176,340,197,165,572,268,912,481,558,335,632 -184,773,536,594,945,494,738,401,649,949,404,135,274,467,817,299,853,740,603,926 -843,855,551,798,443,586,481,721,809,340,142,570,774,938,150,485,154,299,822,857 -272,782,366,666,658,917,731,509,733,371,639,245,585,312,336,805,111,868,642,511 -447,888,511,822,822,940,527,909,274,938,867,984,193,274,527,449,487,888,515,560 -304,174,393,1,170,444,568,634,395,481,260,586,729,634,694,55,305,531,501,162 -629,585,932,813,572,945,598,369,743,375,178,411,397,648,221,805,648,72,817,698 -631,554,698,861,906,380,484,70,739,606,359,519,418,111,728,564,935,208,90,383 -90,500,825,163,899,532,392,641,571,484,220,877,530,351,368,918,229,337,367,50 -171,341,914,323,737,256,647,939,745,138,908,648,690,857,145,774,855,919,745,605 -179,906,324,91,365,322,843,512,857,324,139,69,902,823,332,313,776,254,653,457 -668,237,456,573,913,503,140,200,283,449,241,148,148,323,635,734,694,143,815,924 -84,195,63,216,356,730,457,67,923,654,269,173,646,400,65,664,641,455,400,294 -401,373,418,600,848,659,740,59,400,796,418,449,721,993,644,163,875,444,949,87 -628,934,497,657,336,325,398,62,384,150,672,335,785,170,305,241,167,361,502,571 -458,858,501,491,271,217,569,162,168,205,335,325,744,380,54,303,884,794,916,646 -280,498,728,358,587,171,891,525,935,819,843,398,515,671,729,418,257,512,871,591 -288,891,658,311,853,166,510,84,502,937,633,360,143,692,374,92,515,393,60,277 -447,153,383,332,260,447,694,299,531,490,636,534,166,137,892,858,817,498,654,784 -252,799,885,852,856,774,89,154,333,590,338,504,165,378,696,606,53,728,349,537 -221,281,278,179,737,813,522,798,355,283,193,570,921,928,264,745,585,241,351,808 -556,244,60,858,452,221,655,595,204,603,899,329,417,449,503,894,192,56,980,587 -875,780,350,728,889,527,671,790,589,857,520,936,180,942,818,448,558,664,920,819 -355,858,531,976,530,135,55,336,894,150,194,905,379,496,338,299,262,247,511,574 -182,637,184,865,7,933,55,826,733,738,820,245,566,655,632,564,529,900,538,342 -905,509,943,814,798,819,417,485,327,61,160,168,616,210,788,936,788,365,908,497 -50,946,380,527,894,203,267,810,906,198,569,803,888,170,555,694,659,70,371,590 -591,815,364,401,766,815,275,596,176,634,370,561,505,181,890,138,452,735,518,147 -827,683,52,534,656,510,328,323,52,278,815,930,743,137,53,190,903,741,660,875 -167,859,260,725,923,917,922,142,339,388,363,508,914,667,790,862,515,282,212,350 -161,882,443,265,517,483,776,650,661,499,887,794,302,516,150,412,485,698,820,185 -345,487,810,868,871,190,209,507,327,534,86,856,305,877,931,210,121,886,903,567 -843,875,362,560,320,17,869,64,948,561,896,248,778,174,54,947,792,386,630,366 -916,904,884,91,867,796,862,153,453,449,397,908,485,264,53,848,141,936,889,551 -569,740,646,200,792,649,213,719,787,456,933,414,361,526,340,732,63,135,469,865 -359,384,221,87,650,396,241,197,281,947,19,418,527,738,172,486,857,282,262,525 -854,603,494,532,160,329,162,537,358,887,415,913,487,531,172,177,393,521,940,698 -403,535,738,334,827,530,527,495,229,526,512,340,248,170,866,188,691,820,398,822 -654,241,630,740,920,485,532,722,479,348,90,51,87,158,241,389,301,531,496,350 -547,143,492,534,871,939,303,306,88,247,268,55,363,312,564,344,740,560,277,150 -915,823,90,651,852,416,668,207,905,563,249,308,84,338,216,67,346,112,523,924 -825,734,211,581,454,811,340,347,207,532,506,400,660,412,328,573,319,146,735,519 -540,875,176,220,355,184,885,854,780,572,83,142,181,387,371,603,925,514,654,9 -398,402,561,151,608,565,528,850,136,497,939,386,943,919,938,86,946,329,380,367 -390,912,651,811,563,63,20,368,146,187,173,538,658,364,938,264,869,194,573,845 -154,331,321,244,189,445,88,873,208,650,312,368,744,932,243,345,792,58,995,637 -172,813,638,66,859,161,915,921,928,383,587,644,388,183,868,358,319,681,602,567 -399,866,603,207,557,172,366,349,707,812,664,806,454,299,593,779,772,651,502,170 -310,777,312,917,406,670,874,187,559,945,58,505,393,393,418,666,158,297,811,664 -66,936,270,595,515,844,546,491,638,314,381,177,791,805,264,640,342,693,172,160 -521,270,906,822,273,269,448,905,456,304,176,330,249,211,492,780,515,539,802,640 -135,790,271,772,935,492,300,875,827,896,282,260,891,915,657,879,505,88,283,303 -443,275,414,237,888,596,729,938,161,514,147,275,854,497,652,629,366,910,264,922 -370,146,402,649,328,859,789,787,794,665,321,810,174,777,889,396,649,389,494,410 -642,629,221,538,400,591,84,983,815,692,267,267,266,179,667,564,566,359,689,159 -499,806,219,663,690,536,535,664,83,370,531,640,589,988,654,511,260,666,173,531 -670,733,900,881,635,313,281,449,179,695,513,397,915,774,532,209,343,375,889,661 -654,300,195,921,434,564,143,861,720,893,875,208,860,777,557,305,62,774,71,139 -342,916,201,899,741,357,645,363,146,317,630,380,287,370,773,649,174,358,876,667 -875,736,866,60,867,308,159,152,296,872,354,241,56,586,656,513,491,933,213,323 -564,632,648,503,190,728,270,272,850,666,348,663,263,201,406,206,697,249,504,164 -568,592,738,518,277,456,780,635,883,70,218,411,722,403,175,910,334,413,484,175 -827,198,282,832,53,111,414,411,329,388,909,208,602,531,745,734,195,52,502,938 -493,324,779,691,882,746,335,891,937,594,527,145,167,729,848,315,54,556,731,746 -163,153,806,795,246,398,312,505,52,897,880,780,590,519,70,487,533,53,498,896 -220,339,843,212,524,596,151,412,853,865,860,496,360,810,559,357,201,746,491,734 -137,822,270,870,852,53,730,761,648,165,481,801,414,370,399,519,944,305,343,814 -455,303,137,919,166,336,448,532,531,211,504,773,593,698,905,455,171,995,500,603 -851,631,742,789,332,205,818,350,386,495,528,544,361,210,693,827,305,870,689,506 -111,163,207,780,595,393,874,692,368,300,10,485,220,450,499,860,398,190,593,211 -631,871,733,921,864,599,170,653,361,362,211,746,219,258,313,370,193,321,207,188 -897,831,929,868,843,342,901,791,450,537,280,445,511,667,719,389,197,360,398,945 -375,906,876,211,457,361,373,557,65,164,170,184,794,728,692,22,503,325,395,142 -812,360,395,735,69,825,445,904,356,804,336,858,542,366,171,642,504,903,917,939 -156,309,731,695,723,450,940,632,793,262,62,638,728,378,186,446,919,263,247,821 -534,215,60,854,730,867,163,927,799,994,932,865,670,269,791,857,347,53,744,664 -507,373,844,729,451,264,455,283,923,366,514,212,272,378,307,814,410,662,557,531 -606,87,594,289,893,772,511,926,111,939,165,314,413,53,650,936,498,263,309,179 -788,153,740,318,856,444,337,183,178,632,50,180,245,490,792,443,163,723,489,510 -301,140,324,571,884,508,868,872,301,730,798,484,593,147,259,350,700,810,852,692 -416,943,853,178,827,565,279,566,317,892,251,857,817,217,538,271,348,63,264,140 -378,346,699,393,903,943,534,880,151,302,414,397,819,933,689,150,893,397,598,58 -277,311,645,525,904,141,112,697,347,151,877,376,149,643,358,793,929,773,881,310 -855,488,659,250,513,918,64,484,889,488,360,91,51,274,932,735,880,54,737,369 -732,89,976,659,299,772,494,185,268,369,891,513,305,342,188,264,86,945,657,732 -417,155,392,689,171,186,53,982,931,85,803,147,376,825,499,945,158,719,193,904 -206,397,910,722,591,359,315,268,194,356,606,948,728,822,805,198,63,292,791,140 -719,664,490,521,562,938,592,404,401,276,316,313,637,803,177,937,453,794,851,282 -587,530,400,165,944,873,350,696,389,930,636,260,780,879,383,825,660,655,305,656 -890,914,67,299,824,914,360,211,68,186,206,899,705,443,246,361,734,568,846,909 -379,976,403,160,939,737,817,777,263,742,416,506,325,111,597,213,887,405,330,507 -211,641,930,320,790,719,362,90,792,323,696,519,925,599,92,173,466,592,923,142 -495,529,164,911,505,668,357,390,88,731,628,630,170,519,910,416,69,335,667,473 -616,746,332,354,905,730,83,59,903,525,313,571,304,925,56,844,643,383,793,909 -556,668,601,848,397,175,260,152,727,672,787,664,788,281,369,199,453,573,574,149 -216,174,851,71,790,366,785,213,594,640,746,216,656,729,207,157,86,570,176,731 -384,606,204,809,199,303,285,779,509,493,52,217,391,451,596,69,885,629,69,929 -844,157,61,571,186,184,728,831,646,898,146,902,661,54,391,219,928,62,204,218 -271,391,809,504,852,157,986,853,889,413,940,791,137,271,628,221,493,813,932,365 -482,190,329,886,921,162,802,914,787,532,452,790,873,210,657,810,595,235,395,323 -821,339,199,325,414,150,16,259,566,730,496,799,445,371,249,177,936,511,88,135 -903,147,384,485,70,300,268,345,830,631,318,269,787,174,937,500,360,511,90,910 -84,322,277,178,280,153,915,191,92,571,327,822,646,65,413,638,540,715,886,245 -455,465,316,696,515,112,265,788,533,367,205,193,641,144,282,651,530,190,601,604 -218,802,398,351,142,886,357,932,210,638,152,734,90,53,787,343,531,873,17,737 -339,90,808,176,322,316,157,598,302,590,327,775,218,151,806,372,165,478,184,299 -900,527,921,413,884,573,380,221,482,942,566,778,879,668,144,161,567,208,659,326 -365,854,372,112,176,457,416,569,152,871,740,809,652,371,147,90,784,735,851,788 -386,388,573,919,277,69,608,803,813,933,905,855,862,337,326,719,733,563,667,450 -593,187,825,503,142,187,559,719,175,193,495,849,564,61,524,511,593,737,867,605 -199,395,635,487,910,822,944,864,415,661,988,55,153,375,248,187,196,641,819,160 -389,878,304,196,904,395,716,628,925,135,145,593,632,495,649,598,209,86,812,859 -653,406,798,497,806,556,84,320,202,278,363,787,594,824,305,585,208,192,213,395 -55,691,789,88,876,910,594,331,274,862,51,563,875,370,614,900,569,947,172,666 -149,736,926,525,16,929,263,52,444,645,935,83,452,347,815,509,806,454,152,868 -307,605,265,638,578,797,864,855,414,895,372,495,849,65,318,926,888,528,372,646 -189,941,53,531,699,415,342,635,633,244,805,193,794,180,976,339,54,456,196,316 -369,322,332,874,468,52,197,518,507,356,489,694,268,796,351,655,206,655,907,244 -347,382,161,675,628,745,689,349,662,776,893,787,210,854,411,376,855,510,111,155 -322,597,266,874,448,774,306,916,905,416,550,820,249,483,663,378,931,65,793,281 -357,149,598,734,873,344,802,943,745,850,218,61,479,873,58,203,268,371,279,348 -261,154,947,178,866,360,733,484,195,806,342,312,942,334,252,189,804,221,556,912 -245,338,858,532,804,565,892,445,491,889,329,190,264,599,347,567,901,879,321,929 -452,1,213,593,847,850,372,898,660,414,738,947,497,485,795,390,245,632,887,814 -152,362,445,694,860,272,848,363,2,944,334,926,450,823,943,249,142,318,190,907 -188,919,70,513,56,501,148,164,600,401,211,353,219,321,449,521,897,71,792,303 -989,592,493,60,369,655,86,263,772,779,181,537,263,180,450,173,370,84,596,344 -491,671,934,539,513,163,830,111,314,647,266,798,667,179,325,849,921,356,864,204 -331,491,181,921,193,925,644,178,411,532,643,874,68,87,601,555,788,343,890,217 -218,945,341,669,802,143,571,140,188,154,899,777,573,88,302,257,444,587,411,908 -559,572,365,448,179,930,668,636,58,354,142,7,403,318,387,382,157,388,188,447 -302,365,799,547,211,872,729,55,585,904,799,189,922,152,645,925,561,273,313,446 -892,213,531,257,539,855,316,242,349,886,242,248,153,822,670,176,586,670,386,310 -556,215,50,270,668,484,140,333,867,55,326,944,70,414,454,83,510,626,569,283 -179,455,501,670,902,185,536,574,376,900,195,919,982,629,148,884,662,487,845,331 -65,794,491,211,322,388,888,343,782,644,135,558,564,263,488,666,335,275,672,206 -281,252,887,594,52,203,194,587,606,155,777,843,451,412,851,56,196,194,794,498 -812,640,850,777,175,450,918,160,418,165,507,304,532,445,385,373,504,492,499,712 -451,153,209,486,153,500,645,328,324,912,979,691,657,490,381,572,199,931,86,336 -796,603,908,792,228,525,58,807,363,572,657,66,350,55,331,515,484,775,456,137 -280,265,910,174,128,343,356,775,200,372,112,598,447,56,154,516,859,268,265,938 -318,628,356,396,452,266,742,906,180,273,797,661,309,327,310,201,888,872,622,320 -84,50,311,898,363,320,208,341,358,672,354,995,818,731,199,791,176,810,740,327 -494,454,931,721,394,918,507,553,656,167,210,662,730,530,807,695,647,917,863,356 -737,193,215,937,53,347,54,381,793,271,632,389,69,526,162,374,699,324,7,333 -160,716,746,199,306,629,873,628,163,903,249,585,695,281,403,322,630,261,528,150 -327,797,533,660,669,638,924,532,307,53,495,24,396,691,908,185,516,283,720,845 -574,216,58,458,202,221,793,164,454,906,457,182,62,696,943,376,300,312,741,919 -344,358,691,566,794,316,592,298,361,654,731,189,819,573,493,250,296,894,194,744 -385,873,483,249,699,808,736,166,899,789,486,900,777,646,345,148,739,762,658,63 -662,923,853,888,256,259,242,87,589,332,821,876,143,516,367,213,91,935,330,794 -311,532,802,374,355,526,337,795,662,161,475,646,631,147,561,63,452,194,871,55 -216,165,263,561,268,896,283,699,327,495,869,332,527,701,260,729,245,145,698,742 -880,731,453,593,334,919,564,639,335,924,905,65,363,942,780,247,733,411,921,719 -373,908,601,315,914,656,825,928,351,902,859,734,986,537,639,823,816,634,181,859 -500,137,378,918,515,923,411,735,415,819,599,346,146,400,459,899,906,798,859,518 -670,622,590,346,793,518,396,571,810,790,168,866,486,948,602,91,221,283,337,849 -277,452,731,532,61,266,391,575,503,397,569,825,562,71,298,911,364,175,635,312 -265,322,849,816,501,821,910,928,909,15,512,539,205,396,564,516,538,851,851,642 -271,55,901,353,313,386,498,408,383,58,412,337,211,572,217,65,804,917,449,518 -283,364,187,806,153,891,279,372,350,502,195,338,454,412,538,446,854,864,721,609 -778,366,398,596,892,867,412,195,274,812,535,883,921,51,353,340,933,83,61,598 -788,404,934,21,246,888,654,539,145,418,150,658,510,91,281,930,788,932,910,282 -634,156,798,159,565,487,592,633,390,910,139,854,277,140,585,2,332,513,492,932 -380,198,209,696,417,385,50,329,804,745,935,516,591,735,719,694,768,731,508,111 -174,734,268,301,854,745,518,615,345,312,244,565,633,506,599,789,773,352,886,178 -891,216,324,184,527,449,572,535,378,911,339,659,979,928,560,823,773,318,814,386 -565,58,253,415,177,402,86,206,201,192,948,395,648,694,628,899,865,561,401,323 -863,340,557,324,136,986,245,167,482,354,596,56,89,374,178,690,242,849,637,346 -341,601,416,697,308,777,188,785,150,526,263,903,915,661,897,734,164,497,510,137 -92,599,932,895,325,499,199,139,561,191,668,697,511,329,315,815,833,887,813,443 -402,396,495,852,386,453,148,84,826,800,263,564,52,606,659,871,698,185,266,522 -645,878,352,812,865,776,881,902,262,917,810,205,165,314,606,368,739,644,853,559 -517,527,452,807,306,68,181,523,216,628,874,719,605,269,266,155,897,496,817,369 -507,927,927,220,378,775,865,380,339,631,366,917,491,643,156,574,391,543,51,515 -906,244,787,280,194,806,813,213,523,890,745,671,665,377,336,449,169,565,630,909 -259,791,87,329,191,275,540,71,155,176,362,874,217,320,827,517,774,782,398,70 -496,820,812,332,706,370,417,857,649,500,308,559,794,394,181,58,777,92,413,383 -651,368,357,324,153,244,385,868,70,667,280,372,742,314,556,800,298,578,492,561 -160,159,324,902,340,158,455,205,370,875,986,787,193,85,507,650,333,663,843,319 -744,391,514,399,936,65,928,197,678,450,586,662,732,632,654,359,640,203,272,443 -170,362,136,567,303,596,186,287,183,663,199,811,742,603,338,360,275,918,169,808 -402,330,894,481,802,218,199,906,147,492,364,315,697,821,842,150,665,720,728,455 -56,184,204,629,586,197,354,519,318,697,694,742,176,338,664,900,140,518,71,880 -483,932,861,559,212,503,663,394,863,918,560,887,745,322,881,940,896,60,167,344 -629,590,176,650,719,374,152,518,409,930,902,643,266,922,205,375,196,387,875,948 -556,63,800,148,78,886,169,697,516,663,158,185,341,889,499,802,167,851,342,871 -399,402,946,386,175,640,886,682,633,493,507,371,670,145,892,162,166,198,632,214 -560,915,526,498,923,305,667,216,602,864,519,186,924,326,241,905,329,407,824,163 -417,0,138,596,495,797,189,64,404,799,670,381,658,912,482,161,651,537,270,354 -139,815,530,914,592,318,337,447,449,911,809,184,263,264,781,826,328,731,538,338 -302,448,272,163,505,313,691,940,392,878,817,258,800,905,642,738,349,856,264,932 -493,307,64,283,86,925,153,815,600,850,511,698,280,520,305,904,493,179,531,367 -357,817,648,386,513,806,592,701,735,372,573,564,855,214,366,848,353,816,136,264 -201,631,313,145,538,912,447,363,194,796,561,668,777,306,780,488,323,646,251,451 -934,66,490,826,314,168,821,603,539,417,735,864,902,895,358,197,998,777,307,525 -170,60,858,249,557,197,476,396,416,810,932,737,396,929,602,198,529,657,450,871 -68,390,153,452,377,907,231,587,187,332,778,385,112,690,513,874,906,357,380,393 -492,822,261,729,548,138,655,283,485,640,497,920,482,897,320,810,183,175,488,698 -902,286,366,890,405,603,911,259,499,940,374,271,376,515,694,904,948,653,516,743 -595,506,741,630,948,401,915,884,549,386,847,166,914,694,690,569,368,371,777,388 -445,245,145,821,633,141,417,948,327,204,147,149,325,507,857,890,73,537,191,380 -506,734,638,342,534,55,719,473,369,322,945,894,365,803,889,404,405,179,663,145 -383,857,774,404,674,338,350,495,187,884,304,507,862,948,155,207,259,61,651,362 -147,338,892,348,629,210,488,243,299,451,162,161,689,657,280,365,581,302,518,137 -721,274,947,627,570,892,489,328,221,318,443,557,50,648,250,166,532,186,629,944 -539,532,191,984,112,282,801,200,913,336,948,739,815,777,161,50,742,804,159,212 -67,343,887,712,273,500,661,141,57,172,567,356,65,515,788,631,693,922,897,373 -196,512,803,383,864,802,694,348,417,826,591,8,797,194,191,794,206,862,159,739 -489,519,484,399,276,774,270,944,176,173,263,908,522,377,744,593,196,162,416,655 -269,384,55,177,142,699,741,225,807,497,908,314,744,586,221,778,395,276,390,151 -694,211,643,822,773,348,329,174,269,866,276,242,565,856,167,919,555,343,776,243 \ No newline at end of file +946,293,123,156,812,202,75,884,162,420,436,60,720,719,272,642,515,724,150,875 +221,912,887,284,758,512,907,690,384,802,742,118,318,330,282,232,507,470,871,615 +810,431,649,91,53,784,300,722,904,166,210,75,491,87,892,625,211,151,434,608 +643,779,232,722,326,212,626,867,265,308,561,565,322,59,466,126,60,398,462,902 +96,926,879,397,752,863,721,283,648,731,790,314,787,127,646,123,132,228,932,611 +170,762,169,400,589,606,232,783,97,404,97,187,404,398,436,316,736,50,149,637 +219,131,774,321,403,362,424,109,434,387,434,650,862,847,229,645,214,941,738,75 +781,825,387,409,418,393,392,230,501,722,819,877,716,596,636,114,82,75,457,921 +780,114,230,227,784,267,210,318,78,262,258,902,91,464,728,313,986,753,434,847 +721,89,151,101,423,52,305,761,679,920,683,835,887,248,643,842,87,422,409,264 +276,288,942,66,888,195,83,149,840,322,844,323,112,866,167,276,630,813,850,21 +156,598,212,318,509,193,116,550,560,863,716,587,906,461,229,442,980,254,103,276 +108,878,230,391,459,715,909,358,56,136,641,921,850,107,197,446,470,154,257,300 +429,289,136,558,869,233,649,267,725,454,781,589,343,691,528,131,821,784,597,919 +896,385,874,717,220,630,420,643,255,613,550,817,686,218,562,347,118,86,470,217 +382,883,106,760,432,933,925,559,780,680,944,913,465,148,56,193,401,300,623,459 +756,615,507,213,633,332,459,606,610,426,793,547,288,520,843,439,621,298,382,866 +628,427,555,988,766,313,875,846,924,474,877,58,319,154,606,88,311,622,475,625 +53,884,689,473,272,87,19,466,437,429,104,470,425,107,458,411,812,294,159,464 +228,398,462,889,629,683,894,756,724,875,107,793,129,832,781,250,319,166,941,51 +630,811,639,755,302,235,641,869,692,130,433,859,111,258,269,632,337,132,114,867 +262,472,683,210,308,679,101,255,60,469,684,901,212,914,418,464,793,947,84,130 +254,905,261,864,614,866,559,879,78,466,163,632,909,516,304,396,220,204,875,740 +826,866,633,763,840,903,772,752,558,941,916,108,102,380,754,467,357,313,152,452 +480,635,828,720,873,145,393,473,112,734,105,344,447,334,743,678,607,308,90,228 +466,232,907,740,752,332,219,553,388,521,635,599,549,214,330,631,288,129,726,599 +127,398,601,902,848,297,428,691,163,58,194,94,871,152,91,881,640,516,808,743 +416,383,432,270,357,382,624,425,105,635,734,999,759,398,61,634,635,471,298,58 +879,762,84,305,97,912,895,149,55,105,441,167,715,57,314,840,727,331,174,147 +404,839,97,831,462,556,562,491,925,403,558,110,793,730,131,258,599,271,613,688 +257,417,266,66,277,743,351,811,409,760,78,254,320,465,467,457,336,945,217,807 +82,447,444,218,915,101,599,906,394,385,210,552,472,297,562,597,411,194,142,359 +691,130,312,559,198,290,555,484,324,151,879,221,866,402,560,165,510,788,285,294 +520,354,609,603,826,728,263,288,478,719,164,763,435,892,905,412,286,126,350,690 +216,637,56,842,466,925,411,828,306,833,475,269,84,270,116,892,778,270,399,422 +887,989,786,232,438,322,629,319,422,194,302,387,57,85,267,894,111,128,265,801 +787,150,367,820,142,79,391,340,285,883,785,616,213,76,50,398,300,724,233,729 +349,871,621,791,787,407,635,345,890,150,271,998,733,385,893,759,302,273,616,341 +838,741,337,254,676,405,387,120,800,442,148,329,141,106,410,143,891,488,449,883 +221,621,686,789,612,258,631,449,104,847,100,266,274,991,817,400,271,98,286,889 +148,276,228,770,929,797,631,412,104,759,877,401,649,767,553,213,614,402,310,737 +310,303,587,584,466,333,589,912,763,828,947,339,108,161,618,605,354,235,114,941 +218,223,646,96,166,108,366,883,315,154,159,650,352,602,77,252,742,515,404,728 +391,562,716,108,919,521,511,790,430,60,678,675,197,677,221,729,295,340,752,305 +762,916,949,888,596,516,920,868,522,464,917,512,760,274,337,874,397,65,880,82 +520,622,286,108,471,730,811,906,553,704,465,122,302,877,151,754,436,877,352,415 +327,163,814,291,58,731,260,393,633,555,789,941,250,166,610,776,846,95,575,683 +726,258,342,921,146,145,914,723,349,514,838,594,632,776,925,263,850,930,887,336 +261,692,739,924,754,138,164,826,754,551,473,871,305,131,81,759,295,946,862,217 +753,863,309,437,285,162,867,826,704,682,753,759,684,637,801,288,301,734,760,259 +291,686,406,163,424,473,214,762,405,227,816,556,779,324,225,844,596,705,644,160 +285,95,276,757,394,212,982,118,290,611,843,438,611,107,438,323,843,877,720,152 +107,131,327,719,872,345,602,423,453,84,727,733,812,691,910,327,975,459,261,91 +728,319,568,304,878,424,125,514,848,512,74,740,785,620,215,117,419,839,471,315 +523,817,891,422,77,232,449,557,52,437,62,801,453,297,332,100,603,948,848,260 +356,280,894,517,219,305,281,128,55,926,116,324,822,682,354,284,810,528,288,232 +325,465,724,401,170,690,159,589,427,376,125,228,297,847,734,771,633,153,717,849 +445,354,404,406,724,231,414,842,297,643,147,914,918,556,214,628,55,764,521,518 +136,111,817,913,793,892,97,881,266,916,235,684,196,335,614,620,415,722,757,223 +280,889,234,98,166,874,813,216,584,320,612,692,818,514,397,876,91,730,471,928 +60,820,880,562,403,444,685,692,866,233,299,210,649,763,16,92,133,783,601,683 +930,302,453,158,382,773,639,735,356,877,791,602,257,146,723,675,640,198,825,396 +618,80,850,401,383,560,134,821,787,92,141,313,759,216,341,400,731,649,770,651 +921,108,916,162,288,919,591,766,911,572,587,846,474,651,225,718,527,443,716,249 +216,259,882,317,150,83,252,144,115,509,894,228,396,285,124,744,379,227,903,55 +317,326,381,132,63,172,850,434,938,336,475,905,848,101,906,920,232,98,635,265 +609,819,650,731,418,387,917,647,433,102,333,678,410,89,390,781,987,442,59,520 +395,792,904,864,789,880,401,615,148,639,515,845,442,518,909,885,922,511,370,83 +244,916,109,728,890,455,297,593,173,841,509,520,114,101,153,99,255,167,441,218 +99,622,881,677,398,598,441,286,779,445,459,528,453,721,887,780,54,827,254,17 +420,349,413,216,415,898,513,716,741,122,768,927,114,282,718,285,509,198,431,336 +814,305,302,120,302,754,233,864,298,645,119,142,282,157,492,605,198,605,347,205 +862,948,283,145,278,324,406,872,337,245,104,766,792,58,129,424,291,103,328,650 +847,949,875,165,824,551,440,431,7,515,113,688,869,456,268,787,475,890,902,125 +278,389,765,399,354,724,631,833,303,326,471,106,850,928,515,327,417,163,811,130 +131,247,870,676,823,703,395,305,157,221,115,944,790,262,559,91,225,767,286,738 +421,618,346,141,886,860,916,113,436,731,158,915,634,823,556,233,730,407,551,326 +172,401,850,344,922,443,457,617,417,606,297,619,829,408,880,753,780,159,910,288 +402,875,271,149,55,558,720,729,136,880,600,692,641,863,330,907,249,876,822,492 +282,231,454,256,293,437,273,566,195,317,133,382,817,88,826,880,520,850,433,460 +689,94,795,752,169,519,818,248,927,820,920,400,925,150,719,145,588,610,388,683 +790,551,431,96,271,392,915,312,175,871,393,772,827,145,347,778,400,121,344,635 +749,337,787,153,267,212,61,214,334,450,258,65,335,917,812,517,234,109,882,865 +395,684,597,272,640,763,333,442,901,847,101,142,717,408,281,252,87,775,254,824 +874,787,125,63,820,768,63,443,875,235,75,995,258,339,388,171,389,850,220,269 +306,434,927,294,265,511,841,596,446,64,344,234,295,418,690,427,259,993,884,357 +316,225,792,249,937,735,728,89,518,343,144,424,225,921,382,222,904,847,83,285 +417,614,514,895,569,678,210,438,388,466,867,818,825,131,454,735,271,60,801,348 +279,294,684,768,976,801,420,722,688,258,305,80,255,923,914,725,94,322,642,752 +429,924,232,560,451,921,90,782,773,446,516,255,942,415,759,335,392,784,714,517 +171,744,604,431,618,389,171,396,761,866,774,816,454,448,113,372,594,513,142,847 +690,430,145,91,612,907,145,523,819,904,414,683,341,225,389,734,145,270,839,888 +834,317,597,429,676,247,117,812,253,421,424,125,437,605,255,144,740,307,281,412 +536,792,911,172,941,409,737,462,291,257,443,247,511,353,257,102,334,609,877,461 +876,323,898,553,767,394,888,924,729,396,120,399,775,716,928,77,607,173,317,132 +20,878,561,325,613,426,415,122,300,893,914,819,508,394,722,255,145,528,341,401 +724,945,323,775,220,452,784,808,633,78,888,350,865,317,621,50,745,947,439,152 +503,465,912,326,948,383,881,915,649,761,635,344,811,843,862,264,516,784,150,689 +928,904,631,285,820,726,120,874,107,75,294,389,207,111,61,754,223,109,417,164 +422,947,95,173,758,610,344,429,554,754,108,238,646,173,285,723,352,520,86,634 +555,232,684,615,768,562,327,253,92,827,948,524,457,227,736,947,623,786,60,311 +676,254,358,55,318,95,757,999,82,676,384,491,876,99,682,169,426,792,213,424 +798,214,435,882,642,509,432,826,786,684,740,84,793,762,866,389,909,347,752,913 +365,152,65,908,257,811,775,512,229,718,468,554,949,682,647,60,452,786,910,432 +844,157,770,917,589,88,736,513,103,101,507,792,159,686,611,468,508,246,402,224 +619,789,839,592,427,744,60,323,50,925,235,718,577,323,761,313,162,715,687,825 +119,445,470,307,351,880,406,933,56,895,596,411,347,722,301,210,142,756,155,689 +844,349,853,556,605,151,645,850,611,453,394,388,154,297,772,717,90,163,147,197 +845,610,336,324,352,889,872,337,919,893,436,234,445,569,80,919,149,555,639,302 +146,601,789,877,867,587,759,115,906,784,647,677,57,234,393,842,894,825,89,485 +603,274,319,401,604,928,817,845,341,883,688,499,863,875,285,106,385,94,741,924 +688,760,426,266,290,636,319,824,949,891,871,557,145,349,421,385,774,370,893,871 +261,528,615,370,214,507,107,350,925,336,332,618,335,424,410,213,874,82,215,91 +119,917,551,303,562,251,301,97,112,336,916,695,641,383,256,919,730,403,675,732 +726,317,115,269,831,904,527,110,520,251,513,847,599,519,273,287,813,65,389,142 +550,614,257,265,624,485,93,440,722,164,757,406,127,592,154,220,864,840,592,435 +102,74,498,86,724,274,768,646,420,684,905,173,289,52,680,472,784,920,784,249 +550,682,420,84,446,806,159,759,91,628,731,332,388,438,155,811,256,91,93,221 +260,90,784,224,510,401,423,141,868,869,134,558,782,319,227,902,256,907,356,737 +228,446,471,148,155,628,627,233,104,684,818,805,387,411,171,297,781,409,560,761 +397,599,355,639,122,349,685,82,445,262,976,272,424,146,828,211,82,729,283,841 +784,230,268,912,704,885,168,730,338,909,389,824,757,419,194,270,610,647,872,638 +445,778,159,419,871,63,125,814,792,160,725,840,802,948,779,262,128,643,395,623 +855,158,288,559,685,415,839,292,905,592,89,161,211,593,195,916,922,456,610,330 +405,408,731,731,561,282,124,147,300,148,993,410,166,945,549,418,651,459,435,279 +608,263,740,844,484,156,117,78,622,164,680,329,433,770,355,452,84,76,117,621 +214,273,61,457,451,356,868,766,839,469,118,299,334,423,948,790,558,258,85,21 +328,117,384,80,50,172,730,612,459,650,327,120,868,276,461,411,687,188,774,587 +647,138,257,745,844,213,743,876,600,226,509,731,112,249,198,515,745,555,633,877 +340,996,905,104,736,685,295,737,291,627,614,893,102,270,676,293,404,520,885,744 +289,426,920,599,474,460,642,768,161,326,839,286,877,203,153,643,235,310,343,346 +683,415,553,400,460,645,650,589,763,120,715,883,607,611,78,222,834,266,767,87 +475,195,421,820,467,303,567,468,457,214,553,86,816,218,160,603,516,107,349,684 +387,754,155,348,510,193,757,501,297,790,908,440,234,96,115,720,113,612,556,321 +317,216,58,724,825,597,790,305,237,148,459,285,872,763,642,77,848,893,647,553 +52,912,118,267,299,399,736,558,292,691,780,768,81,841,717,195,776,994,715,311 +725,146,117,600,279,413,450,92,465,94,120,317,641,878,310,416,990,82,267,309 +231,381,649,562,452,381,869,813,75,262,910,374,321,744,631,263,820,266,125,251 +319,765,769,294,767,147,551,850,728,929,319,51,793,284,558,946,494,125,885,676 +651,435,893,270,769,755,691,210,824,305,593,840,643,320,226,594,923,684,202,337 +412,106,787,54,628,330,322,551,325,883,210,519,463,443,818,827,203,165,775,249 +615,225,420,435,589,310,156,319,361,904,782,827,352,516,781,63,730,355,415,335 +263,770,330,716,112,412,113,336,388,922,454,465,723,449,928,295,327,522,451,727 +743,307,677,114,888,243,247,645,820,85,341,556,321,302,821,635,340,762,814,516 +208,288,116,558,677,737,397,613,838,148,159,903,355,557,260,408,873,732,826,331 +310,775,201,840,351,329,215,887,828,100,742,341,527,256,274,57,587,528,317,131 +881,424,948,449,217,358,739,601,886,431,513,269,447,914,922,335,845,598,881,11 +755,622,937,520,771,169,868,158,620,444,165,839,775,781,315,914,597,615,779,879 +843,407,475,217,893,107,781,892,165,596,196,895,119,787,738,411,19,611,790,745 +5,155,314,381,107,617,904,785,300,251,842,83,322,171,51,310,310,783,594,211 +877,384,66,513,406,645,941,893,353,412,196,924,738,135,216,631,758,257,716,77 +120,408,477,848,343,438,306,337,406,211,63,336,871,170,304,277,917,685,272,129 +800,427,121,123,498,57,817,651,403,646,929,868,291,394,779,944,515,385,719,555 +387,639,844,629,876,428,906,60,149,513,116,335,867,780,247,140,309,292,411,114 +551,877,761,764,446,254,348,320,737,873,87,758,126,168,997,357,164,231,329,681 +443,611,169,429,745,644,821,826,224,871,821,740,975,917,145,133,911,902,102,210 +142,296,591,273,141,691,430,150,806,247,173,116,228,434,755,78,271,51,507,358 +105,838,744,634,279,325,259,677,160,813,682,745,632,277,438,581,949,826,876,349 +729,528,689,459,291,413,626,253,639,843,920,320,61,460,620,429,651,877,829,650 +738,977,507,93,51,825,638,340,791,132,92,106,164,439,736,864,787,382,198,492 +440,739,717,453,528,844,122,731,435,59,739,911,85,557,114,690,453,443,514,581 +224,617,74,644,559,818,884,286,641,869,815,324,259,157,588,338,145,139,386,758 +462,915,444,387,740,222,456,515,761,332,985,884,491,315,462,401,93,275,814,259 +346,297,277,551,865,850,596,223,515,119,149,990,283,169,527,887,343,887,411,445 +258,161,56,909,107,684,77,117,627,846,474,550,839,770,435,916,873,942,899,261 +728,635,474,149,846,253,514,339,839,301,394,882,153,333,19,154,328,732,234,620 +778,308,392,162,471,436,347,786,922,332,288,930,761,815,77,551,357,947,129,777 +588,303,84,771,592,50,55,426,436,123,549,799,610,914,608,57,916,452,164,406 +721,334,402,395,874,406,128,55,764,734,323,519,81,81,435,170,314,802,785,106 +733,154,184,879,391,614,349,620,783,607,342,438,235,614,304,398,527,59,717,914 +103,467,338,305,272,162,877,276,336,340,301,631,681,945,99,419,162,830,302,267 +327,984,848,60,61,845,948,438,843,332,214,102,780,681,353,845,849,765,550,401 +646,609,527,595,840,592,401,637,354,926,305,428,220,887,340,761,937,870,905,332 +419,442,997,722,293,269,928,780,59,474,51,516,844,212,459,457,744,159,554,512 +102,761,296,396,675,403,680,277,193,938,878,735,382,789,941,431,731,105,104,492 +914,755,911,212,90,248,635,404,650,501,718,277,731,165,266,608,90,474,553,692 +418,295,299,307,813,500,320,411,160,492,386,445,288,90,639,83,678,440,880,461 +170,771,115,413,446,631,343,727,720,248,598,787,482,619,596,133,912,882,262,846 +649,352,766,643,165,928,152,50,864,210,812,748,430,399,218,691,590,173,774,343 +419,156,318,733,63,402,292,147,731,163,471,213,219,488,512,606,917,132,262,436 +265,465,552,945,690,758,315,131,692,866,410,271,101,949,559,881,103,329,12,344 +684,599,816,332,298,716,439,394,908,865,919,638,155,555,99,103,474,813,65,135 +475,761,928,316,791,895,415,916,391,59,626,341,289,82,599,981,818,432,441,715 +170,683,840,872,207,718,161,868,924,908,616,515,255,64,866,59,463,256,850,511 +118,461,701,231,838,605,677,817,550,871,50,792,467,634,742,725,305,155,400,288 +685,52,346,104,649,397,886,388,79,894,414,93,134,491,161,249,342,225,603,949 +552,398,525,778,620,872,294,552,870,325,755,403,457,463,130,226,171,87,321,329 +873,949,947,164,149,643,286,946,832,905,167,93,336,754,679,557,894,893,458,591 +728,629,64,470,811,778,228,910,645,121,215,324,292,112,785,462,948,62,140,299 +432,198,788,308,390,775,92,590,349,614,340,272,220,520,779,836,409,62,864,390 +904,322,74,511,138,406,730,285,326,212,776,813,877,718,446,251,631,117,448,437 +684,917,260,916,259,844,95,518,613,826,162,264,412,269,114,617,271,446,302,996 +681,98,243,528,323,211,228,770,515,906,734,723,257,866,168,630,622,553,789,624 +321,605,758,603,824,823,317,148,77,86,466,267,429,433,325,462,892,774,739,935 +883,339,802,793,847,472,928,474,390,291,790,891,411,918,249,315,305,470,690,557 +554,74,417,402,516,318,217,491,171,595,268,632,821,346,942,118,442,504,391,551 +592,946,231,155,262,146,305,407,684,911,143,924,395,8,560,838,902,611,735,355 +822,716,888,553,619,212,347,278,878,609,883,887,305,292,732,94,12,921,354,172 +784,906,328,205,562,827,439,335,211,792,91,838,644,307,127,649,811,329,302,517 +513,323,132,773,452,264,725,286,854,640,115,420,257,154,780,684,107,684,417,775 +426,213,753,469,722,325,410,603,162,100,426,842,425,86,642,555,609,987,414,435 +120,825,351,381,216,265,947,757,754,594,948,518,423,764,866,689,719,317,505,744 +587,343,279,680,105,885,303,207,686,276,689,844,76,112,104,144,774,763,849,824 +67,430,263,475,466,774,275,629,411,446,127,613,123,281,907,127,308,492,446,319 +355,632,131,197,594,440,286,800,929,849,249,129,157,424,617,16,121,342,718,170 +621,296,128,291,409,625,382,644,876,621,82,402,648,879,828,130,221,566,415,723 +569,724,912,619,196,66,593,156,551,908,433,463,258,295,92,251,340,221,821,106 +763,631,819,382,169,873,352,129,287,483,467,302,679,625,425,234,630,451,339,330 +645,289,746,849,264,279,599,123,769,615,277,108,819,624,170,422,447,720,772,258 +403,632,114,319,682,224,906,133,53,398,384,146,425,118,288,914,132,299,257,836 +449,150,320,386,101,348,255,138,331,632,388,729,775,414,782,761,623,922,840,300 +826,146,318,157,776,142,260,998,53,328,745,847,629,80,641,402,868,400,218,470 +223,839,56,839,86,176,325,214,211,890,387,721,790,514,549,635,551,846,783,737 +863,338,165,676,141,862,261,615,122,272,942,403,143,321,588,214,579,107,763,282 +436,194,120,286,266,554,893,615,785,352,572,472,298,399,873,756,352,427,819,324 +311,159,780,163,815,814,823,256,893,263,917,138,327,849,909,268,821,922,84,912 +602,826,125,137,408,294,59,915,108,277,676,945,248,869,315,210,520,436,267,407 +313,906,61,786,692,58,157,862,724,998,721,606,307,144,510,121,944,283,167,724 +250,296,626,597,475,334,65,589,625,893,297,638,131,66,600,132,481,731,553,445 +681,406,560,93,984,823,343,166,452,788,311,448,121,325,790,470,355,872,158,126 +463,947,274,217,806,115,826,107,210,621,893,288,100,903,457,612,132,626,826,122 +893,550,983,53,917,816,838,109,299,408,406,322,874,221,161,325,642,388,94,102 +397,279,788,463,268,233,423,604,894,640,815,893,560,76,274,675,211,684,240,274 +687,455,825,76,716,864,520,351,769,929,472,200,786,315,812,890,279,891,449,394 +352,730,81,742,948,148,436,338,686,103,345,596,849,717,195,462,872,316,480,254 +710,881,230,784,491,635,144,423,449,775,234,623,882,772,304,871,465,745,133,113 +275,92,170,392,155,821,892,406,203,409,302,66,115,634,756,773,75,720,840,81 +267,101,431,793,678,890,453,376,864,447,76,605,555,788,599,457,339,124,725,595 +850,942,169,873,340,398,463,636,91,681,145,676,371,280,943,455,893,457,422,875 +873,650,89,159,79,578,611,886,554,902,247,845,595,256,840,51,318,787,421,345 +416,80,468,736,382,295,690,636,252,604,389,232,600,276,595,352,135,234,912,683 +868,927,719,268,312,876,153,684,740,203,78,403,398,283,553,866,640,760,390,147 +257,263,723,872,561,837,913,274,840,680,121,588,352,55,327,252,618,52,948,436 +82,475,337,130,491,303,633,621,770,942,274,478,682,354,758,824,232,731,886,328 +414,616,833,141,431,118,309,332,871,397,150,868,826,215,737,907,604,627,93,422 +304,863,471,79,522,683,508,353,908,918,516,124,418,613,382,214,422,774,65,117 +350,643,549,409,366,649,253,885,88,417,766,221,769,331,800,683,879,683,142,812 +180,111,948,783,948,678,171,278,550,210,311,432,78,508,330,764,416,198,88,382 diff --git a/16/part1.py b/16/part1.py index 4f8c1bd..156f789 100644 --- a/16/part1.py +++ b/16/part1.py @@ -1,30 +1,31 @@ import re def getInput(filename): - with open(filename, "r") as f: - fields, myTicket, nearbyTickets = f.read().split("\n\n") - myTicket = myTicket.replace("your ticket:\n", "") - nearbyTickets = nearbyTickets.replace("nearby tickets:\n", "") + with open(filename, "r") as f: + fields, myTicket, nearbyTickets = f.read().split("\n\n") + myTicket = myTicket.replace("your ticket:\n", "") + nearbyTickets = nearbyTickets.replace("nearby tickets:\n", "") - return ( - {m[1]: m[2] for m in re.finditer(r"(.+): ([^\n]+)", fields)}, - [int(n) for n in myTicket.split(",")], - [[int(n) for n in ticket.split(",") ] for ticket in nearbyTickets.split("\n")] - ) + return ( + {m[1]: m[2] for m in re.finditer(r"(.+): ([^\n]+)", fields)}, + [int(n) for n in myTicket.split(",")], + [[int(n) for n in ticket.split(",") ] for ticket in nearbyTickets.splitlines()] + ) class FieldRule: - def __init__(self, raw: str): - self.raw = raw - match = re.match(r"(\d+)\-(\d+) or (\d+)\-(\d+)", raw) - self.range1 = [int(match[1]), int(match[2])] - self.range2 = [int(match[3]), int(match[4])] + def __init__(self, raw: str): + self.raw = raw + match = re.match(r"(\d+)\-(\d+) or (\d+)\-(\d+)", raw) + assert match + self.range1 = [int(match[1]), int(match[2])] + self.range2 = [int(match[3]), int(match[4])] - def __call__(self, num: int): - return (self.range1[0] <= num <= self.range1[1]) or \ - (self.range2[0] <= num <= self.range2[1]) + def __call__(self, num: int): + return (self.range1[0] <= num <= self.range1[1]) or \ + (self.range2[0] <= num <= self.range2[1]) - def __repr__(self): - return f'FieldRule("{self.raw}")' + def __repr__(self): + return f'FieldRule("{self.raw}")' fields, myTicket, nearbyTickets = getInput("input.txt") @@ -33,8 +34,8 @@ for fieldName, fieldRule in fields.items(): invalidNumbers = [] for ticket in nearbyTickets: - for num in ticket: - if all(not rule(num) for rule in fields.values()): - invalidNumbers.append(num) + for num in ticket: + if all(not rule(num) for rule in fields.values()): # type: ignore + invalidNumbers.append(num) -print(sum(invalidNumbers)) \ No newline at end of file +print(sum(invalidNumbers)) diff --git a/16/part2.py b/16/part2.py index 40b390d..0d60a22 100644 --- a/16/part2.py +++ b/16/part2.py @@ -9,50 +9,51 @@ def getInput(filename): return ( {m[1]: m[2] for m in re.finditer(r"(.+): ([^\n]+)", fields)}, [int(n) for n in myTicket.split(",")], - [[int(n) for n in ticket.split(",") ] for ticket in nearbyTickets.split("\n")] + [[int(n) for n in ticket.split(",") ] for ticket in nearbyTickets.splitlines()] ) class FieldRule: - def __init__(self, raw: str): - self.raw = raw - match = re.match(r"(\d+)\-(\d+) or (\d+)\-(\d+)", raw) - self.range1 = [int(match[1]), int(match[2])] - self.range2 = [int(match[3]), int(match[4])] + def __init__(self, raw: str): + self.raw = raw + match = re.match(r"(\d+)\-(\d+) or (\d+)\-(\d+)", raw) + assert match + self.range1 = [int(match[1]), int(match[2])] + self.range2 = [int(match[3]), int(match[4])] - def __call__(self, num: int): - return (self.range1[0] <= num <= self.range1[1]) or \ - (self.range2[0] <= num <= self.range2[1]) + def __call__(self, num: int): + return (self.range1[0] <= num <= self.range1[1]) or \ + (self.range2[0] <= num <= self.range2[1]) - def __repr__(self): - return f'FieldRule("{self.raw}")' + def __repr__(self): + return f'FieldRule("{self.raw}")' def isFieldValid(tickets, fieldRule, pos): - for ticket in tickets: - if not fieldRule(ticket[pos]): - return False - return True + for ticket in tickets: + if not fieldRule(ticket[pos]): + return False + return True # A backtracking algorithm to find the field order def solveFieldOrder(tickets, fields: dict): - fieldOrder = {} + fieldOrder = {} - numOfFields = len(fields) - unassignedFields = fields.copy() - while len(fieldOrder) < numOfFields: - possibleFields = {} + numOfFields = len(fields) + unassignedFields = fields.copy() + while len(fieldOrder) < numOfFields: + possibleFields = {} - for fieldName, fieldRule in unassignedFields.items(): - for i in range(numOfFields): - if i not in fieldOrder.values() and isFieldValid(tickets, fieldRule, i): - possibleFields[fieldName] = possibleFields.get(fieldName, []) - possibleFields[fieldName].append(i) + for fieldName, fieldRule in unassignedFields.items(): + for i in range(numOfFields): + if i not in fieldOrder.values() and isFieldValid(tickets, fieldRule, i): + possibleFields[fieldName] = possibleFields.get(fieldName, []) + possibleFields[fieldName].append(i) - for fieldName, orders in possibleFields.items(): - if len(orders) == 1: - fieldOrder[fieldName] = orders[0] - del unassignedFields[fieldName]; + for fieldName, orders in possibleFields.items(): + if len(orders) == 1: + fieldOrder[fieldName] = orders[0] + del unassignedFields[fieldName]; - return fieldOrder + return fieldOrder fields, myTicket, nearbyTickets = getInput("input.txt") @@ -63,20 +64,20 @@ for fieldName, fieldRule in fields.items(): # Filter out the invalid tickets validNearbyTickets = [] for ticket in nearbyTickets: - isTicketValid = True - for num in ticket: - if all(not rule(num) for rule in fields.values()): - isTicketValid = False - break - if isTicketValid: - validNearbyTickets.append(ticket) + isTicketValid = True + for num in ticket: + if all(not rule(num) for rule in fields.values()): # type: ignore + isTicketValid = False + break + if isTicketValid: + validNearbyTickets.append(ticket) # Find combination of fields that is valid fieldOrder = solveFieldOrder(validNearbyTickets, fields) solution = 1 for fieldName, order in fieldOrder.items(): - if fieldName.startswith("departure"): - solution *= myTicket[order] + if fieldName.startswith("departure"): + solution *= myTicket[order] -print(solution) \ No newline at end of file +print(solution) diff --git a/16/test1.txt b/16/test1.txt index ba62efb..fe34e40 100644 --- a/16/test1.txt +++ b/16/test1.txt @@ -9,4 +9,4 @@ nearby tickets: 7,3,47 40,4,50 55,2,20 -38,6,12 \ No newline at end of file +38,6,12 diff --git a/17/input.txt b/17/input.txt index ec93c0d..088a549 100644 --- a/17/input.txt +++ b/17/input.txt @@ -1,8 +1,8 @@ -..#..##. -#.....## -##.#.#.# -..#...#. -.###.... -######.. -.###..#. -..#..##. \ No newline at end of file +....#... +.#..###. +.#.#.### +.#....#. +...#.#.# +#....... +##....#. +.##..#.# diff --git a/2/input.txt b/2/input.txt index 8598dd2..082b283 100644 --- a/2/input.txt +++ b/2/input.txt @@ -1,1000 +1,1000 @@ -1-2 x: xpxc -1-5 b: bwlbbbbcq -3-5 v: qvjjdhvl -9-12 t: ttfjvvtgxtctrntnhtt -3-4 r: rqjw -3-7 p: ppfpppppp -5-6 q: qqqqgq -7-10 v: gpvgmqkvxgbvs -4-12 b: kkdnrhwzbbbb -3-7 r: rrkwrshls -3-4 l: ldltwzclnrllhkb -4-6 m: mfcmmdvmmmm -6-16 c: ccccczcccccccccgcc -5-7 k: kkppkrr -2-5 p: bpppmpcjrgwp -8-14 c: dcwklzcckccwdw -4-7 j: qhjjjhsj -2-5 c: jcdclznbzb -7-8 x: xxxxxxxsxxxxlxxxxxx -6-7 s: rhsstssmvssss -8-16 j: rhsxwjrtpjjjjxhcjhx -13-14 q: lqmqqqzsvqqjqq -5-7 g: gggsfggj -15-16 s: ssssssssssssssxd -3-5 d: dmwsm -4-5 v: vbvvvg -5-6 f: jfzbgfp -1-4 k: qkkkk -11-15 l: lllllllllllllln -12-16 n: nfpnnnnnnhncnjnnls -6-8 l: llllllllll -13-15 p: pppppppppppphppp -4-9 k: bkvqvwkgk -1-3 j: jsrg -10-14 r: rrvfrvrrrrtrrmsr -2-4 r: tcfnd -5-6 t: ttwtjk -7-18 h: wjjfhphhbqlvqkhjwhk -6-9 p: phkkzvppppjpcpnfpsxt -5-6 f: ffffmfffffff -9-16 p: gbwsmxplndwmrpps -1-6 s: sczssw -5-14 t: ctxlqhrlvvdttwlnt -2-5 n: nndkqnnft -7-8 c: zclccrwc -4-11 q: pqrqdkpqbjshn -5-6 m: nmcmrbmfcgmfw -16-17 h: hhhhhhhxhhrhhhhhlh -5-6 v: vvvvvv -2-11 m: wpsmlpznxdkhs -3-4 s: sswf -2-3 s: hsbczzspqkwjr -4-7 s: zsjrrsvssss -11-16 j: hpjdcwpjjnjfgkjlxt -5-7 b: rcbbbbg -13-15 w: wwwwwwwwwwwwwwww -1-6 c: cccmgc -2-4 v: vvgv -4-5 m: mfmmhms -1-3 t: mntqgkdfjsxzptk -2-7 v: nvnqmvv -19-20 c: ccccccccccccccpcccfc -11-12 t: wttmnqtbkttc -3-5 p: ptpvp -1-11 l: lglwgtlqlnxl -4-8 m: mprmmmmwmmfmm -9-10 d: ddddddddxdd -16-20 r: rrrrrrrrrrrrrrrlrrrt -1-4 g: gggg -2-12 b: bczgbbbfbwbprbbbtb -2-7 n: nnnmnxkntwwxnr -14-18 z: tzzzqzzzlnpqzpzzkz -5-7 p: ppppmkp -9-14 c: vvcgvrxlccxvlpfml -2-3 l: jlzpf -3-5 p: pbpbp -9-13 j: jjjjjjjjjjjjj -5-7 k: fmckjkkklkxpf -5-6 d: ddddrd -9-10 s: sssnsgssbs -9-10 p: ppwvppbpptpp -1-8 z: kmfszzrx -9-10 v: vvjjvsklvdkrkvs -2-17 k: kkctmcfzhtvskxlkq -10-12 n: vjnndvnlgnhmfc -5-6 n: hnnnnntn -1-6 f: fptffkhhkktfbtst -4-6 k: kqnkjhhwqhpzb -6-12 r: rrrrrrrrrrrv -8-13 l: llllllllwlllllll -4-6 p: qxprzs -2-10 w: wswpdwwwrcth -4-6 n: gnnfnnnnnnn -10-14 s: ssssssprbfssssw -3-4 f: ftfk -6-16 x: cqxxqwrdxxxxsxbxxxxt -4-8 f: ffsqvfpm -8-11 t: ttztttttttnttt -13-15 q: qqnqqqqqqqqqqqq -2-3 w: wwww -2-8 n: ntnnnnnrnn -2-3 k: jkzkk -3-4 s: sscscp -14-19 g: gzggggggggggfgfgggqg -5-6 n: nnnnwlnn -11-12 b: bbmbbbbbbbxbbn -5-6 t: zntzfk -4-5 j: ljphjl -3-12 d: zndtlvdvvdzzn -7-8 h: hhhhhhhwhh -12-13 s: sssssshssxssss -4-5 h: nhsxxmh -7-9 f: fzfkffffsfxn -1-8 c: cccfcpccmhcch -1-2 d: kfdwwm -13-14 l: llllllllllllcll -2-5 p: jpxdpkg -2-4 h: hvhbmhhhhhnh -5-9 g: ngqgtqtggdgg -15-17 b: brhlrjflddssrrjxb -10-15 v: vkfvvqtcxvvvtvcbvv -1-3 g: pvkqsgzggg -7-8 j: jjjjjjbjj -3-4 w: jwrw -4-7 c: mhcmkcjrpncxmcrccbc -9-12 q: qqqqqqqqqqqs -13-16 n: nwngndnnnnnnnnnnnn -3-4 b: fjbbb -8-9 d: jdfdsqnmdwfdnddkd -1-4 f: ggfwgbfhvs -4-5 g: gggvg -8-12 x: gxhxxxxkxzmfxxx -1-5 q: dqqhq -3-9 m: mmdmmmzmmp -1-2 l: llll -6-8 q: qjwhqqhpkbzppc -3-10 m: mmcjgrtzmmdmmm -2-4 q: cxvq -11-13 v: fvvvvvvvvvvvv -7-13 b: bbbgbnbkbkbrldbbtc -14-16 m: wmmmmmzxrmmjmwmh -6-10 b: bwvwbbvshbgtbsrlwbzt -6-8 q: qdwhcgpqxw -16-17 l: llllbjlrllllcbdhllpl -3-4 m: mmmrv -7-8 m: mhjnnchg -12-13 p: ppppppppppppt -1-4 s: sssx -1-2 d: xmpdq -10-11 x: xxxxxxxxxbbx -2-4 s: lxds -1-4 b: jbsxbbmbbj -6-8 q: qqqqqqblqq -15-16 q: qqqqqwzqqqqqnqqqqfq -5-7 s: fzvsssr -6-7 l: lncbgqr -7-8 s: ssssssvs -3-5 r: rbrjt -3-8 j: ksjjtvnjbjppjjjl -6-10 s: sszlkrsssss -1-4 z: znzfpz -7-11 m: dfkcbxmxmnmmtvmtdn -6-9 h: hlhhkhhhq -8-9 p: ppppppppvp -6-9 c: cccgccccmcch -5-8 g: bgkggjgtvggn -3-4 x: xxhk -10-12 h: hhhhhhhhhlhhhhdnh -5-6 j: zjjsjn -9-14 s: ksclwttsmpjtds -6-7 l: gtdcblql -1-4 d: dkndjkcd -1-6 k: kkkkkckmc -10-12 x: xxxxxxxxxrxl -2-5 v: fxdjtv -3-5 q: pjmkqdmqnzqppr -5-8 t: xtgtgtcht -6-11 j: nftjzjmfljqjrc -6-9 g: rskgggmgmwjggggvgb -11-12 v: vkvdmvdvvvdv -15-16 z: zzzzzzzzzzzzzzgxz -13-17 v: vvvvvvvvvvvvvvvvnv -9-14 j: clrfkrwhjtvzvqqj -1-12 l: lljljznslllffhblz -4-7 c: cccgcxclc -6-11 z: tbxqrzzbwbr -18-19 m: jmbmmqmshmczlphfgmf -1-5 s: ssvsq -4-5 k: kkkkw -4-7 f: fcqffxff -3-8 f: fffzthzf -9-12 v: vvvvvvvvvvvmvv -14-17 f: ftflcfffjtjrvfkffmvf -4-7 n: pnmnxnqqjp -6-7 r: rrrkrmr -4-13 k: drckdzxrsmzrkqckn -5-14 t: dttttttttttttt -13-14 v: vvvvfvvvvvvvvvv -7-12 j: jrljwnctjqjjxj -6-7 v: wchfzvm -1-8 d: dddddddzd -10-12 g: gvvzrglgrgggggggggg -3-4 n: ngtnnn -2-4 b: fzbb -1-15 x: cxxfxxxckxxhxlxxxxxx -7-19 f: ffkzcglddffcfvfhffv -9-12 s: sssssssmssss -13-20 t: ttttmttttttthtttddtt -2-15 v: vvqvcwvvvvsvvqvwm -5-10 w: wxcstswwwwnc -3-4 v: tjvvnvvtzfdcjjwb -1-2 l: lbclr -2-13 d: dkdlddcddddddd -2-7 n: npnngnnn -4-12 g: kmvvmfngwmlg -1-2 w: wwwww -5-11 t: ttttjtttttttttttt -4-5 r: srlrrr -5-8 q: qhqfpjqsnqqkq -8-15 s: hvtnslpsfbsssrw -11-16 n: gnwnfndrnnhnnknsnnc -2-7 r: tdrrshrrhsxrr -16-18 m: mmbmmmjmmmmmmmmmmbm -6-7 n: nnnnnxt -4-6 k: dpxzklksk -1-9 g: ggkxhgggggggggggqg -1-8 l: lllglllh -1-4 c: cwtc -5-6 h: vhhhvshh -10-11 x: xxxxxxxxxxc -2-3 q: qhqqgqmt -3-6 k: hkqqshgjnxmlkrjdzg -9-11 l: llprlllllllll -5-7 l: lknflmrv -8-9 h: hhhhhhhhh -7-8 z: zzzzzgvzzzzz -18-20 v: vvvvvvvhbvqvgvlvjbrv -13-15 k: xkfcvkrnfkkkvcpt -3-5 l: llnnglmgtz -15-19 t: tmtsfttxtctdtgtmpttt -6-8 f: gmffwvffff -10-13 d: dndsddddddpdjndddd -7-10 r: rjzqrpgrrrcmrrg -1-4 m: hlmm -9-15 d: pdddlrwdzddddddd -6-13 q: qqqhnvqqqqqqfbqq -1-11 z: wzsqmnrzwzzhzxczzzzd -6-11 t: tptnjttkttttvtttr -3-5 n: nnznnn -5-6 t: trtttslv -5-6 g: gggggt -15-19 s: sssssssssssxsswsssss -1-13 q: wzqjljdqqqqnqq -6-7 k: kkkkkgkkk -4-5 k: zkxvk -7-14 t: thsstltbvmsctqkfhdzc -2-5 n: hnnnn -2-16 t: gsvkhmhktcxkfqbtd -8-9 q: qqtzznrqg -17-18 v: vvzvvvvvvvvvvvvvlk -3-4 v: vvvl -3-4 b: bbvb -10-12 w: wwwcwwwwwwkzwhw -1-3 d: ntps -8-9 j: mqcjcjjfjjhjbjj -1-7 j: mjjjjjjj -13-14 f: bzffglvfcfsfjb -2-3 k: kqkq -7-15 c: fccpccshcccccccc -12-13 k: kkkkkkpkktksqk -12-13 w: rwwwwwkwwwwswwwhw -5-12 k: nlkthkkklkkktchmhb -15-16 f: fffffffdffffffbf -3-4 k: kqkprkkp -4-5 p: dcpdppzpppjqm -4-7 b: qbbkgbgz -10-11 n: nnnnnnnnnnw -9-12 h: hhhchbhhvhrhhh -3-5 h: hrhnbcl -6-10 v: nvlvhvrpvvvvvvv -3-6 d: dddddjd -4-5 r: rrcvr -7-12 l: llllllllllllltll -3-6 b: zbbbbt -6-10 z: zznzzzzzbzbhzz -2-5 h: rfwbmkhmhhhmjhmh -11-13 q: wkkzzqxvqqsqx -2-15 p: hbpjpppppptppppzb -9-10 b: bbmbbbbbsb -3-10 t: cqmtttjtttttf -8-11 v: tvgcvvvvvkv -6-9 g: tggnggtggkg -3-6 w: dfwnht -8-14 c: pncwqccsfgctpccxc -6-9 p: bpppjtzprggp -15-18 j: sjjjjjjdjmjbjjpvjj -1-6 m: mhmkrhxn -10-11 d: xcjtpdwdcfvhqdksfhd -16-17 t: txtlrttctwtztttnx -13-14 j: jjtjjmjjnjjjjjjj -10-12 m: ldqmmmgmmxrmfwrbv -4-6 p: psmpnpkfq -13-14 t: tltttsttmtttjttt -7-9 g: ggggggbgv -8-9 q: qqqqqqqqd -4-5 d: ddddl -14-16 g: gggggggwggpgfpgm -4-5 v: vvvvl -5-8 v: gtjpvvdv -5-11 s: dsslsvqpwsss -4-6 h: hhhghh -16-17 k: hkkkkkkkkkkkkkkqj -5-10 d: dddtddddjd -6-7 v: vclfvvzvj -6-8 m: dtkbcblppzx -1-4 g: hggggg -9-11 q: qdqvdqkdfqvqzqkq -2-6 s: ssgsbswhs -3-8 j: jjpjjjjv -3-8 d: dddddddqdddd -6-8 v: vvvvhcvn -6-12 z: gzzzzzzzzzzkzzzzz -5-12 k: nrkzklbxcwbc -10-14 p: clxjpnhsvttnjp -6-17 w: vztxwwwgwlwcwwwtw -8-11 c: cctzcccqcjc -1-3 b: zdqx -3-5 x: dvxxxx -6-13 b: gvbbbbbbbbvpkbb -7-12 k: hkbkkqkvkmpkrhk -3-6 c: ccrbcdccc -4-6 m: znhphh -4-11 x: xmmgbxxgdxxtbwg -15-16 m: nmmbmmbjmrbvmmbm -11-12 j: jdcjjtsjjdjj -1-4 c: cccfcc -6-15 n: ssvnnnnnnwnggzmp -4-6 l: qwfllpx -6-9 b: bbbbbsbbmb -3-6 j: ljjgfh -5-9 t: tttttphtwtvtf -8-12 x: xtdxxxdjghxxpxhkbxx -5-9 r: rrprrmrrrjvszrrtp -15-16 r: lrrrrrrrrrrrkrrrr -2-5 q: ltfgqcqmt -7-13 k: zkkkkkkkkkkkhkkkkk -5-6 z: zzzzzszz -2-7 g: tnjqnsgkdtc -3-4 j: njjjgkxcgckj -4-7 j: rxmjlxzhjjjsgjcj -7-10 f: rmfbffhffcf -11-12 h: hdhhhhhhhhhsh -7-8 v: nwrvvvvdv -8-9 l: llllllllf -4-5 r: rmxrrrrx -2-3 c: ccgdcc -13-15 r: rrwrrrnrrrrrdrslr -4-16 x: cnlxmtpxdzxblfxxjd -4-5 m: mmmmtm -9-13 x: gxxxxxxlxxqxxxxx -1-3 d: ddhd -11-14 f: tffffffffqlfff -2-4 r: xrrf -1-11 m: mtdmsmmmmdmmmmmsmtmr -1-8 g: pggtggggdgmgggn -7-8 f: ffvfffpff -2-7 k: khqgfzk -11-12 s: ssssssssssbsss -7-14 h: hthpwhhxhglzqtmhh -2-4 z: zzpmz -16-18 x: xxxqxxmlgbxxxxxxxx -9-11 v: dblhzhvvvnfvptvmf -4-11 n: nxsddnsnnngsdnghngk -8-11 x: xxxxxxxwxxxxxxxxx -1-4 s: swst -13-14 m: mgmmghmmmmmmrmmfmmmg -4-5 c: dcccc -4-5 r: jzrrc -13-19 b: bbbbbbbbbbbcbcbbbbb -11-14 c: ccccncfclccccfcccm -3-4 t: tstl -1-20 v: vzrzgsvsfgxjqkxgdpwv -14-15 h: hhvkbhhhhhhhhmhhsh -9-13 b: bbbbbbbbtbbbbbb -2-3 b: zbbb -17-18 s: smsssssrsssssssssfss -5-10 v: vfvvvfvdvjvlltv -9-10 n: nnnqnnnnxtn -6-7 w: pwtwwwfkwvk -11-14 z: wzzzzzjzzzlzzkz -5-6 l: lxlllv -5-8 v: vvvvvvthhv -1-9 r: rrrrjkzrdqmr -6-8 s: sssssssg -2-4 f: frfff -1-16 r: pzbdrgnpndnrrwkczmr -8-9 b: sbbbbbbblkwb -2-5 z: zzjzz -3-6 q: qqwqqr -2-13 v: vbvvbvvjvvnvcdnvc -12-15 p: pppppppppppppppp -2-7 m: mmmmmmd -6-11 f: ffffffffffz -5-6 r: drrthrzrrrp -2-7 q: fntqnbqqzb -5-14 w: wlfwstdfzvwvqw -4-7 s: mgsssslfjzsssv -7-8 g: tgtgjrggggsggtg -11-19 z: fkzzzvzzvzdzzzzzfzz -3-7 w: kwcwwww -6-14 s: sssssssssssswjss -7-8 v: vvmbxvxv -2-6 n: nnnnnp -7-8 b: bbbbbbbb -3-6 z: zzzzhz -11-17 t: bltttdttttttttttzt -1-9 l: llllllvll -10-11 n: tznsxfhdpnn -6-8 t: tttttnttt -4-10 p: pppppppbppppppnc -4-11 j: rhvjjjjjjwjnrcp -3-4 j: cjjj -7-12 v: kmctjvksqzvv -16-17 w: wwwwwwwwcwwwwwwwwww -12-16 f: fffffjbfffwffwffff -9-10 p: ppntppppjppkpdp -3-4 l: lllcf -5-6 b: dbbbbsbtb -2-3 p: pvpz -5-6 f: pqffdf -1-3 l: lnlpxl -8-10 n: nnnjttnxmmns -1-10 j: xjjwtjtjjjjjjj -2-8 m: smwmcmzrfqbmmwdmm -1-6 k: jxpsfkkkgm -5-9 f: zjfffjjwknqh -1-6 c: rcccczcccccc -13-17 g: zsgpfppggwshgbtggxzh -12-14 n: qmknbfcgnnnhwn -1-6 k: vdklkkzkkkkfkm -1-3 h: hhlhhhl -16-18 p: qggnxmswcppklptgsp -1-4 m: vmmqmmmmmmm -8-10 l: lllllxlllvllg -4-12 g: gjgghggwctzvgggggg -8-11 x: jxhxxxxxxxx -4-16 n: xnrnbkrkdvntnjkc -2-4 m: mdmmj -6-7 n: nnnnnngnnnntn -1-13 j: jjjgjjjfgjjmj -8-10 z: zzzzzzpjtz -1-18 f: ffkwvfgcrnffgnffmf -4-5 j: jjtjvb -6-11 s: ssscsnslsssssssshsss -11-12 n: nnnnnnnnnnmd -2-10 n: cpnhnrnbknnkwnbnlb -2-4 d: dddnh -9-12 f: fffffffffffldfff -1-9 d: ddddddvdlddddd -1-8 w: wnwwwdwww -3-4 h: bhgv -1-4 x: vxxj -3-4 g: gmgbg -7-8 j: nzwgbtnj -3-6 z: zzpzzhzw -8-10 h: hmhhhhszgz -1-5 m: dnqgnxjm -11-12 z: zkzpbjxszzzhwgdz -10-11 r: rlrrrrrrrrr -1-2 v: vvvvtsvvvvvvvvqvvvn -13-14 n: nrfzqlxxxsxqhnkhrmws -1-4 z: znftzjjwzc -6-15 v: fvvvlvvhvvvvvzhvv -5-10 x: mtxprgbqxxkfnssvq -8-9 f: lffffffwf -1-4 g: grxgvlhflrbghj -3-5 c: fcxcl -6-7 s: ssssdds -10-13 l: llllllllllllxl -12-15 j: jjvjjbjcjjjjsjjj -1-2 c: ctggc -2-4 w: wbwwwwr -8-20 v: phvvvvvrbvvfvvvvvvhv -5-8 v: cvvnvjbl -4-19 x: xhvxflxpkxxcfvwxxhl -1-2 m: mgqj -5-6 q: wpxdbq -19-20 d: ddddddbxddddddddddpd -5-11 d: dhhwddjddkdd -6-7 g: ggggggn -1-7 h: zhphhhhhgn -7-11 s: ssssssssssksssss -2-3 n: hnwn -8-9 h: hhsshhhhh -1-2 c: ccwcc -2-5 s: cdsmmfqfcrsh -3-5 m: mwmjt -1-4 n: ndntnnnnnnnnnn -4-6 s: ssslsssshsssmq -5-16 r: rrrrcrrrjrrrrrrrrr -1-6 v: bvvvvvvv -9-10 t: tsttttztxtttttb -8-12 d: tvrbvwxdddxmhfsd -3-9 w: wbwwwwwwww -3-5 g: bgglcqg -8-12 f: fqffvdzslhksrv -1-4 h: hsqh -6-12 b: hbwhxbfppkbb -12-15 l: llllllllllllllplv -16-17 m: mmmmmzmvmmmmmmkmhmmm -2-8 p: mpnnnpwpv -9-10 x: xxpxxxxlcxj -10-14 c: mccclvcccfcckwcbczc -2-3 v: vvsrg -13-15 h: hhhhrlhfhhhhvhhhshh -3-8 z: vsbkqlzzzzzsmzw -9-11 h: qhhhhhhhddnh -4-5 h: hhhkxhh -7-12 t: dtcvttttbhnntft -1-5 z: kksnxzzxz -1-3 j: cjjjjjjjfjj -12-15 s: sslssstssssssszss -2-4 c: mntc -5-8 v: mvbsvfvvvlsrv -5-6 z: zmhfjq -10-15 r: rrrrrrrjrbrmrjr -9-11 j: jjjjjjjjjjxjjj -1-2 d: jwhdd -4-5 m: mmmkm -1-7 j: rprmjbxjj -13-14 g: ggggggpqggggqgg -1-5 l: llxzlkpptdzg -1-2 z: zzzzzzzzzzzzjzzz -3-4 h: qhhwtz -2-5 t: tptttt -1-14 c: cccccccccccccxcccc -8-9 t: tgtpttwtqttvt -1-16 m: mhmtpmmpmmtmzmmcqj -3-4 q: qqvq -10-11 h: hxhhhhhhhbhh -5-6 n: xlchhnljrlnfrlwzs -1-9 x: mxxxxxxxtxxxfxx -2-7 n: bbnnrqmnnnnnl -2-7 p: rgpqnqp -3-4 f: fndf -10-11 c: cccccccccqc -3-10 l: lpzxlhpslfh -3-5 k: kkkkkkk -14-17 b: bbbbbbbtbbbbbfbbbb -1-2 f: gfff -10-14 j: jjjjjjhjjjdjrjc -1-9 s: wszsswssspsss -4-6 k: dckkkkkk -3-13 h: hhvkvhhhhhhdhh -15-16 g: ggggggggggggggngg -2-11 m: nzdsmbqtmmmmxskcmmv -3-11 m: mmmkmhxmwmcmqdlpmf -1-8 n: snnnbnwn -1-13 j: pjjjjjgjjjjjxjj -3-18 m: mmvvmqmlmmmmzcmkwqlw -1-4 d: dbdx -12-15 r: rrrrrrmrrrrrrrr -4-18 s: sssvsssssszsssssscss -2-5 q: nqbmmbqds -3-12 d: hrdvzzcrbjwdkgddbrpq -2-3 r: rsrghkrmdsfm -5-9 k: twfwkkkswqkkkkwv -4-6 p: tppxpstmxcw -12-13 k: kkkktkkkkrkksk -1-2 m: lmmm -3-5 s: shsss -6-7 c: ccccclc -10-17 s: ssssshsssssssssshs -6-15 n: nnnxnrtfnnnnnnnnn -3-18 s: jsfcdsscssmnsgssnj -7-8 x: xxcxxxxr -3-5 l: lvlllll -11-12 h: hmhhhhhhhcxjhhfdh -3-4 d: wdfdd -3-4 r: qrvr -10-18 j: mvwlxblnhjddlzkhqjfj -6-20 b: bhbbbbbbbbbtbbkbbbbc -8-9 c: cclccmnrr -3-6 w: wwwwwww -5-9 k: dlgkjnqxk -12-18 f: fqfffbfffffcfffhfkf -1-3 w: fwwgjsclwpw -6-7 z: zwzzzzl -14-16 r: jrrrrrrrrrrrrfrrrr -11-14 b: bbbbbbbbbbbbbw -9-11 h: hhhzhhhfxhhhh -3-4 p: pplnp -2-3 f: ffff -5-8 p: lppppppsppppppp -17-18 w: wwwwwwwwwwwwwwwwzcww -11-13 n: nnnnnnnqnnnnfn -7-12 f: fxmfpdfjrffjgtffzlfg -4-16 w: bctwmwtxvwqzrwwwwhw -2-7 m: gmmmmmjmmmm -1-15 q: tqqqqqqqqqqqqqqq -3-4 q: gqwq -3-12 s: ssssssssssrhpsg -6-8 m: mrmlmhcrsm -4-9 q: gdbffcqbqt -1-17 k: kkkkkkkkkkkkkkkkkmk -15-16 h: hghhhhhhhhhhhhrhh -4-5 p: pkpzmb -2-18 h: khvkdpbxdptllfdxvhh -18-20 z: zzczzzzzzzzzzzzzzpzs -1-11 p: ppppppcpzppppppppp -4-9 z: ztpfrjzwnv -6-11 x: snxxtstcqhv -3-5 c: nrlcccbcpsvcc -2-7 z: dztxzzqmfzrpz -5-14 w: pbcjnqpwwlccfscz -1-5 f: rfndsxdmhbgf -8-14 t: ttttpdfwtxfttd -2-11 l: lndmmrnxdmdpdmlzll -3-4 h: chzl -10-17 d: ngkkdbvflmcssmgmdk -4-7 d: bhksdtd -2-6 k: ktkdkzwsgkhkk -1-4 r: hrrs -15-19 j: ndnvjfjljnwklsmdbjj -5-12 v: vhvvvrvgvvqgwvvbfv -2-3 r: rfkkhrrhqhks -13-17 q: qqmlqqqqqmqqvqqqcqq -4-15 z: zvbkvbzczkrttcz -4-8 s: ssssssss -13-14 x: xmxxrxxxgxxxmb -7-10 s: sfjzslwsqsss -4-13 c: clccncccccccpc -2-4 l: lddlpplrqqs -12-13 j: jjjvjjhjjjjmjjjjj -6-9 n: lnnznnpnclnnn -6-10 g: gggggggwgjgg -4-6 l: tjhqmr -2-4 d: hddxjdvj -5-13 t: tzftwttwttjttt -1-9 j: jnjjjkjftjjfmjhjkj -8-9 q: qqqsqqqjj -15-19 l: lllllbtdlsllllllxlfl -5-6 g: gkgkrsgg -2-4 t: tttb -12-15 p: jpppppspgpppppkxb -10-13 n: nznprnnhnmgxhxnknnnn -12-13 d: dddsdddddddsd -5-15 q: qqqqkqqqmqfzqqqw -5-9 s: nmgslvgdz -1-4 d: gddkddd -12-16 v: zvdsdsgjrtjvzsjtx -11-14 q: pqdgjqqqqgqqjwlqqqmq -2-7 p: pkpqsppqgz -6-10 b: bzdbbbbbbvbbbx -14-15 v: vvvvqvvvcvvvvvvv -4-5 w: wjwwwhjwg -5-10 x: wgthfxtdpxx -6-7 c: ccqcfcbcccbml -6-7 w: rwwwwxb -4-5 n: jnnnngvljjmnr -3-11 m: lbmmmmmmmmtxgxmmzm -1-2 b: bbbvjcbbb -6-9 b: tbwbbcbbbb -11-13 d: sdkwqrjdddbdd -9-15 t: ttttpqttjttttsjt -5-7 j: jjjjjjzj -12-13 v: vvjvmvvqvfzvcvvvvvv -6-7 d: ddlddrd -5-6 j: jjjjwj -5-6 f: fffffp -6-7 w: zwmwdwww -1-4 d: jddddppdktdgh -4-14 n: nnnnncnnnnnnnnrn -14-17 c: ccccccsdccccccccn -3-4 z: zzzgqz -5-17 m: mmrsmmnzqlnbmmlljwpm -3-5 j: cgvjh -12-13 w: wtgblrdchjjkfhg -4-7 t: rgclgtt -1-3 k: wckhkkkjkk -6-11 n: nnnnnnnnnnvn -17-18 k: kktkkkknczkkkkhkkk -1-6 x: rwxqgxrxxxmsmkrx -17-18 g: ggggggggggggggqgjp -14-17 w: wwwwwwwwwwwwwnwww -11-12 w: vcbmkbwnwbwww -15-16 g: gggggggggghjgwgggjvg -5-9 n: nnnnwnnnfnnnnnnsnnnn -3-4 k: kkkjhk -5-8 k: kkkkmkkkk -9-13 k: kkrskkkkkkkqfkknmz -2-3 j: jtjcj -7-8 c: ccvcrcsxc -5-9 k: kkkkgkkkkk -4-5 h: hhzsxv -1-7 d: lgdbdhdddd -5-6 j: dsjjkj -7-20 x: xnxwmwkbbbkjbpfwkpgx -11-12 q: wmbqtffthfcqgq -7-16 h: hhfkhhdhhhhhhhhhhhh -9-13 b: bhbfbmbbsgbbfbj -8-10 w: xwwmwwwgfwwzpwnw -7-11 m: bmrmbwmmmmmmmm -8-9 d: lshdfglpdq -11-13 w: vxwwwwxckwwkww -8-13 x: xxzxgtpxxlxxx -8-13 z: jrsfgvzzzwrdxz -10-11 q: qqqqqlqqqqq -2-7 m: knxnmxm -2-4 n: znnhnnnnnnn -4-6 k: kmxgkkk -10-18 z: qhhzhzbldchlmwdzfrsz -3-4 n: nnnt -11-15 v: vvvvvvvvvvwvwvf -4-9 x: dxjxnmghvrxbnzgxljc -1-2 m: mmgm -18-19 z: zzzzczzzzczzzzzzzjsz -6-20 p: pkhzdzpppfbphphpxppp -3-9 h: zxhqqkkqknkfvq -5-8 l: lllltlll -8-10 z: zdzzzzmszz -10-17 l: txhgwzsrjlvlvglxl -1-12 s: bvgswssssmssvssssssb -3-6 j: xjjbjt -3-5 x: xxlxq -5-15 r: htprxzjstgzpddrtjrr -1-10 x: xzftsqxxpgzdlcth -6-9 w: wbdwwpbwwwwcrx -4-11 n: nnknnhnnnnk -8-11 f: ffffffpsfffff -6-9 h: hhhnhhqhhhnhvv -6-9 x: gqxzhlpnxlcrwnxxp -5-7 k: kkkkjkkk -5-7 x: xxdxxsqcx -6-7 j: jfjljjfp -7-8 l: clsldvlc -5-10 h: qhqmchbzhlfhc -5-9 m: mpdnhsmmb -2-4 k: jvmkjrkhkctwlrq -2-3 s: ssgstssds -8-9 t: tvttttttht -5-6 n: nnnpnpn -8-9 x: xxxxqxxxsp -6-7 z: zzzzzzl -4-5 f: fffpkffq -1-12 b: bsfbclbxbkbbmbmb -14-15 b: rcnwnhbdfbhtblvb -7-9 j: jjjjjjjjx -2-3 x: xxxx -13-14 z: zqzzzzzdztzzzmzz -2-6 r: rmlbjrrbrc -2-3 m: mwmm -9-10 d: ddddddjddz -15-18 p: pppppppzppppppzppj -3-6 g: glfgdgfgbgdkg -1-3 s: sdsblxzscp -5-6 v: vvvvsv -1-3 d: vdxdkd -6-8 w: wkzwcwvwwwqwd -9-10 h: hhhhhhhhwh -9-12 b: bdbbbbbwbbmbbbb -2-8 b: bbbbbbbcb -2-9 v: nvtgsfvpv -11-13 v: hvvgvvvvvvbvphlhnv -6-7 r: rrrrprr -10-16 w: wlxptrzwmwxhspcww -5-7 f: ffpfshf -3-6 t: rnttvx -8-16 b: pvlbtnfbvspdhtkk -1-4 v: vlvd -4-17 l: qflfllkllplllllkl -1-3 s: psswjplkhvxssftnpl -6-11 t: tthmbtwkfct -11-17 w: wwwwjwdtwcnwwwxkx -9-11 s: sssssssslsss -8-10 n: nnnnnpnwnnnvw -12-13 m: mmmmmmmmmmmnpmm -14-17 w: xbswvmsflkmqlpkxwm -1-3 w: mzww -5-6 g: ggggdw -1-15 r: rslcrjzhrjdpwqm -7-12 g: ggdgfggdzlxfkg -2-11 x: cpsxxkxxqhsxdxxjkgbt -7-8 w: wdvhwwwp -1-4 z: zmfzllxnrnlw -9-10 b: rkbbbbksbpdsbcm -1-8 h: sqdmcjpw -2-6 x: pxxvrx -5-6 x: xjshxxqt -1-13 b: fbbbbbbbbbbbbbb -11-13 t: bwhtttdvtbtkw -2-6 j: rjrggj -5-6 v: fvvvwvtv -10-15 s: ssdsstswssssssc -2-6 h: hnqzhlclp -8-12 t: pjztttrjtvttt -5-6 g: gwxrggtmg -1-8 z: kzzzzzzvz -10-15 p: pppppppppvpppppp -3-4 g: ngxdgg -2-5 x: xcxxnbwh -3-10 s: sgkghshxdssws -1-2 s: pssldmf -2-5 m: jmxmm -5-6 n: pnsjqnnn -13-17 t: ttxslvttlnttrdwtt -1-6 n: nnpnsn -3-20 m: mmmmmwjmmmmmtmmvmmmm -15-17 s: ssszsslsssszssssss -5-8 s: hsgzspsk -7-8 c: ccccccchc -14-17 l: llllllllllllllllk -7-14 p: xjbxdpkbgcpbfpptfx -5-6 s: sghmss -4-6 s: ssssss -1-2 c: kcwpwc -5-6 m: mmmqtmt -1-9 l: glllllllslllll -3-4 r: rrcr -6-9 r: rpcbrrrrdvrrwf -3-7 l: wglsfjtwlldg -6-9 g: gggbgggxw -9-10 j: jjjjjjjjrjjjjjjjjjj -4-14 p: vbppfpncsmhctp -10-13 k: kkkkkkkkkkkkkkkkk -3-5 p: dnlpp -11-15 f: fsffzftkfqflnflf -9-11 q: bqdqcqqqqgffqfqmrqlq -1-10 l: lszxlhdkgtprglxxl -16-18 l: sllllllmlllllllllwl -4-7 b: brblbbbtbj -3-6 n: rhnntq -7-9 k: kjnkjpbkkkkvkjm -11-12 g: kvjpqmhcgbrl -3-12 h: khhhvhhmchhgfh -3-4 r: xmpr -3-7 m: mmlmmmmhm -7-16 m: mmmlmmlmmmmmmmmmmm -3-4 b: sdbbbr -14-19 k: hkkkkkjclkgmzvgkkkk -12-14 w: ssqgwwcxcqwwww -2-3 k: lkkr -1-7 t: wtttttlt -4-8 d: wdjnqgdf -8-9 j: jjsjwjjlj -4-7 h: hnhphxhhhq -2-5 d: qdjgqdb -3-5 w: wpwzwdm -3-12 n: pnnngxnjqjhpcntfrvz -10-15 h: hhhhhvhhhhhhhhg -4-6 s: dwrsksjhtsrjdvmbsbwr -8-11 v: vvvvvvvcvvvvvv -4-5 m: lnmlmmwsmfsm -7-16 c: kvzcrcbcvkcpptdccq -2-3 b: bnbbpjp -3-5 m: hpjkrmmlwq -3-7 v: vvvnlhn -3-4 b: bnbbb -3-6 d: tkdktrctmjw -3-5 f: pffffj -6-10 t: ltrgjvjthtpttphrttk -3-8 s: ssrkstfgssxxxc -1-2 d: sdhkcfdcdg -6-12 h: shhhhhzzzhfh -4-7 j: jjkzgrj -13-15 l: llltlwlllllqzlbldl -5-9 d: dzxjdrftsprbldvddk -4-14 q: wqsqqxtbfnckzqcqqqq -1-2 v: lvdxdwpphqv -5-6 z: zpzhzjzqtzh -3-4 q: qqqlq -9-10 v: svvvhvvvtv -3-12 g: kjgmbzgklwfb -10-15 v: vvddvvvrhvvmvwvvv -1-20 j: kjjjjjjjjkjjpjjjjjjj -6-8 t: tttttdtt -11-12 v: vvvvvqvvqvxvvv -12-13 h: hnhshhhhshhhh -7-8 z: vzzzzzrzzzfpz -7-8 x: xkxhxxhn -4-7 b: hbbzptb -5-9 d: fddqjsdbj -3-10 l: llllllglxslll -1-9 b: dbsbbbbgbb -5-8 n: dtnnsnnnn -7-16 m: mmmmmmmmmmmmmmmsm -3-4 f: nhwk -15-17 w: wwfwwxwmwwwwwdswwwww -1-11 l: llllllllllll -4-9 c: cccccccchcc -2-3 k: kkkkbskk -3-6 s: nssqtf -4-5 m: mmrhm -9-11 f: nfnsrfdfnfff -15-16 k: kkkkkkkkkkkkkkzhk -6-9 q: tzqqxqhnq -3-11 k: kkkkkkkkkkck -2-5 p: wmpgpmjmrqg -15-19 r: rrrrrsrrrrrrhfrrjrr -4-10 l: lllsldllll -4-7 s: sjhzqns -1-3 n: nnknnp -13-14 j: hjjgxjzjvjpxjj -4-5 r: rrrgrrrrr -10-11 p: ppptphpxkpppp -2-7 j: fjsnxwpjgqnzjjj -6-8 k: kdkkwnvkkkk -2-5 q: qdqqjqqwq -5-7 x: xdxddbcxvnxxxxhxxxq -2-6 n: cnqlmrlwqhdbbvbnhskh -7-8 z: zzzzzzzwz -6-8 r: llrrtzrpr -1-7 d: ddlddvmkddjpd -8-9 v: vvvvvvvrkv -18-19 t: vtststttfmtqtmttdnz -3-9 b: nbwbzntrb -3-4 r: pzrrqqrj -5-9 x: bvxxllwcf -4-6 f: fxmlxf -11-15 n: nnqnwnnnwnknnnnnfnn -9-11 n: nnnnqnnnnnj -7-12 k: kkkkkvjkkksskrkkk -2-3 b: cbbvbv -3-6 x: xxfldxxxc -6-11 k: fkvvkkwkvkpjkjk -10-16 f: ffffffmffffffffffff -7-8 p: fppplpnc -11-20 r: srrrfrrrrrrrrhrrbrrr -13-17 s: smssssssssssssssb -5-8 q: fcqlqqqq -6-10 g: rmpsgrlxcvgtggwgvk -13-15 h: hhhhhhhhhcmfhhldhzh -5-10 q: qqqqjqqqqqcq -5-9 m: lmvcmmsznmmgmmmcs -5-6 h: hhhbzr -3-4 d: dzdg -11-14 h: rfvjnjbzvrhthdxhv -14-19 g: ggggggggggggggggggcg -6-7 m: mmmmmphg -13-14 p: ftzfrppkzrrpgp -12-16 n: lxnnnnnngnnbnncnn -8-9 c: dqgzbncfccrjtdkc -6-9 r: jdrrfrtkmkfltkm -4-6 g: dnggrr -3-4 s: ssssvs -18-19 f: wffffffffsffffffffvf -6-10 l: klllbxltll -6-7 r: rbdgrrr -17-18 l: vjplzpcftlkrllsbqlqg -3-9 n: bqnnnnrbxkdsdwnvtwwh -1-2 w: qwwt -5-18 z: zzzzzzzzzzzzzzzzzlz -2-7 n: nbnnnnnnn -14-15 g: mcdcmxpxmgkqdhm -18-19 s: gsssssssssswssssssss -5-6 s: tptssvs -8-12 c: cccnbcccmcctclccccx -6-15 t: tttttttttmttstf -5-6 l: lllklq -7-9 d: dqdcdcddxcddmdkrd -4-5 r: rrvrxqnzrm -9-11 p: pjpppppppppppppp -4-6 v: vpvvvvv -6-9 h: wwchhhgfh -10-11 f: flfcjvtljftfffhff -6-7 v: vvvvvvvv -12-15 k: kjkkkktkkkkkzvn -6-9 v: rsrvvgnwktwvvnvclvvc -2-12 c: ccvqsctcwkmkqzc -16-18 w: wwwwwwwwwwwwwwwwwwww -17-18 g: ggzgggggggglggggsgg -13-18 v: vvvvvnvvvgrvvkvtqv -5-11 k: kkkkkkkkkkkkkkk -11-12 f: ffffffffffvf -1-7 h: rstpvhh -11-14 l: lrnllwvlnflllfdfllt -5-7 g: gcgjgrkgj -7-18 z: zzzzzzgzztzzzzzzzxzz -17-18 v: vvvvvvvvvvvvmvvvvvvv -16-18 m: mmmmhmmmmmtmmmmvmx -1-3 z: vzzzwz -5-6 n: nnnhnq -8-15 r: jsrprrrrmrrkgrkrr -2-12 g: txwxcgwfqkfg -9-15 l: ldlllllllllllll -3-5 f: gfbsf -15-16 v: vvhrnzxfvvvvcwjv -4-15 c: cccmccccccccccccccc -7-13 l: bwlzlxzllctjcf -1-3 q: rsgtq -4-9 n: npznnnvvnzg -3-7 z: sqtczzfzzrzfz -2-3 k: ckkrjnkglnz -9-10 q: qqqqqqwqjqqfq -4-11 v: vvvbvvvvvvnvvd -5-7 n: lbwxnnnncnnwnv -8-9 k: kgkkkkkjf -7-9 l: llllllllll -15-19 p: pppbpcppxcptppvmpppb -3-4 m: fqmwcncsmp \ No newline at end of file +13-17 s: ssssssssssssgsssj +7-9 p: pnlzhcppvl +5-6 z: zzbwrv +7-15 w: wwwwwcqwwwwwwwww +8-9 h: hhhhhhhhsh +12-13 l: mtrkqfllrglll +3-4 t: nntt +10-14 g: svgggggfhqggghlg +3-10 x: djxxxpmcxx +1-10 z: ztzzzgzzzz +3-4 j: jjjjj +3-4 c: fbhnsccbc +2-4 q: thql +15-18 w: tcwzpwzfwwqftvczbw +5-7 l: lblwblbmllqnlbl +3-4 b: bvbfnbb +4-5 f: ffgzf +7-9 c: cctcccccc +5-6 k: szkgsk +2-5 n: nqvnmgnqnsxfn +2-10 s: dsfsbsssltss +12-14 s: ssskrssssssfsxpsqsp +13-15 j: jjjjjjjjjjjjjjjj +16-17 l: jllclhllkgcpljzwk +6-9 f: fsffwffbffbfff +5-9 s: xtzscxsstcss +6-9 h: hmnhshhhhqhrthmh +3-6 x: xxxxxx +9-11 m: mcmmmktmtmmmmm +2-6 r: grrprrsmr +15-16 v: vvvvvvvvvvvvvvwdv +2-14 j: jmjdbhjjjjjjjxnjj +5-9 r: rrwrrrrrr +3-9 b: wbbcbvbtbbbbb +2-9 r: rrtjlplkrgmrrrrxq +9-12 s: sssshsmsssss +2-14 t: qzxxvthtthtthv +2-11 p: pvlsppwmgcspl +12-15 s: dsjqsshdssbssstsssss +3-9 k: tkkkpkkklk +7-15 s: sssssssssssssgsssss +6-9 x: xxxsxzxglpwxl +2-3 x: xxmh +7-9 g: ggsggggggg +4-17 t: vtttrrrhtghfjvnqtttj +1-2 n: jgnpn +11-12 k: vlkkbkkkkklk +9-12 v: vvvvvvvvwvvvv +10-11 j: jjjjljjjjvm +1-5 x: vvxlx +3-4 l: flll +10-11 q: qqqqqqqqqlq +4-5 d: vdvhmpdtrdhdzfdsgk +14-16 b: bbqbbbxbhrbpbtmhbbb +18-19 d: dzpnbxngpgsjtnvtcdd +2-16 v: jtrhtlfhvkbbflfq +15-17 q: qqqsqqqqqqjqqqlqm +5-6 q: tqrhtqqspdqvzqbx +4-8 b: lbbzbwtv +10-13 f: hrsnsfflfffsfjff +10-14 k: kkjkkkkkkkkkkkkkkhk +4-9 c: ccwcccccc +5-7 r: grkrrrwjrrgbdtd +8-12 p: tgspnljpfhtr +5-6 v: vvvvvvm +5-7 v: vvvvvvv +6-8 q: qqqqqdqqq +2-4 v: xfvqvlp +3-4 g: gghb +3-14 z: xflgzzrkzqzxzzxgd +1-7 g: ldsgswgdgdmjlggb +5-10 h: rhhmhhnbdhhqhwp +16-18 m: mmmmmmwmmmmmmmmmmmm +5-11 j: scssgcjjjjpzjjn +13-14 s: wznksvkfvfskfs +3-9 q: qdqqkqtbcnqqqsrklqbf +7-9 c: cccchcmcvdcczwt +15-16 g: gggdgggggggggggg +1-5 k: kkkkkk +7-10 q: qqqqqqqqqqqqq +3-12 b: bbbrhbspbrbfbbqbbbb +3-5 r: gczrgr +2-6 h: whnlvhsftp +8-20 h: fhhhsdfhhfzgmhpqhhjh +15-16 z: sbzzzzzzdzjbwhgb +4-8 h: jgtbmhwb +8-9 s: hssksrnhlsdslssvcsbs +2-6 v: vvvvvvv +13-14 x: xxxxxxxxxxxxnsbx +12-13 l: pgllllltpdfpxlll +2-17 v: vqnncnxkssmhvkzstzgp +4-5 r: rrrhw +8-11 p: pppdppphppp +6-7 t: lrmqtts +8-12 h: hhlthhhhhhhhhtrzh +9-10 g: jpgpmpcrwfkz +12-13 w: wwwwwwwwwwhwwww +5-13 l: jwtlqglllllxkllls +2-4 c: ncpcgd +3-7 l: llslllll +2-5 n: jdfwnn +3-5 z: xctxd +4-6 l: lllrll +6-7 q: fqqqqqqzqqqqq +9-12 c: gccwgwqlcxccchchcrcb +7-12 p: pppgpppppppps +10-16 g: xrgfggzzghtgxgbggg +7-11 d: tdddddqdwdgxldj +11-14 p: pppppbpppppppppp +1-2 j: jhjj +8-9 v: pvvvvvvvcgvq +5-6 n: qcrhnnkktxvdxcp +7-12 x: lfnxxxdxxxxp +10-12 s: sssssssssbsgs +2-3 x: rqhzxmjnjxx +13-14 w: wwwwvwwwwwwwqhww +10-11 t: dgttttgttttt +7-9 w: wdzwwwwjj +4-10 v: vvsjvvbvvncvvvvxv +6-8 w: wwwwwpwq +7-9 j: jtjjjjrjmxg +5-11 z: zzdgztshstzczw +1-4 s: ssss +3-10 p: pqppgrphrpkdmp +9-12 x: xxxqxxxlxxsx +3-4 v: nvswzv +3-9 d: vdjvdcxdkdd +2-10 v: vvjcvvvzvkb +11-14 g: gggzggggggjgghg +4-19 p: pppqppppppppppppppvq +3-5 n: ngznkgdpn +13-14 t: tttwtbtttttxxmttt +3-7 q: qnqqqqqtqqz +3-4 r: rkgr +9-12 l: lqkfljzllqtl +5-8 m: vpmmsnfmtxbcknlmpb +15-19 s: ssptssnhsksnszsdpqss +13-14 j: jsjjjjnjjjjjjjj +6-9 p: ppppppppz +5-8 r: tqzbnvgsvfrx +7-9 h: hhhhhhhhp +8-11 s: ssssssssssss +3-10 t: ttttttttttttt +4-5 g: ngtgg +7-8 n: tnnnnnnqn +12-16 x: bxxxxxzxxxxxxxbxx +1-3 z: zzzt +11-14 x: xxgxxxxxxxwcxfx +6-11 v: rgkkhpkjvvf +16-17 n: nfgnnnnnnnnnnnngvn +3-7 w: wkwwwww +5-16 g: ggggcggwgggggggggg +1-3 l: sjvjlkzrpn +17-19 p: pppppppppppppppptpd +2-6 b: vjjwbqbdbpwsbw +4-8 g: gggggjvgd +2-6 w: pzzpwdm +3-10 g: ggggcggggggg +1-3 v: vxvjcvcpslpfn +9-10 r: qrrwrrjrrr +5-10 m: qbmdzvqmxnnmmmtk +2-14 q: vqttpdjhqvkqzqxz +12-13 r: rrxbrrrrrcrptjrr +13-15 s: cscssssssssssssss +7-10 z: zxbrzxbdbhzzzfzz +2-16 n: skqkxqmqbvbrnspnrgq +14-18 b: bbxsbbdpbnbbbnbbbpbb +5-8 b: bmcrdhbbk +11-13 f: fffffffzfffwffb +5-6 w: wwbwlww +12-14 d: gzxclqbnmnxjlzd +13-19 z: fzzzctzzdsbgzzzzwzpb +2-12 w: lcwwtwwpwffdjqwms +9-10 x: hznxnxxxxxxxgkxx +2-4 g: cwfjtlgf +11-12 k: bqfkkkklkkkkb +2-4 l: llllgxk +5-9 m: cpwmqkzhxs +8-15 b: bbwlwkblvbwdvrjbgsb +3-4 f: ffmff +4-10 c: nqxcqcfcqc +10-12 d: ddqddddddtdhd +3-4 n: dghnnqnn +6-15 s: rsbxbrfmssdknppw +2-13 m: mmkmmmmqdmkmmm +8-12 n: nnnnnnnnnnnn +2-5 d: mdkwd +14-15 l: hllllllllllllgl +6-11 g: jgccfnggggpgkt +4-6 j: jjjtjjjjjj +9-12 v: hgpjjlvhvhljb +2-4 g: jfwdgfr +4-5 f: fhffffchf +16-17 j: jjjjjjjjjjjjjjjjj +1-4 t: tcttwtttttrkt +6-13 x: qmxfxxwxrxdxxxfvgv +6-7 c: cckpccc +3-10 m: qwmmpknsgmdmfvrcvw +2-4 r: rszv +1-7 q: qqqqqqqq +1-6 l: lzlmjl +11-12 q: mqqqqxbqqrqqqdqqbkq +8-11 h: jtvbhxhhphhhh +9-11 b: bbbbfbzbzbb +5-7 l: gljssxddzscvhwrlrb +3-6 c: fxcbccddxxcn +3-5 s: ssssz +17-18 n: jctqdsjchwknkffpnn +8-10 c: crtwbwcfcqkf +3-5 r: qrzqc +7-12 z: zzzzzzzzsfzsz +13-15 p: pppppppppzrllplp +11-12 h: nhhhhjhqhhplhhh +4-5 l: lllll +4-10 g: gggzgggggg +15-16 h: qhhhshrhhfhhhhch +5-7 k: jsrvnjlkq +16-17 p: pppplppppppppppml +13-14 m: xqhmjdmrmmmffr +6-11 c: cccccgccccrccccccc +9-10 l: llllllllxllt +8-9 b: bbbpbbbwbdnkbb +5-9 m: sfmmpmmmzn +5-15 k: kkkkkkkkkkkkkkkckkkk +3-4 h: hhhh +15-19 g: gggwgggrslgxjgfgbfs +12-13 d: dddddddddddxb +6-14 k: kkrgdvhscffwwm +14-16 m: zmmmmqmmmmmmmgmm +8-9 w: wwwwgwwww +1-12 x: xxxxxxxxxxxx +1-5 b: bwrbbfwgh +1-3 t: ftttttttttttttt +10-11 m: mwmmmwkmxsf +8-9 t: tqtttttttdtttt +7-8 z: hzbkpzfg +2-3 h: htblhdhh +3-4 p: pptnlpc +4-7 l: lqlnqhljt +12-14 n: nnnnnnnnnnjnnt +1-4 d: dszd +12-13 f: fvrffffffffkfff +9-15 t: bkzstqvtgtwxtzqttd +6-7 v: vrvvvkgv +6-9 n: knbpnnjnnsn +5-8 n: nznkzzqrbn +9-12 s: ssscssssgsqwsspssp +4-16 q: slqqqqqhqqqqqqdqc +1-3 d: gdttdd +2-6 h: hhqzmh +4-9 k: lkckkpbzkl +8-17 b: bbbbkbbpbbbbbbbbn +1-2 r: bqmrw +8-9 s: ztssqssbz +1-13 s: stbqmhspsdgjs +8-10 z: trnsmlxzmzzzz +6-8 v: vlxvgzbzvvv +3-6 c: xddhwtcbpcf +13-19 g: rjvsgpnfjvzlxxzzgxgm +5-9 m: qffpmxmfmk +14-15 c: dcfwcpxcmvpxxtcbmzhc +6-10 k: jkpbkvghpxksfkkk +2-3 j: jmgjjjj +7-12 z: szrznmkjxnzj +4-9 s: ssssssssss +2-4 h: hkqvfgpsxlnhtrqr +6-11 g: gggglrlgggwv +1-6 v: vrbvlvrvv +4-10 j: jjjjjjjjjz +3-12 k: kkjkkkkkfckgkkkkk +3-15 x: xxrxxxxxxxwxpxg +5-8 v: vvhvvdzvqfrvgqvt +5-17 z: zznzzzzzzzzzzzzvf +4-12 n: fdrncrggjlbgbmwv +6-17 d: tcddhdbdvtsnrdstd +1-10 m: mqljmgchlmsx +4-6 l: fbllbl +8-9 p: kpmtpphwp +3-6 j: sjjjjj +5-6 n: nnnnbs +7-12 p: ppqppngcphpk +5-15 x: xxxxgxxxxxxxxxqx +1-3 p: ppppm +3-6 w: wwwkwww +1-4 r: rrrx +3-4 z: zzznp +12-14 n: tnzwtmnnnnndnfnnn +9-10 d: ddfdddtdddd +4-14 l: hvllsgncmhxhwl +10-15 j: kxftfsmjvjgslsjpp +2-10 g: gtgvggqggggxggdg +1-9 v: cvnxhhffnbcv +1-14 c: ccccccccccccccc +3-8 q: fnqmkbhqtbjqvczq +2-4 v: fvphvgv +10-11 k: kkkkkkkkkpt +1-10 d: dddldkddmdd +4-6 x: xxxxxxxx +4-11 k: kxkfkkkskkrkmk +1-6 n: nlmngnkqww +1-9 j: jjjjjjjjsj +5-6 b: bbbbbb +9-11 q: qqnqqmqqqpq +4-7 r: drrrrsrrz +10-15 n: nnhncnpsnxtnpnqnnghn +3-6 d: ddddddd +4-7 x: bxvxbxjwxgx +1-2 n: cmpwsbjzghgndj +2-4 r: przczfjfrbwj +3-17 k: qbvmqxxffdfpkwxdgxv +7-12 v: llmjvscvjvpvp +2-7 z: vzxzxxz +9-18 r: srdrjcrrrvhrcqrrrr +7-8 f: rffffvtrfsqff +5-8 w: pdcwwvmwwwkzwwjwxks +3-4 c: cccc +15-19 c: cccccccnccclbnplccqc +2-13 f: fffffffffffffff +3-9 t: thrkzdttb +6-11 p: pppppgppppjp +5-8 q: qqqrqfqs +7-11 r: crprgtwwrzp +2-10 f: qfhgfftfdbfnlffffff +4-5 h: dhvvlcw +3-6 s: sffsfws +2-7 b: jrvxbhbp +10-11 w: wwwgwwwwwkb +5-9 d: dddddddddddddkdv +4-14 b: bbbbbbbbbbbbbbb +4-8 x: xxxxdxbqxc +5-9 l: phlkhlllbc +1-2 s: ssgskqvrsrwdt +19-20 x: xcxqxvxxxtstnqxhxxxx +6-7 x: gxxxxgb +4-5 c: cccccc +3-10 q: pzzjqjqpfbqws +4-10 t: ttdttsccttpt +14-18 c: ccrccccccccccccccrc +2-5 x: xxzqx +5-11 c: qbckpccckccccws +5-6 g: gggggg +3-5 n: wknbnnlnnq +9-13 j: jjxjjjnjjjdqjjj +5-9 s: smsxsrfss +2-4 v: vxphvvk +6-7 x: xxxqxxbbx +1-3 g: zrgtghjwd +4-5 n: nmntwnn +6-8 g: ggznggggg +4-5 k: tkkzs +9-10 g: hqdhggggqggk +12-16 w: wwztwmwwspwhmwwz +3-5 m: mmmvmjmmm +3-4 j: jjjj +6-16 z: kzbtzqrkzzcfhvpwjszx +3-9 f: ffwffffffff +13-15 b: bbbmsbbbbbbwbbbbwb +11-14 n: nnnnnnnnnnnnnnv +8-9 v: bvvflvvbjvbtjqrvsxf +1-5 g: gjgnggg +15-16 n: nnnnnnnnnnnnnnwvqnn +12-13 l: lllhllrlllllllll +5-6 l: llmlll +8-9 z: zzqzdzvzzzz +3-4 d: ntdd +4-5 b: sbndbkjxldqpzfbzbqx +2-5 t: bwcfzdlfslsd +4-5 d: dddddd +1-3 t: jtpt +10-12 q: qqqqgqqqqqqmqq +10-19 m: mmmmmmmmmsmmmmmmmgs +2-14 x: xxxxxgxvxmxxxbx +3-13 l: tzljvxspwxdnl +6-10 p: lhnppkpswrppgppzpppn +2-6 j: djgwjjhvpwkcgsfbf +10-11 p: ppppppppprpppppp +7-12 l: lvgcbnlclvjlk +6-11 z: zzzzzzzzzzn +3-5 x: xzvhxnpwbxgxx +4-6 h: hhlrhnl +8-10 b: brngbslhqhb +6-11 s: ssqjxsssdsssss +2-5 s: dbjdjknspbdldfbjd +10-16 z: ctzzzzznzcwzztzl +14-15 j: jjjjjjjjjjjjjjjj +9-13 d: qvdpwddddddddd +10-12 c: ccccchcccccq +3-5 x: xxxxx +13-14 t: ttstttztttttltt +3-16 k: qvfjklgzlwfwnbjklqdx +12-13 g: ggggggtgggggggvg +11-15 j: vqzjvzvxjhjnjtj +7-8 t: tttttttg +6-7 x: xxxxfmn +10-13 m: mmlmmgvfmmmdmmcmmq +7-14 w: wwkwwwwwwwmptwww +17-18 b: bbbbbbbbbbbbbbbbbb +2-8 c: kbvcnrpx +16-17 n: nnnnnnnnpnnnnnngl +10-15 k: kbkjkdkwpkkhkkksklx +2-12 p: pjhdkvwdltvqrhm +2-4 x: vxhxxk +3-5 m: mmfmf +6-8 n: ngnggfnwnn +9-16 b: bnbbbtcbbbvbbrbbbbb +2-8 p: ppphpzppcgptpprhpp +9-12 x: xxxxxxxxxxxx +5-7 d: dknbddd +7-9 r: rrrrrrrrj +3-6 f: fjmfxk +3-4 n: jnnnbjckggnpjnddhx +6-12 d: dznpsfdtdsdndjddvcdd +7-12 x: xxxxxxhqxxxbxbsx +1-2 k: kkfkkkk +4-7 l: lprlqllll +10-13 x: qxxqkjxxxxxxmz +3-8 f: rxfffwcff +4-5 s: cpscszdssc +5-6 t: tttftt +2-6 p: kpvtkprdqhxzpxrbfp +6-12 s: ksnsklwqfssdsbsss +6-7 l: lzlflfl +7-9 t: ttktttttt +8-14 d: hdddzndhsddpfpdxt +8-10 d: ddnddrddvxbzskddzd +11-13 v: mvhvrtvvvvzvrvdv +4-5 g: gggjw +3-6 m: xhmrpm +7-13 k: kkkkkkkkkkkkk +10-13 n: nnnnnnmnngnnnnnn +7-15 m: kcmtmjtmwjmcsbbms +13-16 j: jjjjjjjjjjjjpjjlj +2-4 n: nnmnkn +12-14 j: jjjjjjjjjjjdjj +1-2 c: cchc +9-12 m: mmmqbmlwmmjmzmmml +3-8 r: rrkkrrrt +4-5 k: wckknxkpkktmks +9-10 d: ddddpdddnpx +1-8 q: qmpmxzfqnqctwpprm +10-12 q: sgkfxhqjkqqq +5-11 p: rwpppdlmhpptkbrlp +1-2 d: lzrbxnlcsqhssgdpvjs +5-6 c: scccck +4-5 s: ssshxsssws +3-11 l: nslwgmxmtblzttxxg +10-11 z: zzzzzzzzzzz +7-8 j: bjjjjjqdbjj +7-8 d: glpfjbpdxd +2-4 k: wkvwrk +1-5 c: vtcgcbc +16-17 x: xxxxxxxxxxxxxxxxm +2-11 f: ffffffsfffffffffffff +4-8 m: mrmmmmmmmmmmmm +2-3 x: xvzxx +2-4 h: hxpn +13-17 x: xxxxxxxxxxxrxpxxxx +4-13 q: wcqqtwwmwqqtqmqtqrqq +10-12 d: dddtdqdnjxdzdfdd +13-14 f: jffffsffmffqjff +6-7 d: sxdvddddwqxd +5-11 d: ddddfdddddcdddd +11-14 b: bbbbbbbbbhlbbj +3-4 p: pfpp +4-7 j: jjjgwkgwnfffvfzfl +6-9 l: gknrmjgxtlzcbvkgxb +4-10 n: nnnnnnnnntnnnnnnxn +1-4 r: rjrr +3-4 m: nkmr +9-10 f: fffffffffff +2-6 r: rnhtml +3-12 q: qqkqqqqqqqqkqqqqq +3-10 r: rrnrrrrrrrrrrrrr +6-8 m: bmmmdmmmmdmh +10-12 g: ppdvvxgkhfskfqc +2-10 v: txpvkgvcbqvqfk +1-5 p: tqcvbtp +6-7 z: zzzzzzz +7-16 z: fdjbbkrzjzdbdblhxb +2-4 x: xlkz +4-11 m: glhknzmvqzfmnsbn +6-8 q: qhmdgqvq +8-16 t: tttdtttdtttttttbvt +4-7 v: vptcmgvvjvvvfvvmht +7-8 t: ttttttngt +5-15 t: ztgbttrntttdvgtptjdb +10-12 b: bvndbbbbbbbbbbbbtb +2-3 t: sbqts +12-16 w: wwwwwwwwwwwwwnwww +2-3 m: kmmr +12-15 k: kkmkrkkkkzkdkrgkk +5-13 h: hhhhzhhhhhhhzhhhh +16-17 l: lllllllllllllcllq +1-3 b: bbjb +2-5 t: vtjhmf +4-5 q: vzdqfd +2-3 n: nnnn +7-14 j: jpjjjjjjljjjjjjjj +12-15 j: crsjpjjjqjjfjkv +10-11 t: ttttttttttttt +1-2 j: jjbjsjvhbfssznf +9-13 f: ffmfffffzfffgfff +15-18 g: sgblrqdftpwzggvgqt +19-20 r: rrrrrrrrrrrrrrrrrrvj +1-4 j: mjlt +3-10 x: jxxxxxxxxgxxx +6-7 p: ppptppp +7-8 b: jbmnbmsc +2-6 f: zshfcbhsh +2-5 r: rrrqwtrvclf +3-8 g: chgtwlbg +11-15 n: knnhnnhnnnpnlknnkhnn +3-8 z: zkqlzzpmjph +5-10 b: bbbbhbbbbbbbbbbbbb +6-15 c: ccccdkrncwrcclc +6-7 c: ckcccwdhcc +12-13 t: ntttktttttftttt +5-8 j: jpjzcjjjjj +7-8 k: kpkkksbkkkkkr +9-12 s: sqssssbssxcs +3-7 p: pbbplhtfpktpnppx +5-7 n: ncnnnsn +4-6 s: sssrss +3-16 v: kvvvvvvczvvvvvvvkww +3-6 k: kkkpmk +8-9 h: hhhhhhhmb +7-9 c: czwcccmtckccc +5-7 t: tstglltkt +2-6 c: cccccv +11-14 z: zzzkzqzzzzzvzzz +3-4 d: ddch +4-6 j: jjjjjvj +5-9 c: cccccccccccccc +7-9 j: hjkwpjjbjfsq +4-6 t: tttlcdb +13-15 z: zzzzzzzzzsqzzgzzzkz +8-10 t: ptckdjtsptlmzrktwcw +2-5 n: tnbhnnkvnq +11-12 m: fqmmmmmqmtmkcmmvnwmm +7-8 z: zzzzztvl +6-7 j: jbpjjjjpxmqxcbwsjrjj +2-8 t: ttkdzfwdtflfswlkntt +6-11 j: rnjjjjjjjjj +10-13 f: fwhkbfdfffvfs +5-8 l: pflplntf +3-5 r: rrrrr +16-20 g: gggggggggggggggggggg +1-12 t: xtnsxbjtttxtt +7-9 r: zrrrrrkrnrrrrrrrrr +2-11 n: nrjnnnwnnprnnn +10-12 z: zzzkxzzhznzdz +7-13 d: pdcjdddqddlddcdkdxk +10-15 r: rrrbrrrmvrcphrrqr +1-3 l: rsll +7-8 x: xxxqvrxx +5-14 p: ppcdvppbppppjpbg +5-11 x: dxdxdhkxxvxqxxxfx +6-12 r: pvbfrhqrhftqrrxcrr +4-7 t: zdbtzst +1-13 k: kkkpkghkqkskk +5-17 g: gvggqgggggqmgxggfgg +12-13 l: llllwllllllwf +2-11 b: bbbbbbbbbbbbb +7-17 h: hhhhhhhhhhhhhhhhhh +2-3 w: lwww +2-3 s: vstcs +4-6 s: vssssxss +14-16 r: fmrrrrrrrrrrwwrvrr +6-7 g: dgwgggp +12-16 g: wggxgggrggggzgbgggg +7-9 s: tjhxrscnsscssssnms +3-12 n: nnnnnnnnjnnlnnnnn +7-8 b: zncbmbglqbbbbpgm +12-18 l: lllllllllllvlllllwl +10-16 q: qqqgqfqqqqqrrqgqq +1-7 n: nnnsnrnnnp +10-11 q: qqqqqbqqqqq +5-8 k: bnsfzkkwfkknkccwqkm +4-5 c: ccdcccc +5-9 z: nlsgzzzdz +2-3 k: xkgxhqkpftx +10-13 d: ddddddddhdddddddd +4-6 x: xmjxwxx +14-16 z: zzzzzzzzzzzzzrzq +3-14 n: qnznjvlzdnnrgwfr +7-13 s: sssxsspsssssrz +4-11 k: pkkkcklbkkkk +9-11 x: xxxxxxxxxxtx +4-6 z: zzjzzfz +3-6 d: zddddddz +10-20 c: smccccvcpbccbqcxbccq +13-15 m: mmmmmvmmmjmnnmlpsm +12-13 j: jjjjjjjjjjjjj +3-5 m: pmmbm +7-17 m: mmmmmwcmmdfqrmmhlmm +3-17 g: gcggnggbgdggggggg +10-16 b: sqpsqkfbnbqzswbb +3-4 w: wwwn +5-6 d: dddddpd +12-15 m: mmmmmmdmmmqlmnvms +13-15 j: jjjjjtjjjjjjzjcj +17-18 t: ttttttttjtttttttttt +17-18 d: dcddmchdwbqrllsxjdv +16-17 h: hshghhndnhhfhhhhh +3-5 g: ggggch +6-13 c: ccvccpccccccvcccccc +2-4 h: hbfh +3-9 l: lllptphml +2-3 s: xwrqssfzr +9-13 m: mktmmwmmmmrmmrqmmmcm +8-11 l: rkvxvrglltlc +1-8 q: jfqqxngqnqchq +2-6 x: zxgjxx +5-14 g: mlbgvdglrgcqjgz +4-5 t: tqgtv +2-6 s: ssfnzs +9-11 m: mxwhmmmmmmzm +1-5 d: dbhjzd +2-16 f: fffffffffffkffffff +6-10 b: dbbbbbbbbbbb +5-6 x: xxxmxxcx +7-8 l: lllpllcb +16-17 d: dzdddddddddddddddd +3-10 t: tklkqftnwcj +9-15 g: jccxpmfjgntpptgkkcvt +1-8 r: sdrwgcvprt +4-5 v: nhbwx +17-18 z: zzzzzzzzzzzzzzzzxsz +5-13 l: cbdklqhnklkmwhpp +4-5 f: fffff +1-4 q: qpwq +9-11 x: vxxgrgxxfvvgx +3-4 r: rrfd +3-16 x: sxqxxxxxxxxxxxxwxxx +5-8 s: ssssssss +5-13 b: jbbhqqbblbbbbfcb +17-18 p: ppppppppprpppwppphp +3-9 p: kdpnpfphppvffpwf +7-8 r: jvrrrrrnrpqrn +5-6 m: ncmmdxmm +10-11 v: vvvvvvvvvdl +3-8 g: jlsscggg +1-3 m: gwms +4-5 f: fpkvnf +6-15 j: zfdrxjgxtbkbbjjctmsk +5-6 v: qnnbvvwqvbwqblqd +2-5 v: kvhvt +2-6 x: lxrgsxg +6-8 s: sssxswsjsssxss +1-6 t: dxwjttnqkt +13-14 s: sssssssssssvjg +1-2 t: rtttnf +9-17 h: hjhhhvhhbhhwhhhhphd +2-3 m: mmmwcm +10-12 v: vvvvvvvvvvvv +6-10 j: flcjtzwhwsnjjjrjrj +3-8 d: ddmrddddd +5-8 c: ccccslcrwrc +13-14 s: hpsqtxvkrsssshh +11-15 t: hrxtjgtwtlmpqfx +11-14 l: llbxlsllllqrqlllzlb +3-4 c: crlcvcxwd +3-9 s: vjbsxhwwdvshfxstc +7-8 f: jfhnffbgsfjfwf +15-16 x: ksxqvfsvnxsgvwgpjzl +16-19 g: gggggggggggggggdggg +9-11 h: hhhhhchhzmqhh +2-6 f: kfdlcfrxftzgq +2-8 p: ppnppkpwwmgp +1-2 g: ggfgrg +1-7 n: nnnnnnqwnnn +5-6 h: hzjgthqphwhnjh +10-15 l: xlllllllvlllllll +3-4 l: lzjb +4-6 l: ldzlql +7-12 b: mzlbqzbrqjjbddr +10-13 t: tttttxtttpttt +4-6 d: dddddd +4-5 k: kzvkkrkf +1-2 h: fqml +17-18 f: jhtfdfgmnchprbwbfrf +3-10 s: sjsnsksbdsss +1-17 j: jgcbjmjjjjjcxsjjjjhj +15-16 k: tkjkjbkkrkkkklmgkj +2-13 k: kkkkfkqkkkkkkkkpkk +4-13 d: ddkkdtddzdnnddjdd +1-3 v: fxvnxdvxnrbjs +8-11 s: sssssssssspssssss +1-8 k: khkkkkkkhk +8-9 k: kkktmkkzk +4-9 w: wrqdfwxwnfwwwnmzww +3-5 l: lgtcvl +13-18 n: nnnnnnnnnnqnnnvnnnn +15-17 z: zzzzzzzzzhzzzzqzv +3-5 q: lxnqsvk +8-13 g: rzzwdlzgbcmggct +10-14 d: ddvdbddddnddpd +6-10 d: dphsszqrvz +8-16 b: bnbgfbkbbbqlbcbbgqbb +13-15 d: dddjddmqndddddddvjdd +8-11 q: tnhgqkqfpjhwqgktq +1-3 n: nnnbn +11-12 f: fwfffbfcvflff +7-8 s: sssglsvssvls +2-5 z: zzzzzzzzzqjzz +2-11 m: mhzrwphzxgj +4-6 k: kkkwkd +8-15 m: mrmmmmmzmmmmzmgmm +1-7 w: wwwwwwxwwww +1-3 l: nllllllll +4-5 m: zbshj +3-9 x: xssxqxxxsxkzx +5-9 d: dnpfhsdmrxbvgxqrs +7-12 r: vhrgcnxrvksg +8-10 c: ccccccctzv +16-17 l: lllllllllllllllhl +6-15 n: nnnnnnngnnfhwwzsnnn +6-19 z: zzzzzlzzzzzzzzzzzjv +7-12 b: bxfbbwsjtbbvbqvbmbpb +5-14 g: gggcjggggggggmgg +5-8 d: wdddddkdpd +4-17 x: xtxxxxxxxxxxxxxxmkx +4-10 c: cccccccccjcscv +9-11 v: ttjzfjldvvmswpqt +5-8 r: tjrwhzgfrkgfq +5-8 m: cvhsmnzmncsfmbqmm +7-8 z: krctfpzz +2-6 w: mlnlswvh +12-15 t: zrntxzttqlthfdttt +1-8 r: pkcsjkrrrzxxsfnjw +5-15 p: xbhpkpnngpqvpcwdppg +3-4 t: tttt +8-11 j: wjjjmjjjjjqp +8-14 h: gjslnklhhkhthxh +2-6 q: qqlqqq +3-6 p: pppgppppppppppp +7-11 l: llhllllrllllxldllll +11-12 d: lddkdddddddddd +4-12 z: zwlzzqsvvclw +15-18 c: tflkxflqccwkmlckck +8-12 h: hhhhrhhhhfwhhh +6-9 r: rrrmrjrrvkrrjrdr +8-19 k: tmdlkcktbkkskvkbkbz +1-13 s: ssssssssssssss +4-5 v: xtcfvx +1-15 s: shtssssswghsfsss +2-4 k: krkl +7-12 q: dxqqqhqqqtqj +1-5 r: rrrvvrrrr +5-9 t: ttrttftxztnhtvkcmtth +7-9 g: gngkcggrg +12-13 z: zzzzzzzzzzzbk +3-4 l: lslllc +4-5 t: pqchpk +5-6 h: hhhhml +15-16 h: qhhhhhhhhhhhhhhhhhmh +5-6 d: ddddfs +1-6 d: dthfdzddfnsdddm +14-15 d: ddddddddndhtddsdnddh +5-7 j: qjjjpjplljjc +2-6 q: qqqqqqq +3-4 b: bbbb +5-6 s: ssssjjs +1-6 b: bbbbfb +7-13 m: cpvmbbnnrmzwf +2-4 f: fnhn +6-7 d: gdktlddrdlvmqdtddpzv +4-5 w: cwlww +6-9 z: zmdrgzlmzx +5-10 m: mjbjmmmlmmwxm +2-4 s: ssnhht +8-16 t: tttttttdtttdtttjtt +3-5 z: wxgzhtswb +13-14 l: lllllblpllllchll +4-8 g: vggqzvggnggggggggg +8-9 h: hhthkshhpnhqhgh +4-7 l: hglxklpl +2-3 w: mkmgkwzwmw +6-7 h: hhhhhrz +4-6 f: tdffff +1-7 l: lmfhgqschjqglrvwwnnz +12-13 g: gggggggggggfhggg +2-10 m: ntmmmdjmmmsvmm +1-2 s: sqsssssssssss +3-8 f: frnthfcfxfft +7-16 w: wwwwwwmwwnwwwwmk +11-13 j: jjkjrjjjjjjjjjd +3-4 s: ssvc +3-13 t: ddttttnnqpqztzbbdv +3-5 g: gggggg +3-4 r: rrrzlklfljqvz +5-12 m: kdgmmrszqpfsbmz +11-14 g: gqgvzgxhgbtngxggh +7-16 k: qqptmhhfkhsgkhbmkx +5-8 p: ppppptppp +2-17 x: vxtxpvnxvlctrcpfxxx +2-3 w: bwmwjwwwwwtnqwxc +4-5 g: gggggg +4-7 z: znzwzzzs +4-5 v: kvvvv +10-14 r: rrrrrrrrrbrrrx +4-5 t: xtttt +4-11 w: wwwwwwdcmkrwx +6-7 c: ccccccjc +12-14 w: wkwwwwwwwhwlwwwk +5-9 s: hmssssssssss +2-4 r: rrrjsh +12-13 m: mmmmmmmmmmmmmx +3-5 s: sshsvssss +4-5 l: xllwnshchfdfk +16-18 w: wwpwwpwwwmwwzwwtwwww +2-9 c: zsfgbrrprlszrr +10-11 n: thnmfndnnbnnbhnnnn +13-14 v: vvvcvvvvvvvvvvv +3-4 n: rwcm +14-15 t: tttttztttttttpjt +5-8 j: jjjjwhjdj +5-8 f: fffffffm +6-7 z: zzqzzzz +12-19 j: kjrfnsjnhjdzgqpcjzvh +3-7 p: pxpdvcqdptxpvk +1-4 c: wccqj +1-2 w: pwsqhwjdhcm +2-3 b: bfbn +10-19 q: qqqqqqqqqtqqqsqrqqq +5-8 p: pppppppppppppppp +10-13 g: rjghslgbggkgjdgvp +3-9 z: fnnfzzdnf +9-16 g: tlgtgggggggggggqm +3-12 r: rrrvccrrvbdbncrrr +1-4 v: jvhbv +15-16 v: vvvdvvcvvvpvvvvvvvv +3-4 g: ggggg +7-8 w: wwwwwwmpw +4-9 s: gkxshzkpssc +2-8 q: pqttnpqqqfwqs +3-4 n: nlnp +3-4 h: phhh +16-18 g: hqsxhmmpfgggmgpqhrjg +15-17 w: wwgwwwwwwwwwwwmwl +7-9 x: xxxxxxmxv +1-7 s: ssssssbs +1-3 x: dxlxxx +3-6 p: wpxppq +5-7 c: clcclcfcbccc +3-5 s: sbmst +3-5 d: xqmdn +5-10 z: zbzwfddkzzc +18-19 d: dpdddddddddddddddwcv +3-4 r: rrrr +8-9 f: ffnffffwd +12-16 h: hxnlxghzkpcpdhqqvl +6-7 m: jngclmm +5-13 m: rmmmpmrmmmmmjmmmm +1-3 f: dfwfs +7-8 l: lclllwllll +16-18 j: jjjjjjjjjjpjnjjgjbj +12-15 f: fffffffffffnfftfffff +9-13 w: qbnpmklbwxdbbwkklpwb +1-3 j: mjkj +1-3 h: hphwdh +3-5 x: vrxxb +1-15 v: mvvvvvvvvvvvvvj +8-12 v: lvzfvzvvnjtvvvvvv +4-6 g: gggvggggg +13-20 l: zdllslnlxslqpnvgwlwm +2-4 l: lllhll +3-14 k: kckzddtzbmvkpkhb +4-5 k: hbkgbxzj +2-4 p: lppp +2-11 r: rrrrrbrrbrrrrwrrrwr +4-7 k: knkqkkk +7-8 r: njrrrrrrrr +4-7 h: phhhnhdhc +4-5 r: nsnrrfktwbbhrrrh +4-5 q: qqzvzsvkq +6-7 b: jbbbbbbbkbgb +5-11 f: ffffcfffffgff +12-16 v: vfvvqvvdvvvlhvzjvmzv +9-10 v: vvzvvtvvjgvv +1-7 v: vvvvvvvv +3-12 z: zmncxhrdzdmtcbxtlrzq +3-7 r: rbfbrjrr +12-13 n: nnnnnnnnpnnldnn +5-12 j: jjjjjjjjjjjlj +3-6 s: sssfsgss +13-17 h: hhhfhhhhhhhhvhhhhhhh +5-10 g: gggxkggggvg +1-4 b: hbbtb +14-15 t: tttttttttttttnb +7-14 d: ddddddddddddddhdw +15-16 d: rbdddbdwmjdhmpdd +7-13 s: kxpdntprmskcs +3-5 m: gmdmpj +4-5 j: jjjjjvjsj +1-14 q: qmqqqntqcqxmqsqkqq +4-5 q: tqxqq +8-11 m: mmmxmmmvmmv +5-8 q: qqqqrqqw +5-15 d: dqdddddddddddvspd +1-4 t: tttttt +12-15 z: dhzzxwfjgnzhzxt +8-11 v: kdnmfnmqvvdvqdlvk +16-18 s: sssssssssssssssjstss +2-5 c: ccwdccc +3-11 x: nxjxxxxxxxxxxx +13-15 v: vvvvfvvqvlvvvvvv +4-11 s: sssszssnqjsbsvs +9-18 j: gxhjjjjjnjjsjjjrjjjj +3-4 t: ttfttt +9-10 s: qzgxjhpsss +9-10 q: qqqqnrtxrqqsqqq +6-13 k: kkkrgspkkkpwjshmk +9-12 h: xhhhmhbhhhdhh +3-12 g: gfgggggjgggggggggg +13-15 z: zzfzzszzzzzzvzzzhzw +5-15 m: mzrmmmmndchfzmmrr +5-10 z: zzzzzzmzzh +4-5 s: wscfc +3-6 m: kmmtmm +5-7 h: hhhhchh +4-14 w: wwgwwwqwsfrjvmbwj +2-9 v: vwvvwvmjcqnxv +9-10 x: qxxhfxchrx +17-18 x: xxxxxxxxxxxxxxxxwp +4-6 v: vvvvvtv +11-14 l: lcqlclllllrlddxlzll +1-4 r: trrn +10-13 h: thnsxphnfgvhvq +11-12 s: sssssssssshsss +10-11 z: rqpzszzmzdz +3-6 q: qrqqqq +5-6 h: hhkhhhh +8-16 h: wqhjvhlgwtsgvlpf +3-6 f: gqfpcfsfhfjgrbqv +3-5 l: lqllsrjlv +6-10 v: vvvvvvkvjv +3-8 t: gtttcbnkxxstttd +2-6 j: jjjjbjz +10-15 j: ftwjtfzjmjsvwjj +8-11 d: ddsksddddzfd +2-3 b: bhngbb +14-16 c: mllmcbfxwxrqlcjcw +7-8 q: qqqqqqdv +5-6 s: slkzlfvg +3-5 q: qqqqq +3-12 p: pddpdpszrppxcpjgv +11-18 r: rrrrrrrrrrprqrrrrr +3-4 c: cscckcxcn +11-13 g: gvgwmlngggqggrtgtkg +5-7 b: smfpbbb +7-18 l: sqmlklvkqfjrgtqhzr +6-7 k: kkpqqfgz +7-9 n: fnndnnxnndn +11-12 c: ccccccccccxv +6-9 d: dddvdddddddvd +1-4 v: nvjfv +3-8 g: gggggggg +6-7 x: xxxxxxx +4-5 c: scccc +6-13 q: nchlfqqqlqnqqqtq +1-8 r: srrrrrrnrrrrrrr +4-5 p: sdpscpppp +9-11 r: rrrdrkrrrqg +3-5 m: xwmscmmm +7-11 r: rrrfrrrrkfrvrf +4-6 b: bbfbbb +4-9 v: rblrvrvpvz +2-8 w: wwwvwgwww +8-9 w: wwwwwwwwzw +16-18 t: ttttttttttttttttttt +8-9 n: nfrzsdjxr +1-2 w: wwfwwmfbww +2-4 s: dfsksft +1-13 d: dwdrccnddqmndcl +1-4 f: qfflf +3-7 d: dnddjpdfgc +3-5 l: lkglx +1-13 j: jjjjgbjtpjjhd +15-16 j: jjjjjjvjjjjjjjjjdjj +4-13 t: tttxztttttttkt +4-5 m: mmmmm +4-6 j: jgjrjwjfjx +8-11 t: ttbjttvttsttdqtn +14-15 w: wwwwwwwwwwwwwkjw +1-6 x: nrscxn +3-13 w: wwwwwvgnwbwwwwwwv +12-15 p: pppppppppppjpppppppp +5-11 v: vvvkvbvwkwnvvvsxvv +1-11 m: mmmmmmmmmmtm +10-11 c: cccccccccwc +5-8 f: xvgstwfxfhxknds +12-13 t: tttttztttttttt +4-17 k: vkpkfkkkqnkqnkgkkknk +9-12 k: kkwpzpdzxhxk +14-17 v: fgvvvvvvvvvvvjpvv +7-8 k: kndnqkkk +7-11 c: gfcbccccjvcskcmrcxc +4-5 n: ngtnr +3-12 k: mtcfszkdhkdkd diff --git a/3/input.txt b/3/input.txt index 5f140df..f38deab 100644 --- a/3/input.txt +++ b/3/input.txt @@ -1,323 +1,323 @@ -...............#.#............. -##..#....................#...## -......#..#.#.....#..#.#.##..... -.........#...#..............#.# -............#.......##......... -...#.....#.....#...#.....#..#.. -..............#..##.#..#......# -.##.....#.....#......##.#...... -.#..........###....#...##....#. -.....#....#.#.......#......##.. -.#....#......#.......#........# -..#.#.......#..##.....##....... -...#.#....#.......#.......#...# -##.##...##..#......#.#.....#..# -.#.#.......#..#.#......#...#.#. -#.......##.......#...#......... -.....#......#.#.#.....#....##.. -.#.#........#....#..#..#....... -...#....#..###.........#.....#. -........#........#........#.... -..##..............#.....#.#..#. -.#...##.............#.#........ -....#..#...........#.......#... -..#....#.....................#. -#.#..................##......## -.#.##....#......#........#..... -.........##.....#....#...##..#. -#..........#..#.#.............# -.........#...#.#.#.#..##..##... -#...#.....#..#..#....#...#..... -..##.....#..................#.. -#..###.....#....#.......#..#... -...##.##..#............#......# -........###.........###......#. -#..##....#.........#.........#. -....#.....................#.... -#..#..##..#..####.##..#.....##. -..#...#.#....#....##.....#..... -...#.#.........#.....#.#....... -....#................#..#...##. -....#..#..........#...#.#.##... -........#..##............#....# -...#......##..........#.##...#. -.......##...................... -.......##..........#....#.#...# -......###.##..##..#....#...#..# -#.#...........##.....#........# -..#...........#..###....#.#.#.. -........#...........#......##.. -.........#...##.###...###..#... -.....#.....#..##.........##.... -...##..............#.....#...## -.##....#.......###.....#....... -.#...........##.............##. -......#..#..##.##......#......# -........###........#......#.#.. -#.#....#.....#........#......#. -.##..#.........##...##....#.... -.....#.........#...##.....#.... -.............#........###....#. -......#.......#.#........#.#... -..#....#.#...#....#...#.#...##. -#...#......##..##......#.##.### -...##.#....#...#....#.........# -...#..####.....##.#..#.#...##.. -##.#..#....##......#......##... -###.........#.#..#.#.....#..... -...#........#..##...#.#.#..#.#. -...###..#.###.#...#............ -....................###........ -...........#...........#....... -#..............#.#.........###. -....................##.....#..# -#.#.....#.......#...#.......... -.#...#......#....##...#...#.... -.....#.##..................###. -.........#.#..#.#......#....... -.......#.....##..#.##.#........ -..#..........#.###.....#....#.. -......#.............#.#........ -........##....#........#....... -...#.............#....#.#...... -#........#..####.....#.....#.#. -.##......##...#........#..#.#.. -....##....#...#...#..##...#.#.. -#.##...###..#....##.#.......... -....#.#...#.#...#..##.###...#.. -#.....##..#..#....#.#.....##... -.#..#..........##.#.....##..... -.#..#........#.#.#.#........... -.#..#.....#...........#...#.... -...#......##..........##..#.... -...#..#....#.##...#..#.....###. -#.#....#.....##................ -#..#......#.#.#.......#........ -......#....#.#....#..##....#..# -.#.....#.#....###.##.........#. -.###..#.....#........#.#....... -.#...#......#..#.#......#.....# -#...............####...#.....#. -.......#..........##.#........# -#........##....##.....###..##.. -#..#.....#..##.....#....#..#... -#.....#.......##......#.#.....# -#.##..#......##..#............. -##...#.....#........##......... -....#..##....#...#.......#.#... -....#...#...##..#....#..#...#.. -..............#.#...#....###... -...#....#..##...##..#....##.... -#.##.#..#..#......#.#.#.#...#.. -.......#..#..##........#......# -##.#....#....##.#......##.#.... -.#...#..............#........#. -.#.#....#.........#............ -.#..#..###.............#....#.. -#......#...#.#..##..#...#....#. -.......................#...#.#. -.............#..#...##......... -..#.#..#....#....#........#.... -#......#.##..#...#.#........... -.....#....#...........##.#..#.. -..#.#.....#..............#.#... -#.......#.....#................ -#..............#...#....#...#.. -...#...##..#..#............#... -......###.....................# -.........#.......##..#....#.... -........#...#.##..#.##......#.. -....###..#.#...#...#..#.#...### -##...#...##.#...#.#...#.#....#. -.........#...#.....###......... -...#........##..#.......##..... -.#.......##.........#.....##..# -.#..................#...#...... -.##..#..#.#.....#.###.......... -...#.....##..#.........#...#... -.#......#.#.......#.#.......... -.........#.#...#..........#.#.. -#..........#.##..#.##....#..... -.#.#....#.....#..##.....#...#.. -..#........##...##..#..#....#.. -#...........##....#..###....#.. -...........##.........####...#. -..#........###...#.#.........#. -.#...............#.##.#.#...#.. -.#.##..#.....#.#.....##..#..... -...#...#..#.##.##...#.......##. -..#...#...#......##.##.##...#.. -##....#...#...#...............# -...##...........#......#..#.#.. -#.........#......#.#.##.....#.. -........#..#.........##........ -..#.#....###.....##..#...#..... -.........#...#.......#.....##.. -##.....................#...##.. -.#.#..#......#................. -.....###..#......#..###..#..... -...#.....##.........#......#..# -......##.....#...#........#.#.. -..#.#...#......#...#.##.##..... -...#..........#...#.......#..## -.###........#........##........ -..#.#.#..........#.#...##...... -.........#........#......###..# -....##..#.........#...........# -..####..#............##.......# -.....##.#..##.........#...#.#.. -...#.........#.....#.....#..... -.......#...#..#...##.........#. -...#...#..#...#....#..#........ -#............##.##...#......... -.#.#.....#.......####.....#.... -..............#......#.#....... -..............#...........#...# -#...#........###....#.#....#.#. -##.#..#..#......#......#.#.#... -.#..#.....#..#.#..#.#.......##. -......##.#...#...#......#...#.. -#...........##....#.#.......... -....#.......###.#...#.......... -.......................#.....#. -........#...#..#...#.#.#.#.#... -.#.#...........#......##...#... -.........................#..... -.................#.##.#...##... -...#...##.....#.....##....#.#.. -...#...#...................#... -...#..#..#...#...#....#........ -#....#...#.....#............... -.......#...........#...#....... -....#....#.....##.......#...... -.......#..........##........... -.#.#........#..##....#......#.. -.....#.......#.#.........#...#. -.#..####.#.#...............#..# -.....###..#..#..........#.#..## -..#.......#...#.....##..#..#.#. -#....#......#.................. -........#.##.#....#...........# -....#.#....##..#.#.....##...... -...#..#.......#....#.....#.#.#. -#...#......#.....#.#..........# -....#....#...............#..... -..###......................###. -.##....#..#.......###.....#..#. -..###............#........#.##. -.#........#......#.....#..#.... -....#..##...#...#.###.......#.# -.......#.##...........#.#..#... -.....#...##.................... -....#....#...##......#......... -..#............##....###.#...#. -.#........#...............#.... -#..#.#.##.........#..##....##.. -#.#....#..#.##....##...#.#..... -.....#.....##....#.#........#.. -#..#...#...#....#....#......... -...#........#..#.#.....##...... -..#...#...#................##.. -#........#.#.##.......#.#...#.. -#......#..####.##.....#.#..#.#. -............#..#.#....#......## -..#.....##....#...#.#.......... -...#...#.........#...#.#....... -.###..#.......##.##.....#.#.#.. -...#....#...............##.#... -....##..#..#..#.#......##.....# -#.#..............##...##...#### -.....#.##...#.#...............# -.##.....#.........#.......#.#.# -#.#..#.....#.......#.......#..# -...#.#.....#.....#......#...... -.......#....#..#.#..........#.. -......#......#.##...#.......... -.....#.......###...#...#.#..... -#..#.#.........#.....#.##....#. -..#.#.........#..#..#..#.....#. -.#..##..#..#....#......#.##..#. -...##......###.....#.##.##..... -.#.....#...#..#...#............ -##..##..#.##....#..#........... -...#..##..#..#.............#.## -...............##............#. -..#.....##........##.#...#....# -.#.#...#.#.#..#.#.....#....#... -.#....#...............#..#..... -....#.##..#....#......#...###.. -#................###...#.#..... -...#...#......##..#.#....#..... -.#....#....#.#...##............ -....#...##..#..#........#.##... -..##.....#..#..##.............. -..#..##..#.#..##....#....#....# -...##.............#............ -#....#....#.#........#.....##.# -.....#..#.#.....####...###..... -................#......#....... -.....#.#.#.#.#....#..#........# -.##.#...#.#.......##....#....#. -.....#........#................ -..#.....#..#...#..#...........# -.#.....#...##.....##..#.#....## -......#.......#..#......##.#... -#.#..........#.##.#........#... -...#..#.............#.......... -#..#..#..........#..##.#....... -.#..#...............####..#.... -.......#.....#......#.....#.#.. -.#...............#...#......... -.#..#..........#..#.#..##..#..# -......##..#.....#..#......###.. -..........#...#..#.......#..... -.#.#.#..#.....#.##.#...#..#.... -........#.......#.....#.#...... -......#.....##.....#....##.#... -...............#......#.......# -..#.#...#.....#.#...##......#.. -#.#.........#.#...#........#### -#..........##..#..#........##.. -.............#..#.......##.#..# -..#........#.#....#........#.#. -.#......####..#..#............. -............###.......#.#..#... -#.##......##...#...#.........#. -....##.#.#.#......#....#..#...# -.#..#.#....#...#.........#..... -#...#.....##............#...#.. -#.#...#..#.................#... -............#.#..#.....#.#.#..# -...................#....#.##... -.....#...#.#....#....#.#......# -.......##.#.#......##.......... -.#..#...##.#...#..#......#..... -......#.#..#..###..##..##...... -.#.#.#.#.....#...###.....#..#.. -.#....#.....#.......#.......#.. -..........##.........####...... -.#.#.............#..#.#...#.... -........#........##...#.#....#. -........#...................... -..#.#....#...............#...## -.......#.#...#..#.....##......# -.#...#....#..........##........ -.#.........#.#............##... -.....#......##...#.......#..#.. -#.#..#.............#...#...#... -......#.......#............#... -...........##....#......##..... -.#.#..#.....................#.. -##..##.....###..##.#........... -...##......##....#...##.....#.. -#...#.##.............#......... -......#..#.........###.#......# -#.#.....#.....................# -....#####.....##........#.#..#. -...........##..##.###.......... -..........##.....#........#...# -.......#..#......#.....##..##.# -.....##.#........#.........#... -......##......................# -.#.......#.#.#............#..#. -.....##.#.......#.#........#... \ No newline at end of file +........#..#.##.#.............. +...#...............#.#......... +...#..#...#..##....#........... +...#.............#....#.....#.. +..#......#..#...#.......#...... +..............##............... +#.......#.........#......#....# +.#.....###.....#...#.#.#...#... +#.....................#....#.#. +.......#...................#... +...#.#...................#....# +....#....#.......#...#......... +..##.#............#..#......... +.....##.#..............##..###. +...........#....#....#......... +#.....#...#...#.#.#.#.##.#...#. +.#...............#....##....... +.....#..#......#....#.......##. +.....#........#.......#........ +...#...##...#..##...#.....##... +.....#.........#.###...##...#.. +.#.##...#........#.#.#.#....#.. +....#......##.#...#.....#....#. +.......###..........#..#..#.... +......#...#.##................. +....#...#...#.........#......#. +.....#...........#...###....#.. +.....#...#.#.#....##.#......#.# +......#...#.....#..#..#........ +#......#..#...##........###.... +##.....#....##..#.#.###.#...#.. +........#....#.......#.....#..# +#.#.#.##.#.#................... +..#...##....#......#.....##.... +.......#.##..#........##..#.... +.#.#....##......#.#..........#. +#..............#............#.. +.#.#.#.#.#.####.#.#...##....... +.#..#.....##.#.......#.##...#.. +..#.#........#.............#.#. +..#.#..........#..#........#... +..#..#...#.......##...#.#....## +...#.....#.#.#.....#....#....#. +.#...#......#.....#..##........ +...#.......##.#.#.....#......#. +...........#.....#.#.......#... +#...........#...#..#.#........# +....#......#..##........#..###. +.#..#........................#. +#.......#......#...#...#..#.... +....#.#...#..#.#....#....##.#.. +.....#......#..#..........##.#. +.#.....#...........#.........#. +...###.#...#.......#.#......... +.......#....#..........#..#...# +......##..#.......#...##....... +..#..........#.......#......... +..........#..#..#..#..#........ +.#.................####...#.#.# +..##.....#............#........ +....#.....###...#......#....#.# +...##.#...........#.##......#.. +#..##..#..#....#...#..#........ +......#....#........#.......#.. +......#.....#......###......... +.#.....#.#......#.......#...... +..#.........#..#..#........##.# +..#.#....#.....#....##....#.#.. +...#.............##............ +........#..#..#......#...#..... +.....#.#...#...##.....#.....#.. +.#..#.#..........##...##.....#. +......##.#..........#...#.....# +#.#.##......#....#..........#.. +................#.......#.##... +#.......#.....#.......#....#... +#..#.....#.##..##...........#.. +.....#....#.#.##..........#..## +#.......#.....#.##...........#. +........#.##........###..#.#... +........#..................#... +#.........................#...# +....#.........#...#.#..#.....#. +.#............#....#........... +..#.#...#..##...#.#.......#.... +.#.#....#...........#.........# +...#.#..........#.....#...#.... +......#....#.#...............## +....##......###...##.##.....##. +............#.#....#.#.....#..# +.....#..#.....#.#...###....#... +.......##....##..#...##..#...## +.....#.......##..#...#...#....# +#.........##....#........###.#. +...#..##...#...#.........#.#.#. +....#.#.....#.....#............ +#........#....#..#........#.... +.......#....#...#.............. +#...#.........##.....###.#..... +.#....##..#...#..##.........#.. +....#.....#......##..#..#....#. +#.#..#.........#........#...... +..#.......#.........#.....###.. +..#..........#...........#....# +..#...............#......#..#.. +....#..#...#....###.....#..#..# +#...#...#..#...........#....#.. +.#....#.#..#....#.#...........# +.....#.....#..#....#..#....#... +#.#..#...........#.#........... +..................#.#.......#.. +...#.........#.....#..##....#.. +.........#.#...#.........##.... +...#..#....#.....#...#..#...... +.#.##.....#....#....#......##.. +##..#.........#.#....#...#..... +#......#.#...#....#.#..#....... +.......#.....#.....###....#.#.. +.#....##.#.....#...#.......#... +.#.......#..#...#......#..#..## +...............#...#........... +#..............#....#.#.#....#. +...........#..#.......#.##..#.. +..#......#.#....#...#.#.....#.. +#.............................. +#..#....#..........#...#....... +......#.............#####...... +.#...###......#.#.#.##..#...... +............#.##.....#......... +.........#....##....#.......... +###....#......#.......#........ +.#.......##..........#..#....#. +#..#.....................#....# +........#...........#.......... +..#..........#...#..#.........# +..#..#......##................# +.....##..#...#..#.............. +.......#...##..#............... +.......##..#.####....#....#.#.. +#.#..#..........#........##.... +....##....#.#..#....#.#...#.... +......#.......#...#.....#...#.. +..#..#...#.....#.......###..... +...#.......#.#.#.......#.##.... +...............#..#.#........#. +.#....###.#......#............. +.#..#...#....#.#..#.....#...... +.......#.##....#.#.##.##...#.#. +..#...#....#.#..##.#.....#...## +..#...#......#...#......#...#.. +....#..#...#.#..#......#....... +#..#...............#......#.##. +.#....#...#..........#.#.....#. +.#..#.#.#................#..#.. +.#....#.#...#..##.###..#...###. +#.............#.....#.........# +...#.........#...#.......#..#.. +......#..#.........#..........# +........##................#..#. +......#...#.#.....#......##.... +...............#...#....#...... +...#.#..#..#.....##.###..##..#. +.#....##......#...#..##..#..... +.....#.........##.##....#...#.. +.....#.#..................####. +#.....#...#.............##....# +#.#..........#...#..#..#....... +#..#.#.........#............... +....#...#.........#...##....... +...........#.....#..##..#...... +#.....#.......#.#........#..... +..##..#.....#...##......#...... +....#....#..................... +............#......#.........## +.....##.............#.....##..# +.......#.............#..#.#.##. +.###...#......#..#........##.#. +..#.#...#.#....#.....#..#...... +..#.#..#.##........#...#....... +........#.#...............#..#. +........##.......#...#.......#. +...#........##.#..........#.#.# +..#..###.#.#.......#.#......#.. +....#..........#...#..#........ +...#..#...#...#.#....#...#..#.. +...#...#........#......##...#.# +#...........#..........#..#.##. +...#..##..................#.#.. +...##.#...#....#.#...#.####.... +.....#...#.#.#..#.............. +.....#..#.#.#..#............... +..#..#..##...#.#..#.....##....# +.......#.#..#.....#....#....... +...#..#....#.........#...#..... +..............#.#...#...##..... +...................#........... +.#......#.#...................# +.##.....#........#.........#..# +.##..##...#...................# +...#....#.#..#.#.#..#.....##... +.......#..#....#......####.#... +.##..#..##....#.......#........ +.#...#...........##............ +.....#.....#........#.......... +....##..#....#.....#........... +.#...#....................#.... +....#.........#.......##.....#. +.#....#..#.....#.##....#....... +....#..#.........#.#....#.#.... +.......#.........##....#....... +..#......#....#....#...#....... +........#..#.......#.##......#. +..#.....#......#...#..#.......# +#..#.....##...#...#............ +.......##.......#........#...#. +..#......................#...#. +....##.#.............#......#.. +#.#............................ +...##.#.....#.#............#.## +......#...#..#.........##...... +.#.......#.....##.......#.#.... +...........#.#.........#..##... +...#..........#.##....#........ +........#..#..#...#....#....#.. +........##....#.#....#........# +..#........##....###....#...... +#................###...#...#... +................#.#..###......# +..#.....##.#................#.. +.....#...............#..#...... +..#.......####.....#..#.#....## +..#.....#..#....#.............. +#.#...........#.#.....#..##.... +#.#..........#.......#...#.###. +........#....#...#..#.#........ +.#.....#......#..#..#..###..#.. +.#.........#.##.#.#......##.... +..#.........#...##..#........#. +.#...................#......... +...#.#........#................ +............#.....#..##........ +..#.....#.#......#.......#...#. +........#....##..##...#.....##. +.#........#.#....#.#....#.#..#. +#.#.......#.................... +.#..#...##.........#..#........ +.........#...............#..... +...#...#.....#......#.......#.. +###......................#.#..# +...#.....####........#..#.....# +#.#...#.#...................##. +.........#..................... +#..........##..#.....#....#.... +.......#...#.#.##.#..##........ +..........#..#.#..#.#.......#.# +.....................#.#...#... +...........#.#........#.#.#.... +.......#......#........#...#.#. +.........#....................# +.##.##....#...#.#.#.#.......... +#....##..#.##....#....#.......# +.##.#...#...............#....#. +.......#...#.###....#.......... +.....#....#...#..#............. +#.........#.##....#.#.#........ +..#...#.............##..#..#... +#..##.......#..........#...#.#. +.#..#.....#...........#......#. +......#......#..............##. +.#...#..#...#..####.....#.....# +....##.......#..........##..... +.#.....#.......#.....#.#...#... +..#..#..#.#...#......#......... +......#.#....#........#.......# +........#.......#.............. +..#...#.#....#........#.......# +............#....#...##.#...... +.........#.............#..#.... +#.............#.#..##.......#.. +#....#...........###....#...... +...#.....................#..... +....#.#..........#...#.......#. +......#..#.......#...#...#....# +.#.#..#.....##.#........#...... +...........#...#.#............. +...###............#...#..#..... +..#.#.......#...#.#..#......... +.#......##...........#.....#.## +.....##.....#....##...##.#.#... +..........#.#.#......#........# +..#.#........#....##....#.#.... +.#....#...##...........#....#.. +##......#...#.......#.......... +.##...###..#...#......#..##.#.# +...........##.#..##...#.......# +..#..............##............ +........#..#........#...#..#.#. +..#.............#......#...##.. +#...##....#...#....#....#.#.... +.#.#......#..##............#.#. +.....###.#....##....#....#..... +#.#.#..........#...#...#.#.#... +.....#.#...........####........ +.....#....##...#.##..#......#.. +#....#.......#.##.......#..#... +.....#.....#........#.......... +.......#.......#...#.##......#. +...#.........##...#.#.#......## +#........#........#...#..#..... +.#......#.#......#.#...#....#.. +#..#....##.....##.............. +...#.##............#..........# +.....#.#....#..#.#............# +..#......#...###.##.......###.. +........#....#.#.#.#........... +............#..#........#.....# +....#...............#.......... +......#....#....###..#.......## +#...#...##....#.........#...#.. +...........#.#.............#... +...#..#.....#..##.#....#......# +..#...#..#...#......#.......... +....#..#....#.......#........#. diff --git a/4/input.txt b/4/input.txt index 70d209c..b17cdcd 100644 --- a/4/input.txt +++ b/4/input.txt @@ -1,1104 +1,1023 @@ -eyr:2033 -hgt:177cm pid:173cm -ecl:utc byr:2029 hcl:#efcc98 iyr:2023 +ecl:#eef340 eyr:2023 hcl:#c0946f pid:244684338 iyr:2020 cid:57 byr:1969 hgt:152cm -pid:337605855 cid:249 byr:1952 hgt:155cm -ecl:grn iyr:2017 eyr:2026 hcl:#866857 - -cid:242 iyr:2011 pid:953198122 eyr:2029 ecl:blu hcl:#888785 - -hgt:173cm hcl:#341e13 -cid:341 -pid:112086592 -iyr:2012 byr:2011 ecl:amb -eyr:2030 - -pid:790332032 -iyr:2019 -eyr:2023 byr:1969 ecl:brn -hgt:163cm -hcl:#623a2f - -byr:1920 eyr:2023 cid:146 pid:890112986 hgt:171cm hcl:#b6652a iyr:2017 ecl:hzl - -hcl:#c0946f byr:1967 cid:199 ecl:gry -iyr:2012 pid:987409259 hgt:157cm eyr:2021 - -pid:316587303 iyr:2016 eyr:2023 ecl:blu byr:1959 hgt:186cm hcl:#733820 - -hcl:#fffffd hgt:152cm byr:1996 ecl:gry eyr:2024 - -ecl:brn hgt:185cm -pid:648491325 byr:1967 -hcl:#172f67 iyr:2014 -eyr:2028 - -pid:328737320 iyr:2017 hcl:#fffffd hgt:178 -ecl:#35fad5 -byr:1959 - -iyr:2010 byr:1943 eyr:2028 -hgt:178cm hcl:#888785 pid:572750267 - -cid:175 ecl:brn eyr:2026 iyr:2017 -hcl:#5d69b9 byr:1998 pid:289515215 -hgt:151cm - -hgt:182cm -ecl:blu eyr:2028 iyr:2011 hcl:#a97842 pid:758494126 - -iyr:2023 -hgt:174cm hcl:cafc2f -ecl:utc -cid:299 eyr:2026 pid:57963956 - -pid:853993893 ecl:blu hgt:188cm cid:294 hcl:#341e13 byr:1975 -eyr:2027 iyr:2015 - -ecl:amb hgt:70 iyr:2018 pid:241872490 -byr:1962 -eyr:2024 hcl:c5f0c3 - -pid:994754974 eyr:2029 iyr:2017 -cid:137 byr:1966 hcl:#733820 ecl:blu - -ecl:utc -pid:937481632 hgt:190 -eyr:2025 iyr:2027 byr:1949 cid:84 hcl:d3f4f5 - -cid:129 ecl:brn hgt:91 eyr:1932 -iyr:2020 pid:298540404 hcl:#888785 byr:1986 - -pid:416051368 eyr:2020 iyr:2011 -hgt:93 byr:2023 hcl:#efcc98 -ecl:amb - -byr:2010 hgt:181cm -iyr:2020 -eyr:2040 pid:785862801 ecl:#f84ccd - -hgt:152cm iyr:2013 pid:932020343 eyr:2023 ecl:hzl byr:1920 -hcl:#fffffd - -hgt:152cm -iyr:2020 byr:1993 hcl:#18171d pid:120354938 -eyr:2021 ecl:gry - -eyr:2025 byr:1996 -hcl:#623a2f -iyr:2018 ecl:oth cid:177 pid:904738945 hgt:164cm - -pid:45042993 -hgt:193 iyr:2018 byr:2026 eyr:2026 -hcl:#623a2f cid:175 ecl:brn - -byr:1956 ecl:hzl iyr:2020 pid:892810672 hgt:164cm eyr:2021 cid:186 hcl:#efcc98 - -cid:314 hgt:180cm -ecl:amb hcl:#602927 byr:2027 -iyr:1958 -eyr:2020 pid:#b2b732 - -cid:50 -hcl:#a97842 -hgt:155cm pid:667716485 ecl:gry iyr:2014 byr:1995 eyr:2029 - -eyr:2030 -pid:783631610 -hgt:74 -byr:2014 hcl:z iyr:2003 ecl:grt - -ecl:#d4d852 iyr:2029 hcl:z hgt:185in -eyr:2034 pid:#526166 - -iyr:1946 eyr:1957 byr:1941 pid:632690435 ecl:oth hcl:18a37c hgt:59cm - -iyr:2013 -eyr:2026 pid:002380966 cid:95 -hcl:#623a2f byr:1965 ecl:oth - -ecl:gry pid:479214778 hcl:#18171d -byr:1928 cid:98 eyr:2020 iyr:2019 hgt:163cm - -hcl:#bd0f54 cid:225 eyr:2024 hgt:153cm iyr:2020 -byr:1956 pid:048565668 ecl:hzl - -ecl:#5d8b3b hgt:156cm eyr:2029 pid:#3df0cc byr:1967 cid:118 hcl:e23f0f - -pid:437721309 -hcl:#cfa07d hgt:181cm iyr:2019 cid:224 eyr:2028 byr:1946 -ecl:gry - -byr:1962 -eyr:2023 -hgt:182cm -pid:733248003 ecl:blu -iyr:2014 hcl:#efcc98 - -byr:1966 hgt:158cm -eyr:2029 hcl:#602927 iyr:2013 -pid:963663665 - -pid:529595074 byr:1940 eyr:2020 hcl:#c0946f cid:113 iyr:2015 ecl:oth -hgt:191cm +pid:303807545 cid:213 ecl:gry hcl:#fffffd +eyr:2038 byr:1951 +hgt:171cm iyr:2011 +hcl:#c0946f byr:1933 eyr:2025 pid:517067213 hgt:173cm ecl:hzl -hcl:#a97842 -hgt:157cm eyr:2025 iyr:2015 byr:1978 pid:579525362 - -ecl:oth hcl:#18171d cid:76 iyr:2011 eyr:2021 -byr:1953 hgt:173cm pid:976483712 - -ecl:brn hcl:#fffffd cid:242 pid:588299934 -hgt:69in byr:1947 -iyr:2010 eyr:2030 - -hcl:#fffffd ecl:gry cid:93 -pid:731904973 byr:1939 eyr:2029 iyr:2016 - -pid:96716037 iyr:1938 eyr:2032 -hgt:192 ecl:gmt byr:2029 hcl:02edc5 - -byr:1958 -iyr:2011 eyr:2029 ecl:gry -pid:526931024 -hcl:z -hgt:59cm - -byr:1966 ecl:hzl -pid:378066668 hcl:#c0946f -iyr:2017 eyr:2026 cid:142 hgt:184cm - -pid:1134356373 -iyr:2019 -ecl:grn -hcl:#ceb3a1 byr:1950 -hgt:154in - -hgt:157cm ecl:zzz byr:1976 -pid:5047305958 -iyr:2013 hcl:#341e13 - -eyr:2024 -hcl:#a97842 hgt:179cm pid:543943316 cid:214 ecl:brn -byr:1999 -iyr:2017 - -byr:1983 eyr:2024 hgt:177cm -ecl:hzl -iyr:2013 pid:328883228 hcl:#ceb3a1 - -cid:226 pid:262286178 iyr:2010 ecl:grn byr:1962 eyr:2025 hcl:#efcc98 -hgt:60in - -iyr:2029 ecl:#559ffe hcl:z -cid:156 -byr:2003 -hgt:178 -pid:93994500 - -iyr:2026 hcl:#eda7f3 ecl:amb -byr:1921 eyr:2021 pid:153cm - -byr:1988 -ecl:amb hgt:178cm hcl:#2aea45 -pid:70722502 eyr:2027 iyr:2015 - -pid:555636800 eyr:2020 hgt:182cm iyr:2019 byr:1948 cid:325 -hcl:#733820 - -eyr:1973 -iyr:2024 hcl:z byr:2028 ecl:dne cid:169 -pid:43596015 hgt:170in - -hcl:#b6652a ecl:gry -cid:264 -hgt:178cm iyr:2027 pid:23042405 byr:1947 eyr:2024 - -byr:1989 -pid:266274644 ecl:blu eyr:2023 hcl:#733820 -hgt:192cm iyr:2018 cid:272 - -iyr:2013 hcl:z hgt:73cm byr:2014 pid:192cm ecl:#1627a7 - -pid:816749378 hgt:178cm -hcl:#733820 eyr:2029 -byr:1993 - -hcl:0cacc5 byr:1944 iyr:2028 eyr:2024 hgt:163in pid:74169361 -ecl:dne - -hcl:#ceb3a1 -ecl:grn -eyr:2027 pid:481186415 hgt:176cm cid:325 -byr:1986 - -eyr:2028 hgt:174cm ecl:brn -hcl:#888785 iyr:2015 pid:064161451 byr:1969 - -ecl:brn cid:323 hgt:167 -byr:1993 iyr:1953 -hcl:z eyr:2023 pid:161542750 - -ecl:#895336 eyr:2033 hgt:67cm cid:254 iyr:1967 hcl:z byr:1954 - -ecl:#9dbea3 iyr:2018 eyr:2035 -hgt:183 -pid:747501524 hcl:#fd8515 cid:110 -byr:1997 - -ecl:utc -iyr:2014 hgt:183in byr:2007 eyr:2026 hcl:#cfa07d -cid:334 - -ecl:gry hcl:#b6652a pid:250420128 -eyr:2024 byr:1939 hgt:170cm - -hcl:#18171d eyr:2030 byr:1925 pid:204206116 -iyr:2014 hgt:174cm ecl:hzl - -iyr:2020 hcl:#efcc98 -pid:393444692 -ecl:oth hgt:152cm byr:1957 eyr:2021 - -byr:1973 eyr:2024 iyr:2014 hcl:#602927 -pid:832320186 hgt:166cm ecl:grn - -pid:192524664 hgt:182cm -hcl:#18171d -ecl:oth eyr:2030 byr:1942 iyr:2013 - -hgt:129 byr:2016 hcl:6734a1 ecl:#915282 iyr:1949 cid:130 pid:677408864 eyr:2030 - -eyr:2028 ecl:gry hgt:171cm byr:1960 iyr:2020 pid:688526729 cid:262 hcl:#733820 - -ecl:grn iyr:2019 pid:775867641 hcl:#bf1e29 -byr:1920 hgt:163cm - -eyr:2029 hcl:#866857 -iyr:2024 -pid:170cm byr:1931 -hgt:177cm ecl:hzl cid:312 - -iyr:2019 ecl:#19fef5 pid:2080468234 -eyr:2008 hgt:72 -hcl:e14dfe -byr:1980 cid:272 - -byr:2025 -cid:163 -iyr:2020 pid:758946748 hgt:161cm -ecl:amb eyr:2023 hcl:026d4d - -iyr:2021 cid:109 -eyr:2032 byr:2010 -hcl:#fffffd pid:874586711 ecl:hzl hgt:142 - -eyr:2023 -hcl:z iyr:2019 byr:2013 ecl:#b42611 pid:164cm hgt:60cm - -byr:1935 cid:226 hcl:#602927 ecl:blu pid:700452129 eyr:2029 -iyr:2016 hgt:180cm - -hgt:179cm -pid:181cm -ecl:gry cid:309 -eyr:2029 -hcl:#6b5442 -byr:1987 -iyr:2010 - -ecl:gry byr:1986 hcl:#cce4b8 -pid:101583943 iyr:2010 hgt:65cm eyr:2021 - -cid:168 -pid:#8556c9 hcl:413944 eyr:2036 byr:2013 iyr:2012 -ecl:#66dc1c hgt:59cm - -eyr:1984 byr:2017 pid:#cbc84e hcl:z -cid:189 iyr:2021 ecl:blu -hgt:152cm - -byr:1993 hcl:#004c11 eyr:2026 -iyr:2010 -ecl:brn hgt:188cm -pid:889959941 - -hgt:172 byr:2008 eyr:2030 iyr:1959 -ecl:oth hcl:#a8ebbb - -iyr:2013 hcl:#8f97b1 hgt:182cm ecl:grn cid:89 -eyr:2029 -byr:1974 - -eyr:2025 hcl:#6b5442 pid:222418968 byr:1951 cid:105 ecl:hzl iyr:2011 hgt:181cm - -iyr:2017 -ecl:brn pid:481721303 hgt:190cm -eyr:2037 byr:1990 hcl:#ceb3a1 - -hcl:z -pid:85905429 -byr:1923 cid:260 -eyr:2031 ecl:gry -iyr:2022 hgt:180cm - -hcl:#fffffd hgt:76cm -ecl:grn -pid:39254112 byr:2010 iyr:1961 eyr:2028 - -ecl:brn iyr:2016 -eyr:2027 hcl:#efcc98 pid:753268957 hgt:60in byr:1943 - -ecl:oth -pid:087762106 hgt:190cm -byr:1974 cid:171 hcl:#c63f21 -eyr:2020 - -ecl:#8c1b6c -byr:1962 iyr:2007 pid:106672731 -hgt:172in cid:239 eyr:2026 hcl:#b6652a - -hgt:170cm eyr:2021 -cid:219 hcl:#a97842 pid:040224991 byr:1950 iyr:2018 - -byr:2029 -eyr:2036 cid:309 -iyr:2016 hgt:167cm hcl:#fffffd -ecl:#1ab23b - -iyr:2013 ecl:gry eyr:2020 pid:947828194 -hcl:#18171d hgt:163cm byr:1971 - -hcl:#fffffd iyr:2011 -pid:150105713 eyr:2029 -hgt:168cm byr:1925 ecl:hzl - -cid:253 -hcl:#341e13 -eyr:2025 hgt:184cm -pid:651786830 byr:1936 iyr:2013 -ecl:hzl - -pid:7328393469 -hgt:175cm ecl:gry iyr:2012 byr:1963 hcl:#623a2f eyr:2026 - -eyr:2029 pid:669044398 hgt:161cm hcl:#cfa07d ecl:gry iyr:2018 - -pid:920006222 byr:1941 ecl:grn eyr:2027 cid:87 hcl:#733820 -iyr:2018 hgt:171cm - -byr:1964 hgt:157cm hcl:#a97842 -pid:756972774 eyr:2024 iyr:2013 ecl:gry - -iyr:2010 cid:279 -hgt:189cm byr:1959 -ecl:brn eyr:2022 pid:937686753 hcl:#602927 - -iyr:2013 -eyr:2027 cid:223 pid:145547438 -hcl:#6e6f47 hgt:165cm ecl:amb - -byr:2009 -ecl:oth hcl:#623a2f -hgt:166cm eyr:2034 pid:120339592 -iyr:2012 - -eyr:2026 hcl:z byr:2018 pid:7809314464 iyr:2012 hgt:158cm ecl:hzl - -cid:291 hgt:168 -ecl:#7734de iyr:2021 hcl:5b4ef1 pid:3381158334 eyr:1956 byr:2003 - -iyr:2015 hcl:#cfa07d -byr:1971 eyr:2023 -ecl:oth pid:560419063 cid:155 hgt:170cm - -eyr:2021 hgt:189cm iyr:2014 hcl:#6b5442 ecl:brn cid:287 -byr:1951 pid:936881112 - -iyr:2013 -eyr:2020 ecl:hzl hgt:150cm cid:210 -pid:032458640 byr:1920 hcl:#6b5442 - -hgt:180cm hcl:#cfa07d ecl:grn eyr:2027 -pid:140859202 iyr:2014 cid:232 -byr:1932 - -pid:68300657 byr:1988 hgt:181cm -ecl:hzl iyr:1951 hcl:e18469 -eyr:2013 - -pid:157572693 hgt:185cm -hcl:#065fe8 ecl:gry eyr:2027 -iyr:2014 - -eyr:2029 hgt:164cm hcl:z ecl:grn cid:270 iyr:2019 byr:1993 pid:338068138 - -iyr:2016 cid:131 byr:1990 hcl:#7d3b0c ecl:grn pid:066023454 hgt:154cm -eyr:2025 - -iyr:2019 eyr:2024 hgt:174cm -pid:855792798 byr:1920 hcl:#cfa07d - -eyr:2020 -hgt:74in iyr:2013 ecl:amb -byr:1920 hcl:3f6214 -pid:957164804 - -pid:756767000 hcl:#220540 byr:1922 hgt:172cm -eyr:2023 cid:305 ecl:hzl iyr:2019 - -hgt:193in eyr:2025 pid:117240526 iyr:2017 hcl:#888785 byr:1928 ecl:blu - -byr:1942 -ecl:blu -cid:347 -hcl:#fffffd eyr:2023 iyr:2017 -hgt:154cm pid:836554235 - -eyr:2023 hcl:#efcc98 -pid:364475403 byr:1962 iyr:2015 -ecl:brn hgt:59in cid:289 - -byr:2021 hcl:ca4bcf hgt:88 iyr:2017 ecl:gmt pid:181cm eyr:2032 - -byr:1937 iyr:2014 hgt:154cm ecl:brn -hcl:#866857 -eyr:2022 pid:234591437 - -iyr:2002 cid:139 byr:1982 -hcl:#c0946f -pid:#62721b hgt:159in eyr:1966 ecl:brn - -eyr:2036 ecl:oth byr:2026 hgt:96 -pid:137651094 -hcl:z - -pid:373485985 -iyr:2030 ecl:gry byr:2011 hgt:65cm -hcl:#733820 - -pid:390979357 -ecl:gry hgt:164cm -hcl:#ceb3a1 eyr:2029 byr:1932 iyr:2015 - -ecl:hzl hgt:68in eyr:2023 pid:829734763 iyr:2016 hcl:#733820 byr:1997 - -hgt:150cm byr:1926 iyr:2019 pid:521908229 eyr:2029 ecl:brn hcl:#623a2f - -eyr:2023 byr:1974 -iyr:2018 cid:58 -ecl:grn -pid:310883188 hcl:#866857 -hgt:164cm - -byr:1963 iyr:2019 -hgt:162cm -eyr:2021 -hcl:#fffffd ecl:oth pid:104734523 - -hcl:#888785 cid:150 -eyr:2020 byr:1988 iyr:2018 -ecl:oth -hgt:179cm pid:635972018 -iyr:2014 hcl:#7d3b0c ecl:hzl pid:717760687 -byr:1929 eyr:2027 hgt:183cm +pid:5253256652 byr:2009 hgt:152cm iyr:1989 eyr:1968 hcl:64cb63 ecl:hzl -iyr:2019 byr:2000 -eyr:2025 pid:506581828 hcl:#602927 ecl:oth -hgt:162cm +iyr:2013 +pid:862607211 eyr:2020 +hgt:174cm +byr:1990 +ecl:blu hcl:#888785 -pid:#fd3377 ecl:#618bce hcl:#ceb3a1 -iyr:1944 hgt:182cm cid:57 -byr:2022 eyr:1995 - -pid:4790730010 -hgt:192cm -cid:222 byr:2022 -hcl:4798e7 ecl:#5126d5 iyr:1954 eyr:2040 - -hcl:#b6652a -ecl:brn cid:181 pid:983890186 hgt:189cm byr:1998 -eyr:2022 iyr:2011 - -iyr:2018 eyr:2022 -cid:58 byr:1994 hgt:169cm ecl:hzl pid:036522894 -hcl:#2c9ee8 - -iyr:1979 -hcl:e09b9c byr:2016 -hgt:121 eyr:1962 pid:#fb14be cid:265 ecl:lzr - -eyr:2024 hgt:63in hcl:#efcc98 iyr:2018 -byr:1953 pid:881102827 ecl:amb - -ecl:oth hgt:177cm eyr:2028 iyr:2011 -hcl:#efcc98 pid:113579849 byr:1957 - -ecl:#fe1b74 iyr:1926 hgt:70cm -pid:70807766 hcl:556dca byr:2030 -eyr:2032 - -byr:1997 ecl:blu hgt:105 -pid:178655906 iyr:2025 -hcl:#6b5442 -eyr:2021 - -eyr:2030 ecl:grt hgt:161cm hcl:#ceb3a1 iyr:2016 -pid:318930966 cid:59 byr:1924 - -cid:200 hgt:67in -pid:229395752 byr:1936 ecl:oth iyr:2013 eyr:2020 hcl:#c0946f - -byr:1990 iyr:2018 -cid:99 hcl:#6b5442 hgt:155 pid:350832537 ecl:blu eyr:2021 - -eyr:2039 byr:2025 pid:247367429 hcl:z iyr:2013 ecl:amb -cid:118 - -eyr:2027 hcl:z ecl:utc -cid:274 hgt:175in iyr:2016 byr:1977 pid:478855994 - -eyr:2020 pid:636743032 -hcl:#64a8b8 iyr:2018 ecl:grn hgt:68in byr:1969 - -pid:515635081 iyr:2013 byr:1980 eyr:2024 hgt:173cm ecl:gry -hcl:#b6652a - -ecl:utc byr:2026 iyr:1999 eyr:1937 -hgt:66cm -hcl:z -pid:2247643960 - -iyr:2013 byr:1942 hgt:154cm eyr:2020 hcl:#18171d cid:323 pid:302753381 ecl:oth - -ecl:xry pid:346719476 -iyr:1999 -eyr:2020 hgt:154cm hcl:z -byr:2027 - -hgt:160cm eyr:2025 hcl:#fffffd byr:1998 -pid:678119271 ecl:blu iyr:2014 - -hgt:161cm iyr:2011 -ecl:blu -byr:1921 pid:236833613 eyr:2021 -hcl:#623a2f - -ecl:hzl hcl:#18171d hgt:151cm pid:541887993 -byr:1995 iyr:2019 eyr:2021 - -pid:496474711 byr:1966 ecl:gry eyr:2025 hgt:176cm -hcl:#b6652a iyr:2018 - -iyr:2010 hcl:#efcc98 pid:351846405 -eyr:2024 hgt:150cm -byr:1941 - -hgt:151cm ecl:gry hcl:#a97842 pid:586789406 -eyr:2022 iyr:2013 byr:1982 - -byr:1994 eyr:2028 ecl:gry -hcl:#888785 iyr:2010 -hgt:165cm cid:183 - -iyr:2015 -byr:1933 hcl:#733820 hgt:167cm -ecl:blu pid:914665208 eyr:2027 - -eyr:2031 hcl:6804ef -ecl:amb -byr:2024 -hgt:157cm iyr:1938 -pid:#0418fb - -byr:1936 -ecl:oth hgt:190cm cid:91 -pid:711544430 iyr:2020 -eyr:2025 hcl:#888785 - -pid:381452527 -eyr:2027 hcl:#efcc98 ecl:brn -byr:1956 hgt:63in - -ecl:oth -iyr:2014 hcl:#ceb3a1 -cid:254 -pid:544612871 byr:1985 eyr:2023 hgt:172cm - -hcl:#efcc98 -hgt:191cm byr:1948 -ecl:blu eyr:2028 -pid:953894279 iyr:2017 - -byr:1968 pid:875469219 -hcl:#efcc98 hgt:176cm cid:141 iyr:2017 - -eyr:2022 hcl:#733820 ecl:hzl -pid:870733357 iyr:2013 -byr:1949 hgt:150cm cid:252 - -ecl:gry -hcl:#602927 pid:632246684 byr:1986 -eyr:2030 hgt:152cm iyr:2013 - -eyr:2029 -iyr:2016 -byr:1969 pid:595125675 ecl:gry hcl:#cfa07d hgt:184cm - -byr:1947 hcl:z -cid:188 eyr:2038 pid:177cm iyr:2011 hgt:166cm ecl:#c1376b - -ecl:hzl hgt:170cm cid:307 eyr:2022 -byr:1971 -hcl:#b6652a pid:047040501 - -hgt:126 ecl:zzz -byr:2019 -pid:170207910 eyr:2035 hcl:23df48 -iyr:1932 - -hgt:152cm cid:270 eyr:2036 ecl:#408f6e iyr:1952 pid:5808880830 byr:2022 -hcl:0b1ba6 - -eyr:2021 hgt:179cm -byr:1938 pid:140937061 iyr:2030 hcl:#a97842 ecl:oth - -hgt:67cm eyr:2028 pid:816355657 -iyr:2019 byr:2008 hcl:z ecl:#5b4f31 - -cid:192 -iyr:2018 eyr:2020 byr:1983 pid:873720366 -ecl:grn hgt:187cm hcl:#6b5442 - -byr:1955 hgt:71in iyr:2018 pid:320019385 hcl:#6b5442 -cid:324 eyr:2027 - -pid:957860464 -hcl:#602927 -iyr:2011 -byr:2026 cid:261 eyr:2006 - -byr:1989 ecl:gry cid:143 pid:258434299 eyr:2027 hgt:192cm iyr:2017 hcl:#7d3b0c - -pid:#1742ae -ecl:#a61090 -iyr:2028 hcl:717dd0 hgt:139 cid:183 -eyr:2035 - -eyr:2028 pid:039325804 hgt:167cm hcl:#888785 ecl:oth cid:155 iyr:2013 byr:1923 - -byr:1956 iyr:2010 -hcl:#d683bf -eyr:2023 -hgt:70in -cid:197 pid:143320690 -ecl:hzl - -ecl:#4004e3 cid:278 -iyr:1950 pid:745107377 -byr:2007 eyr:2036 -hcl:8447eb hgt:74cm - -hcl:#ceb3a1 hgt:177cm iyr:2010 pid:640032134 -ecl:gry -eyr:2027 byr:1958 - -hgt:187cm -iyr:1921 ecl:#1c7d96 -eyr:1987 -byr:2028 pid:#28e5a1 cid:144 hcl:9fc25d - -iyr:2012 byr:1996 cid:289 hgt:177cm hcl:#fffffd pid:687240168 eyr:2030 ecl:gry - -pid:860410143 ecl:dne eyr:2031 cid:206 hgt:187in byr:1927 -hcl:8c2149 iyr:2012 - -iyr:2010 -byr:1963 cid:139 pid:160019759 -eyr:2030 hgt:172cm hcl:#602927 - -pid:309851270 -iyr:2014 -ecl:hzl byr:1939 -cid:71 -eyr:2030 -hcl:#b216fb -hgt:161cm - -ecl:gry -cid:138 -iyr:2014 -hgt:177cm byr:1942 -pid:900269082 eyr:2024 hcl:#fffffd - -iyr:2019 hgt:158cm -hcl:#18171d pid:941939350 eyr:2024 ecl:brn byr:1944 - -byr:2023 ecl:brn -cid:101 eyr:2016 pid:190078757 hgt:188in - -cid:188 -ecl:blu pid:075499609 -byr:1970 -hcl:#fffffd hgt:164cm eyr:2028 iyr:2015 - -byr:2011 hcl:z -ecl:gry -pid:408316491 hgt:64cm iyr:2017 eyr:1968 - -ecl:oth hcl:#6b5442 -pid:623099801 -hgt:163cm -byr:1928 - -pid:165230004 -ecl:grn byr:1935 hcl:#c0946f iyr:2012 -hgt:185cm - -hgt:162cm pid:069876432 byr:1960 cid:326 iyr:2013 -hcl:#cfa07d eyr:2021 -ecl:grn - -ecl:#f3d8ba hgt:182cm eyr:2020 byr:2007 -hcl:z iyr:2014 pid:6141297559 - -pid:867747198 -hcl:#efcc98 -eyr:2030 byr:1989 +ecl:grn byr:1955 +pid:608098408 eyr:2027 iyr:2020 hcl:#b6652a cid:264 hgt:181cm -byr:2000 eyr:2021 hgt:166cm -hcl:#fffffd iyr:2019 pid:546346187 cid:111 ecl:grn +byr:1998 ecl:hzl eyr:2021 +hcl:#866857 hgt:189cm iyr:2030 +pid:013735467 -eyr:2034 hcl:#623a2f -byr:1958 -pid:60553207 ecl:#76b538 hgt:59 cid:75 - -hcl:#623a2f -eyr:2023 pid:251940892 byr:1998 -iyr:2012 -hgt:181cm ecl:gry - -iyr:2020 cid:83 -byr:1938 eyr:2024 ecl:amb pid:046668488 hgt:181cm hcl:#341e13 - -ecl:grn -eyr:2036 iyr:1951 byr:2029 hcl:z hgt:177in -pid:135470038 - -iyr:2015 eyr:2023 -byr:1961 -cid:81 hcl:#a97842 pid:710065884 -hgt:152cm -ecl:#1f9801 - -byr:2014 -pid:25253929 hcl:z -ecl:#f3fb41 eyr:2025 cid:255 iyr:1998 -hgt:155cm - -ecl:gry pid:919070381 hcl:#efcc98 iyr:2019 eyr:2021 byr:1995 - -byr:1942 -eyr:2029 -hgt:191cm hcl:#18171d -pid:649719423 iyr:2018 ecl:brn - -ecl:gry -byr:1963 iyr:2016 hgt:188cm pid:024539026 eyr:2022 - -hgt:176cm -ecl:hzl eyr:1923 pid:176188310 hcl:#b6652a -byr:1939 +pid:075417314 hcl:#b6652a byr:1957 iyr:2011 +hgt:154cm +eyr:2025 +ecl:amb -iyr:2011 hcl:#888785 eyr:2030 ecl:gry byr:1920 +iyr:1993 hgt:74cm eyr:1960 +byr:2029 +hcl:293244 ecl:#3cb5e5 pid:4861232363 -pid:#0468a7 hcl:851fe0 eyr:2036 hgt:60cm -byr:2030 -iyr:1995 -ecl:utc +hgt:153cm hcl:#6b5442 pid:065240897 byr:1932 +cid:196 ecl:blu eyr:2028 iyr:2019 -hcl:#866857 iyr:2016 ecl:oth -pid:414233531 eyr:2022 byr:1957 -hgt:169cm cid:229 - -cid:185 ecl:#5f6f53 -pid:#20f317 byr:2024 eyr:1988 hcl:z iyr:2023 hgt:158in - -pid:015894427 eyr:2027 hgt:177cm ecl:blu -cid:222 -hcl:#c0946f iyr:2010 byr:1993 - -cid:101 hgt:162cm hcl:#c0946f pid:666662343 ecl:grn -byr:1974 -iyr:2019 -eyr:2029 - -pid:782547454 hcl:z ecl:#b0805f -iyr:2013 eyr:2023 -hgt:159cm -byr:1935 -cid:230 - -pid:298008321 hcl:231e1b hgt:166cm ecl:oth -iyr:2026 eyr:2020 - -pid:230201309 iyr:2010 eyr:2025 hcl:#6b5442 -cid:238 -ecl:grn -hgt:174cm - -cid:287 eyr:2026 hcl:#733820 -pid:201750712 iyr:2010 -ecl:oth byr:1985 -hgt:185cm - -hcl:#a97842 hgt:70in eyr:2029 -pid:419407059 ecl:grn byr:1987 -iyr:2016 - -hgt:191cm byr:1951 -eyr:2027 hcl:#8a9477 iyr:2015 ecl:amb pid:769071985 - -hcl:#6b5442 -iyr:2012 ecl:blu -cid:336 pid:391608810 byr:1995 -eyr:2022 -hgt:161cm - -iyr:2020 -byr:1938 -pid:927067439 eyr:2027 hgt:173cm -hcl:306963 ecl:xry - -byr:1991 -iyr:2021 hgt:175cm hcl:68b4f3 ecl:utc -pid:037777327 eyr:2026 - -hgt:64in -eyr:2025 hcl:#da6977 cid:137 byr:1990 iyr:2013 pid:918997697 ecl:amb - -iyr:2011 ecl:gry hgt:173cm eyr:2023 pid:802831612 -hcl:#733820 byr:1976 - -byr:1938 eyr:2021 pid:575395401 cid:234 -hcl:#866857 ecl:hzl hgt:176cm - -hcl:#ceb3a1 ecl:hzl -eyr:2035 -iyr:2014 -byr:2019 - -ecl:hzl pid:961361236 -hgt:193cm hcl:#efcc98 -iyr:2011 eyr:2030 byr:1967 - -eyr:1936 ecl:blu -hgt:153cm hcl:98d3f0 pid:7296832671 -byr:1931 iyr:1962 - -iyr:2016 eyr:2024 hcl:#6b5442 ecl:grn -pid:265815316 byr:1966 -hgt:165cm - -pid:203025149 -eyr:2029 -iyr:2010 cid:124 byr:1999 ecl:blu - -iyr:2011 eyr:2028 pid:#7e0612 byr:1924 hcl:#7d3b0c ecl:oth -hgt:82 - -ecl:hzl -byr:1941 -hcl:#b6652a eyr:2020 pid:409573276 -iyr:1976 hgt:166cm - -ecl:grn eyr:2030 -hgt:163cm iyr:2011 pid:121609314 byr:1961 hcl:#426e1a - -pid:#49ea2c -eyr:2029 hcl:#6b5442 iyr:1931 -hgt:62cm ecl:brn -byr:2012 - -eyr:2038 hcl:8d1f49 ecl:#6d4ea1 pid:0853660207 byr:2020 hgt:71cm - -ecl:hzl hgt:170cm -iyr:2011 -byr:1966 eyr:2028 -pid:609548717 hcl:#c0946f - -byr:1921 hcl:#c0946f ecl:blu iyr:2019 eyr:2024 pid:643387204 - -cid:324 hgt:162cm ecl:amb -hcl:#18171d byr:1961 -eyr:2027 iyr:2010 pid:939720354 - -byr:1933 hcl:#fffffd -pid:353343882 -eyr:2025 hgt:171cm ecl:amb cid:329 -iyr:2017 - -byr:2004 iyr:2022 -pid:157cm eyr:2035 -ecl:#eafe47 hgt:129 -hcl:z - -cid:55 iyr:2025 hgt:177in pid:493884348 -hcl:#888785 byr:1925 ecl:#b11d27 eyr:2036 - -ecl:hzl -hgt:171cm -iyr:2012 pid:479669573 cid:335 hcl:#fffffd byr:1953 -eyr:2029 - -byr:1930 hcl:5bdf31 -pid:#b21f8a hgt:164cm -cid:134 -iyr:2023 ecl:lzr - -iyr:2018 eyr:2026 ecl:grn -pid:541667478 hcl:#6b5442 byr:1992 hgt:155cm - -hcl:2a1c4f iyr:2011 -hgt:192cm eyr:2028 byr:2029 cid:270 ecl:dne pid:7995627426 - -byr:1929 ecl:oth -pid:954905104 iyr:2016 -hgt:68in hcl:#7d3b0c eyr:2020 - -cid:167 byr:2000 hgt:186cm iyr:2013 hcl:#ff4019 pid:384287209 eyr:2024 ecl:amb +hcl:#866857 byr:1922 pid:496904942 hgt:164cm iyr:2020 -eyr:2022 -iyr:2018 byr:1972 cid:290 -hgt:170cm ecl:grn pid:127269636 +pid:847705161 byr:1951 cid:124 iyr:1991 +eyr:2028 ecl:dne +hcl:6b2d28 hgt:172cm -byr:1997 -ecl:amb hgt:150cm -pid:056368047 hcl:#fffffd eyr:2020 iyr:2020 - -ecl:gry hgt:167in byr:2020 cid:131 pid:651833067 hcl:#623a2f iyr:2027 eyr:2038 - -hcl:#56c370 -iyr:2014 -byr:1941 -pid:654258425 hgt:184cm -eyr:2025 ecl:hzl - -pid:571765355 -byr:2021 +byr:2007 iyr:2029 ecl:hzl eyr:2026 hgt:168in hcl:z -eyr:1921 cid:106 iyr:1978 -ecl:#1162c5 -hgt:184in +pid:63151612 -iyr:2015 hcl:#18171d cid:237 pid:348578306 ecl:blu -byr:1988 eyr:2025 hgt:155cm +iyr:2027 hgt:172in +cid:174 byr:2014 hcl:z eyr:1921 +ecl:grt pid:#cebdc2 -byr:1963 hcl:#733820 cid:145 eyr:2030 ecl:oth pid:964094037 hgt:164cm iyr:2018 +ecl:amb hcl:#d09c0f +iyr:2015 hgt:156cm eyr:2026 byr:1962 +pid:086120872 -pid:595618708 ecl:amb -hcl:#866857 -hgt:186cm eyr:2024 byr:1924 iyr:2014 +cid:125 +pid:837849996 +byr:1958 ecl:brn hgt:166cm hcl:#ceb3a1 eyr:2028 iyr:2012 -ecl:hzl pid:484466493 -hgt:176cm iyr:2016 byr:1983 hcl:#ceb3a1 +ecl:gry hgt:180cm +pid:939059935 eyr:2023 byr:1977 hcl:#b6652a -ecl:gry hcl:#6b5442 -hgt:185cm -eyr:2029 -pid:045583320 byr:1974 iyr:2020 +hgt:190in byr:2029 eyr:1984 +ecl:gry hcl:z pid:055092916 iyr:2010 -ecl:brn hcl:352cf1 cid:149 -hgt:184cm byr:2011 -eyr:2031 -pid:21942403 iyr:2028 +hgt:63in ecl:blu byr:1940 iyr:2012 eyr:2029 hcl:#7d3b0c +pid:163033394 -ecl:brn eyr:2029 pid:083295950 byr:1995 hgt:176cm hcl:#c0946f -cid:68 iyr:2014 +eyr:2040 pid:181cm +iyr:1928 hgt:76cm hcl:d8aafb byr:1949 cid:275 ecl:xry -hgt:170cm -byr:1945 hcl:#623a2f -iyr:2013 pid:912213595 ecl:gry eyr:2020 +hcl:#cfa07d ecl:oth byr:1948 eyr:2021 +pid:719690182 hgt:179cm iyr:2020 -ecl:gry -hcl:#18171d iyr:2015 hgt:185cm eyr:2023 -byr:1950 +byr:1939 cid:266 +eyr:2026 iyr:2017 hcl:#f116d2 +ecl:hzl pid:522421825 +hgt:68in -byr:1997 hgt:68in pid:368643584 hcl:#623a2f ecl:hzl eyr:2029 iyr:2012 -cid:239 +hcl:z hgt:61in +cid:115 pid:180cm iyr:2030 byr:2014 eyr:2032 ecl:hzl -iyr:2003 eyr:2020 cid:99 byr:2027 hcl:2c10a6 hgt:74cm +ecl:xry +eyr:2028 pid:191cm iyr:2015 hgt:150cm byr:2029 + +eyr:2027 +hcl:#a97842 pid:997937480 hgt:61in iyr:2019 +byr:1921 +ecl:grn + +hgt:163cm +pid:912318455 iyr:2016 byr:1988 ecl:brn hcl:#a97842 cid:221 eyr:2029 + +cid:333 hcl:#c0946f +hgt:163cm iyr:2018 eyr:2027 ecl:oth + +cid:70 hcl:#c0946f +pid:961507902 byr:1949 ecl:grn iyr:2017 eyr:2029 hgt:69in + +hgt:169cm ecl:amb +iyr:2013 pid:496169901 +byr:1943 eyr:2028 hcl:#ceb3a1 +cid:249 + +ecl:blu cid:343 +iyr:1998 hgt:154in hcl:#efcc98 byr:1972 + +pid:508213120 iyr:2012 eyr:2025 hcl:z hgt:70cm byr:1976 ecl:brn -pid:151cm hcl:46a5fd eyr:2031 -iyr:2014 -byr:2005 ecl:xry hgt:176cm - -byr:2011 ecl:oth pid:821123244 -iyr:2022 -hcl:839b47 eyr:2039 hgt:150in - -pid:604669618 hgt:152cm iyr:2013 -byr:1954 -eyr:2021 ecl:amb hcl:#623a2f - -hgt:182cm -byr:1993 -cid:177 hcl:#b6652a ecl:gry iyr:2011 pid:441649857 eyr:2027 - -cid:296 hgt:98 -ecl:grt iyr:2028 hcl:#a97842 byr:2022 -pid:69736889 eyr:1935 - -iyr:2016 hcl:#cfa07d -byr:1941 -hgt:182cm -pid:720595987 ecl:gry -eyr:2022 - -iyr:2018 hgt:164cm hcl:#650d28 byr:1973 cid:108 pid:#b0df80 ecl:blu eyr:2020 - +iyr:1924 +eyr:2005 hcl:z -pid:315901778 -iyr:2013 -byr:1999 ecl:#49f691 eyr:2026 hgt:179cm +hgt:167 pid:154cm +byr:2007 -byr:1925 -pid:555786686 hgt:189cm hcl:#cfa07d iyr:2012 ecl:gry eyr:2028 +pid:761333244 hgt:180cm iyr:2017 hcl:#18171d eyr:2021 +byr:1983 +cid:67 ecl:oth + +eyr:1993 +byr:2003 +hcl:#602927 +ecl:grt +cid:84 hgt:178 +pid:1847086637 iyr:2026 + +hcl:#866857 hgt:162cm pid:483774485 iyr:2010 +byr:1946 eyr:2028 ecl:gry + +pid:726639691 eyr:2028 +hgt:171cm hcl:#ff65a6 +iyr:2011 byr:1989 + +hcl:z iyr:2026 ecl:xry +eyr:2037 byr:2005 pid:#f09a0f +hgt:68 cid:156 + +hgt:71in ecl:blu eyr:2026 hcl:#18171d +byr:1981 iyr:2017 +pid:698636544 + +eyr:2021 +byr:1957 ecl:brn pid:365378126 cid:93 iyr:2019 hcl:#18171d hgt:179cm + +byr:1996 iyr:2014 hgt:64cm +eyr:2034 +hcl:z + +pid:629486472 cid:140 +hgt:192cm eyr:2020 hcl:#b6652a iyr:1988 byr:2021 ecl:brn + +byr:1955 iyr:2015 eyr:2030 +ecl:gry hcl:z pid:6550198754 +hgt:158cm cid:305 + +ecl:gry hcl:#a97842 +hgt:176cm eyr:2022 pid:810146585 iyr:2020 + +byr:2027 hcl:#cfa07d +iyr:2011 ecl:#f07598 +cid:293 +hgt:150cm pid:#fa948d eyr:2029 + +eyr:2028 iyr:2013 hgt:69in ecl:gry pid:317170371 +cid:147 hcl:#bfe1f1 + +byr:1976 +pid:059341891 hgt:174cm +ecl:oth +eyr:2029 iyr:2017 hcl:#733820 + +iyr:2018 hcl:#ceb3a1 hgt:188cm cid:308 +pid:792826885 byr:1948 ecl:blu eyr:2028 + +iyr:2017 cid:94 hcl:#95c7dc +pid:231757803 eyr:2022 +byr:1992 hgt:153cm ecl:amb + +eyr:2027 +iyr:2011 hgt:186cm +ecl:brn pid:996347346 hcl:#866857 +byr:1960 + +eyr:2025 byr:2001 +ecl:blu pid:755715478 iyr:2019 hgt:61in + +ecl:gry +eyr:2038 +hgt:81 hcl:z iyr:2028 +cid:214 byr:1965 + +pid:412744447 byr:1979 hcl:#cfa07d ecl:blu +eyr:2029 cid:157 +hgt:180in iyr:1948 + +hgt:170cm +pid:623557081 byr:1924 eyr:2024 hcl:98d623 iyr:2012 ecl:amb + +cid:311 ecl:grn +iyr:2011 byr:1982 +eyr:2002 hcl:#ef318a +pid:0548169957 +hgt:87 + +eyr:2030 hcl:#733820 iyr:2016 pid:558470391 +byr:1936 ecl:oth hgt:185cm + +iyr:2019 +ecl:amb byr:1949 +pid:376468392 +hgt:178cm + +pid:019195245 +ecl:grn hgt:171cm +byr:1978 iyr:2011 eyr:2022 hcl:#733820 +cid:134 + +hcl:#623a2f hgt:192cm eyr:2026 byr:1977 +ecl:grn cid:308 + +ecl:hzl pid:715816358 hgt:69in iyr:2014 hcl:#623a2f +byr:1996 +eyr:2027 + +iyr:1947 +ecl:#39a697 +hgt:183cm byr:2029 +eyr:2022 pid:7951883913 +hcl:z + +ecl:gry byr:1950 +hcl:#18171d hgt:168cm iyr:2020 pid:677187333 eyr:2027 + +byr:1969 ecl:blu hcl:#18171d iyr:2011 +hgt:162cm +pid:701349891 + +cid:269 byr:1966 +iyr:2011 +pid:905940527 eyr:2023 hgt:190cm +ecl:brn hcl:#ceb3a1 + +eyr:2027 pid:454627395 ecl:brn +hcl:#ceb3a1 cid:302 hgt:184cm +byr:1959 +iyr:2015 + +iyr:2011 +eyr:2028 +hgt:166cm +hcl:#733820 byr:1938 ecl:blu pid:857984986 + +hcl:#c0946f ecl:brn pid:226877822 +hgt:182cm byr:1998 +cid:160 + +hgt:186in pid:26499164 byr:2017 +hcl:z +iyr:1998 eyr:2026 +cid:331 ecl:#236556 + +pid:328866543 +hgt:165cm eyr:2039 iyr:1987 ecl:amb byr:2018 hcl:z + +iyr:2016 eyr:2036 hcl:#888785 byr:1976 pid:160402352 hgt:76cm ecl:blu + +ecl:blu +hcl:#fffffd eyr:2025 hgt:66in pid:979788527 +byr:1957 iyr:2013 + +ecl:grn pid:279357265 iyr:2019 eyr:2021 byr:1953 +hgt:177cm hcl:#c0946f + +ecl:oth hcl:z eyr:2025 byr:1949 hgt:189cm iyr:2020 pid:901383503 + +byr:2019 hcl:#733820 +pid:31022828 eyr:1929 +hgt:75cm iyr:2012 ecl:grn + +pid:080462937 +ecl:blu hcl:#866857 +cid:102 +iyr:2013 eyr:2025 byr:1975 hgt:64in iyr:2016 -hgt:168cm -eyr:2027 cid:60 ecl:gry hcl:#cfa07d -pid:322944081 byr:1993 +eyr:2028 +cid:125 +byr:1979 hcl:#866857 +ecl:brn hgt:173cm pid:814947616 -pid:163cm -hgt:189cm iyr:1997 hcl:03db25 eyr:1970 -byr:2016 ecl:#6c59eb +hcl:z byr:2020 pid:#c3b54b hgt:174in eyr:2038 +iyr:2016 +ecl:gmt -pid:766719295 iyr:2017 -hgt:168cm -hcl:z ecl:grt -eyr:2022 byr:2010 +cid:132 +iyr:1958 +pid:61543452 hcl:z +ecl:zzz eyr:2039 byr:2006 -hgt:173cm pid:247156751 cid:109 eyr:2022 iyr:2012 ecl:gry byr:1989 +cid:55 eyr:2022 byr:1954 iyr:2015 +hgt:188cm hcl:#a97842 pid:49143631 ecl:amb -cid:288 -hcl:77241f -hgt:157cm byr:1956 pid:587115461 iyr:2016 ecl:lzr -eyr:2034 +hgt:152cm +byr:1982 +iyr:2013 ecl:blu +hcl:#341e13 +eyr:2026 pid:440841976 -hcl:5307c9 ecl:#cc4aff -pid:#d80d30 -cid:224 hgt:72cm byr:2025 eyr:2039 iyr:2025 +iyr:2019 ecl:blu pid:553456616 hcl:#733820 hgt:160cm byr:1932 eyr:2030 -eyr:2027 byr:2015 -hgt:184 hcl:98fb9d pid:58151347 +byr:1980 hgt:169cm hcl:#7d3b0c cid:312 iyr:2010 +eyr:2026 pid:028550304 ecl:grn + +ecl:amb eyr:2021 iyr:2014 hgt:71in pid:986053283 byr:1981 + +ecl:oth +eyr:2023 hcl:#888785 +byr:1949 +iyr:2016 pid:699325656 + +hgt:63cm cid:297 eyr:2020 pid:990390922 +hcl:#602927 ecl:lzr +iyr:2012 byr:2016 + +hcl:9ea2fa eyr:2023 pid:088680493 +byr:1998 iyr:2017 ecl:utc hgt:170cm cid:175 + +cid:316 iyr:2016 eyr:2026 hcl:#79ff1d hgt:65in +byr:1997 pid:215466710 ecl:oth + +cid:213 byr:1983 hcl:#888785 iyr:2016 pid:767747981 eyr:2025 +ecl:hzl hgt:168cm + +eyr:2030 byr:1972 +cid:282 +ecl:gry hgt:178cm +hcl:#a97842 +iyr:2018 + +hcl:#6b5442 ecl:amb +eyr:2028 cid:104 hgt:159cm pid:446429120 iyr:2012 +byr:1938 + +byr:1940 hgt:178cm ecl:oth +hcl:#ceb3a1 +pid:845683663 iyr:2015 eyr:2024 + +byr:1940 pid:496262233 +hgt:184cm hcl:#b6652a +ecl:grn cid:152 iyr:2012 eyr:2029 + +hgt:185cm pid:455744229 byr:1954 eyr:2022 ecl:gry hcl:#6b5442 iyr:2012 + +hgt:182cm byr:1966 eyr:2028 ecl:#a5b7fc iyr:2029 -hgt:183cm cid:187 byr:2019 ecl:xry iyr:2013 pid:164cm hcl:#18171d eyr:2021 \ No newline at end of file +pid:343591896 +cid:58 +ecl:hzl +eyr:2022 hgt:180in byr:2021 +hcl:#6b5442 + +ecl:utc hcl:#b6652a +pid:635147657 byr:2020 +eyr:2022 hgt:157cm iyr:2018 + +ecl:grt cid:312 iyr:1959 pid:154262836 +hgt:171cm +hcl:#fffffd +eyr:2024 +byr:1982 + +hcl:#7a12b4 pid:223424149 ecl:hzl hgt:175cm +byr:1930 iyr:2010 eyr:2028 + +hcl:#c0946f pid:633476454 eyr:2026 iyr:2011 +byr:1934 +hgt:186cm +cid:289 ecl:gry + +hcl:#fffffd pid:376300524 hgt:155cm byr:1964 iyr:2017 eyr:2021 ecl:grn + +hcl:a5d4dc byr:2006 cid:165 ecl:#db800f iyr:2029 pid:0199789970 eyr:1961 hgt:61cm + +eyr:2027 hgt:170cm iyr:2010 +hcl:#c0946f +ecl:grn pid:415726530 +byr:1985 + +cid:197 byr:1957 hgt:192in hcl:#a97842 ecl:hzl eyr:2029 pid:958973455 iyr:2011 + +iyr:2015 pid:933689314 hgt:162cm ecl:amb +cid:122 eyr:2021 +hcl:#6b5442 byr:1973 + +eyr:2026 hgt:172cm +iyr:2012 +ecl:brn hcl:#733820 pid:004474632 +byr:2000 + +hgt:191cm eyr:2030 byr:1999 pid:9155071477 iyr:2026 hcl:#602927 cid:315 +ecl:grn + +iyr:2010 pid:182884251 hcl:#18171d hgt:154cm +eyr:2020 +byr:1926 ecl:oth + +iyr:2019 eyr:1920 pid:132839546 +cid:283 hgt:188in hcl:#efcc98 byr:2027 + +iyr:2011 hgt:177cm +cid:117 byr:1976 +ecl:gry +hcl:#623a2f eyr:2030 pid:134592046 + +byr:1968 hgt:146 +iyr:2013 hcl:eefdc4 eyr:2028 +ecl:xry pid:722120008 + +iyr:2016 byr:1941 hgt:67cm cid:51 hcl:#b6652a ecl:hzl eyr:2034 pid:994005715 + +hcl:#cfa07d ecl:oth +hgt:182cm eyr:2021 pid:612583941 +byr:1983 +iyr:2019 + +byr:1922 +hcl:#602927 hgt:161cm ecl:gry eyr:2020 pid:190170808 iyr:2013 + +hgt:63cm cid:136 +iyr:1999 +pid:8235748647 hcl:z +byr:2022 eyr:1933 +ecl:#304383 + +cid:273 ecl:blu hcl:z +iyr:2011 byr:2007 +eyr:2020 +pid:942473857 hgt:178in + +ecl:grt byr:2029 hgt:187in eyr:2030 cid:160 +hcl:#efcc98 pid:#39f22b +iyr:1966 + +byr:1978 ecl:oth iyr:2011 hgt:164cm eyr:2027 hcl:#cfa07d + +hgt:75cm hcl:#1e8137 byr:1986 ecl:blu eyr:2022 pid:796688423 +iyr:2012 + +eyr:2026 +ecl:#3013af hcl:z pid:#e8597f hgt:123 iyr:2025 byr:1942 + +hcl:z hgt:177in +iyr:1993 pid:#4c9348 byr:2008 eyr:1989 + +pid:123524366 byr:1935 +hgt:156cm hcl:#7d3b0c +iyr:2020 ecl:brn eyr:2020 + +hcl:z eyr:2038 pid:7663741757 ecl:gmt hgt:174 +byr:2008 iyr:1939 +cid:225 + +hcl:#888785 hgt:172cm +ecl:oth pid:500711541 eyr:2027 +byr:1931 iyr:2012 + +pid:575447108 ecl:amb byr:1943 +hcl:#888785 hgt:173cm eyr:2024 + +eyr:2021 iyr:2010 pid:178773264 hgt:157cm byr:1965 hcl:#bb7bcf ecl:amb + +iyr:2023 ecl:#35bd84 byr:2020 +hgt:72in +eyr:2037 +hcl:#6b5442 +pid:421311669 + +byr:1921 iyr:2011 +pid:146088688 +eyr:2023 hcl:#15ed24 hgt:183cm +ecl:brn + +hcl:#b6652a cid:243 +byr:1993 eyr:2024 +iyr:2014 hgt:172cm +pid:771275594 + +eyr:2024 +hcl:#cfa07d pid:858807920 cid:293 hgt:157cm ecl:hzl iyr:2013 byr:1984 + +ecl:blu hgt:193cm cid:73 hcl:#18171d eyr:2026 +iyr:2016 pid:124151812 byr:1945 + +ecl:amb iyr:2018 +pid:214555737 hgt:157cm +eyr:2028 +byr:1925 hcl:#866857 + +pid:5633250409 +hcl:4ef7d8 +byr:2004 iyr:1958 +hgt:96 +eyr:2038 ecl:xry cid:274 + +byr:1972 pid:401239851 hgt:184in hcl:z iyr:2017 +eyr:2030 ecl:#cb289a cid:140 + +hgt:175cm +byr:1926 hcl:#cfa07d eyr:2029 ecl:gry pid:325039730 iyr:2017 + +cid:101 hgt:166cm byr:1986 ecl:amb +hcl:#7d3b0c iyr:2013 +pid:413769688 eyr:2024 + +hgt:159cm cid:311 +byr:1993 eyr:2028 pid:188cm ecl:oth hcl:#602927 iyr:2013 + +pid:565831038 +ecl:amb +hgt:155cm hcl:#fffffd cid:335 iyr:2016 +eyr:2029 byr:1997 + +hgt:122 +byr:2022 +eyr:2028 ecl:blu iyr:2017 pid:269710626 hcl:#b6652a + +cid:196 +byr:1953 hcl:#6b5442 iyr:2010 +pid:216121215 hgt:188cm ecl:blu + +iyr:2011 hcl:98166c hgt:62cm +byr:2028 +eyr:2024 +pid:792478385 ecl:grn + +hcl:#efcc98 iyr:2012 pid:020039675 eyr:2021 byr:1974 hgt:156cm +ecl:hzl + +cid:123 hcl:#7d3b0c +byr:2026 eyr:2004 iyr:2012 ecl:oth pid:349203133 hgt:160cm + +pid:085461475 +byr:1962 iyr:2020 hcl:#623a2f +eyr:2024 +cid:80 ecl:brn +hgt:154cm + +ecl:oth hgt:156cm iyr:2016 +hcl:#6b5442 +byr:1973 +eyr:2021 pid:539898580 + +iyr:2026 hgt:191cm +hcl:z +byr:1930 pid:#abc2f0 ecl:blu cid:242 eyr:2024 + +cid:167 +hgt:179cm +iyr:2017 eyr:2021 pid:756797571 byr:1949 ecl:brn hcl:#a97842 + +byr:1975 eyr:2030 +ecl:oth hgt:169in pid:4031206183 hcl:#733820 iyr:2017 cid:244 + +ecl:#54cfeb hgt:152cm +iyr:2026 hcl:36b4b9 +byr:2030 +pid:#fa1cb9 eyr:1964 + +byr:1974 cid:99 hcl:9e3296 +eyr:2032 +pid:686747414 +iyr:1995 +ecl:amb + +iyr:2030 ecl:oth hcl:z byr:1979 +pid:114661006 hgt:191cm eyr:1941 + +hcl:#341e13 iyr:2014 byr:1953 +pid:188326193 ecl:gry hgt:189cm cid:283 +eyr:2030 + +byr:1975 +pid:092061576 hgt:73in eyr:2023 +ecl:brn cid:227 hcl:#5e9d91 +iyr:2011 + +hcl:#7d3b0c hgt:167cm cid:141 +eyr:1957 byr:2012 ecl:gmt iyr:2019 pid:#1b7c8a + +hgt:168cm hcl:#c0946f pid:599500784 byr:1930 eyr:2023 ecl:hzl cid:113 +iyr:2013 + +eyr:2030 hcl:#b4cb4f +hgt:68in +ecl:brn byr:1923 pid:699162086 + +iyr:2013 +ecl:dne hcl:z eyr:1971 +pid:#580add byr:2020 +hgt:190cm + +hcl:#ceb3a1 +byr:1976 eyr:2020 +cid:162 iyr:2016 +hgt:168cm +ecl:hzl + +pid:050478613 hgt:59cm +iyr:2017 +ecl:grn byr:2030 hcl:#cfa07d eyr:2025 + +pid:352943968 eyr:2025 byr:1980 iyr:2014 ecl:gry hcl:#c0946f +hgt:193cm + +pid:328621931 cid:310 hgt:170cm +hcl:#733820 byr:1955 +iyr:2016 +eyr:2028 ecl:hzl + +hcl:#866857 +pid:095858739 byr:1956 +iyr:2018 hgt:193cm +ecl:hzl +eyr:2029 + +pid:70973661 eyr:2039 ecl:gry +iyr:2016 +cid:291 +hcl:#623a2f hgt:97 + +hcl:4d51a8 +eyr:1978 +ecl:gmt +byr:2029 iyr:2022 +pid:34507041 hgt:61cm + +byr:1989 ecl:brn pid:769582914 +eyr:2026 cid:218 +iyr:2020 hcl:#866857 hgt:184cm + +ecl:brn +iyr:1998 cid:227 +hgt:162in +byr:2026 +hcl:#602927 eyr:2027 pid:236998728 + +ecl:gry byr:1984 hgt:157 cid:295 +eyr:2020 +iyr:2018 hcl:#733820 +pid:037871534 + +hgt:166cm hcl:#c0946f pid:412146401 +iyr:2011 +eyr:2022 +byr:1938 +ecl:brn + +ecl:brn cid:95 byr:1981 eyr:2030 hcl:#efcc98 pid:777041035 hgt:152cm iyr:2011 + +eyr:2024 hgt:89 pid:3761913749 iyr:1939 byr:1967 hcl:a222f6 cid:165 ecl:#7fe574 + +cid:339 hgt:156cm +ecl:brn iyr:2013 byr:1951 hcl:#efcc98 eyr:2026 +pid:863566946 + +ecl:brn hcl:#6b5442 eyr:2023 +pid:787129723 byr:1949 iyr:2015 + +pid:#7f615a +cid:202 hcl:#6b5442 eyr:2028 +ecl:#a5419c +hgt:75cm +iyr:2011 +byr:2001 + +pid:864001133 +cid:236 +byr:1943 hcl:#733820 ecl:dne eyr:2025 hgt:171cm iyr:1989 + +pid:193073684 ecl:grn byr:1962 iyr:2014 +hcl:#cfa07d hgt:189cm +cid:321 eyr:2029 + +byr:1959 +hcl:#b6652a +eyr:2026 +hgt:159cm pid:815014918 iyr:2011 ecl:amb + +iyr:2017 hgt:182cm +hcl:#a97842 eyr:2023 ecl:grn pid:656177536 +byr:1973 + +eyr:1923 ecl:grn +cid:138 iyr:2020 +hgt:164cm byr:1958 hcl:#c0946f pid:783366277 + +iyr:1932 hgt:172 ecl:blu +hcl:#733820 byr:1962 pid:554221464 + +cid:169 pid:922622614 +byr:1942 hcl:#ceb3a1 hgt:169cm eyr:2024 +ecl:gry iyr:2017 + +cid:219 ecl:grn +hgt:156cm byr:1998 eyr:2021 +iyr:2017 hcl:#ceb3a1 pid:450186263 + +ecl:amb hgt:179cm pid:768428582 iyr:2010 eyr:2023 byr:1952 hcl:#fffffd + +eyr:2024 +hgt:193cm +iyr:2017 pid:469033795 byr:1979 hcl:#18171d cid:67 ecl:amb + +iyr:2016 byr:1937 pid:798267514 hgt:155cm hcl:#866857 eyr:2026 +ecl:oth + +hgt:172cm hcl:#866857 iyr:2018 pid:662186551 +byr:1996 +eyr:2025 ecl:amb + +pid:2854521962 +iyr:2021 +ecl:zzz +hcl:12f1ba eyr:2037 hgt:159cm +byr:1937 + +ecl:oth pid:488050418 byr:1927 hcl:#a97842 hgt:153cm iyr:2013 eyr:2024 + +pid:119536312 ecl:#2036ad +hcl:543178 iyr:2020 +byr:2013 +hgt:177cm +eyr:2022 + +pid:788908662 hcl:#602927 eyr:2029 +ecl:oth byr:1930 +iyr:2020 +hgt:179cm + +byr:1972 +pid:053386972 iyr:2014 ecl:grn hgt:65in hcl:#cfa07d + +pid:9828921035 ecl:blu +hcl:z hgt:152in +eyr:1949 byr:2010 + +cid:157 pid:097910554 byr:1999 +hgt:159cm hcl:#6b5442 ecl:blu eyr:2024 +iyr:2010 + +hcl:#a97842 +eyr:2040 ecl:#f8ad77 +hgt:173cm +byr:2019 iyr:2010 +pid:#d16a6e + +ecl:dne hgt:191cm iyr:2020 hcl:#b6652a +eyr:2021 pid:571971509 byr:1983 + +hcl:#18171d iyr:2016 pid:159074622 +eyr:2027 hgt:163cm byr:1954 +cid:257 + +pid:243560302 cid:58 +hcl:53a4cf byr:2012 +ecl:#fdbfb8 eyr:1920 hgt:179 iyr:2026 + +pid:040606106 eyr:2030 hgt:188cm +byr:1969 +iyr:2012 hcl:#ceb3a1 ecl:amb + +eyr:2022 +hgt:175cm hcl:#b6652a byr:1967 pid:269969031 +iyr:2018 + +hcl:#18171d cid:278 byr:1931 +pid:134809791 +eyr:2035 ecl:#44e6cd iyr:1993 + +hgt:177in +ecl:utc cid:289 +iyr:1923 +hcl:13a67a pid:3045345984 byr:2030 eyr:1944 + +pid:839901650 eyr:2030 +ecl:grn +byr:2015 iyr:2017 hgt:168 hcl:131f4e + +iyr:2015 pid:529736732 ecl:brn hgt:176cm +eyr:2026 byr:1952 hcl:#6b5442 + +hcl:#c0946f +cid:323 pid:303966428 iyr:2019 +eyr:2027 hgt:170cm +byr:2001 +ecl:brn + +pid:193678728 hgt:72in eyr:2027 iyr:2015 byr:1951 ecl:gry hcl:#18171d + +eyr:2026 cid:283 +iyr:1938 pid:687430885 +hgt:186cm +byr:1949 ecl:#521638 hcl:d13b2f + +eyr:2024 hcl:#ceb3a1 iyr:2013 ecl:brn +hgt:168cm pid:792088241 + +hcl:#888785 ecl:amb +byr:2009 iyr:2015 +hgt:151cm +eyr:2020 pid:223927808 + +byr:1926 +pid:717704850 +hcl:#623a2f eyr:2022 hgt:64in iyr:2018 ecl:gry + +eyr:2023 byr:1954 +hgt:169cm +ecl:hzl +iyr:2010 pid:116868997 hcl:#18171d + +ecl:hzl byr:1965 hcl:#a97842 iyr:2011 pid:506354451 hgt:172cm eyr:2029 + +eyr:2022 pid:994565705 +iyr:2013 ecl:brn hcl:#623a2f +byr:1979 + +iyr:2011 +byr:1931 hgt:183cm hcl:#284f26 cid:306 +ecl:amb eyr:2021 +pid:977533079 + +eyr:2027 +iyr:2011 ecl:gry +byr:1993 +pid:272334781 hgt:161cm hcl:#9a35b6 + +eyr:2026 +hcl:#602927 ecl:blu +pid:212300161 byr:1946 +cid:193 iyr:2020 hgt:157cm + +pid:538594567 byr:1976 eyr:2027 hcl:#efcc98 iyr:2011 hgt:154cm ecl:oth + +byr:1949 +hcl:z ecl:#ce67aa +eyr:1942 pid:7978941589 iyr:2025 hgt:161in + +hcl:#c0946f +cid:55 +byr:1963 ecl:blu hgt:161cm +pid:547120453 iyr:2015 eyr:2021 + +hgt:173cm eyr:2022 +iyr:2016 byr:2001 +ecl:hzl pid:239803460 + +hcl:#b6652a ecl:oth eyr:2021 hgt:167cm pid:401266644 iyr:1969 byr:1974 + +eyr:2030 pid:581963885 +hcl:#64cb23 +ecl:blu +byr:1928 hgt:181cm iyr:2018 + +pid:186338247 +ecl:hzl hgt:193cm hcl:#ceb3a1 +eyr:2022 iyr:2010 + +iyr:2015 ecl:gry hgt:159cm eyr:2027 hcl:#ceb3a1 +byr:1925 pid:715902111 cid:149 + +iyr:2018 hcl:#623a2f eyr:2020 hgt:162cm ecl:grn cid:135 +byr:1922 +pid:373216777 + +eyr:2020 pid:749899012 hcl:#888785 ecl:brn +iyr:2010 cid:225 hgt:172cm +byr:1972 + +iyr:2020 hgt:178cm ecl:grn hcl:#18171d pid:613792489 cid:240 +eyr:2028 +byr:1972 + +iyr:2015 byr:1938 eyr:2026 +cid:113 ecl:grn +pid:846231640 hgt:161cm +hcl:#b6652a + +ecl:gry +hcl:#ceb3a1 +byr:1956 cid:338 pid:936012518 +hgt:62in +eyr:2029 iyr:2016 + +pid:730866353 ecl:brn byr:1986 +iyr:2014 +hgt:190cm +eyr:2021 hcl:#a97842 cid:126 + +eyr:2021 +cid:180 pid:958310635 ecl:brn iyr:2015 hgt:189cm hcl:#efcc98 + +hgt:188cm ecl:hzl pid:179001863 iyr:2016 eyr:2029 hcl:#341e13 byr:1932 + +cid:77 eyr:2027 hcl:#623a2f iyr:2016 ecl:brn hgt:170cm +byr:1947 + +hgt:66in pid:617518313 iyr:2013 byr:1977 hcl:#b6652a ecl:brn eyr:2025 + +pid:787861420 +iyr:2014 hcl:#623a2f hgt:61in +ecl:oth cid:78 +eyr:2022 byr:1975 + +ecl:hzl +iyr:2017 eyr:2028 hcl:#602927 +byr:1958 pid:985208714 +hgt:160cm + +byr:2002 +iyr:2013 +hcl:#341e13 pid:188110633 ecl:gry hgt:169cm +eyr:2025 + +byr:1981 +eyr:2028 +hcl:#341e13 ecl:amb hgt:160cm cid:121 +iyr:2015 pid:963848397 + +iyr:2013 hcl:#866857 pid:#db8648 eyr:2021 ecl:gry +byr:1975 +hgt:153cm cid:114 + +hgt:109 +cid:287 hcl:#6b5442 +iyr:2028 byr:1926 eyr:2036 pid:2378208387 +ecl:#245a62 + +pid:857722366 +byr:1975 eyr:2027 +ecl:grn iyr:2019 hcl:#0afad1 +hgt:66in + +byr:1935 hcl:#cfa07d hgt:173cm ecl:brn eyr:2021 iyr:2019 + +cid:66 eyr:2024 hcl:#efcc98 byr:2002 iyr:2010 +hgt:176cm pid:697153153 ecl:amb + +iyr:2019 +hcl:#cfa07d ecl:blu +pid:695914972 +eyr:2024 +hgt:158cm +byr:1943 + +ecl:xry hgt:62in +pid:14733148 cid:148 +iyr:2016 byr:1925 hcl:#6b5442 +eyr:2028 + +iyr:2025 +cid:53 hgt:132 ecl:gmt hcl:159b19 +pid:156cm +byr:2025 eyr:2001 + +hcl:#623a2f ecl:oth byr:1974 iyr:2018 hgt:161cm eyr:2029 pid:6826285172 + +ecl:gry +byr:1956 hcl:#7d3b0c hgt:170cm iyr:2020 + +eyr:2020 +pid:#946a88 hgt:186cm hcl:#733820 byr:1946 ecl:#016645 iyr:2015 + +hgt:181cm hcl:#888785 iyr:2013 pid:634152817 +byr:1982 cid:245 ecl:grn eyr:2021 + +ecl:brn +pid:737531770 iyr:2010 +eyr:2020 +byr:1929 hgt:189cm hcl:#c0946f + +cid:158 iyr:2019 hcl:#341e13 eyr:2027 ecl:amb +byr:1986 pid:834976623 + +pid:976934668 cid:61 eyr:2020 iyr:2020 +hgt:76in byr:1927 ecl:amb +hcl:#e05ee3 + +pid:526042518 iyr:2019 eyr:2027 hcl:#623a2f byr:1976 ecl:amb + +pid:279367290 hcl:#a97842 hgt:158cm +eyr:2027 +byr:1959 +iyr:2020 + +ecl:xry byr:2028 +pid:357216861 hcl:#a97842 eyr:2024 hgt:66cm +iyr:2012 + +hgt:188in +ecl:lzr cid:64 eyr:1958 byr:2014 hcl:z pid:285207570 iyr:2026 + +eyr:1973 iyr:2017 ecl:oth cid:282 pid:695814158 +hcl:z + +iyr:2010 pid:661168409 +hcl:#53c696 +hgt:186cm ecl:amb +byr:1960 +eyr:2029 + +eyr:1982 hgt:169cm +iyr:2002 byr:2025 hcl:327f93 pid:831648100 + +byr:1967 ecl:oth +eyr:2021 +hcl:#602927 iyr:2014 +pid:274974402 hgt:183cm diff --git a/5/input.txt b/5/input.txt index ecb0192..b8975f7 100644 --- a/5/input.txt +++ b/5/input.txt @@ -1,789 +1,936 @@ -BFFFBBFRLR -FBFFFBBLRL -BFFFFFBRRR -FBBBFFFLRR -FFBFBFBRLL -FBBFFBBLRR -FBBFFFFRLL -BFFFBBFRLL -BBFBFBFRLL -BFFFFFBRLL -FFBFFFBRRR -BBFFBFFRLR -BBFFBBFLLL -FBFBFBFLLL -BBFFFFFLLR -FFBBBFFRLL -FFBFFBFRRR -BFFFBBFLRL -BFBBBBFLRR -BFBFFBFLLL -FFBFFBBLRL -FFBFBFFRLR -FFBFBBBLLR -FFFBBFBLLR -FFFBBBFLRL -FBFBBBFLLL -FBBFFFBLLR -BFFFBBBRLL -FFBBFBBRRL -FBFFBBBLLR -FBFBBFFRRL -FBBBBFFLLL -FFBFBFFLLR -BFFFFBFLLR -FBBBFBFLRR -FBFFFFFRRR -FFBFBBFRRL -BFFFBBBLLR -FBBFFBFRLL -BFFFFBBRLL -FBBBFFFRRL -BBFBFFFLLR -FBBFBBFRLR -FFFBFFBRRR -BFBBFBBLRL -FBBBFFBLRR -BBFFBBFLRR -FFBBFBBLLL -BFFBBBBRRL -FBBFBFBRLL -BFFFFFFRRL -BBFBFBFLLL -FBFFBFFLLR -FBFBFBFRLR -BFBFBBBRLR -BBFFBBFLLR -BFFBFBFRRR -BFBBFBFLLL -FBFBBFBRLR -FBBFBFBLRL -FBFFBFFLRR -BFFFFFFRRR -BFFFFBFRLL -FBFBFFFLLR -BFFFFBFLRL -BBFFFFFRLL -FBFBFFFLRR -BFFBFBBLRL -BFBFBBFLLR -BFBFBBBLRL -BFFBFFFRRL -BFFFFFFLLL -FFBBBBBLLR -FBBBFFFLLL -BFFFBBFRRL -FFFBFBBRLL -FFFBFFBRRL -BFBFBFBRRR -BBFFFBFLLR -BFFFBFFLLL -FBFBBFBLRR -FFBBBBFLRR -BFFBBBFLRR -BBFFBBBLLR -FFFBFBBRRL -BBFFFBBLRR -FFBFFFBRRL -FFBFFFBRLR -BFBFBFFRLL -FBFFFBFLRL -BBFFFFFRLR -BFBBFFBRLR -FBFBFBBRRR -BFBFFFFLLR -FFBFBFBLRR -FFFBBBBRRL -FBFFBBFRRR -BFFBBBBLRR -BFFBFFFLLR -BFBFFBFLLR -FBBBBBBRLR -BFBFFFFLRL -BBFFBFFLLL -FBBBBBBLLR -FFBBBBBRRL -BFBFFFFLLL -FBFBBBFRLL -BFFBBBFLRL -FBBFBBBLLL -FBFBBFBRRR -FFBBFFFRLL -BBFFBBBLRL -FBBFFFBRLL -BBFBFFBRLR -FBBBFFBLLR -BFBFFFBRRL -FBFFBBBRLL -FBFBBBBRLL -BFFFBFFRLR -FFBBFBFRLR -BFBFBFFLRR -FFFBBFFLRR -BFBFBBBLLL -BFBFBFBRLR -BFFFFBFLRR -FFBBBFBRRR -BFFFFBBLLR -BBFFBFBLRR -BFBFFFBRRR -BFFFFBBRLR -FBBBBBFRRR -FBBFBBFLLR -FFBBFBBRLL -BFBBFFBLRR -FBBBFFFLLR -BFFFBFFLRL -FBBBBFBLLR -BFBBFBFLRR -BFBBBFFLLL -BFFBFBFRLL -BFBBFBFRRL -BFFBFFBLRR -FFBFFFBLLL -FFFBFBFLRL -FBBBFBBLRR -BFFFBBBLRR -FBFFFFFRLR -BBFFBBBLRR -BFBFFBBLRR -FBFFBBBRRR -FBFFBFFLLL -BFBBBBFRLL -FBBBBBBRRL -BFFBBBBLRL -FFBFBBFLRR -FFBBBFBLLL -FBBFFFFRLR -BBFBFBFRRR -FBFBFFBLRL -FFBBFBBLRL -FBFBBFFLLL -BFFFBFBLRR -FBFBFFBLLR -FBBBBBFLRL -FFBFBFFRLL -BBFFBBFRRR -FFFBBFFLLR -BFBBBFBLRR -FFBBFFBLRL -BFFBBBFRRL -BFBBBBFRRL -BBFFBFFRRL -FFBFFBBRRR -BFFBFBFLRR -FBFBFFBRRR -FBBFBBFLRL -FBFFFFBLRL -FBFFFBBLLL -FFBFFBFRLR -FBFFFBBRRL -BFBBBFBLLL -BFBFBFFLRL -BFBFFBFRRR -BBFFBBBRLL -BBFFFBFLRL -BBFFBFFRLL -FBBFFBFLLL -FBBBBFFLLR -FFBFFFFLLR -FFBBBBFLLR -BFBBBBBRRR -FFBBFBFRRR -FFBFFBFLRL -FBFBBFFRRR -BFBBBFFRRR -FBBFBBFRLL -FBBFBBBRLR -BFFFFFBRLR -BFFBFBBRLL -FBFFFBBLRR -FFBFFFFRLL -FBBBBFBRRL -FBBBBFBRLR -BFBBBBFLLL -FBBBBBFRLL -FBFBFBFLRL -FFBFBBFLLL -FBBBBFFRRL -BFFBFBFLLL -FFFBBBFLLL -FBFBBBBLLL -BFBBBBFRLR -BBFBFFFRRR -FBBBBBBLRL -BFFFBFBLRL -FFBBFBFLLR -BFBBBFBLRL -FBBBBBBRLL -FFBBFFFRRR -BFFFFBBRRR -FBFFBBBLLL -BBFBFFFLRL -FFBFFFBLRR -FFBBBFBLLR -BFFBBFFRRR -FBBFBFFLRL -FFBBBBBLRR -FBBBFBBLLL -BBFBFBFRLR -FBFBFBBLRR -FBBBFBBRLR -FBFBFBBLLR -FFFBBFBRRR -FBBBFFBRLL -FFBBBBFLRL -BBFFBFFRRR -FBFBFBFLLR -FBBBFBFRLR -BFFBBBFRRR -FFFBFBBLLR -BBFBFBBLRR -FBFFBBFRLR -FFBBBFFLLR -FFBBFBFLRL -BFFBFFFLLL -BFBFFBFRRL -FBFBBBBRRL -BFBBBBFLLR -FBBFFBBRLL -BFFBBFBRLR -BFBFFFBLRR -FFBBFFBLRR -FBBFFFFRRL -BFBBFBBLLR -FBFFFBFRLR -BFBBBBFLRL -BFBBBBBRLL -FFBBBBFRLR -BBFBFFBLLR -FBBFFFBLRR -FBFFFFFLLL -FBBFFBFRLR -FBFFBBBRRL -FFBFBFBRRL -FFBBBBFLLL -FFBFBBBRLR -FBBFBFBRLR -BBFFFBBLLR -FBBFFBBLLL -FFBBFFFLLL -FBBBBBFLRR -FFBBFFFLRR -BFFBFFBLLR -FBFFBFBRRR -FFFBFFBRLR -FBFFFFFLRR -BFFFBFBRLL -FBFBBFBRRL -FFBFBBBLRL -BFFFBBFLLR -FBBFFBBRRR -BFBBFBFRLL -FBFFFFBRLL -BBFFFFBLRR -BFFBFBFLLR -FFBFBBBRRL -FBBFFFBRLR -FFBBBBFRRR -BFBBFFBLLR -BFBFFFBLLL -BFFFBBBRRR -FBFBBBFRRR -BFBFFBBRRL -FBFBBFBLLR -BFFFBBBRLR -BFFFFBFLLL -BFFBFFBRLR -FBBFBFBRRR -FFBBFBBRRR -FBFFFBBLLR -BFBBFBBRLR -FFBBBBBRLR -FBFFBBFRRL -BFFBBBFLLR -FBBBFFBLLL -BFBFBFFRRR -BFBFBBFRRR -FBBFFBBLLR -BFFFFFFLLR -FBBBBFFRLR -FBBBBBBLLL -BFBBBBFRRR -BFBBBFFRLR -FFBFFBBRLL -FFBBFBFLLL -BFBFFFBLRL -FFFBBBFLRR -FBBFBFFRRL -FFFBFBFLLL -BFFBBFBLLL -BBFFFFBLLL -BFBBBBBRRL FBBFBFBLRR -FBFFBFBRLL -BBFBFBBLLL -FFBBBFBLRR -FBBBFFFRRR -BFFBBBBLLL -FBFBFBFRRR -BFFFFFBLLL -BFBFBFBLLR -BBFFFFBRRL -FBBBFBFLLL -FFBFFFFLLL -FBFBFFBLLL -FBBBBBBRRR -BFBFFBFLRR -FFBFBFBLLL -FFBFFBFRRL -BFBFBBFRRL -FFBBFBBLLR -FBBBBBFLLR -BFFBFFFRLL -BBFFFBBLLL FBFFFFFLLR -FFBBBFFRRR -FBFFFBFRRR -FFFBBBBLRL -FBFBFBBRRL -FBBFBFBLLL -BFBFFFFLRR -BBFFBFBLRL -FFFBFBFRLR -BFFBBFFLRL -FFFBBFFRRL -BFBFBFBRRL -FFBBBFFLLL -BBFFFBFLRR -FFFBBBBLLR -FFBBBFFRLR -FFBFBBFLRL -FFBBBFBLRL -BFBFFFFRRL -FBFBBFFLRR -FBBBBBBLRR -FBFBBBBRRR -FFBFBFFLRR -FBBFBFFRLR -BFFBBBBRRR -BFFFBFBLLL -BFFBBFFLLL -BFFFFBBLRL -FFBBBBBLLL -FBBBBFFRRR -FFBBFFBRRL -BBFBBFFLLL -FFFBBFBRRL -BFBFFFFRLR -FBFFBFBLLL -FFFBBFFLRL -BBFFBFFLLR -FBBFBFFLRR -FBFFBBBRLR -FBFFFFFRRL -FFFBBFBRLL -BFFBFFFLRL -BFFBBFBLRR -FFBFBFBLRL -FBBFBFBLLR -BBFFFFBLLR -BFBFBFBLRL -FFBBBFBRRL -BBFFBFBLLR -BBFFFFBRRR -FFBFBFBRLR -BBFBFFFRLR -FBBBFBFRLL -FFBBFBFRRL -BBFBFBBLLR -FFBBFFFLRL -FFBFFBBLLL -FBFBBFFLLR -FFBFFFFLRR -BFBBFFBRLL -BFBBFBBLLL -BBFBFFFRRL -FBBBFBBRRL -BBFBFBBRLR -BBFBFFBRRL -FBFBBBFLRL -BFBFBFFRRL -FFBBBBFRRL -BFFFBBFRRR -FFFBBBBRLL -FBBBFFBRLR -FBBFBBBRLL -BFBFFBBLRL -FFFBBBFLLR -BFBBFBBRRR -FFFBFBBLLL -FFFBBBBRLR -FBFFBFBLLR -FBFBFBBRLR -FFBBFFBRLR -BBFFFFFLLL -FFFBFFBRLL -FFBBBBBRLL -FBBFBFFLLR -BBFFFBBLRL -FBBBFBBLLR -BFFFFFFLRL -FFFBFBFRRR -BFFFFFBLRL -BFBBFBFLRL -BFBBFFBRRL -FBFBBFFRLL -FFBFBFFRRL -BFFFBBFLLL -BBFFBFBRLR -BFFBFBBLLR -FBFBBBBLRL -FBFFBFFRRR -FBFFFBBRRR -FBBFFBBLRL -FBFBBBBRLR -BFBBFFFRRR -BFFBBFBRRL -FBBFBFFRLL -FFBBFFFRLR -FFFBFBFLRR -FFBBBBFRLL -FBBFBBBLRL -BBFFBBFRLR -BBFFFBFLLL -BFFFFBFRRL -BFFBBFBLLR -FFBFFFBLLR -FFFBFBBLRR -BFBFFBFLRL -BFFBBFBRLL -FBFFBBFRLL -FFBBFBFLRR -BBFFBFBRLL -FBBBFFBRRL -FBFBBBFLLR -FFBBFFFLLR -FBFFBBFLRR -BFBFBFBLLL -BBFBFFBLLL -BFFFBBFLRR -BFBBBFBRLL -BFBFBBFRLL -BBFBFFFLLL -FBFFFFBLRR -BFFFBFBLLR -FFBBFFBLLL -FBBBFFFLRL -BFFBFFBRRL -FBBFBFBRRL -FBBBBBFRLR -FBBBBFFLRL -FBBBFBFRRL -BFFFBBBRRL -FBBFBFFRRR -BFFFFBFRLR -BBFBFFBLRR -BFBBBBBRLR -FBFFFBBRLR -FBFFBBFLRL -FBFFFFBLLR -BFFBFBFRRL -FFBFBBBLLL -FBBFFBFLRR -BFBFBFBLRR -FFFBFBFRRL -FFBBBBBLRL -BFFBFFFRRR -FFBFBFBLLR -FFBFFBBRRL -BFFBFFBRLL -BBFFBFBLLL -BFBBFBBRRL -FFBFFBBRLR -BFFFBFFRRR -BFBBFFBLLL -FBFFFBFLLR -BFBFFFBLLR -FFBBBFFLRL -FFBFBBFRRR -BFBBFFFRLR -BFFFBFFLLR -FBBFBBFRRL -FBBFFBFLRL -BFBBFBFLLR -FFBBBFBRLR -FBFBBFFLRL -FBFBFBFRRL -FBBBFBFLRL -FBFBBFFRLR -FFBFFBFLRR -BFFBFBBRRL -BFFBBBBRLL -BFBFBBBRRL -BFFFFBBRRL -BFFFFBBLLL -FBFFFBFLRR -BFFFBBBLRL -BBFFBBFLRL -FFBBFBFRLL -FBBBFFFRLR -FBFFBFBRRL -BFBBBBBLLL -BBFFBFBRRR -FBBBFFBLRL -BFBBFFFLLL -BBFFFFFRRR -FFFBFFBLRR -FBBBFBFLLR -BBFFFBBRRR -FBFFFBFLLL -BBFFFBFRLR -BFFBFBFRLR -BFBBBFFRRL -BFBFBBBRLL -BFFBBFBLRL -FFBFBBFLLR -FBBFFFBLLL -BBFBFBFLRL -FFFBFBBRRR -BBFFFFBRLL -BFFBFFBLLL -BFFFBBBLLL -FFFBBFBLRR -FBBFBBBLRR -FBFFFBBRLL -FFBFFFBLRL -BBFFFBFRLL -BFBFBFFRLR -FBFBFBBRLL -FBBBFFBRRR -FBFBFFFRLR -BFBBBFBLLR -FBFFFBFRRL -BFBBFFFLRL -BFFBBFBRRR -BBFBFFFRLL -BFBBBFFLLR -FBFFBBBLRR -BFFBBBFRLL -BFBBFFFRRL -FFFBBBBLRR -BBFFBBBRLR -FBFBBBBLLR -BFFFBFBRRR -FBFBFFFLLL -FFFBBBFRRR -FFBFFBFLLL -BBFFBBBRRR +FBBBBBBLLR FFBFBBBRLL -FBBBBFFLRR -FBBFFFBRRL -FBBBFBBRRR -FBFBBFBLRL -BBFFFBBRLL -FBFBFFBLRR -FFBFFFFRRL -FBBBBFBLLL -FFFBBFFRRR -BFBFBBFLRL -BFBFBBBRRR -FBFFBBFLLR -FBFBFBBLLL -BFBFBBFRLR -FFBBBFBRLL -BBFBFBFLLR -BFFFBFFRRL -FFFBBBFRLL -FBFFBFFLRL -BFFFFFBLLR -FFFBBFBRLR -BBFBFFBLRL -BFFBBFFRLL -BFBBFFFLRR -BFBBBBBLLR -BFFBBFFLLR -FFBFBFBRRR -FFBBFFBLLR -FBBBFBBRLL -BFBBFFBLRL -FBBFBBBRRL -FBBBBFBLRL -BFBBBFFLRL -BFFFFFBLRR -FBFBFFFRLL -FBFBFFBRRL -FBFFBFFRLL -BFBFBFBRLL -BFFBFBFLRL -BFBBFFBRRR -BBFFFFFLRL -FBBBFBBLRL -BFBFFBBRLL -BBFFFBBRLR -BFBFFBFRLL -FFBFFFBRLL -BFFBBBBLLR -FBFFFFFLRL -BFBBBFFRLL -BFFBFBBLLL -BBFFBBBLLL -BFFBBFFLRR -BFFBFFFRLR -FBFBFFFRRL -FBBFFBFRRL -FBBFBBBRRR -BFFFFFBRRL -BFBBFBFRRR -BBFFBFFLRL -FBFBBFBRLL -FBFBFBFLRR -BBFFBBFRLL -FFBBBFFRRL -BFFBBFFRRL -BFFBFBBRRR -BBFFFFFRRL -FFBBFBBRLR -BBFBFBBRRR -BFBFFFFRLL -BFFBBFFRLR -FFFBBFBLRL -BBFFFFFLRR -BFBFBBFLLL -BFBBBBBLRR -FFFBFBFLLR -FBFFFFBLLL -BFFBBBFLLL -BFFBBBBRLR -BFFFFFFLRR -FFFBFBBLRL -BFFFFBFRRR -FBFFBBFLLL -FBFFFBFRLL -BBFBFFBRLL -BBFFFFBLRL -BBFFBFFLRR -FBBBBFBRRR -FBBFFFFLLL -FFBBBBBRRR -BFBFFBBLLR -FBFFFFFRLL -FFBFBFFRRR -FFBFFBFLLR -BFBFBBFLRR -FBFBBBBLRR FBBFFFFLRR -FFBFBBBLRR -FBFFFFBRLR -FBFBBBFLRR -BFBFFFFRRR -FBBFFFFLLR -BBFBFBBLRL -FFBBFFBRRR -FFBFFBBLLR -BFBFBFFLLR -FBBFBBFLRR -FBBFFFBLRL -BFFBFBBLRR -FFBBFFFRRL -FBFFBFBRLR -FBFFBFBLRL -FFBFBBFRLR -FFBFFFFLRL -BBFFFFBRLR -FBFFBFBLRR -BFFBFFBLRL -BFBFFBBRRR -FBFFFFBRRL -FBFBFBBLRL -FFFBBBBRRR -BBFFBBFRRL -FBBFFBBRLR -BFFFFFFRLR -FBBFBBFRRR -FBFBBBFRLR -BFBFFFBRLR -FBBFFBFRRR -FFBBFBBLRR -FFFBBFFRLR -FFFBFBBRLR -FBBFFFFLRL -FBFBFFBRLL -BFBBFFFLLR -FBBFBBBLLR -BFFFFFFRLL -BBFFBBBRRL -FBFBBFBLLL -BBFBFBFLRR -FFBFBFFLRL -FFBFBBFRLL -FBBBFFFRLL -BBFFBFBRRL -FBBBFBFRRR -FFBFBFFLLL -FBFFFFBRRR -BFBFFBBLLL -FFFBFBFRLL -FBBFBBFLLL -BBFFFBFRRL -FFFBBFBLLL -BBFBFBBRLL -BFBBBFBRRR -BFFFFBBLRR -BFBFFFBRLL -BFFFBFFLRR -BFFBBBFRLR -FBBFFFFRRR -FBFFBBBLRL -FFBBBFFLRR -FFBFBBBRRR -BFBBFFFRLL -BFBFBBBLLR -FFFBBFFRLL -FBFBFBFRLL -FBBBBFFRLL -FFFBBBFRLR -BFBFBBBLRR -FBFFBFFRRL -FFBFFBFRLL -FBBFFFBRRR -FBBFFBBRRL -BBFFFBFRRR -FFFBBBFRRL -FFFBBFFLLL -BFBBFBFRLR -FBBBBBFLLL -BFBFBFFLLL -FBFBFFFRRR -FBFFBFFRLR -BFBBFBBLRR -FFBBFFBRLL -BFBBFBBRLL -FBBBBBFRRL -BFFFBFBRLR -BFBBBBBLRL -BFFBFFBRRR -BBFBFBFRRL -BFBFFBFRLR -BFFBFFFLRR -FBBBBFBRLL -BBFBFFBRRR -BFFFBFBRRL -BFFBFBBRLR -FBBBBFBLRR -BFBFFBBRLR -BFBBBFBRLR -BBFFFBBRRL -FBBFBFFLLL +BFFBFFFLLL FFBFFFFRLR -FBFBFFBRLR -BFFFBFFRLL -FBFBBBFRRL -FBFBFFFLRL -BBFBFFFLRR -FFBFFFFRRR -BFBBBFBRRL +FBBBBFBRLR +BFBFFBBRRL FFFBBBBLLL -BBFBFBBRRL +BFBBFBBLLL +FBFFFFBRLL +BBFBFFBRRR +BFBBBFFRLR +FBFFFBFRLL +BBBFFFFLLL +FBBFBFBRRR +FFBBBFFRRR +BBFBBBFLLL +BBFFBFBLRL +FBFBBFFLLR +BFFBBBFLRL +FFFBBBFLRL +FBFBFBFRLR +FBFBFFBLLR +BFFFFFBRLL +FFFBBBFLRR +FFBBFBFLLR +FFBBBBFRRL +BFFBFFBRLR +FBBBBFFLRL +BBFFBFFLRR +FFFFBBFRLR +BFBFBBFLRL +BFFFBBFLLR +BFBFFBBLLL +FFBFFFBRRR +BBFFFBBLLL +FFBFBFFRLR +FFFBBFFRRL +FBBFBBFLRR +BBFFBFBRRL +FFBFFBBRRR +BBFFBFBRRR +BFFFBFBLRL +FFFBBFBRLL +BFBBFBFLRL +FFFFFBBRRR +FBBBBBBRRR +FBFBFFFLRR +FBBFFFBLLL +BFBBFFBRLL +BFBFFBBLLR +FFBBFFFLLL +FBBBFBFRLL +FFFFBFFLRL +FFBFBFFLRL +BFBBBFBRLR +BBFBFFBRRL +BFBBBFBLRR +FBBBBFBRRL +BFFFBBBLRL +BFBFFBFLRL +FFFFFBBRLL +BFFBBFBLLL +BBFBBBFRRL +BBBFFFFRRR +FBFBBFFRLL +BFBFBFFRLR +BBBFBBFRRL +BFBFBBFRLR +FFBBFBBRRL +FBFFFFBLRL +BFFBBBFRLR +BFBFFFFRRR +BFBFFFBRRR +FBFBBFFRLR +FBFBBFBLLL +BBBFFBFRLL +BFFBBBBLLL +BBFFFFBRLR +FBBBBBBLRL +BFFFFBFRRL +FFFBBFBLLR +FBFFBBBRRR +BBFFFFBRRR +FBFFFBBLLL +FFBFBFFRLL +FBFFFFBLLL +FFBFFFBLLR +FBFBBFBLRR +FBFBFFBLLL +BFBFBBFLRR +FFBFBFFLLR +FBBFFFFLRL +FFBBFFBRLR +FFBFBBFRRR +BFBFFBFRRR +FFFFBFBLLL +FFBBFFBLLR +BBFFBBFLLL +FFFBFFBRRR +BBFBFFFLRL +BFBFBFBLRR +FFBBFFFRLL +FFBFBBBRLR +BBFBFFFLLL +FBFFBFBRLL +FFBFBFBLLL +BBFFBFFRLR +FBBFFFBLRL +BFBFBFBRLL +BFFBBFFRRR +BBBFBBFLLR +BBFBBFBLRL +BBBFBBBRLR +BBBFBFBRLL +BBFFBBFLLR +FFBBBBFLLL +BBBFFFFRLL +BBFBFBFLLL +FFBBFBBRRR +FFBFBBBRRL +FFBFBBFLRR +FBBFFBBLRL +FFFBFFBRLR +BBBFFBBRLR +FBFBBBBRLL +FFBFFBFLLR +BFFFFBFRRR +FFBBFFBRRL +BBBFFBBRLL +BBBFFBFLLL +BBFBFFFRLR +FFBFFFFLRL +FBFFBFBRRR +BFBFFBBLRL +FBBBBBFLLL +BFBFFBBRLR +BFBFBFBLLR +BBBFFFBLLR +BFBBFBFRLL +FFBFFBFRLR +BFBFBBFLLR +BBFFBBFRRL +FBFBFFFLLR +BBFBBFBRRL +BFBFFBFRRL +BFBBFFFLLL +BBBFFBFRRL +BBBFBBFLRR +BFBBFFFLRR +FBBFBBFLLL +BFBFFFFRLR +FFBBFFFRRR +BBBFBBFRLL +BBBFFFFLRL +BBBBFFFLRR +BFFBFFFRRR +FFBBBBBLRR +FBBFBFBRRL +FFBBBFBLLR +BBFFFFFLLR +FBFFBFFLRR +FBBFBBFLLR +BFBFBFBRRL +BFFFFFBLRR +FFFBBBFRRR +BBFFFFFLRL +BFBFBFBLLL +FFBFBBFLRL +FFBFFBFRRR +FBBBFBBRRR +FFBFBFBRLR +BFFBFBBRRR +BFFFBFFRRR +FFFBFBBLRL +BBBFBFFRRL +BBFBFBBLLR +FBFFBBBLRL +BFBFBBBLRR +FBFBFBBRRL +BFFFFBFRLL +FBBBBFFRLL +BBFFFBFLRR +FBBBFFFLLL +FFFFFBBLRR +BBBFBBBLRL +BBFBFBBRRR +FBFBFFBRLR +FFFBBFFLRL +FBBFBBBRLL +FFBFFFBRLL +BFBBBFBLLR +FBFFFFFLLL FFBFFBBLRR -FBBFFBFLLR \ No newline at end of file +FBFBBFBRRR +BBFBBFFRRL +FBBFFBBLRR +BFFBFBFRLL +BFFFFBFLRR +FFFBFBFRRR +BBFFBBBRLL +BFBBFFBLRL +FFBBBBBLLL +FBBFBBFRRL +BFBBFBBRRL +FFFBFFFLRL +FFBFBBBLRL +FBBBFBFRRR +BFFFBFFLRL +BFBBBFFRRL +FBFFFBFLRL +FBBBFFBRRL +FBFBFBFRLL +FBFBBBFRLL +BFFFFFFLRR +FFBBFFBLLL +BFFFFBBRLL +FFBFFBBLLL +FBFBFBFLRL +FBBBFBFLLL +BFBBFFFRLR +BFBBFFFLLR +BFBBBBFLLL +FBBBFFFRLR +FBFFBBBLLL +BBBFFBFLLR +FBFBBBBLRR +FFFFBFFLRR +FBFFFBFRRL +BFFFBFBLLL +BBFFFFFRLL +FFBFFFFLRR +FFFBBFFRLR +FBFBBBFLLR +BFBFBFFLLR +FBBFBFBLLR +FBFFFBFRLR +FBBBFFFRLL +BFFFFBFLLL +FFFBBBBRRR +BFFFFFBRLR +FFFFBBBLRL +FBFBBBFRRR +BFFFBFBRRL +FBBFFBBRLR +BFFBBBBRLL +FBFFBBFLLL +FBFBFFFRRR +FFBFFBFLRR +FBBFBFFRLR +FBFBBFBLRL +FFFBFBFLLL +FFFFBFFRRL +BFBBFFFRLL +BFFBBBBLRR +BBFBFFBRLL +BBFFFFBLRR +BBBFFFFRLR +BFFBBFBRLR +BBFFBFFLLR +FFFFBBFLRL +FBBFBBFRLR +BBFBBFFRLL +BBFFFBBRLL +BFFBBBFRLL +BBFBBFBLLR +BBBFFBBRRL +FFBFFBFRLL +BFBBFBFRRL +BFBFBBBRRR +FBBBFFBRLL +BBBFFBFLRR +FBBFFBBRRL +FFBBFFFLRL +BFFFBFFLRR +FFFFBBBRRR +FBBBFBBLLR +BFBBFBBLRL +FBFFBFBLRL +FFBFBFFLRR +BFFBFBFLRR +BBFBFFFRLL +FBBFFFBRRL +BBBFBFFLRR +BBFBBBBRLL +BBFFBBFRLR +BFBBBBBLRL +BFBFBFBRRR +BFBBFBFLLL +BFFBBBBLRL +FBFFBFBRRL +BBFBFBFLRR +FBBFFFFRRL +BBFFFFBRRL +FFFBFBFRLL +FBFBBFBRLL +FBFBBFFLRR +FFFFBFBRLL +FFFFBBFLLR +FFFFBBBLLR +FBFBBBFRRL +FFFFBBBLLL +BBBFBFFRLL +FBBBBBFRRR +BBFBFFBLRR +BBFFBBFRLL +BFFFBBFRLL +BBBFBBFLLL +BFFBFFBLRL +BBFFFBBRRL +FBFBFBFRRR +BBFFBFFLRL +BBFBBBBRRL +BFFBFFFLLR +FBFBBBBRLR +FBBFBFFRRR +FFBFFBFLRL +BFFFFBFLLR +BFFFBBFRRR +BFFFFBBLLL +FFFBBBFLLR +FBFFFFFRLR +FBFBFFFRRL +FBFBBBBLLL +BBFFFBFRLL +BBFBFBFLRL +FBBFFBFRLL +FFFBFBFLRR +FFBBFFFLRR +BFBFBFBRLR +FFBFFFBRRL +FBBFFBBRRR +BBBFFBFRLR +BFBBFFBLLR +BBBFBFBLRL +FBFBBBBLRL +FBFFFFFRRR +BBFFBBBLRL +BBFFFBBRRR +BFBBBBBLRR +FFBBFBBRLL +BFBBBBFRLR +FFFFBBBRLL +FFBFBBFRLR +FBFBBBBLLR +FFBFBBFRRL +FBBBFFBRLR +FFBFFFFLLR +BFFBBFFLLL +BBFFFBBLLR +BFFFFFFLLR +BBFBFBBLRL +BFFFFFBLLL +FFBBBBBLRL +FBFBFBFLLR +FBFFBFBLRR +BFBFBBFLLL +BFFBBFFLRR +FBFBBBFRLR +BBFFBBBRRR +FFBBBFBLLL +BFBBBFFLLR +BBFFFBFLLL +BFBFFFBLLL +BFBFFFBLRR +BBFBBBFRRR +FFBBFBBLRR +FBFBFFBRRL +BFBBFFBRLR +FFFBBBBRRL +BFBFFFBRLL +FFBBFBFLRL +BFBBFBBLLR +FBBBFFFRRL +FFBBBBBRLL +FBFBFFFRLL +BBBBFFFLRL +FBBFFFBLLR +BBFFFFBRLL +BBFFBBBRLR +BFFFFBBRRR +FFBBFFFLLR +FBBBFFBLLR +BFBBFBFLLR +BBBFBFBRRL +FBBBFBBRLL +BFFBFFFLRR +BFBFFFBRLR +BFBBBFFRRR +BFBFFBBLRR +FBFBBBBRRL +FFFBFBBLRR +FFBFBBBLLR +BBFFBBFLRL +FFFBBFBLRL +FBBFBFBRLL +FBFFBFFRRL +BFFFBFBRLR +BFBFBFFRRR +FFFFBFBLRL +FBBBBBFLLR +FBBBFFFLLR +FFFBFBBRLR +BBBFBBFRRR +BBBFBFBLRR +FBBFBFFLRR +FBFFFBFRRR +BBBFFFBRRL +BBFFFBFRRL +BFBBBFBLRL +FFBBBFBRRL +FFBBBFFRRL +FBBBFBFLLR +FBBFBFBLLL +BBBFFFBLRR +BFBFFBFRLL +FBFFBBBLRR +BFFBFFBLLL +FFFBBBFRLL +BBBFFFBRLL +FBFBBBFLLL +FBFBFBBLRL +FBBFFBBLLL +FBBBBFBRLL +FBBFBFBLRL +FBFFFFBRRL +FFBFBFBRRL +FFBBBBFRRR +BFFBBBFRRL +FBBBBFBLRL +BBFBBBFLRL +BFFFFBBLRL +BFFFBBFRLR +FBBBBBBRLL +FFBFFBBRLR +FBFBFBFLRR +FFFBFBBRLL +BBFBBBBRRR +FFFBBBBLRR +BFBFBBBLRL +FBBFBBFLRL +BBFBFBFLLR +FBBBFBBRLR +FBBBBBBRLR +BFFFBFFRRL +BBBFFFBLLL +FBBFBBBRLR +BBFFBBFRRR +FFBFFFBLLL +FBFFBBFRLR +BFBBBBBRRL +BBFFFFFRRR +BFFFFFBRRR +FFBFBFBRLL +FBFFBBFLRR +FFFFFBBRRL +FBBFFFBLRR +BFFFBFFLLL +BBFBBFFLLL +BBBFBBFRLR +BFFBFBBLLL +FFBFFFFRLL +FBFFBBBRLR +BFFFBBBRLR +BBFFBBBLRR +FFFBBBBRLL +FBBFBFFLLL +BFBFBBBLLL +FBBBBBFLRL +FFBFFBBLRL +BBBFFFBRRR +FFFBFBFLLR +BFFFBBBLRR +BFFFBBBRRL +BBFFFFFLLL +FBBBBBFRRL +BFBFFBBRRR +BFFFFFFRRR +FBFFBFBRLR +BFBBBBFLLR +FFBBBFBRRR +BFBFFFFRRL +BFFBFFBRLL +FFFBFFBLRR +BFFBBFFRRL +BFFFFBFRLR +FBBBBBFRLR +BFBBBBBLLL +FFFBFBBRRR +FFFFBFBRRL +FFFBBBBRLR +FBFBFFBLRR +BFFFBBFLRL +FFBBFFFRLR +FFFBBFBLRR +FBBBBFBLLR +FFBBBFBLRR +FBFBBFFRRL +FFFFBFBLRR +BFBFFFFLLL +FBFBFBBRLL +FFFFBFFRLR +FFBBBBBLLR +BFFFBFFRLL +FFFFBFBLLR +FBFBFBFRRL +BBFBBBFLRR +BBFBBBFLLR +BBFBBFFLRL +BBBFFFFRRL +BFFFFBBRLR +BFBBFFFRRL +BFBBBFFLLL +FFFBBFFRLL +FBBBBFBLRR +BBBFFBFRRR +FBFBFFBLRL +FBBFBFFRRL +FFFBFBBRRL +BFBBFBBRLL +BFBBFBFRRR +FFFBFBBLLL +BFFBFBBLRR +BFBBBBFRLL +BFFBFBBLLR +FFFFBFFLLR +FFBBFBBLRL +BFBFFFFLLR +FBFFBBFRLL +FFFBBBFLLL +BBBFFFFLRR +BFBFBBFRRR +FFBBFBFRLL +BBFBBBBRLR +BFBFBFBLRL +BBBFFBBLRR +BBFFBFFRLL +FFBFBFFRRR +FFBBFFBRRR +BBFBFBBLRR +BFFBFFBLLR +FBFFBFFRLL +FFBFFFFLLL +FBFBFFFLRL +FBFFBBFLLR +BFFBFFBLRR +FBFFFFFRLL +BFBFBFFRLL +FFBFFFBLRR +BFBBBBFLRR +BFFBBBBRRR +FBFFBBBRLL +BBBFBBBRRL +FFFBBFFLRR +FFFFBFBRLR +BBFBBBFRLR +FBBBBFFRRL +FBFFFBFLLR +BFFBFFBRRL +BBFBFFFLRR +FFFBFFBLLR +FBBBFBBLRL +FBFBFBBLLR +BFFFBFFLLR +FFFFFBBRLR +BBFFBFFRRL +BFBFBBBRLR +FBBBFFBRRR +BBFBBFBRLR +FBFBBFFLRL +BBBBFFFLLL +BBFFBBBLLL +FBFBBFFRRR +BBFFBFFLLL +FBBBFFFLRL +BFFBFFFLRL +FBBFFFBRLR +FBBFBBBLRL +FFBFBBFLLL +FBFFBFFRRR +BFFFFFFLLL +BBFBBFBRLL +BFFFBFBRLL +FBFFBFBLLL +FFBFFBFRRL +BBFFBFBLLR +FBBBFBFRLR +BFBFBFFRRL +BFBFFFBLLR +FFBBFBBRLR +BBFBFBBRRL +FFBFBFFRRL +BFFBBFBRRR +BFFFFBBLLR +BFBFFBBRLL +BFBBFFBRRR +FBFBBFBRRL +FFFFBBFRRR +BFFFBFBLRR +FBFFFBFLLL +BBFBBBBLLL +BBFFFFBLLR +FFFBBFFRRR +FFBBBFBLRL +BFBBFFFRRR +BBFBFFBLLR +FFBBFFBLRL +FFBFFFBLRL +BBFBBFFRLR +FFBBFFFRRL +BBFFFBBLRL +FFFBFBFLRL +FFBBFBBLLR +FBFFBFFRLR +BBFBFBFRLL +FFFBFFBLLL +BFFFBBFRRL +FBFBFFFLLL +BBFFBBFLRR +BFFBBFBLRL +FFBBFBFRLR +BBBFFFBLRL +FBFBBBBRRR +BFBBBFBLLL +BFBBFFBLLL +BFFFBFFRLR +BBBFBFFRLR +FBBBFFBLLL +FFFFBFFRLL +FFFBFFBRRL +BFBFBBBRRL +FBBFBBFRLL +BBFBBBBLLR +BFFBBBFLLR +FFBFBBBRRR +FFBFFFBRLR +BFBBFFBRRL +BBBFBFFLLR +FBBBFFBLRR +FBFBBFFLLL +FBFBFFFRLR +FBBFFFFRLL +FFBBFBFRRL +BBFBBBBLRL +FBBBBBBLLL +FFFBFFFRLR +FBBFFFFLLL +FFFBBFBRRR +BBFFBFBLRR +FFBFFBBLLR +FBBBFFBLRL +BBFBBBBLRR +FFBFBFFLLL +FBBBBFBRRR +FFBBBFFLLR +FBFFFBFLRR +BFFBFBBRLR +FBFBFFBRRR +BBFFBBBLLR +BFBFBBFRRL +FBFFFFBLLR +FFBBFBFRRR +BFBFFFFRLL +FFFFBBFRLL +FBBFBBBLRR +FBBBBFFLLL +FBBFFFBRRR +FBBBFBFLRR +BFFBFBBRLL +FBFFFFBRRR +BFBBBBBRLR +BBBFFBBLLR +BFFBFFFRLL +BBFBFFBRLR +BFFFBFBRRR +FBBFFBFLRR +BFFFFFFRLR +FBBFFBFLLL +BBBFBFFRRR +FBBFFBBLLR +FBBFFFFRLR +FFFBFFFRRR +BFFFFFFRRL +FFFBFFFLRR +BFFFFFBRRL +BFFFBBBRLL +BFBBBBFRRL +BBBFBBFLRL +BBBFFBBLRL +FBFBFBBLRR +BBFFFBFLRL +BFBFFFFLRR +FBFBBFBLLR +BBFBFBFRRL +FFBBBFBRLR +FFBBFBFLLL +FBBFBFBRLR +FBFBBBFLRR +BFBFBBBLLR +FFBBBBFRLL +FFFBBBBLRL +BFBFBBBRLL +BFBBFBBRRR +BFBBBBBRRR +FFBFBBFLLR +FBBBFBFLRL +BBFFFBFRLR +FBBBFBBLRR +BBFFFFFRLR +BFBFFFFLRL +BFBFFBFRLR +FBBBBBFRLL +FFFBFBFRLR +BFBFBFFLRL +FBFFBFBLLR +BFFBBBBRLR +FBFFFBBLLR +FBBFBFFLLR +FBBFFFFLLR +BFBBBFBRRR +FFBBBFFLLL +FFBBFFBRLL +FBBFBBBRRL +BBFBFFFRRL +FFBBBBFLLR +FBBFFFBRLL +FFFBBBBLLR +FBFFFFFLRL +FFFFBFBRRR +FBFBFBBRLR +BFFBBFBLRR +FFFFBFFRRR +BBFBBFFRRR +BBFBFBFRRR +FBFFFFFRRL +BFFFFBFLRL +BFFFFFFRLL +BFBFFBFLRR +BBFFBFBRLR +FFFBBBFRLR +FFBBFBBLLL +FBBBBFBLLL +FFBBBFFLRR +FFBFFBBRLL +BFFBBFBRRL +FFBFBFBLRR +FFBFBBFRLL +FBBFBBBLLL +FBFBBFBRLR +BBFFFBBLRR +FFFBFFFRRL +FFBBBFBRLL +FBBBFBFRRL +FBFFFBBRLR +FFFBFFFLLL +BFBBFBBLRR +BFFBFBFRRL +FFBBBBFLRL +BBBFFBFLRL +FBFFBBFLRL +FBBBFFFLRR +BBFFBBBRRL +FFBBFBFLRR +BFFBBBBRRL +BBFFBFBRLL +BBFFFFFRRL +FBFFFBBRRR +FFFBFBBLLR +FFBFBFBLRL +FBFFBFFLLR +FFFFBBBRRL +BFBBBFFLRL +BBBFBBBLLL +BBFBFFFLLR +FFBBBFFRLR +BFFBFBFRRR +FBBBBBBRRL +BBBFBBBRRR +FBFFFBBRLL +BBFBFFBLRL +BFFFFFFLRL +BFBFBFFLLL +FFBBBBFRLR +BFFBFBFLRL +FBBFBFFLRL +BFBBFFFLRL +FFFBFFBRLL +BFBBBFBRRL +FFBFBFBLLR +BFFBFBBRRL +FBBBBFFLRR +BFFFBBBLLR +FBFFFBBRRL +FBBFBFFRLL +BBFBBFBRRR +BFFFFBBLRR +FFFFBBBRLR +FBBFFBFRLR +BFFFBBFLRR +BFFBBFFRLR +BFFBFBBLRL +FBFFBBBLLR +BFBBBFFLRR +BFFFFFBLRL +BBBFBFBRLR +BFBFFFBLRL +BBFBBFFLLR +FFBBFFBLRR +BBFBBFBLRR +BFFFFFBLLR +BFFBBFFLRL +BFFBBBBLLR +FBBBFFFRRR +BBBFFFFLLR +BFFBBFFRLL +FBBBBFFRRR +FFBFBBBLRR +FBBBFBBRRL +BFFFBBFLLL +FBFFFBBLRR +FBBFFFFRRR +BBFBFBFRLR +FBFFFFBRLR +FFBBBFFLRL +FFFFBBBLRR +BFFBBFBRLL +FBBFBBFRRR +BBBFBFBLLL +FBFBFFBRLL +BBBBFFFLLR +BFFBBBFLLL +FBBFBBBRRR +BBFFFFFLRR +BFFBFBFLLR +BBBFFBBLLL +BBBFBBBLLR +BBFFFFBLRL +FBBBBFFLLR +FFFBBFBLLL +FBBFFBFRRR +FBBBBFFRLR +FBFBFBFLLL +BBBFBBBLRR +FFFBFBFRRL +BFFFBBBRRR +BBBFBFBLLR +FBFBFBBLLL +BBFBFFBLLL +FFBFBFBRRR +BBFBFBBRLL +FBFFFFBLRR +BBFFFBBRLR +FBBFFBFLLR +BBFBBBFRLL +FFFBBFFLLR +FBBFFBFLRL +BBFFFBFRRR +FBBBBBBLRR +BBBFBBBRLL +BBFBFFFRRR +BFFFFBBRRL +FFFBBFBRLR +BFFBFFBRRR +BFBBFBFLRR +FFBBBBBRRR +BFFFBFBLLR +BFFBFFFRLR +BFFBFBFRLR +FFFBBBFRRL +FFFBFFBLRL +FFFFBBFLLL +BFBBFBBRLR +FFBBBBFLRR +BBFBFBBLLL +BFBBBBBRLL +BFBBBFFRLL +FBBBBBFLRR +FBFFBBFRRR +FBFFBBBRRL +BFBBBBFLRL +BFFBBFBLLR +FBFFFBBLRL +FBBFBBBLLR +BFBBFFBLRR +FBBFFBFRRL +FFBBBBBRLR +FFBFFBBRRL +FBBFFBBRLL +FFFFBBFRRL +BBFFFBFLLR +BBFBBFFLRR +BFBBBBBLLR +FBFFFFFLRR +FFBFFBFLLL +BFBFFBFLLL +BBBFFBBRRR +FBFBBBFLRL +FBFBFBBRRR +BBBFFFBRLR +BBBFBFBRRR +FFFFBFFLLL +BFBFFBFLLR +BFBFFFBRRL +FFBFBBBLLL +BFFFBBBLLL +BFBBBBFRRR +BBFBBFBLLL +FFBBBBBRRL +BBBFBFFLLL +BFFBFFFRRL +FFFBFFFRLL +BFBFBBFRLL +BFBBFBFRLR +FFFBBFFLLL +FFBBBFFRLL +FFBFFFFRRL +BFBFBFFLRR +BBFBFBBRLR +BBFFFFBLLL +BFFBBFFLLR +FFFBBFBRRL +BFFBBBFRRR +BFFBBBFLRR +BFBBBFBRLL +FBFFBBFRRL +BBFFBFFRRR +BBFFBFBLLL +FFFBFFFLLR +FBFFBFFLRL +FBFFBFFLLL +FFFFBBFLRR +BBBFBFFLRL +FBBBFBBLLL +FFBFFFFRRR diff --git a/5/part1.py b/5/part1.py index 7c4c26d..ca5f8e5 100644 --- a/5/part1.py +++ b/5/part1.py @@ -4,19 +4,20 @@ with open("input.txt", "r") as f: boardingPasses = f.read().split("\n") def decodePass(encoded): - row = 0 - row += 64*(encoded[0] == "B") - row += 32*(encoded[1] == "B") - row += 16*(encoded[2] == "B") - row += 8 *(encoded[3] == "B") - row += 4 *(encoded[4] == "B") - row += 2 *(encoded[5] == "B") - row += 1 *(encoded[6] == "B") - column = 0 - column += 4*(encoded[7] == "R") - column += 2*(encoded[8] == "R") - column += 1*(encoded[9] == "R") - return row * 8 + column + if len(encoded) == 0: return 0 + row = 0 + row += 64*(encoded[0] == "B") + row += 32*(encoded[1] == "B") + row += 16*(encoded[2] == "B") + row += 8 *(encoded[3] == "B") + row += 4 *(encoded[4] == "B") + row += 2 *(encoded[5] == "B") + row += 1 *(encoded[6] == "B") + column = 0 + column += 4*(encoded[7] == "R") + column += 2*(encoded[8] == "R") + column += 1*(encoded[9] == "R") + return row * 8 + column maxBoardingPass = max(decodePass(boardingPass) for boardingPass in boardingPasses) -print(maxBoardingPass) \ No newline at end of file +print(maxBoardingPass) diff --git a/5/part2.py b/5/part2.py index 8a2c339..9ec184e 100644 --- a/5/part2.py +++ b/5/part2.py @@ -4,19 +4,20 @@ with open("input.txt", "r") as f: boardingPasses = f.read().split("\n") def decodePass(encoded): - row = 0 - row += 64*(encoded[0] == "B") - row += 32*(encoded[1] == "B") - row += 16*(encoded[2] == "B") - row += 8 *(encoded[3] == "B") - row += 4 *(encoded[4] == "B") - row += 2 *(encoded[5] == "B") - row += 1 *(encoded[6] == "B") - column = 0 - column += 4*(encoded[7] == "R") - column += 2*(encoded[8] == "R") - column += 1*(encoded[9] == "R") - return row * 8 + column + if len(encoded) == 0: return 0 + row = 0 + row += 64*(encoded[0] == "B") + row += 32*(encoded[1] == "B") + row += 16*(encoded[2] == "B") + row += 8 *(encoded[3] == "B") + row += 4 *(encoded[4] == "B") + row += 2 *(encoded[5] == "B") + row += 1 *(encoded[6] == "B") + column = 0 + column += 4*(encoded[7] == "R") + column += 2*(encoded[8] == "R") + column += 1*(encoded[9] == "R") + return row * 8 + column allIDs = list(decodePass(boardingPass) for boardingPass in boardingPasses) diff --git a/6/input.txt b/6/input.txt index 05f8af8..73ff341 100644 --- a/6/input.txt +++ b/6/input.txt @@ -1,2131 +1,2093 @@ -vkplsqwiftuazyje -mokluxwbsfhgc +lqhksfnerg +negsc +snage +engs +sneg -tlfxgqinzmdju -zjmvfstnplqd -xztfjnlqemd -cmatrlfnbjqodz +ctfzrdbsapql +srldfatzqcpb +qsntlprfdbza +ldptswouqbxzafr -xrumszojqa -mqsorcixzuja +ncjolhqfbp +gphonqbflxj +jepdmfhsqtonz +cqpihonjbgf -bwdvujyzsneiom -njqzvyhceriodl +abytu +ayu +ayu +uhodlay +uay -nhbxcfgwpraqje -abcqfnrpwehgxj -pqrfxancbjglewh -exhfbanpwrcgjq +kzx +xjwk +kxfhsdc +xjk +jkx -skmy -koq -zqtk -vkgfjun +rwxckmfn +xpcrkft -zkmhpcq -jnubrdys -fvdswier +ntaf +lacuserbk -nj -njehcry -yhnr -tudngxkovfa +sxwdfmnpl +xpsmnwlfd +lpxmwsndf +xfdmlwnps +pwlnmdsxf -pcnv -nscvp -nvpc +gjvcfamuty +uqfmjgzatpvyc +yfcjtavghm +amqfjkpgvyct +svgcenmylotjafbx -fjmpugzckbwho -quxmhkzad -uzmohyjkr +yepqgs +nsfqwghce +segvq -wdscxfnlgaibejomtvp -slqgmrkuyotwz +mi +l -eao -woa -ao -oa +eirgvuadbphcfsmyqnzotxjlk +qjeintsxubmfchoavpyzglrkd +fdjeyhbxgqclsnaimoptkvruz +iexuntjgmvfhqykspzbdclrao +hkjgpqlyaxdtcnvobmrzifuse -d -d +i +nl +on +zbp + +aqpjnkeowivfbdhgr +pgiojefhvrqdawknc + +ugmsibf +msbigfu +csgfimubj +mfisbgyu +nsmvuigfbe + +demjnxcwbsri +aypesftqhzluko + +ecoxhl +lochex +chelox +xhcoel +cholxe + +xntubrdemhylsoi +gfjihrutbaewzpoxlys + +iuqkewnyv +uyptkn +nyupsk + +e +f + +bxrsntkjdwivceapq +cqbakpimsvetnjxwrd +knvxqwpasurcodietbj +xvrqbdjiwsacykpent +npsavtbqxijkewrczld + +pk +qpwsk +zpk + +qdchnb +qwxbcdhyir +jhbdcq +hnecdbq + +tdryep +th +vxg +bre +e + +f d d -eobljmc -fdtepbjc -xnecrhbuzjg -qbceasjy -bawkdecij +rspjhlqocixnw +xicoqjpnlwsh +lxinqphjoscw +jhlowspincxq -tmuoedrpzabncijwx -itudehyxowpcl -gtelwqxoiudpkc +qptb +btpq +guqhbtpd -gadtfkeom -ekgtfrm -jtoeckgfm -kugtfmer -misnkqebfvtg +nzloqtcxmfgdbj +tcfdnbmzgqlxo +bqkgnxazecltidsoymf +wtzmxcpflbongdhvq +zfroctngqdbmxl -vn -m -ygup -nqm +kcyhtoendvzwafbmuj +eltymcnhaowbkdzvuf +sfkmvobdnteuychzaw -fjvluqzongtmd -dyxcpbrzho +wetrpdnqab +qrpkenabgwtdl +nahwtbrpdsef -sr -rs -rs -sr -rs +hqbtefp +xslnrykmvau +zghcqtojidw -tlxvdqpuear -kmdltoxuz +gqsyhx +vcent -cgabvoz -iprelmqfju -bwzgknch +pazioqhkbd +qnopbmrahdyk +dxbmkhaqotp +vkhaofqcdp +kqpzhaod -ktendlaj -rqibyxfuwma -jahdtce +ytljngqdmxfck +tcjmkfnqlgydx +mfctkldxqpjuynvg +ldtfnycxqkmjg +lndxtfkymgjcq -kjv -kvj -jkvbi -jkv -jkv +elrfwpobjxa +mtpfoarbsdj -ehtypgizds -egwispytdhz -eyhzpidstg -tiyhpesdgz -ztlydgpseih +qigtfkwhobpvrcyzjuelnd +zcawdbogrhqnlieyufpkt +hqlzcnrikfypswutoxbegd +butncgpyovzrlfwideqhk -yht -doalj +ozdnivyjlwkp +venpbsuzlodyw +xfdqnzhwyopvltcr +aizdgmlywponv -fghm -fhmg -hifmgb +tqg +qt +rqs -stgck -ajpluiyrqvhw -tsf +whm +vadomyl +wmnqh +gwmps +mcnu -hwqmofuy -pnkjlbdtai -ygzx -ysfm +loav +zdl -cfdxwnhopyvme -wvuedfhn -wahnkfgdiev -wheuvfdnj +vsleinyhgo +kshrxvaymptw +cqsubvf -ikylabn -lbiyank -kqilymbna +ofd +fod -eahgurwvbt -qfskieyuz -eduvgr +pdjrszhgkfe +dfshzegk +edhzfkgs -oqhpjibznk -kobjqwpinh -kznpjbqohi +wti +ftcwib +iwtoz +wiut -sujoglfhzrnmabxpi -phgubrxmsoajfznl -snjpmogrlhufaxbz -fphagxbjlrnomzsu +joebqrhgxvst +alkgprwetohvznqdmcb +vbrgeoqhyjtix +thrfequgbxvo -baotd -boaudt -botdj -gwdxtfobhq -tnjbdo +ejx +ezfmnx +iderjhxc -uhdiramngvtfjewq -gnmhudaqewrtfjvi -qrvaigdmhuwftjen +hfrqe +rjambh -nmal -mal -aml -almb -nlma +ytsdznehwg +dwrohqyvmscgjz -x -x -x -q +xdatzefv +kcxwhypoanlr -kidfopmvtr -xdpifwrkotvs -eztjfqpvorhkncdau +tbvdcol +tblcodv -hyu -hyu -huy -oyuh -huy +kg +kyg -xwdupilevjcazn -bzdarpgnlivexusjc -avxujgfdwecilpnz -lcpytozuendiajxv +wxtezyuomkfdhspqjcn +xuoqwtphyckfjndzsme +ouzwykhqfcndmspejxt +ncemfpxsquzwyhdtkvoj -hwck -ckwh -kwhc -bckhw +dyfvmobrspnlguqaw +vhalnuwbypod +xjuawvbptnyohld -ktbhifgn -hbvigntuk -nbihtgkf -kbgihnt -bnifkgth +bmytkawjszl +jaystwzmkl +msatlkwzjy +vghcafoer +graecvhzo +uavrcoheg +rhgvcaoe + +nvjga +avgni + +g a +g +g + +otxj +xtjqo +xtoj +jxntoy +ltqjxoa + i +ji i -i -k +ai -kzvohlrcnjwuifam -lkujhzfwrcnoimav -uzlcvfhjrnmwskaio -zcojhmnvurklfiaw - -htvnf -fvnth -vhtnf - -ncrolpwdx -pcohxrnvdl - -jxphyearvgc -rfcodbuijg - -bhugktqa -bkgqs -epkqfg - -ecwhuzgkmrodyj -dokqewxajuzspyc - -lfqnj -njklqxfw -enfqjl -nlqfj -lqnfj - -rd -ibagcyr -envtomrh - -vfrdbizxwocnaks -zdavirkcsfwnob -ivcsakqunrdwbzfo -nvsxwoczidkfmrab - -uehqdjmbi -jqhuefis -dejhovuqi -einktyzuqahj -ohiuwejq - -fzgymun -mzyugnf -guzyfmn - -fetogjqxcuvzsw -vthxugpedowq -eutmoikqvwragx - -fwgujzeykqvlmidn -kvuwymijfenqgldz -gynldkjuiwzcmqefv - -nyrxopqgifedsc -zdwycqjgfnhoxtiersp -nrfacpqdxyesoig -fimvyorqpekndglcsx - -ajeyb -bjga -jbka -jgba - -vg -v -tncd -v -v - -dwpxzhi -ihbpwxtzjlr -xiewyzhdpv -xwpzhai -nhxzwiyp - -dbecuzx -xbduecz -ecudxbz - -e w -e -e -e - -ovrzqdjaiwb -rodebilkcwmntj -sdjvozwibrhp - -h -p -gtxvfb - -tnpvcfjsalyiorxzdb -irapztvynfjscoxdbl -czlnxjydbratipvfos -anoctriszvjxydblpf -lvoazndfjycbitsxpr - -rubmekjfdagt -amkrxylefcbo - -iyrqglom -qlitrmy -rtyilqom -yqalmire -lqriomy - -whpei -eghpi -paetki - -baepocmyzsd -cbezopy - -lbotn -xnqzo - -nqjos -wthmj -fkytdsjng -ipxzvlba - -wq -q -exns +pw +qutdebyio w -kw -cthavwpbkf -dsmnegrixql -zfcutvojpy +camyzohlbrgd +ygcalmzbrdoh +hrbycdzmalgo -niboxrwyqscjht -ihbjsxcyronwqt -sqhyotwxbjcirn -iotrbwqjcnxsyh -qwxnshrajioctyb +hgsltxvwmc +loxsntghvdc +sgxclthv +ctvxlshg +yxcvsgthlf -vctoxkjdieyzwb -eijydzwobhxktc -iaytkjwbuxzpodscen -xtjwgydkzoecbhi -yoixtwczdqekhgbj +ekizadqujopgx +zuagvjsirokwpx +uoykijgpqaxzc +gqkoixpyabdjuz -aprmbkdcexjw -zotyshdnbevqcj +qjygvhmlkdbzsifcwapuonxrte +desvfncpryjamkzhgutwoi +nifhzpertsgmycjwauokdv +swohafgetuyvicpzjrnmkd -lio -ol +dybpeckxz +zucgeyipqdnl +wspyefczlnhd +prevcytzod +pheyjdwzc -rdtpzonajsymgkcubhx -ryhtsxnmjcagdzkoub -zhnyjaltgokmudrbcsx -xhrydtgjnsamcbozku -nxartdusgchzbykjom +vbpfnedqyoawhcr +qrhcewvabfopdnmy +afrvebhdocniykqpw +foqeawrbvyhpdcn +ncwaphbvoqdrfey -impokzcuwnvjq -znepvyiqkmcw +dwj +wdzj mr -im +rm -rhaijlqeu -szmhnux -nwufhb +idnkmufx +demjykixo +kjdmxiov -pcihyolxetbg -enyrxhuq -xfvrejdhky +ukbflqhomzrwastyjgpex +voqkyihjufmxswgrztbc -zoxgea -oxeza -xazdvoe -ozxauge -jntzwoexa +tjn +njv -xaivusctq -tisqxva +ruika +irkua +wairlkszu -ts -t +rfgphcezl +zcreg -infzulyjrwmv -nvzubryomlifjw -wvygflurnjipzdm -ruyvjwlidfznm -iluwnryfjmvz +mce +mec +qsme +mpeyf -vw -vw -wiv -vw -vw +wjcxoftvnr +zomvfjnyw +nywjofvtm +kvwhfunajolsigq -x -x - -bzjhrsx -zxahrs -xhyrez -rabhxjz - -fwsuiqblg -fnqkdgsj -jsaqfyvgnk -gqfs -yoesrtqfag - -uqxatgzhbvf -bvhzltgqfxua -rztabhfgvuxq -taxbfhvqlurgz -zhgsqvtbuxaf - -e -xzyr -h -d - -u -u -u - -rtdyhnfliowua -sdlhfygqera -kzrmvpbxacj - -kyhja -ugneb -fpbzc - -u -wu - -amsovxceljdygphbw -vbdhsowzagmylxecpj - -uevdiqzwokgxhj -worxiusdzejgqhk -qxkthjuwiaozedg - -qbtevg -wyngqzsvb -gvbtqe - -lfbgch -hgbflc - -vlpg -mlg -ldeg - -rwsuctmyxoaipzbjlqknf -jamwspfchqkoxyrlzu -pazsmhyqolcjkwufrx -uqdrpyozhsxcjkaflwm -vyokzaupcfxjlrmqsw - -exzsaqlijpdmkvgywftb -sovjewdtphybzmaqfuk -kdtyazwpbjvfsnqem - -paowmuxkgysedl -wyxsokudpmaleg -gywoxakesupdlm -pyusakwegmoxld -eopslywkuaxgdm - -lsxjny -yxsljn -ylnbxjs -lbjynsx -jsxylrnv - -jwegoyxpa -jmcapxvbdg -swjxap -hqapzinuxrtjf -velaxypjk - -m -ge - -quypbjdikvletowrnasm -ywnaplqbmusdorekivzjt -jqntersduopvyblwakmi -wnkibesaypdjuxqvlomrt - -pylnd -ylcp - -advbre -nrjbfdvex -xberv -osekrcv - -nzpwvidyetcbmorj -ibjdnroagcemwpz -qzsekmdbnxwuirolcfp - -huqydt -rsbwpdmcnt - -hcjbr -bhcrj -cjbhr -cbrhj -cjhrb - -fpxi -ipf -ipukjbgfo -tpaif -ipwxf - -hobckpqzajgsmdrwl -odrpwlsjachqgzmbk -oqragbsjkdlhzcmpw -jrgbksowmzapcdhlq -zwpmclbjhqgskraod - -diezqf -zf -znhsymf -ozjf -zkrejf - -esmgwuvlzixaycnfqkt -sipueyhxfqkbog - -mrpscwnklxhtobauveyi -tgaivjupxhkbcszleorwmd -tbrlosnvhpecaxiukmw - -flpk -rf -xquatcvji -wysr - -dcfnywpotmge -ymfupe -qhmekjysf - -kdgq -qcgdk - -ocxbdl -wlcauqy -uwarlc - -thbeswnyqm -nsqymwhbet - -itmbc -tofmvcb - -sw -sw -swm -wsh - -orixhcu -uixhcor -hrxcuo -xhkucbo - -xsowberlfigtkz -ltivwneusg -tnegisalw -gvqstmldyicwpe - -yhznbodgfcqeptivx -dioaexhnczqtgv -okdgteivxszwhqmn - -dokztemwprxcula -irmxpdouta -rhtuxopdbmaj -dtmaphxqroyu -mtdohsparfugx - -hzcarpvyjkqduflwbxg -ctbhalfxivudonyp - -gkdypu -pkgyud -kdypug -ygdkpu -gudkpy - -ulw -fwul - -gpwotsyxzjc -nlmuevq - -zxtpjvqmsr -bmprdvquig -mpvryhq - -j -j -j -kewlj - -hgxscfpjol -spgfchxjlo - -hwjedr -edwhr -dewrh -pewhdr -usdehwtr - -jegvbfpcm -khnuldx -zyoasn - -tlrpbifxsjngoduvamyhkewcqz -fjolbtkicvmhrexungdqyzsapw - -is -zr - -qptgfwdcbmxueoiyjs -qbfcwsugexdopjtmiry -jpwdecfyosiqmutgxb -oejyvdwfgsmptbqxicu - -snqytmeualwrzogh -styeunlqzmwhgao -yhnwlesoqguatzm -unmazqlesytohgw - -dftkic -xurjq - -drixnqjogckuzmtl -syhkwbvdjxfr - -xelvzfjd -jfelzvx -zjdfewxl -jxfle -rfejmsblxg - -cz -cz -zpc -msaczrxy - -rvlmfknpzxauqedwhybj -bqyksfardvxwunehlzmj -ncsmirluwabjkyzdfveqxh - -gmpbcwjrs -bglcjpriwum -jbfwrvcmpg - -ktfqsluvjhg -jkfbxhgvayq - -uvle -lkx - -ng -ng -ng - -ozjnipsqxlh -oljhczqidsnpx - -hqmnsiadov -ohdsnmcvai - -lerquyikvxdtpn -edquylhi -ibuljedqy -elquybid - -g -g -g -g - -uqbemtxp -gzubdexq -qpxveb -vqszbxter -eifwxbnqkyaco - -isvbajpehtdow -khdjiepawnvsg -hqacjefdwxivsrp - -cnpltgfhwjiaydxqouz -acnqgjfrwiexhopdz - -sjmwleyxtriqdchbk -icatnbgservmuqpfw - -cela -elqbca -acle -alvce - -upkctos -izbqxh -njdqevafy - -t -jua -egoy -v -j - -m -dwm - -kipetzja -jhyeizpqvk -zjkpie -ipkjzne - -tsibo -sbo -rjzqbosamn -vosb - -u -j -u - -mtjivuygewcolkzrpfbs -jlgcyuzpafkibwshdmovte -bskavogweclutifypmjz - -ov -ov -ov - -eyro -yeor -rofye -yreoz - -thlknydiesxupoarcgf -gidylcsoekhnxafrt -glwyqiectnshkdbxraof -grtvasnichfyelkxod - -whzu -wimcpu -gfwet -dimw -pcbwli - -z -z -z - -chz -hzc - -nvfswzqculbtdrxey -jyludxzbwgvnhrpsfceitq -znlxeocqywmrsvfudtb - -wnbz -ezugmpx -tz -idszb -znlrdw - -xhipb -bphix -ipcbhx - -gudlfzh -dghzuo -guhdwnz -guhdlfz -hzgdu - -dczfkubhjwn -kjhcubwfzdn -zknfuwcdjhb -kzbwcdhujnf -khnzwcdfbju - -wkpimxyu -uyimpkwx -wkmupxyd -ulxafnpcwshymk -wumxpkdy - -jlr -l -l -gal -lg - -t -t -q - -cktanxyfepglowhibsjv -tbpfihyovgeacsnlwj - -rzd -wyrzd -dzr -zrd -rdz - -ligjhor -grlhno -yqrpsolhmwg -xelsrhogub - -njrwbhvfta -jfenrhvbwt -tvwbrnlhjf -cjfzntbhvugqwr - -xytgmcdaeolfqwzskr -qdfmegraxzhokcyswt - -ndcywqxkfta -ckxwndyqfa -cwnkqadyxf -wkyncdqxfa -wcqdkayfxn - -vbir -vrbi -bvri -vbir -rvbi - -mstylwqkrnizdhjbcgeo -yvqkrbedpmwcutsfo -atpermwqfcobdysvk - -sdylhzipk -zyispkd -kydizsp -zepsiydk -kdzypsi - -lvpiahe -hvapeli - -fwpmhryouqcktzb -bhzyucgqkmrvdo -jobackhzsreqiumyn -vchkoqdzmybru -xblhkcyoqdruzm - -jkilegfoxzacr -acxkzorfpjg -ctkzrgafxoj -oacxzfjgkr -jrozkcfxga - -apmksyco -acsomkpy -sopcaykm -mkcyoasp -scqkmpyoa - -fpaigjltezhxwnyrvu -vftqenyjwbsuaiplhdr -ajeutynhiwrdflcspv -naeilpfjuvdkwtyhbrq -htproevliajwfynu - -cwaug -augcw -cwuga -augwcy -gwcua - -afqcnwebdv -aenfqbwcv -bvfeqwcjnsa - -vtecwrzfa -tczvwrma -vrpwczat -xewzcavtr -vwcatpzr - -rdkvyle -eglrbyadp -tmxrhszneuldyw -dleykgcqr - -qsohepyxawngjd -ecaywgnhmf -wfeagtnrhuiyl -nthwgyeav -ynwgberazh - -loupbihzqwady -npbtkumjdoihwy -ysguhceopbw - -fy -n - -ulafhmibcnqvxt -ik -i -i -psdiry - -wcahpmgkjdi -lkazewjdpgbins - -sy -ectfa -q -sz - -idglafuxovqb -vurdigqpfoal -fgovalbuidxq - -qigjvulpdaxwsbnzyc -iudbjscqwohnxlv -sjlxcdiqnuvbmwp -rsklueqxijdnwtcbfv - -urxqtyshgzemca -xawgozkbejncprilyqf - -irl -eurpiolqczj -lrswi -vnilwrf - -viwsjgdt -yxhc - -ynwkqtpageurxosvjlbc -letqbswnxcrkajvugyp -zsnjawtqgevcpkrxybulf -ynglakqevcjptxwhsrub - -gabxsumno -mknawxt -anjxhfm - -dimjglkvcstaqzebu -cjeqzybdkaurv -bdkoacevqzju -bdycqjkaveuz -bkcevaqzduj - -z -z - -rydinou -zfycpiwl -mbydiv - -fzhrbc -bfszrhc - -g -g -g -ag - -l -l -l -lq -l - -cnf -ncf - -x -fzw - -nhgkcomtsdxlazu -wcrexdamztyohklguin -dmxlzgnckaehtuo -doqcuhfxtlbanmgkz - -omfbckilpvjgxqwthse -vpwhosebmtxgicjkfql - -nmdlkxb -ihbvjk -blkx -kxbycs -bk - -uxkzsavo -xosalzfbv -opvisknrxauz -xouhgzsav - -wcjodbqux -patbuwvd - -mb -mca -mc -cm -m - -usp -aftgzcp -ztr -eyjkbmnd - -zwfyeraxjdimplusbq -sjqamxiyfbduplzre - -uehlcmvqagxd -ghbeylfazdcxu -clhedaxjgiptvu - -vntkpmzia -pimtvyakz -tzipvakm - -fgoputbi -bpiftxg -wpgtibf -fgbpit - -kirsmujcn -mnkucrij -jnumckir - -fubspvchiwtnjkrxomae -kvcrsdtfuwhapxemnoji -wcaknfurotjlsevmhpix - -mojgstlqrebpifcvy -gpfijetbvqrloycs -lptohfsivgrjqcybe - -etnjorpmshwxlcbfdugykvaiq -necvjsgwokupfdlthymqxibar -whftpldmarigjeuckxvqybson -brsovpaqykicjhutewmnfglxd - -ofmkudxjpeti -okpmifxuejt - -feudgmpbhzak -emjnkbzludr - -wc -cw -dcw - -tolg -berksqjhmgt -fwgxt -atlg -zgptn - -hng -jiav - -fit -htif -fit -fit - -bkxgyoasj -xdinqvksb -esdtkylbo -szhfkmrpcb -uxseqbko - -vgclrk -yvgalcrk - -imgnj -bgm -mgb -gmcr - -rc -cr -rc - -bshkdmce -uyfzjwclhovae -thqdgkinsec - -ckmsoxuqif -fukqxmvsic -mosqchufikx - -ulmfponhvjbzs -jopbvzlgfhmusne -ovjzewfnumshlp -vhmfojlunsakxczrp - -tibdoksuvaxhwyzcpjgr -ypatgvjkrcinxumqhd -lykfvurhdxiqpeajntmcg - -yrvqacpmexifgkbtdwzjso -psgtcyqvnwibfuozrmxekjd -dqbcjfgrmvwpzioytesxk - -rubmfhv -hbfrjdmv -rihmbvpnf -hfrdmixbv - -raviz -imz -iz -mezis - -xcykuferdiqzjtalhmspnvogw -elmorfsvchkjpxiqbgnztwduay - -aci -aycn -caq -arc -caji - -vb -vb -bv -vb -jbv - -jxgarbnkwutzc -npjatuzwhkxbrg -bkdrljnasxwzgtqu - -xparfjw -rfaxwjpm - -jf -j -jr -ji - -xrgdnqzk -zndgqrikf -znqrkxdga -rkzgqand - -egizwncdbualtf -flguwazicedtbn -ulfztngaibwdce -bilncfatwzuged -nabgeclfudtiwz - -d -wfdj -d -d -d - -gn -n -n +y n n +y +oe -dou -yunwtdohpcb -ouvd +nvjkryifxace +ziehtgnjfbyrlvka +xnpvjismakeyfr -xvayuwoe -ayuewb -yawseu +g +g +g +g +g -tfbso -sotf -ftos +vwgnj +ivoj +ugjv -otjcundbazgmlirkyhqpvfe -bqcduiyaentvzhklmgporjf -fyhtvnzadglcumopriqbjke -itmvuqbnrcofakelhydpgjz -konfjihzumcavgytpesqldbr +myzrbf +ymczfr +vmwroxhfj +mlfdr -hmpqckelajgzxnyso -lmkqecuxzpysnjhgoa -zgsovhqjypnekmaxcl -pohsxaglqmfenzkyjc -pchlzengfyjoxmksaq +ajqerszpbdyvoufwlmgcnitxk +wmzuftgdkavjrlibenpoqxcys +gnpmcsxlwzvfateqdirkyujob -ohjuandzmpvwkbfclirysexg -mhresaycwovbzkdlnxpujtigf -qckxespgnlvdafiyubomhzrjw -lnjkcwahrsvipeugmzqyfxbod -mbwzfnolrxecyapsuigkhvdj +bnfudi +inay +iuncv -cailbjyxztvdnphkrg -nvilxeprzhajkbygcdt -jazdblghrsicxpytkv +trqlgxaeouy +uvoqxktwejyr +otqeuxyr +xogreiyqut -p -fp -f -vgz +ficdymxhuboq +dvwiuexfc -elajdxgu -jiduarlexg -xlejdaug - -auh -ahu -hasu -hau - -rckmqapdtse -molzwi -hgiom - -asqyzrgotdlbviu -lgoztqsdbrivy -lrtybsgqvaizdo -lbdsgorzvhyqxit -alijgryqzbodvts - -fpnlakbxjosd -dlpyfnjaxoks -lokfabpnsxdzj -dvmxugpoajnkclfhs -flxbknrasjodp - -mprcewkzquit -ezkrcuiwqmtp -wiprkqetzmcu - -alkyb -kbl -klb - -iezaknbl -zo -z -oruz - -ibhrojtaulvewmgczpxdqk -rcbpgidtkqouyazhevwxmlj -idzhegvwtacublomrkxqpj -vcbigrtzlowxpjhuedkmaq -ajxuctrhwepmvoilzdqgkbf - -knal -nlv -qlnzb -ulknv -ln - -dkfrbh -hbrdfk -hdirkfb -dfrkhbn -akedmhrfb - -axeuqykc -cijxqeg -ybuzctis -zwcliq -hfodnrvcpm - -k -k -k -k -k +zbhndug +ugsdwphnv +nugdwh +dughnjio +jgsyuhnd f -yg +qrcvkfu +f + +yvf +yfv +yfv + +qtnc +cbqn +qnc +tcqn + +rxyhizgjklumv +fidxgjlkyhvr +avncxqrjbkgplhiy +zrdkxtlgjvyhi + +zjq +f u -y -y +prgot -xbrgmpydio -rdxgibmpy -dryipgxmb -ihjdxygmbpr -ixgyrbmdp +hrgktyczsvnmiolewbf +gbowmtzvynferksichl +svgbrzmcolkieynfhtw +vehwtyrmgsnickfozbl -xutjv -uhxtvj +lbucxdo +jlcgdxiu -dpezviroyshwaxqgjlck -ogivhpaskqrlcdjwyezx -zspkihxldaoqrjcgevwy -ckigvrljoexyhpzsadqw -hguvczomqlpnabifswjydrek +hvtafpnwzex +vnxzwftehp +hezxvnpfwt +tnehfxvpzw -fsaonvedtjczu -setdouyfvnbjk -oftnledaqsvuj -nagujstvefdo +wbmyejlv -hbwvkftgdzsm -msvfzgwbkdht +gevqi +eigv -nbxliqesfzawyk -aswzruelkfbhniqo +unogtlfwvcyjdr +jcuvlftdgnwroy -yobmx -jxybeo -ypsbnuxaf -ybx +kdlm +pklw +klfay +lk -yqaxjhlvrfceu -fzvpcuqaxrheyj -racjhfyqeubxv -xqjeudfvygahcsmr +somjqeuvdk +rzaqodkmvxsj -xejldkfstrvubcpaig -gqxhcpbsrojditeank +g +g +g +g -favwixezjmso -ogpbvwnamz -atwvobzm -trhowanpvqmdz +ceihqtrjpbxso +xohipcersbqj +pibhoxsrjeftcq +pbcqvosehrjix +icbqhosrpejx -qfdcv -cd -cd -cdwk -drzc +jvldsruex +oktrdvslcujx +xdurvpjsl +mxesdiujvrl -y -y -y -yl +rgcdsax +alqsbd +fdavzs +ijsutahdpye +baqdsz -nclrvbgzmudf -vdnlfgusir +jxcabgpuimtekqsy +iduqmetsognaybxp +yqwaburlxps -gbnxzysckmp -zsnkmcbpyxg +ulesvzoijdnpfhkacwmxbrty +zvxrdjskefbthimwnpayoul +ihdnlkxrpgwjbyevozuatmfs +yixowledpbvrthjkzufsmna -zqweaofxvpjucmkts -setcuqkpfazmxwo +hxibvuzdowysmflpkqjgacnr +bhctimdakyqlsvxwjprounfg -kxmfqdithl -hktfmdqsi -wghkmfydtiq -fiqkhmgtd -mfijqkhdt +xolza +axzl +xazld +lzoax -mebnqwaxzvys -msvaotqilh +vjpdirbzwmcyeqtfgoulhsk +shzpugkqlobmridvjyewfc +ybufwljhrcdegsiozqvkmp +ucnbokilmgvqwjzsfphaeryxd -tymwfkrcsvilqodphbuzexjna -takfijusvpozeqnwxhyrdbclm -edhrynkzbispqwflvcmxotaujg +fzwiyxutvmdpbqkgrj +vmqludbfywzkxpijtg +qwkuzbfxyjmdptigv +pmgifdkjtbuzywvqx -uvc -vcu -vuc -ucmv +jvxwlqr +rqfjmsveoaw +ptbyhvjqw +qwkvjxg -kfzadnxwsq -lawdxkznfqs -tflqdkxasnwz -knqsrcgfozxedaw -xaqwdnsfkz +qnaxrduhpfvoyjbksgw +qjnwieaoxrsfpzdhk -gaho -vzdecfourwpnyx -iqhaoms +nrcmyksodhaztijuwblv +ksxrufaqhwbcnme -kiebj -izekbj -jikeb -lbjirukqe -ijbkxez +sqx +sjbql +gsqnpwk +sq -ldwsav -srlx -cntqmikugl -ylz +cpgkrjvqx +vgkpqcxjr +qjxckapvorg +xjvqckprg +gkqrcpvxj -yqh -h -h -h -h +ojyziuqkbe +fvuceart -jpqewnhzbyltxu -samgukw -umw -wuck -cfmwgu +qpgyknd +kfvyjtd -hblxgkmjyc -xmesjhqaidgp +phfmqdwxnuvgo +ouxdblhnmpgq +amxnpihkdusoqr -wseufabtgklimdoxnypqc -thwukpnivmxbcalesy +run +dnx +vnc +ponklq +nur -sfzpaeqdbhwmnlxt -btlsqpdmnwzaeh -ahwtklseqnmdpbz -mwahslezbnptqd +ixoytfqugrvjzcdwlhkbesmp +qalryztjxumhevifnobpcgdw +bothiuxqjzefcglpwymdvar +lgfjctrixhzudaqmebpvoyw +zlwfoituxvdpqbejhycgrm -alhkbjrtm -mjkratblh -tbmrdkhlja -bklrmtjha +lrwvkj +jqwc -fkjwmabqy -bwayqfmpsuh -ycbaqfnkwx -trwozgyibadqlv -wxnaqpybe +awvyst +vtysa -dbz -bdr +ugxys +x +x +x +x -evsxkiwhj -ijkwxsve -vekjiwxs -eswivxkugj -eowtsliravjkzx +ismv +mfi +ihofm -i -i -i -i +lijwuxcbrfotekpangzmsvyd +onmsdklutybrcqavegwfxijp +vnyarmslcetoxjkwuqgdipfb +jtrsdmfcnwiveyxlobhukgpa +msatlerkovjnfgdicuywpxb + +xmyen +enymx +myxen +xyemn +xymen + +oaustqdifyxepkrwh +kbcvmrjn + +uqv +qrvw +qv +vqtmu +qv + +lo +l +l +t l -ek -ke -ek +aoqujemitxrszgnywvlc +lauzwhvr +akulrbdzwv +lrwdpvhauz -bk -rskpanj +jhwycgso +trshda +hs +sh -jlqapcexir -rix -uxyri -hzirux -ixryzu +oydxjrhetainw +nbwdxloetyiar +entcioxrwadyh +tonyexrpdawi -mbecuxkqodis -myfk +bkdrqlnjwshi +nkidbwshrqlj +hrqvfldjinsbkw +khdbsnwrjilq +wjnipadhqkrlbs -osk -kvw +iusqovtzgajpndcwl +icstgzpurhbwqnvjoka -k -k -h -k +hvwcue +chwnejv +cxwvath -slwqeticyjpdzf -gxechvlqnmsfp -qulcpsfem -quehspflrvcn -kgcqlaepfs +yroksb +tbs +swb +sb +sb -bhiye -bstyvrapi -uldxybmi -bioknyfwj -cenghbzyiu +vgixnfosrpetb +rwpndfevylg -ztsxu -xtszu -usbzixtc -uxtzs -uztsx +alytpjgxn +styjnkmegil +npfyakjgxlt +vzdhtlonwygbjq -jadbkcovfyrnsx -gnqxdfycvbksr -nfsvxdbmry -ysuvnrdbhlxpfi +dp +dp +pd +dp +pd -xchlgiaotmsuzvq -gmayopixqslcfekhz -wmsojhcbraznq +cav +i +ac +chzu -cxfky -kfcyx -fwkcyx -fxyck +kdv +fld +dwq +qds -xqo -q -q +x +wanxl -sgojw -cvfm - -zdfyhrqtn -tnqyrfzd -mrfjztydpnq -dqfyrtnz -dyznfrtqh - -qemxlh -fbvnekpcmh -mehz -whmrdegy -emhg - -mqvr -cnasrl -qdys -gmez -jptbh - -epufwojvtkzld -kouedvymlgntp -okldsviptaeqxhbfu -ouibvesrcjktpld - -xnhkjmvwy -mjhkvwy -hkjwvmy -wkjhmvyq -yjmkwvh - -ckedjx -excjkd - -znfesox -xeoh -ocenxz -eolypx - -mxivwjbheynk -vtobgpxmyhkqnjiw - -tsxvd -xdqcvn - -ynhtcpbeourwqik -ciaoeqnvztmgybdhkws -ewckryhoqnbtfi -ihbqotncwyek -jfcwkthboeqniy - -zaefxrolby -vdfztseoqhgly - -woiyfq -iqfyw -wiqfy -wqyif -wqfiy - -czojbsdtxhnwvuygfmkeaq -lwjqbtyngfzuxkecoadsvh - -celw -tywbeuascvz -ekgcinwrox - -cy -yc -yc -cy -cy - -jxpwoydmhblcrai -qmfykpsrxlvda +cfborlazjq +pfcloajrwqbz +btonaqzidlfrgjc +lcfjzqsroba o -vx - -uptwyrij -jiyturwp -wqbtpyujir -rjuytpiw - -meqghcrlnfjkyw -avjcixbspgfqz - -dyz -l -p -pul -i - -l -l -l -l - -dhua -aguid -aud - -rqnfj -nfbqdj -fqjnu -fjnq -nqjf - -scfvjmnxeag -cudpbwfnxalzsotqk - -abzfcdpnyxg -dcmrbnpxfzya - -aexvdqroyncwl -qrowycxvnaled - -scznoldgrut -orcduszlgt - -zofhkcrsjm -mfsozrhxayk - -nehxkswcz -cvwnekxy -aewxkscqjn - -stpwkqyzgm -wkjpzygtsm -yqmspwgztk -pztsymgkw - -wcipmryqalvzbkghtsofxj -pbjixyckrgzmfvslhtaw -ivrzglbuxtsjhwcpamfkye -nckmdqfbgtasijyropxvwzhl - -qtfyr -yrtfq - -xkijmzgyeplvubr -kzsdpxjbhne -zxhbtkpjse - -tvm -zvm - -naqbrui -rbgiuqans -bnrqaiu - -dulxmsoavhciyqpfzketnbr -obnxqmidafpresytlzckhvu -otxrdwpumcivyshfaqkgeblzn -hyrmlzkstpvifucxedbaqon -qrpndcmtoevkzlysaxuhbfi - -kbisedtufjvmroq -dfubrkimtjseq -bqdsuktemirjfw -ukpdqtshgerfimbyj - -br -rkb -rcb -br -rbm - -lm -lfh -ml -lo - -uigbrefdqzoaklhwcjxntm -cublkmtxeqwgrhonifyd -bsleinxukwdmftrcqhog - -zicwhktunjxgfpodsbye -nfteiwpudgcxovjbsyak -ywegkintxqbpdujosfc - +n +kwl +s f -e -t -e -d -btxnpqyrshjcz -qstfkgioavjlwe -sbdqjpturcm +oylasgwtbnu +wstxylzug +ikjvuqwltyhgs +ultbomgwnsyax -mpi -ipm +iotqspcwuhr +uplinrgcvhews +tduspchwrim +sihrcbquotwp -bxqlyckzwrgu -ywulzqkgbrcx +qjdnkl +ldnqa +qdiknl +qdmnlv +sltxwbqnyd -lmpys -mypsl -smlyp -pdlmsy -ysmpl +rnzmybp +zfnwc +nkazdqg +uzesvmjn +vzn -gxbsvalu -gxlabvsu -xgbvauls +emp +epm +pem +mep +mpe -jd -jd +zxhde +demhz +jadu +ckrpvglsw -v -vb -v +pegn +gnep +pgne +engp -helzqfkyadcjtrpom -yjcqdrzeftlkmhao -eolhdvkmjqfxctzyar -lzcrhsfdjoeyamtqk -lcreftdozqmskjahy +hjkeoyrglpcitbva +ubtzsmvakoly -tavjmbdeznxquyws -bejtfcgrpwisu - -rinkdgteosbupalcwfm -opcbulmgsrnidewafkt -cpdbrmnuaeftlwgosik -wiedgctfrkunomlasbp - -qenyztwigf -finwzbeqy -bfzpeiysqnw -wyienfzqb - -fximacpqjvrozwu -aproqwzficuvx -aozqprxftwvicyu - -wxedbjgki -wxgjzikde -iyekzgwxdj - -ghsde -hsd -sthd - -cafgyinvxmqsukot -utnsfycxkmoagviq -vkqystxmaniofgcu -nmtyavikgsfcqxou -fcxoyniumkvqsgta - -sq -q -q - -szvxhg -sgvzxh - -orwyznm -tynzw - -ivzcoaenfbrm -imecrfnovabtz -dnwgzobcvfmyirea -ebfnairctzmvo - -yjtznqpvsldf -ilxahurg -ykjcsbel - -lhiubo -uboihlma -hlgufnkprcvoib -ilbhtou -bisoulhj - -vhiapgbtjlcwuxs -ibauwcjsptglxv -gcsopxwuajvilbt - -oqbadzwepv -kbxdetcliprquvsn -dqhvwymbpe - -ce -wcpo -c -octrn - -swpd -clb - -mxjwhr -marhxewj -wigrcjpmx -bjrwqxm - -l -ulyt -bl -gl - -gofskm -mgk - -dscxkpviur -lpicsbuk -jkibcupsr -eucsifnkp - -vs -c -c -c - -i -i +u b -cuv -cv -ceb -cv -cnhtm +ksanb +sbk +sbk +skvxdb +bkfs -ox -tx +z +z +zo +wuqmz +gz -rheungozl -eznoglrhuj -gnhozrlue -nhlrzuoge -urhognlez +jwbyaugknetqrmoxh +axwnmobetrjqkdyuhg +omvjbyhngureqxkatw -lnkcuajziqwxtev -fzauikcjtxvqlnem +lqdiban +ifbazln +bafzinl +ifsbanl -fmjbugerkdyaiqcxnw -kxhanqgjcfbyeurdmi +dovkxjylabqmtizw +pawvoxdmbyizqtj +vwubiayopgxcjzqdtm +qbjtvowdnzsixamy -qjrleua -rujleaq -aejquzrl -rejxuqla +ykpusjaqclowb +kjsclynwqapobu -okagijrelbc -rbikajtglc +zasypunbwitorjvmeglqxhkdcf +bvlirhqwgskftxedonymuapcjz + +ezxghwr +rzgxnewh +erwxzhgv + +nkfvplstgaybmhorewzu +lakohrfuznjdsqvgmywp +tuyshcfwkpabzomglrnv +clnsrgvowhufamykzp + +gbrln +pb +b +bsw + +ugcnskomzepjvxifrtwq +vpmkutefjzgwrbsoncxiq +cmkesufoxvqprwidzgntj + +rpsheibkg +bokwgjeh + +sfwgbm +jmfgbws +sgfumwb +bfmgws + +qfxderyt +ikwyln + +nsrjpbtxuvcfgl +putvcjfrdlsonxegb +vgbjtrlsfxcpun +lnbgctvmsjrxiufp + +cnawzexsdlubpm +bufnvdiaxptlcmse +lbyugexmdncspa + +xtvpcfsdzewmgaqb +felcxvdpiqnuymow + +xoqt +tqxp +gtfqjkvbu +tqa +qta + +jplacdti +apfliojtcb +ilcapjtk +atcjilp +tuipnjleyasc + +by +by +yob +by + +m +mp + +kenjrtgyvxiqwmazchfbup +dezplgiwyxrq + +ra +wa +aw + +qldpihtceyfoksa +cfsopeatkilynqrdv +xctlfjsoapiguyqdke +syiupwbjlacefokqdt + +sc +twsq + +ewc +ce +ce +ceiaf + +wnqfklygehirdxazup +vqgepxnsziakrw +eznxgqwpriak +irnqvzwkpaxbeg + +gu +au + +ujvidwoe +jekiubdov +idunjveo +eidvunjo +evinoyduj + +irytzs +jhnr +r +mnrjdb +rnv + +ug +gu +ug +ug +ug + +ifndua +rafyduin +ufhvnadi +dyguamifn + +aihwljuqkezp +wzaiqlp +iplagzwq +qwizmpla + +pvedlxntwjf +veldpnftwj + +xvglbzusemwqihn +vkdbefxrtimp + +spcwi +pjewi +idpyfb +ivp +pwzioj e -e -pa -y +v +za +z +g -c -hc -liasmwofn -ytkev -pczj +mjvxyaguoc +qlhypbgw +qegylr +gklyrniw -tkpnzsvmrdijfwobghqcaxeu -whfpjgeavdkbzmnurotiqscx -fqvuropcmkzinbdwashjxetg -hqkuzafetjpbwyirdxngvsmco +tv +l +l -szxa -axzs -xzas -xasz -szxa +tmrzoldvsiu +owzpglsidvtmu +hmtjvlodxsubyzi +tuvilzdoksma -nscjgi -jgcns -gjcsi -scjg -szjgc +yenvdmsagq +nihfbxaymg -zuadipsnxhqgfjv -zjpdugisfv -dgfskzvjuip -fvugpidszj +hcylanqdjmwrpixbo +qmwxybpcdalohn +mxwoazyphndcblq +wzbydamnoqxhcpl +mnlcadybwxpqoh -qpcbui -qntkmsxlia +miupnhbvj +uwpnbhxjqiv -at -yta -ft +rqgta +awkxo +hzjsdb +awfu -letsxrmgabi -gnpqaecbmxfwi -mciujqgehbax -ekgmixohyanb +gskncrox +npulc -epnlovurz -oqferplx -lrnedoqp -lroupe -awelogcikprm +iugzcseolh +gshioluezc -nwyuzvrlmbhtjfqaedxocgi -cufibmwaxdljyzovqrtnegh +jqbi +pjqi +bqj +njoqv -eoxvphlgnjcmb -omvghcpejnlx +eitjbcr +lpskbhyfrgxuzoiawv -mournjwlvsckdt -jumlnvrweozpkc -vbgawlrnmkijcox -nryelovjqchdkwm +fejdyanx +cyfjekxdon -iqbyaxh -gxbqnhi -xyibhqm +gqzniubejkx +zjingbqhuexk +gknzxqcuijeb +uxjnzvergikybq -rqxbago -xvq -iyfqujdpwcn -xqamhg +wub +w +tarx -gbxszymv -vhlnfdmg -mvgkdnj +ghpi +hiasg +ahip +yicd -almux -axulm -xmaul -ualmx +brysq +hkgfbnmacr +wprtbyqls -fdseyvrjkolcinw -idxynrvjakolmcfu -ycfbknvtijlurado +lzfqot +qolfz +lqfzkor +qopmzdeflcx +toqflz -rewtmvgcnhqaolkjbiuds -atougievfqhwsdcbxjknp -ogakhvbcsijenutqwd -ckungoviwqjbthmeads -veyuawsiothnjdqbcgk +vhremdpywtabokuilx +oryhfcztaixlvmdwup -gvuqtmnxhoepfw -efqwtmnovupg -oevuqtfpmwng +mwvqzngluxpcoeidk +ufcgnxjvmdzqikhlpw +lwvkxmciuepndgqz +glmzpqknieudvxcws -trdyigx -nbtmzrygpxi -rxtyzbg -ygtwxrefu +ibrduwhlcxtsnpyvamekzjf +zmuevtynhpfskralcwjxibd -akflh -lakf -afkl -ablqfk -zkalgf +rvdpebnwsiugmaqzxj +sidlbyakwrhvgmjoef -gsuo -ywuvt +q +q +q -pcbe -lptbc -picba -plcb +jofkmbcunaxet +elqngabhskmy +wkmxacenib -wt -k -t +ezfpogadrbulys +sbamgenyopfzu -qnjo -xqgjyv +utagkdzvwoqemchb +zthluvqinacgb +qcjhvutilznabgy -iozkwcxuhapnqg -pawxsihqkclzvgunm -kxawgbihuqcpfnz -ikgrpunhqwafzxc +gduwcpj +bcxgdswpurj +pujdwmcg -bywxros -rsowbyx +zxcagirye +uzrljgq +gwtzhfrb +dxrgze -wjxhogyipvanmbcrste -dcmgwqnepiajvxkbsth +m +m +m -zbmicrsajtqe -miecstjbarq +mzf +zfm +zfm +mfz +zfmo -paxrhzkyslnq -zakyxhqslrn -yslaxhzqnwkr +ovdqzm +dmqvoz +zmdqvo -jkleg -ekyl -kyle +bisprlndef +abvltrnkxd +rndbyl -ydvkwga -nxqarwd -wxakpq -cefbauhmjtoz -kai +zmglywve +lyvegwz -bhwzivoacl -zcwqtxhsakyb +gtmrhpujzfqskoxavydie +typwiahqfnkdumvgoxresz +qzevtxauogipcksyrhfdml -fsnged -ocmlx -wol -brc +rcova +pjcab +upacjb +alc -ztswjbceaolgi -jlsmcupgw -rxsgkyjhdqfwnv +kzp +kpz +yz -xtqjfacuirwvzksmlbhodnep -btremfjsvncyzapowqxidklhu +aivymnlux +myuxvlias +lmyauixv +viumlxay +iyavulrdexm -bmtz -ytjmhezbf -bwmtz -mwtzb -mtbz +smgjbqifah +bixgqsfmha +gsfqpnmhbilae -bju -ubj +yb +fy -zywb -bwy -bwyz -wby -buwye +hfvcgd +hfkxcugdo +fhemcdgo +hgqfxdcy +begthcfrdqi -nerhbp -htbple +gcwtjyluzvbsnrkopmeai +uzbtyinrqmofsjdkcvwega -beurhjyvtdimocqn -hcvniqytrjeobumd -mncoeuqtihydrvjb -qibvdmywzrehcnout - -egc -k +s +s s -deltoa -etdoal -aedolt -amdtleo +dsvpg +gdp +ndegr +digp -gdwalptufnsxhr -uwgadebmvrhnlxfpcst -hlwsrfungajxdpt -ygnfwhrtaldpuxs -rzxalndgutkpswfh +jiylzgcomkurtvqpa +yvmjtapingcruo -mucn -hewbdvanpomyrj -mnsik -tmnqu -fnxm +auijcbwfqkxyshl +xwhcyqukbislfaj +yiqcljkxfasruhbw +cjlfkxyqwuhiasb +iayklqhucsjwxbf -gvykqxtmzwfsbrcleahjnod -hunoyzdjrmsvtbqckfaexlg -acketzflmjhqdrosbnvxyg -fevrokybsmxcatzhnldqgj -toqeprafdycksnhlvxzjgmb +z +s +s +si -ou -uo -ou -wuno -uo +brayc +cykwbra +rxbcva +ckdabrh -eyfckdvlwibquogtsnrpazjxm -ybdsnauwojtxpilqmzvcgrkehf -lmtjdcxwvpysezqkonfrguiab -caferxuopydjsvtgbmlziwqnk +rlfvawcqemhub +ctuqfsbaehm -jgxudzlbswaefhpk -xzrcbshwdlkgjpfaen -kxbaemgwzoytidfjl +wbrzpyacqhi +bmpalyhzgrc +vbazpnyshk +hzyijfacbp -czjw -gykomq -xthi -nxzsp +wgjohx +sxhjgwo -exyjs -jxsyd -xeydsj -jsxyvg -wixbsyfjl +alhkqy +dahfmjlcy -ultdkrv -udlrkv -drkuavl -kravldu -dvfrlkua +g +g +g +g -zjgofiydu -zijfdougy -yoizudjgf -jdogzfiuy -jziugdfoy +lpsbynokvrudcgzqmtijhx +snuhqjlokypfrbvcmidxg +yhwbjmxopvirguqscnldk -cdxlhpgtzrmubyse -owcrpythmfuxbe -xymtcphrdbueqis +mwzsclu +yuwslzm +alsumwz -drfatx -xfrad -rafdx -fdaxr +maj +mjxal -tuxmnqvwiodzl -znwmiuxvldtqo -qxwidtoplzuvem +asgryznlwqjdfcpkehbm +knehsopgjdrqa +dnapshekjgvqr +ajendtksguqphr + +puznxmqsrtfdckvyijbalg +kcgytbmsxvrunqjzlfaip +yuikxpqtafvbnszgjmcrl +qkvagxcjslbytnifpumzr + +pglvfdihqa +pntwkbzeco +ep + +fpjmzitnlkvbd +qdbknvtjfilrzm +bijznpmlkdtfv +otbjfznlmvdhsik + +x +x +gx +xk + +b +qge +kycnzjw +pixlb + +cpzgaufikyltmbqvesoj +fusibtgoayvjqkpe +ovtfbasiekjugryqp +iubyfkjqvsoepgat +akofugibyqetpdsjv + +yirboahn +ozvha +oah +hoav +aehco + +hspqcxmjrbfyktngi +sptqigfklmadncxrvybh + +wdksztumeroaplhxqbyvjfin +tadflskombxyhqewjrvipzn +afrejdkobnhstqyilpmxvwz +vzynhwtafpdqlkjoirxmebs +kqjpwxrdvtizfmlhenysbao + +wonxesaihurqkymd +sxyqkmwdbnljrgueiao +whenxordaumqksyi +krouemnawsidyqx +rmsukxeyqonwida + +ckywportslfhdaqixvmjn +gkvlapqwfscjzruoy + +dtevjz +feqndzgxlvrtboc +zteuvkd +dszvuheti +tvdewz + +ehaqfwylskdbzvmpgt +vagbfeqwptszykhmld +arpzbsvmweytfugjdchqlk +gpmvqkawhdstzlyebf +btaesiwkvpfdhzymlqg + +hozuack +yuaznf + +ozvmpady +paydovmz + +gtmbeikr +breigtmk +gebkritm +kmibgert + +jm +m +ml + +frexcnogyv +nrvgyzilodxufeh + +btvzjpu +zjvtubap +btzujpv +jdeptzvub +bvzpjqut + +fkdcirhqt +cidhrkvfq +icqdhrfvk +vktrchidfq +ldqascokxrhfig + +tlgjdsoapmciey +gitdwojaeslmynpc +dtycalegpmosji +mydoitvespcjlga +gladijvyoctfsemp + +hwieujqgsxc +sgxebjhnuqwc +kqgcxwuhtvesj +qgecmsjxwhu +cwjqmugeshx + +qjwldfsri +iqgbedvlsfrh +ujnldiksfqmpyrw + +a +a +a + +spotgrheckwqan +shwvnatgpkqcyoerz +hcgasrpewnoktq +tkewponscaqhrg + +bjrsxkeiucnpoz +xrkczspbfeu +kqcuytdsrhvgplbxa + +at +ae + +x +x +v +x + +ds +dr +xemdno + +bvpdiocu +pzvhuyxci + +a +u + +d +d + +rplowaxqj +rqvowa +yrombawnsteq +acujvqowr +wrxloaupq + +s +k +k +k + +zmn +pfgseobimq +mdkza +mzyvd +kwhmr + +uqmtreg +twleuoqm + +hm +mh +whm +hm + +ydegnjfmkr +kvglzrfs + +kovgzemjf +kfyighomzelj +fkzxtueogjm +fxkjozgmue +zofbvejmgk + +zatrhwfjiopulke +satohknewfuipjlzrv +ekioxurwfljpztah +lgqzopirjkhwaufte + +xgbozwltnevidfrjuhcysk +gwsmtbkroyfinadpjhevcxq + +x +dx +mxzr +x + +kaof +kodf +ofk +fko + +rkuoazney +azyrqhtdo +yalobrzcw +xioayfrze + +cusyzmjhqloftdpakegin +lmnjipdyogkfahuqstcze +mneocjwgilpfxzthsayqudk + +m +hwyug +ymna +drptzijlc +wm + +pg +pg + +lrobg +orqfnsv +nqao +ojmwdecz + +jmxlkan +mlauxtj +olcwmeaxqjnk +jxbpmltar +mljxdiszyagfv + +sgriuf +ugmpoxvyq +dgzcuqwnh + +m +e +m +y + +dqkh +qdhk +hkdq + +znfwuiodcryqsmbpvejg +xnqwcjrdebpzmgovysi +pihmyewrcgnjzqvdabsuo +tqdsnjwzovrbcgeiamfyp + +meztpcwrsnojquxkg +mekurwxtncojsqg +ktjwqocsnugxerm + +eplzc +ezpcl +lzypec + +jmlrkseozxdunqf +dknseojuqzmlx +nsxqljdeukbmiz +sqmvnxubokizlejd +ctqsjmlkpwxzdunghe + +klqgxyrdt +toykrdqgl + +fwkzcuvmogxjrbelthi +zfhtgbqnomvwxku +fuozbthvwkqgmx + +s +x +x + +pefqgwzlimyjncouh +qaduwhmysxjopieftrl +ojfphequiwmnykl + +ksfb +sbkf +sfbk +fbqvks + +eomabw +wemarv + +ghldr +iw +yj +po + +lpihfvqersujkzyb +vjlfrebkiq +jblqifrevk + +zgr +zg +zg +zg +gz + +hfvydluaxgipsq +otqcbfurygsvempk +ljnqdswvgpufy + +gdxbjivufyolq +usmbflyxiqdv + +kpfy +yrfpk +fpyk + +oencuyp +uceypoi +cypueo + +orcfsjhvxaqynibuk +cbixuyokaqvrnhsjf +qcoyfjxukrsnhavbi +fkyuhbvojnsxaqrci +vrcshuqxyfniakojb + +mvgbupxhfesodnzwjcq +dcjxzqyuepnvhfbsmgo +kpmzrsfebgaovnhcxu +npxgivuohmwsjefcbz + +xaujvbesdqgnz +augndvqbcjfzs + +eoyhpnrcldjbqfvtiua +laoyrgqzbuhndxwpvf + +pxfnblvuzijhdq +hdkljpbz + +jphqxmkwgsycurietbadzfv +vweygbzashxqcdji +wcbjdniysvhqeaxgz +dqxwhvbozjaiysgce +zwxghisaqbycjevd + +bzqgcuerktfsavwhnoydi +rbvyqdsiokcuganewhtzm + +tom +to +to +to +to + +rkfmtd +vkcunbq +rk +kf + +pkmifxjtwnz +kmsfanxteihjp +nmaftdji +ybqimuvojntf + +ns +r +r +cvhm +wnias + +mfsxucvboyj +cxomsbyvfj +fsbvomjyxc +mjhcvysbofx +xmfjcybovs + +quxomeysk +uqtokyxsm +yqohxbkm +uyoqkaxm + +br +rbi +brj + +paqhkzmcwfrsiubtvjnx +zktiqbucarpwnxmyhj +aikmgtyucrjnpqwhxzb +jkabpxztcrwhuqnmi +mnxzwbaitqrkujhpc + +szbanq +oegiflu +as +qpt +t + +qsu +faqiu +qsui +uroqckjv + +ufkcrahgitoyj +xknlcfujagd +gjcklauf +jkwafgcu + +gdmxn +boiygrca +hgs + +ybwclvjfkumxso +nvmkyowedlijuxcfsb +lzmqscybvxfukro + +fiprvjsgcenhtmalxzqo +phcgntoqmeviajfxlszr +zsxqctnevliohrpagmjf +sqgipcuanmtxlrvjehozf +vlczqjgoipafetmrnhxs + +ypwbf +pfwytb +pyfbw +btfwpy +ybpgwf + +wrzhafdpmx +tzspfhxnd +dkfhzwst +bgelqjdcyfizvhou + +peubvwgaqiclkfdxmsyjtr +kuwpsvlxbjrditgmqeacyf +btxejuiqcrpgslmadvfywk +gwalifqpdusrvmtjybcekx + +qvmhulrt +wcpzdsifex + +pohq +hqop +opqh +oqhp + +en +iws +tpr +qs + +lvfinmpcbzx +hkcsblgz +tcgzbkl +cblzw + +rsjie +ewjribms +ijers + +knizwxycoqe +dnqocbk +pkgsanof + +hravnysejobwi +nlfusgdxtpqmaki + +kuvboax +kjvohxa + +qwm +mwq + +xowbafsitjz +lawm +aylmw +wanur + +qcdsao +dqaos +opaksqd + +p +p +p +p +p + +wl +d +l +n +rwa + +rdi +dri +dir +ird +rdi + +ei +e +e +e +e + +favclpbni +icbfalnpv + +uokmvxgafizceprnydsht +pkeaonhzruqxgvdfmscytil +fpxhsgcrutovzykaenimd +aszthkimoyxdufvcregpn + +fgibsklo +dsokalnriegjzbf +kvwlocuys + +icnortpmfwy +vnqrofpmycit + +yaiempzjbvkgnrfco +tozadmejkbgqfcsiw + +crgtkhbajzdmlp +epnsvfhib +pvbhn + +fglxtqrb +uigxvbft +wxflbyg +xbpzndhfegj + +jiolrqxfapuwdngybhktzcv +bnerupsdkflaqjzvitcmxo + +znjus +qzsjna +znjs +uzjsn +zjxnks + +snwj +w +w +pw +w + +i +p +cd +qs + +f +ofm +f +f + +dv +av +cxkuo + +rbxieoyczljtuqvm +gnphsrckqifzeljw + +h +h +h +h +h + +exghrdkbivqsmcwal +vhicaqdmlbrywxsgek +mrvcbskheadwliqxg +yrmckldaqeghisvwxb +algoshwxzmbrqjdevcik + +omtswbxujpvfzd +yntcbxwl +aqtxyewb +tiybhgrkxw + +srkxfjlgtpedai +digtrkjsxyapq +djxrgapiktse + +fzlagmcnjwbd +chlzbgunwfj + +qszghewkntxaomu +xekowrasunz +xnksoeawzu +wjxaoduensbzfk + +oacfnvhugekystwp +ftncaykejwhbomz + +abrcsi +xctrvokbsg +yaescfbr + +vjwbpsleug +ghlwjekpbusv +jpuelswvfbg +yjwpvbeslgu +uwjegbpsvl + +jkvqesnto +kjot +jkot +jotk +otjk + +elf +nlg +vzl +yl +yl + +rgbf +yrzmhbn +rbv +btrp +fzrb + +uyetaqw +wheyaut +ateuyw +awyeut + +swuaon +usnwao + +udcyfksltzeqb +bkuycfstdqzel + +gjmbfxieklohpc +oglhiuyxjekcmfpr +okelfixjpgmch + +zixq +ziq +qgiz +iezq + +sdbjl +vyjsdb +glkdnjb +hdefnbj +opjbmd + +id +d l -dle l -uv -fabuvn -zvdu +dsnze +senzd +dzesn -htgwvcus +cegqnbzyhtm +ovaksmjwrdbpicxul -kzfijesnvuhlqd -trudmvekzjisofl +fzjxbck +ndjp +heyrsgaqm +tzof +xvdn -qbltyocnjvigse -oriqujavzntpblfw -vmqltjciondkeb \ No newline at end of file +kxtimcjayh +syavicktmxh +mpxcfatihky +kyxitmcah +taxhmyickv + +xlwjibshfgontek +njeixkslbogfhwt +hiwlbojxnktgfes + +udsygjltikqrmv +tulkrgijvm +teumkjvlgir +vgjkulrimt +rghkmlvpejtiu + +oegptdlksbixhcwqavjun +jacqedxslunipgh +enjgslzcmxupaqdih +zcndhlaqsepxugij +nqajehxpilcdgsu + +shdieqwxflurjzby +wmtajifoqcupgnkb + +xwck +ao + +zkpfgvda +kdgya +qwnbiheos +jr +muxfjcl + +wamxpysnl +qpydmrnj +nmypsl + +k +xtvweuplk +aykc +kyf + +uryfiabjvelptkmnsxow +pfcaoerluxdtnwjqbskm + +wqenhkxgypc +dnltwxzaofs + +srxmeabuodzq +oaeqdrubmzk +kdeaurobzqm + +rfungq +gfunqr +rqgufn +nftougqr + +jqthdmlfacp +liqumfdcj +qtjmglcskaf +lrbzwqyxoenmfjc + +dgz +fj +x +g + +qnhwlzjoac +wlzoajhcqn +jwqzcanohl +mwlzqonhjac + +asqtlpwnrm +nparsmd +sarnmpf +nspamxr + +ot +ozt + +cuokwgjmhxzidteslq +ytfqwpieraosbjn + +czoxdyvhasnit +zaxiovcynhts +juoyhvxatbnsiz + +owsjger +oerwgjs +rwsojeg +ojswgre +ewjsocrgv + +cmexibr +yxbir +irbx + +nbgpodvsxmzfqiteuj +mnvtqbpxuszjod +jtsqpovbxndmzu +spxbzqmodvjtun +oumjnpsvztdbqx + +vrwytk +kglvfrw +zxwusdonikph +mwgkj +warykt + +rkdijofslupwqgtvaxhy +jzdsuprykoiwfvlxaq +wfboijqpurvslkxdya +skylwcmauoexpijdvqfr + +pe +ep +e +eb +e + +uzrmjehfktblxsivqpo +rovklpubzdsfiheqxmt +ekzuprvbtisxoflhqm +imuhkftvbrepzslqxo +fmrtxblpzeosuvikhq + +oauifsgwqbtvkzxjycpml +kqmgzxjbwcoyiuvlatfps +pwjmqczoytaxgksvbiful +yqwsazxilvutcmbjopkfg +qtfdpxkmbzwacsgoiluyjv + +ykcjafmxlbehuqtiwvs +zqxudnmysc +ngrpcymsqxu + +qlyp +plqy +pqly +lyqp +yqlp + +dtszxekb +sxrgbztedm +wsdnyxobqtl + +oqmxabwknfy +mxyofkbqwaj + +xfqrjeh +hfqrjex +qbfxrhje +xhjeqfr +oqhrixfjcse + +pjaoerbtkqslx +fxkelnithrspa + +tdrpcbksa +daksbcptr +abskdptrc + +clidq +fqkmil +bioje + +wjetbyvxhoumkp +bfyenwakpvotxm + +adlqkrzvg +vlzaqgdr +zqdvryagl +lzarqgvd +arvlfqgdz + +xfsb +xbfs +xgbzsjf + +pbtrqilmkfwv +mkwflp +pkwflm +wfklsmup +wpkflm + +qkjhnsczmueftdpbrgvixw +kdejtqhfswnbmupcgxvzri +ghxwkqupdtbvscrmnzfeij +fbmrgtkxjqevhywsdzcnupi +enskiwxgdtpbquchvrjfzm + +u +u +u +u + +fitcw +dfvzabyu + +saewhufodzlxbjcrqivygmpk +jqxiopdmyluwkctsfzegbavr + +zsdfpajrnvqk +bkaxzpsrndvqj +danpsvrqjykz +ujspgrndaovkzq +tljnarpzvekwqsdmhi + +wyuemtvkdixl +direvlmytpnowauk +eigvlkwumyctd + +jcrpnzalft +jacrutndpeixz +jczvantrepk +ergcajnptzv + +iagonws +awings +wgiasn +anwsig +sngaiw + +qogitsbfzmxk +kefoxbiqtzs +tisfzvxobqk +castjxbqpifozk +okbfsnidqtzxe + +gocwh +otmhge +ogsh +ogh +sgho + +e +y +ixmds + +rtkcgwfx +tjxzckfhgbiw +aenyvmcfg + +ngspdqwv +hziq +qx +yqtf +qjz + +exgirhuwyjt +rxtuepwhgjisy +xtwyghrjeui +getuyijwcxrh +ughtwyxiejr + +vdh +devh + +y +y + +m +m +mpv + +ptvlsonebiqjwraxckumhzgf +lqtvbihsowmgeunckzjfapxr +xglbifczovtwrpqnmajeuksh +eoivpuqfcbhtnagjwkrzsxml +nubpeofjwmqvxgircahksztl + +uyltcxrzjegmfwbkio +tgpxmuvsobicfej +esvgjxcfmuotib +xifognqmbtdujeca +bxhfmiejcgout + +djaz +dajn +edja +tawdh + +hyp +yhvp +ydph + +z +z +z +z + +jeixykzcrfd +zexmdjk +xkzdje + +auih +uial +uia + +ucwkeiadhgsr +ihswgkrudea +gwezhskryadnuoi + +lvhmuranicfqpbt +bqhrlotfnzgacmu +fhdcslqwymbrutan + +u +bj +pkb +pj +i + +yg +mlyxo + +q +p +u + +yibeaxjpkcwsfm +ixpekjcaswmyrfbl +ecmbikjptafwyzsxq +sxfacbmiekjwyp + +vyzhmwginr +scjl + +s +c +h +s + +qxhngcyijptvazme +gdiwlszqfbtvcpxnejhy +eghzaniykvpqotmjuxc + +yasrbcwju +rzbacjug +abuzkxjcr + +yjdgutwfreslm +jlutewfdgsmry +tglyjcefrswmud + +cf +m +mn + +zbwlnqrc +zwrpc diff --git a/6/part2.py b/6/part2.py index 8babb61..92195ea 100644 --- a/6/part2.py +++ b/6/part2.py @@ -7,6 +7,17 @@ possibleAnswers = "qwertyuiopasdfghjklzxcvbnm" totalGroupYesCount = 0 for answerGroup in answerGroups: - for possibleAnswer in possibleAnswers: - totalGroupYesCount += all(answer.find(possibleAnswer) > -1 for answer in answerGroup) -print(totalGroupYesCount) \ No newline at end of file + if answerGroup[-1] == "": + answerGroup.pop() + + answersCounter = {} + for answers in answerGroup: + for letter in answers: + if letter not in answersCounter: + answersCounter[letter] = 0 + answersCounter[letter] += 1 + + for count in answersCounter.values(): + if count == len(answerGroup): + totalGroupYesCount += 1 +print(totalGroupYesCount) diff --git a/6/test.txt b/6/test.txt new file mode 100644 index 0000000..0f5b3bc --- /dev/null +++ b/6/test.txt @@ -0,0 +1,15 @@ +abc + +a +b +c + +ab +ac + +a +a +a +a + +b diff --git a/7/input.txt b/7/input.txt index cd73ad7..ccf5d2e 100644 --- a/7/input.txt +++ b/7/input.txt @@ -1,594 +1,594 @@ -pale chartreuse bags contain 3 faded orange bags. -drab gold bags contain 5 dark aqua bags. -mirrored magenta bags contain 3 dotted violet bags. -posh black bags contain 3 dark lavender bags, 3 mirrored coral bags, 1 dotted chartreuse bag. -striped yellow bags contain 5 pale red bags, 2 light lime bags, 5 clear indigo bags. -bright aqua bags contain 2 vibrant orange bags, 4 clear lavender bags, 1 pale gray bag. -dim silver bags contain 2 bright blue bags, 3 faded olive bags, 1 faded cyan bag. -light beige bags contain 2 bright silver bags, 4 vibrant crimson bags. -dull cyan bags contain 2 drab beige bags, 3 mirrored turquoise bags, 2 mirrored indigo bags. -dark black bags contain 5 dull turquoise bags, 4 faded cyan bags, 4 plaid coral bags. -dotted bronze bags contain 3 light blue bags, 2 dull teal bags, 3 dull chartreuse bags, 1 plaid green bag. -light purple bags contain 3 clear tan bags, 3 dull tan bags. -wavy orange bags contain 3 wavy tan bags, 3 faded green bags, 1 shiny brown bag, 2 dim tan bags. -drab beige bags contain 1 vibrant tan bag, 3 pale chartreuse bags, 3 plaid indigo bags, 2 mirrored chartreuse bags. -light coral bags contain 4 faded green bags, 1 pale crimson bag, 3 light bronze bags, 4 posh blue bags. -wavy coral bags contain 5 vibrant cyan bags, 5 light blue bags, 1 dotted turquoise bag. -dotted plum bags contain 1 clear orange bag, 2 drab black bags, 5 dull chartreuse bags, 5 plaid fuchsia bags. -striped olive bags contain 4 clear brown bags, 2 shiny beige bags. -vibrant maroon bags contain 2 dotted beige bags, 4 plaid olive bags, 5 dull black bags, 5 mirrored aqua bags. -drab purple bags contain 2 light green bags, 1 clear orange bag. -shiny violet bags contain 5 drab white bags, 5 dark aqua bags, 3 muted gray bags, 4 wavy orange bags. -muted maroon bags contain 2 plaid red bags, 3 bright silver bags, 5 posh yellow bags, 1 bright yellow bag. -clear black bags contain 1 bright plum bag, 1 faded brown bag, 4 wavy chartreuse bags. -dotted maroon bags contain 5 mirrored turquoise bags. -drab silver bags contain 2 vibrant violet bags, 2 muted orange bags, 4 dull purple bags. -faded purple bags contain 1 bright lime bag, 2 striped brown bags, 5 dull maroon bags, 2 shiny olive bags. -dull maroon bags contain 1 clear lime bag. -pale salmon bags contain 5 striped blue bags, 5 posh blue bags. -plaid orange bags contain 1 pale coral bag, 3 shiny orange bags. -drab black bags contain 5 vibrant orange bags, 1 dotted tomato bag, 2 dim red bags, 3 muted blue bags. -dotted teal bags contain 3 light fuchsia bags, 5 vibrant tan bags. -plaid tan bags contain 5 dark brown bags. -shiny coral bags contain 2 pale green bags, 1 muted lavender bag. -plaid plum bags contain 5 drab lavender bags, 2 shiny teal bags, 1 plaid tan bag. -dim olive bags contain 1 dark beige bag, 1 drab coral bag, 5 muted chartreuse bags, 4 bright teal bags. -dim bronze bags contain 1 striped turquoise bag, 4 muted turquoise bags. -muted red bags contain 5 dark gray bags, 4 muted gray bags, 5 muted blue bags. -shiny crimson bags contain 2 dark aqua bags, 4 faded fuchsia bags, 3 faded tomato bags. -vibrant teal bags contain 1 dark cyan bag, 4 wavy lime bags, 1 bright crimson bag. -dark yellow bags contain 2 striped coral bags, 1 drab tomato bag. -posh orange bags contain 3 wavy lime bags, 3 clear lavender bags, 5 bright indigo bags. -shiny orange bags contain 3 striped gold bags. -wavy magenta bags contain 2 vibrant crimson bags, 3 mirrored teal bags, 1 shiny lime bag. -clear indigo bags contain 2 pale green bags. -wavy red bags contain 5 plaid indigo bags. -wavy crimson bags contain 2 dim teal bags. -clear chartreuse bags contain 2 dull gray bags, 4 plaid lime bags, 3 striped cyan bags. -muted beige bags contain 2 drab white bags. -dim plum bags contain 3 vibrant green bags, 1 clear red bag. -dotted white bags contain 5 wavy magenta bags. -shiny chartreuse bags contain 2 striped tan bags, 2 dim maroon bags, 5 plaid bronze bags, 4 dark white bags. -pale green bags contain 5 drab crimson bags, 3 dull teal bags, 4 plaid red bags. -clear purple bags contain 3 light indigo bags. -striped brown bags contain 1 light yellow bag. -bright plum bags contain 4 faded olive bags, 2 dotted crimson bags, 3 pale green bags, 1 light yellow bag. -posh crimson bags contain 3 bright aqua bags. -dotted olive bags contain 4 striped tomato bags, 4 faded chartreuse bags, 2 dull bronze bags, 2 shiny olive bags. -striped magenta bags contain 2 posh indigo bags, 3 dotted tomato bags. -vibrant chartreuse bags contain 5 light crimson bags, 5 light bronze bags. -light cyan bags contain 1 faded red bag, 1 light silver bag. -faded teal bags contain 5 vibrant crimson bags, 3 drab gray bags, 5 striped turquoise bags, 1 pale plum bag. -mirrored aqua bags contain 1 vibrant white bag. -dull violet bags contain 2 dull orange bags, 1 light green bag. -clear orange bags contain 5 dark green bags. -muted silver bags contain 4 striped indigo bags, 3 mirrored lime bags, 1 bright lavender bag. -posh green bags contain 4 drab gold bags, 4 dim black bags, 4 faded gold bags. -dark bronze bags contain 1 faded plum bag, 5 mirrored teal bags, 5 striped indigo bags, 4 muted salmon bags. -shiny teal bags contain 4 plaid tomato bags, 3 clear brown bags, 4 dull silver bags, 2 wavy orange bags. -light gold bags contain 4 pale tan bags, 3 vibrant gray bags, 5 wavy tan bags, 5 dark violet bags. -bright indigo bags contain 5 shiny silver bags, 4 wavy indigo bags, 5 dark gold bags. -bright gray bags contain 5 shiny lime bags, 4 dull aqua bags. -dotted orange bags contain 1 dim red bag, 4 striped blue bags, 3 bright lavender bags. -dark indigo bags contain 4 drab indigo bags, 1 dotted turquoise bag. -pale lavender bags contain 2 vibrant green bags, 4 dim yellow bags, 1 mirrored yellow bag, 1 bright blue bag. -dotted silver bags contain 2 posh blue bags, 3 posh maroon bags. -plaid salmon bags contain 4 light yellow bags. -plaid magenta bags contain 3 striped gold bags, 2 mirrored black bags, 3 dull tan bags. -wavy blue bags contain 3 faded teal bags, 4 drab blue bags, 1 dotted gold bag. -muted black bags contain 1 drab teal bag, 3 muted lime bags. -clear violet bags contain 3 bright lavender bags, 1 vibrant plum bag, 3 wavy white bags, 1 shiny chartreuse bag. -bright teal bags contain 1 muted chartreuse bag, 4 dull indigo bags, 5 striped tomato bags, 1 drab white bag. -drab lime bags contain 3 posh maroon bags. -shiny tan bags contain 3 faded chartreuse bags, 3 wavy orange bags, 4 drab white bags, 4 light chartreuse bags. -light green bags contain 4 dotted tan bags, 1 dim salmon bag. -pale tan bags contain 3 posh green bags. -light gray bags contain 3 posh brown bags, 3 dim green bags, 3 mirrored tan bags, 1 mirrored yellow bag. -clear gray bags contain 4 dim brown bags. -drab magenta bags contain 4 dark aqua bags, 5 faded tomato bags. -pale violet bags contain 2 bright violet bags, 1 bright indigo bag, 2 muted salmon bags. -vibrant black bags contain 1 bright magenta bag, 4 vibrant crimson bags, 4 clear blue bags, 2 light chartreuse bags. -striped white bags contain 3 plaid yellow bags, 3 muted orange bags, 1 shiny gold bag, 5 light white bags. -wavy turquoise bags contain 5 wavy tan bags, 4 posh chartreuse bags, 5 posh red bags, 3 muted purple bags. -light white bags contain 3 shiny brown bags, 1 striped tan bag, 2 bright lime bags, 5 shiny yellow bags. -faded orange bags contain 3 dim silver bags, 5 wavy tomato bags, 4 wavy chartreuse bags, 1 shiny black bag. -mirrored fuchsia bags contain 2 plaid lime bags, 3 vibrant salmon bags. -dull aqua bags contain 5 clear brown bags, 3 dull indigo bags, 3 dull green bags, 2 muted gold bags. -dim gray bags contain 5 dark bronze bags, 4 dark silver bags, 3 wavy cyan bags. -dull tomato bags contain 4 drab tan bags, 3 striped brown bags. -dim gold bags contain 3 shiny tomato bags, 2 dim tomato bags. -striped beige bags contain 3 shiny violet bags, 3 striped aqua bags, 3 muted blue bags, 3 shiny gold bags. -mirrored coral bags contain 2 muted coral bags, 3 shiny teal bags. -vibrant white bags contain 1 clear brown bag, 3 drab gold bags, 2 wavy crimson bags, 5 light plum bags. -posh tan bags contain 3 dim salmon bags, 1 faded gold bag, 1 drab gray bag, 4 shiny coral bags. -drab tan bags contain 4 bright magenta bags, 3 dull green bags, 1 drab crimson bag, 4 dark green bags. -striped coral bags contain 2 drab tan bags, 4 wavy purple bags. -dark white bags contain 1 bright magenta bag. -striped red bags contain 3 plaid black bags. -drab coral bags contain 4 dotted violet bags, 2 pale magenta bags, 5 posh purple bags, 4 light lime bags. -pale yellow bags contain 5 plaid black bags, 3 shiny olive bags, 3 clear brown bags. -faded coral bags contain 2 pale salmon bags, 5 dim teal bags, 3 vibrant crimson bags. -faded black bags contain 2 wavy white bags, 5 faded brown bags, 4 drab beige bags. -dim salmon bags contain 4 vibrant white bags, 3 wavy salmon bags, 2 wavy lime bags, 2 bright purple bags. -dim black bags contain 3 dull tan bags, 2 striped beige bags, 2 plaid brown bags. -plaid cyan bags contain 2 muted coral bags, 3 dim red bags. -dotted gold bags contain 3 dotted orange bags, 3 striped coral bags, 1 clear magenta bag, 1 dotted crimson bag. -mirrored white bags contain 4 clear brown bags, 2 drab crimson bags, 4 shiny gold bags, 2 posh red bags. -vibrant olive bags contain 4 striped indigo bags, 5 dim salmon bags, 5 bright magenta bags. -dim teal bags contain 5 striped blue bags, 4 dull aqua bags, 5 dark cyan bags, 2 wavy magenta bags. -faded chartreuse bags contain no other bags. -clear yellow bags contain 5 wavy olive bags, 1 drab tomato bag, 2 plaid red bags. -mirrored bronze bags contain 1 vibrant beige bag, 5 clear cyan bags, 3 muted aqua bags, 5 striped turquoise bags. -vibrant tan bags contain 2 dull tomato bags, 5 dark aqua bags, 3 muted gray bags. -light olive bags contain 4 dark white bags, 2 dim teal bags. -light lavender bags contain 5 wavy indigo bags, 3 posh olive bags, 4 striped brown bags. -dotted gray bags contain 1 dim red bag, 5 light tomato bags, 2 dull gray bags, 4 light black bags. -plaid olive bags contain 5 wavy purple bags, 2 posh blue bags, 3 faded purple bags, 1 pale fuchsia bag. -muted salmon bags contain 5 shiny tan bags. -dark olive bags contain 4 mirrored black bags. -striped turquoise bags contain 4 pale olive bags, 2 pale tomato bags, 3 bright yellow bags. -plaid fuchsia bags contain 4 clear silver bags. -vibrant magenta bags contain 1 vibrant green bag, 2 muted silver bags, 4 light plum bags, 5 pale teal bags. -vibrant bronze bags contain 2 dull gold bags, 2 bright coral bags. -mirrored purple bags contain 1 drab tomato bag, 3 faded silver bags. -light lime bags contain 5 shiny violet bags, 4 wavy aqua bags. -pale gold bags contain 3 vibrant brown bags, 5 dim red bags. -dim orange bags contain 4 dark cyan bags, 3 light chartreuse bags, 3 wavy orange bags, 5 dark green bags. -clear fuchsia bags contain 4 posh blue bags, 4 mirrored lavender bags. -pale bronze bags contain 3 pale silver bags, 2 dotted tomato bags, 4 plaid gold bags. -dotted aqua bags contain 3 drab magenta bags, 3 dull green bags. -posh silver bags contain 5 striped lavender bags, 1 dotted maroon bag. -dim coral bags contain 1 wavy bronze bag, 5 striped gray bags, 2 light indigo bags, 2 dim orange bags. -bright green bags contain 5 drab plum bags. -striped teal bags contain 1 light fuchsia bag, 5 vibrant aqua bags, 3 mirrored white bags. -dim crimson bags contain 5 posh gray bags. -drab salmon bags contain 3 bright olive bags, 5 dim tan bags. -muted green bags contain 2 dark beige bags, 4 posh coral bags. -light tan bags contain 5 wavy white bags, 3 dim indigo bags, 3 bright green bags, 5 clear lavender bags. -posh teal bags contain 4 pale salmon bags. -muted cyan bags contain 4 posh yellow bags. -bright turquoise bags contain 3 posh indigo bags, 2 mirrored salmon bags, 2 dim magenta bags. -vibrant salmon bags contain 5 light tomato bags. -dark violet bags contain 3 light bronze bags, 5 dark gold bags, 1 striped magenta bag, 4 faded lavender bags. -faded maroon bags contain 5 plaid teal bags, 5 light turquoise bags, 5 posh white bags, 4 drab orange bags. -dotted magenta bags contain 4 shiny chartreuse bags, 5 drab turquoise bags, 4 bright tomato bags, 2 striped maroon bags. -dotted beige bags contain 5 clear white bags. -bright magenta bags contain no other bags. -dull red bags contain 2 muted lavender bags. -drab green bags contain 2 dotted cyan bags, 4 striped white bags, 3 muted magenta bags. -posh brown bags contain 5 muted lavender bags, 2 posh red bags, 5 drab magenta bags. -faded tan bags contain 3 bright purple bags, 5 plaid tomato bags, 3 dull teal bags. -faded brown bags contain 2 light silver bags, 5 mirrored tan bags, 2 clear tan bags, 2 drab gold bags. -striped black bags contain 3 vibrant yellow bags, 3 dull blue bags, 1 dull aqua bag, 5 dull teal bags. -faded white bags contain 1 muted maroon bag, 1 dark gray bag, 5 dark white bags. -drab aqua bags contain 3 muted white bags, 4 dark cyan bags, 5 pale tomato bags. -dull teal bags contain 2 plaid red bags, 5 mirrored teal bags. -vibrant plum bags contain 2 dim salmon bags, 3 light purple bags, 2 muted gray bags. -plaid crimson bags contain 5 shiny blue bags, 1 dull bronze bag. -wavy violet bags contain 3 dotted tomato bags, 3 striped brown bags. -clear cyan bags contain 1 drab crimson bag, 2 shiny lime bags. -shiny green bags contain 5 muted gray bags. -posh purple bags contain 2 vibrant white bags. -plaid lime bags contain 2 clear crimson bags, 3 bright magenta bags, 5 shiny silver bags, 1 posh blue bag. -dotted violet bags contain 1 dark teal bag, 5 faded crimson bags. -pale maroon bags contain 5 mirrored lime bags, 5 clear olive bags, 5 shiny orange bags, 4 mirrored fuchsia bags. -wavy indigo bags contain 5 plaid lime bags, 5 plaid fuchsia bags, 2 faded chartreuse bags, 4 dotted tomato bags. -faded silver bags contain 5 striped lavender bags, 4 muted lavender bags, 5 plaid brown bags. -drab violet bags contain 1 posh white bag. -bright white bags contain 3 light cyan bags, 1 dark indigo bag, 2 pale turquoise bags, 1 pale brown bag. -faded olive bags contain 2 clear lime bags, 4 muted chartreuse bags. -muted violet bags contain 1 clear lavender bag, 1 dark green bag, 3 dark cyan bags. -shiny gray bags contain 2 dull tan bags, 1 shiny olive bag. -plaid blue bags contain 3 dark aqua bags, 4 muted silver bags, 5 pale beige bags, 1 drab chartreuse bag. -posh fuchsia bags contain 5 posh red bags, 2 muted gray bags. -faded blue bags contain 1 plaid fuchsia bag, 1 mirrored turquoise bag, 2 plaid indigo bags, 1 dark aqua bag. -bright brown bags contain 4 drab violet bags, 5 shiny lime bags, 2 bright beige bags. -mirrored teal bags contain 5 dark gray bags. -bright violet bags contain 2 dotted crimson bags, 3 striped coral bags, 5 shiny maroon bags, 3 dull lavender bags. -striped plum bags contain 2 dim orange bags, 4 clear blue bags, 3 shiny violet bags. -plaid green bags contain 2 bright teal bags, 5 striped lime bags. -muted fuchsia bags contain 4 clear gold bags, 2 vibrant plum bags, 5 bright black bags. -bright purple bags contain 3 vibrant crimson bags, 1 dotted maroon bag, 4 dark gold bags. -faded cyan bags contain 4 dim teal bags. -wavy fuchsia bags contain 5 dull yellow bags, 2 light yellow bags, 5 bright black bags. -wavy salmon bags contain 1 shiny black bag, 3 bright teal bags, 5 clear yellow bags, 1 dull maroon bag. -dark fuchsia bags contain 1 muted violet bag, 3 light cyan bags. -clear salmon bags contain 4 light beige bags, 4 vibrant green bags, 3 pale yellow bags, 1 muted turquoise bag. -pale purple bags contain 1 bright blue bag, 5 pale bronze bags. -posh salmon bags contain 3 faded cyan bags, 4 posh maroon bags, 1 plaid green bag, 2 shiny silver bags. -bright blue bags contain 3 vibrant green bags, 2 drab gray bags. -shiny brown bags contain no other bags. -dark gold bags contain 5 vibrant aqua bags, 2 posh yellow bags. -mirrored violet bags contain 2 pale silver bags, 1 posh fuchsia bag. -bright fuchsia bags contain 3 muted brown bags, 3 plaid purple bags, 2 faded coral bags, 3 mirrored turquoise bags. -dim beige bags contain 2 dull lime bags, 3 dim gold bags, 3 plaid fuchsia bags, 1 posh yellow bag. -shiny white bags contain 1 pale fuchsia bag, 3 shiny beige bags, 3 posh aqua bags, 5 clear tan bags. -posh red bags contain 3 bright magenta bags, 2 dark aqua bags, 4 dark cyan bags. -vibrant fuchsia bags contain 3 striped indigo bags. -faded tomato bags contain 3 wavy olive bags, 5 shiny brown bags, 5 shiny tan bags. -dull purple bags contain 4 plaid teal bags, 4 dull indigo bags, 3 dull bronze bags, 4 faded tan bags. -shiny magenta bags contain 4 pale tomato bags, 4 shiny brown bags. -wavy tan bags contain no other bags. -dull salmon bags contain 3 faded crimson bags, 5 shiny fuchsia bags, 4 dotted silver bags. -pale magenta bags contain 2 faded chartreuse bags. -vibrant purple bags contain 3 muted orange bags, 5 dotted brown bags. -shiny turquoise bags contain 4 dotted turquoise bags, 1 dotted purple bag, 4 dim black bags. -shiny black bags contain 2 clear brown bags, 4 vibrant yellow bags, 1 vibrant aqua bag, 5 mirrored teal bags. -shiny cyan bags contain 3 dotted coral bags. -dim magenta bags contain 3 bright purple bags, 2 wavy white bags, 2 shiny fuchsia bags, 2 shiny yellow bags. -pale beige bags contain 3 dim orange bags, 5 wavy purple bags. -wavy bronze bags contain 5 posh yellow bags, 1 pale green bag, 5 dark cyan bags. -dull blue bags contain 4 wavy tan bags. -striped lime bags contain 5 striped crimson bags, 1 bright plum bag, 5 plaid yellow bags. -faded magenta bags contain 1 plaid green bag, 2 vibrant silver bags, 1 dim turquoise bag. -muted white bags contain 5 bright lime bags, 4 light fuchsia bags, 4 light violet bags, 4 dark aqua bags. -pale fuchsia bags contain 1 striped tomato bag, 1 drab crimson bag, 4 shiny yellow bags. -posh cyan bags contain 5 dark maroon bags. -dim indigo bags contain 3 dark gold bags, 5 bright maroon bags. -faded fuchsia bags contain 4 plaid tomato bags, 2 mirrored red bags. -shiny red bags contain 5 dull olive bags, 1 posh tan bag, 4 bright green bags. -posh maroon bags contain 4 clear blue bags, 5 muted chartreuse bags. -shiny indigo bags contain 4 wavy orange bags. -dim violet bags contain 1 dotted chartreuse bag, 2 mirrored lime bags, 1 drab chartreuse bag. -dim lime bags contain 4 posh fuchsia bags, 5 dull blue bags, 2 dull silver bags, 2 bright lime bags. -muted blue bags contain 5 mirrored lime bags. -dotted fuchsia bags contain 2 wavy magenta bags. -bright beige bags contain 1 mirrored maroon bag. -light bronze bags contain 1 posh maroon bag, 1 dotted maroon bag, 3 clear silver bags. -posh olive bags contain 2 wavy orange bags. -shiny salmon bags contain 2 light teal bags, 5 dark violet bags. -plaid tomato bags contain 5 shiny tan bags, 5 drab white bags. -striped blue bags contain 3 dark cyan bags, 2 pale magenta bags, 3 striped indigo bags. -bright lime bags contain 4 dark cyan bags. -vibrant crimson bags contain no other bags. -mirrored salmon bags contain 1 pale gray bag, 5 dark plum bags. -dim brown bags contain 4 faded fuchsia bags, 4 dull indigo bags. -clear aqua bags contain 1 mirrored black bag, 1 light bronze bag, 2 mirrored maroon bags, 4 mirrored white bags. -clear red bags contain 1 bright lavender bag. -dark maroon bags contain 1 light chartreuse bag. -bright silver bags contain 1 wavy tan bag, 3 plaid black bags, 2 dark gray bags. -faded lime bags contain 1 pale silver bag, 3 drab teal bags. -plaid lavender bags contain 1 plaid fuchsia bag. -faded yellow bags contain 4 dull blue bags. -dark blue bags contain 1 dotted red bag, 1 bright indigo bag, 2 posh tan bags. -light aqua bags contain 3 shiny olive bags, 2 dotted brown bags, 1 dull green bag. -striped gray bags contain 5 faded crimson bags, 4 clear white bags. -dark chartreuse bags contain 5 faded lime bags. -plaid chartreuse bags contain 3 shiny teal bags. -wavy gray bags contain 5 plaid lime bags, 5 wavy olive bags, 5 dim orange bags. -dull yellow bags contain 5 faded chartreuse bags, 2 clear crimson bags, 4 faded fuchsia bags. -muted magenta bags contain 4 mirrored teal bags, 3 drab silver bags, 3 drab lavender bags, 2 mirrored orange bags. -pale turquoise bags contain 3 bright lavender bags, 1 shiny tan bag, 4 posh teal bags, 2 posh cyan bags. -light turquoise bags contain 1 plaid gold bag. -pale brown bags contain 4 muted orange bags. -posh chartreuse bags contain 1 plaid lime bag, 4 shiny gray bags, 3 pale bronze bags, 3 vibrant bronze bags. -posh gray bags contain 3 dim salmon bags. -wavy tomato bags contain 3 vibrant salmon bags, 5 vibrant yellow bags, 2 vibrant green bags, 3 striped brown bags. -dotted indigo bags contain 5 shiny fuchsia bags, 1 posh lime bag, 1 muted beige bag. -pale lime bags contain 4 wavy fuchsia bags. -dull lime bags contain 2 light bronze bags, 3 light beige bags, 4 wavy tomato bags. -shiny olive bags contain 5 dull aqua bags, 5 muted gray bags, 5 posh olive bags. -muted teal bags contain 3 dull teal bags, 5 bright magenta bags. -dull white bags contain 5 striped yellow bags, 1 dim aqua bag. -shiny silver bags contain 4 shiny olive bags, 4 wavy orange bags, 2 mirrored red bags. -dim turquoise bags contain 4 drab gold bags. -clear brown bags contain no other bags. -mirrored olive bags contain 4 dim aqua bags. -striped purple bags contain 5 wavy tan bags. -faded violet bags contain 4 dull tan bags. -faded salmon bags contain 5 striped fuchsia bags, 1 muted lime bag. -mirrored yellow bags contain 2 dark orange bags. -wavy gold bags contain 2 muted salmon bags. -pale tomato bags contain 1 vibrant crimson bag, 5 light black bags, 3 dotted brown bags. -clear bronze bags contain 1 mirrored black bag, 3 wavy red bags, 4 faded white bags, 5 vibrant bronze bags. -mirrored silver bags contain 3 wavy salmon bags, 4 drab brown bags, 1 striped green bag, 4 mirrored lime bags. -dull bronze bags contain 1 dim orange bag, 1 light maroon bag, 5 wavy bronze bags, 2 posh blue bags. -posh lime bags contain 2 dark bronze bags. -light teal bags contain 4 dotted cyan bags, 4 dark crimson bags, 4 striped orange bags, 4 pale black bags. -dark lime bags contain 2 posh red bags. -vibrant yellow bags contain 4 dull indigo bags. -vibrant green bags contain 3 bright silver bags, 1 striped fuchsia bag, 5 dim tan bags. -mirrored lavender bags contain 1 dull maroon bag, 1 bright silver bag, 4 drab teal bags, 2 posh blue bags. -bright salmon bags contain 1 dark aqua bag. -clear green bags contain 3 vibrant blue bags, 4 dotted salmon bags, 5 striped violet bags. -clear lavender bags contain 2 faded silver bags, 5 dim tan bags, 4 drab white bags. -dim chartreuse bags contain 4 dark gray bags. -posh blue bags contain 1 clear silver bag, 5 clear crimson bags, 2 light beige bags. -dim maroon bags contain 5 dotted fuchsia bags. -muted crimson bags contain 1 dark cyan bag. -drab cyan bags contain 4 wavy brown bags. -faded lavender bags contain 3 posh coral bags, 2 dotted violet bags, 3 pale gray bags, 4 plaid beige bags. -dim aqua bags contain 5 dim tan bags, 3 posh olive bags. -posh magenta bags contain 3 bright orange bags, 4 bright salmon bags, 1 vibrant beige bag. -plaid purple bags contain 2 mirrored gray bags, 5 mirrored tan bags. -muted tomato bags contain 1 dotted tomato bag, 4 bright magenta bags, 1 striped turquoise bag. -dull black bags contain 5 wavy coral bags, 4 wavy beige bags, 1 drab lavender bag, 4 dark beige bags. -mirrored maroon bags contain 4 shiny teal bags, 3 light blue bags, 1 light aqua bag, 3 faded tan bags. -posh aqua bags contain 3 dotted orange bags, 4 wavy crimson bags, 5 pale magenta bags, 5 posh fuchsia bags. -muted lavender bags contain 4 faded green bags, 1 dark aqua bag, 4 posh maroon bags, 2 dark white bags. -posh tomato bags contain 2 posh black bags. -dull gold bags contain 1 faded turquoise bag, 4 drab brown bags, 4 shiny turquoise bags. -plaid violet bags contain 3 bright plum bags, 4 clear olive bags, 4 drab bronze bags. -pale silver bags contain 5 wavy olive bags, 5 dull indigo bags, 1 light plum bag, 4 dark gray bags. -dull brown bags contain 1 dim orange bag. -shiny beige bags contain 5 faded purple bags. -striped cyan bags contain 1 muted black bag, 4 dull aqua bags. -dotted green bags contain 4 wavy white bags, 2 shiny violet bags, 4 muted chartreuse bags. -dotted chartreuse bags contain 5 dull bronze bags. -plaid aqua bags contain 2 shiny indigo bags, 5 muted lavender bags, 3 light blue bags, 4 vibrant salmon bags. -mirrored beige bags contain 2 light white bags, 1 wavy coral bag. -light orange bags contain 3 drab salmon bags, 3 clear lavender bags, 4 dark beige bags, 1 clear purple bag. -dark tan bags contain 1 posh olive bag. -muted lime bags contain 3 faded chartreuse bags, 4 muted silver bags, 3 vibrant salmon bags, 1 mirrored blue bag. -posh gold bags contain 5 vibrant magenta bags. -faded beige bags contain 5 faded black bags, 4 clear coral bags, 4 bright olive bags, 1 faded lime bag. -vibrant turquoise bags contain 3 clear cyan bags, 1 dotted fuchsia bag. -faded bronze bags contain 4 posh teal bags, 3 plaid tomato bags, 4 dark bronze bags. -shiny blue bags contain 3 drab indigo bags, 1 dark lime bag. -plaid yellow bags contain 1 plaid lime bag. -shiny aqua bags contain 1 vibrant tomato bag, 4 dark aqua bags, 5 vibrant cyan bags, 4 striped coral bags. -mirrored indigo bags contain 5 vibrant turquoise bags. -wavy cyan bags contain 1 light yellow bag, 4 faded fuchsia bags, 2 clear silver bags, 3 vibrant fuchsia bags. -dull gray bags contain 2 mirrored turquoise bags, 2 posh yellow bags. -dim yellow bags contain 4 light silver bags. -striped crimson bags contain 3 dim salmon bags. -pale coral bags contain 4 vibrant violet bags, 4 posh teal bags, 3 drab aqua bags. -faded aqua bags contain 3 bright magenta bags, 4 muted aqua bags, 3 light salmon bags, 3 light black bags. -drab orange bags contain 2 drab purple bags, 5 light black bags, 5 dull blue bags, 1 bright purple bag. -drab bronze bags contain 3 clear violet bags, 3 drab crimson bags, 3 dotted yellow bags, 5 muted salmon bags. -drab blue bags contain 3 faded violet bags, 4 bright lavender bags, 2 vibrant cyan bags. -pale olive bags contain 4 shiny yellow bags, 1 dull yellow bag, 2 striped tomato bags. -light salmon bags contain 2 shiny gold bags, 2 light silver bags, 4 wavy magenta bags. -wavy brown bags contain 4 dim indigo bags, 3 pale olive bags, 3 mirrored orange bags. -vibrant beige bags contain 5 light lavender bags, 3 wavy bronze bags, 1 plaid yellow bag, 2 dark aqua bags. -clear tan bags contain 3 posh fuchsia bags, 1 pale fuchsia bag. -dotted turquoise bags contain 3 light maroon bags. -dull magenta bags contain 2 dark tomato bags. -dull chartreuse bags contain 5 light chartreuse bags, 2 dotted chartreuse bags. -bright red bags contain 1 dotted brown bag, 1 posh yellow bag, 5 light white bags, 4 shiny maroon bags. -bright bronze bags contain 4 bright salmon bags, 4 plaid bronze bags, 2 dim chartreuse bags. -vibrant gold bags contain 2 faded purple bags, 3 mirrored maroon bags, 3 dull gray bags. -vibrant cyan bags contain 2 faded olive bags, 4 dull silver bags, 3 mirrored lime bags, 4 faded red bags. -mirrored plum bags contain 3 dark orange bags, 5 plaid lavender bags, 5 dim red bags. -clear white bags contain 3 striped beige bags. -drab fuchsia bags contain 4 striped magenta bags, 2 vibrant violet bags, 4 pale aqua bags. -dark purple bags contain 5 striped violet bags. -mirrored tomato bags contain 5 drab olive bags. -dull olive bags contain 4 wavy purple bags. -wavy maroon bags contain 4 pale gold bags. -vibrant blue bags contain 1 faded lime bag, 4 light plum bags. -clear teal bags contain 4 dark green bags, 5 clear brown bags. -clear beige bags contain 4 shiny cyan bags, 3 striped salmon bags. -drab indigo bags contain 5 drab tan bags, 4 shiny black bags, 4 striped brown bags. -muted bronze bags contain 4 dark chartreuse bags, 5 pale crimson bags, 4 vibrant gold bags. -muted olive bags contain 3 wavy olive bags, 5 dark bronze bags, 4 bright aqua bags, 1 dotted yellow bag. -dull beige bags contain 1 dull purple bag. -dotted yellow bags contain 3 dim plum bags, 2 plaid lavender bags. -wavy lavender bags contain 1 vibrant violet bag, 4 posh blue bags, 1 posh plum bag. -dim fuchsia bags contain 5 pale yellow bags, 4 faded plum bags, 5 bright lime bags. -plaid gray bags contain 5 dark violet bags, 2 dotted crimson bags, 4 dull fuchsia bags, 1 drab magenta bag. -vibrant coral bags contain 2 shiny cyan bags, 4 pale magenta bags, 5 striped coral bags, 3 pale teal bags. -drab yellow bags contain 4 clear orange bags, 5 faded fuchsia bags. -dark red bags contain 5 mirrored maroon bags, 3 clear blue bags, 2 striped crimson bags, 2 dotted violet bags. -mirrored cyan bags contain 5 dotted maroon bags, 5 posh turquoise bags, 2 faded gray bags. -muted yellow bags contain 1 light cyan bag, 2 dim orange bags, 5 dull olive bags, 5 light green bags. -wavy aqua bags contain 2 muted cyan bags, 4 mirrored green bags, 5 muted tomato bags. -vibrant lavender bags contain 1 dotted gold bag, 1 light chartreuse bag, 3 mirrored gray bags. -bright black bags contain 1 striped lavender bag, 2 shiny tan bags, 4 bright lime bags. -wavy chartreuse bags contain 4 mirrored red bags. -dull turquoise bags contain 5 faded red bags, 1 light brown bag, 1 clear magenta bag. -dull silver bags contain 4 dark gray bags, 1 faded green bag. -pale black bags contain 1 plaid indigo bag, 3 light tomato bags, 4 drab blue bags. -clear tomato bags contain 1 dim tan bag, 1 clear lavender bag, 1 striped fuchsia bag, 5 clear orange bags. -dark cyan bags contain 4 shiny brown bags. -pale blue bags contain 1 clear green bag. -dotted lavender bags contain 3 dotted maroon bags, 5 wavy salmon bags, 2 pale tomato bags, 5 mirrored blue bags. -pale orange bags contain 4 pale silver bags, 4 striped lime bags. -drab chartreuse bags contain 2 dark gold bags, 5 clear crimson bags, 3 dull green bags. -striped violet bags contain 4 plaid lime bags. -muted gold bags contain no other bags. -mirrored gray bags contain 1 light green bag, 1 striped beige bag. -bright lavender bags contain 2 clear blue bags. -striped gold bags contain 3 muted turquoise bags. -dim white bags contain 1 vibrant lavender bag. -wavy beige bags contain 4 light chartreuse bags, 5 dark lime bags. -dim tomato bags contain 2 wavy aqua bags, 3 faded salmon bags. -light blue bags contain 2 wavy purple bags, 1 dull olive bag. -drab brown bags contain 5 drab magenta bags, 2 muted teal bags. -wavy olive bags contain 3 pale green bags, 5 muted gray bags. -bright chartreuse bags contain 1 clear yellow bag, 2 dotted olive bags, 1 posh olive bag. -posh violet bags contain 5 muted tomato bags, 5 light aqua bags, 3 pale cyan bags, 2 mirrored chartreuse bags. -dotted blue bags contain 4 plaid yellow bags, 3 vibrant bronze bags, 2 dull maroon bags, 3 shiny silver bags. -pale white bags contain 3 plaid brown bags, 2 mirrored aqua bags, 2 dim turquoise bags. -dull lavender bags contain 1 light blue bag, 5 drab tan bags, 3 light yellow bags. -pale cyan bags contain 5 pale green bags, 5 dull tomato bags, 4 vibrant orange bags. -mirrored tan bags contain 1 mirrored blue bag, 5 wavy purple bags. -plaid maroon bags contain 5 bright orange bags, 1 dull fuchsia bag, 5 dull indigo bags, 4 light white bags. -drab plum bags contain 5 pale silver bags, 1 clear yellow bag, 5 dotted fuchsia bags. -muted aqua bags contain 2 posh blue bags, 3 muted chartreuse bags, 1 drab tan bag, 3 dotted brown bags. -striped lavender bags contain 3 posh yellow bags, 5 drab white bags, 1 muted gold bag. -posh bronze bags contain 1 mirrored lime bag, 2 muted cyan bags, 3 muted aqua bags. -dotted brown bags contain 1 dotted orange bag, 3 striped blue bags, 3 dotted teal bags, 4 wavy magenta bags. -light chartreuse bags contain no other bags. -dotted purple bags contain 3 muted lavender bags. -vibrant violet bags contain 3 light violet bags. -dark green bags contain 3 mirrored teal bags, 3 bright magenta bags, 2 light chartreuse bags. -faded indigo bags contain 3 faded fuchsia bags, 4 dim magenta bags. -bright cyan bags contain 4 vibrant olive bags, 4 faded olive bags, 1 posh teal bag. -drab white bags contain no other bags. -clear magenta bags contain 1 dotted maroon bag, 2 wavy olive bags, 5 drab white bags. -light yellow bags contain 4 shiny brown bags, 4 light fuchsia bags, 1 mirrored turquoise bag, 2 drab teal bags. -dark beige bags contain 4 dim crimson bags, 5 mirrored turquoise bags, 3 posh yellow bags, 1 dull chartreuse bag. -dark teal bags contain 5 mirrored tan bags, 5 vibrant tomato bags, 2 bright violet bags, 2 striped silver bags. -pale plum bags contain 2 drab white bags. -light red bags contain 2 striped blue bags, 2 bright violet bags, 4 clear orange bags. -plaid brown bags contain 4 light maroon bags, 5 dull bronze bags, 3 plaid black bags. -plaid bronze bags contain 4 muted salmon bags, 1 light violet bag, 4 plaid black bags. -bright orange bags contain 5 light green bags, 2 wavy plum bags, 5 faded coral bags. -plaid black bags contain 5 dark green bags, 3 dull indigo bags, 3 dim tan bags. -shiny lime bags contain 5 bright lime bags. -shiny fuchsia bags contain 2 dotted tan bags, 3 drab white bags. -bright gold bags contain 1 drab magenta bag, 4 pale salmon bags. -shiny gold bags contain 1 drab white bag, 2 wavy purple bags, 2 muted gray bags, 5 clear crimson bags. -plaid beige bags contain 3 dotted yellow bags. -vibrant silver bags contain 2 muted gold bags, 5 dim teal bags, 4 mirrored white bags, 2 clear blue bags. -dotted black bags contain 1 wavy crimson bag, 5 vibrant purple bags. -mirrored brown bags contain 4 drab aqua bags, 4 dark teal bags, 5 striped plum bags. -dotted red bags contain 5 bright lime bags, 5 vibrant magenta bags, 1 striped turquoise bag. -bright tan bags contain 2 dull yellow bags, 2 posh tomato bags. -striped aqua bags contain 3 clear blue bags, 1 dark maroon bag. -dotted coral bags contain 1 vibrant silver bag, 3 dark green bags, 4 posh gray bags, 2 light red bags. -mirrored lime bags contain 3 mirrored white bags, 1 plaid tomato bag, 2 shiny yellow bags, 2 vibrant black bags. -dark gray bags contain 3 faded green bags, 3 vibrant crimson bags. -wavy lime bags contain 5 wavy salmon bags, 2 faded tomato bags. -dotted lime bags contain 5 drab brown bags, 1 faded salmon bag, 2 wavy violet bags, 4 posh olive bags. -light black bags contain 5 striped indigo bags. -shiny yellow bags contain 5 wavy tan bags, 5 drab white bags, 4 posh olive bags. -bright yellow bags contain 3 posh red bags, 2 plaid black bags. -dull tan bags contain 4 clear brown bags, 3 wavy tan bags. -shiny tomato bags contain 2 shiny orange bags, 4 light lavender bags, 1 plaid lavender bag. -vibrant aqua bags contain 5 pale green bags, 3 drab crimson bags, 2 shiny brown bags. -striped salmon bags contain 2 posh orange bags. -light silver bags contain 1 shiny yellow bag, 4 mirrored turquoise bags, 1 bright coral bag, 2 posh maroon bags. -striped fuchsia bags contain 3 drab white bags, 3 faded chartreuse bags, 4 vibrant black bags, 3 wavy tan bags. -bright tomato bags contain 3 light beige bags, 4 drab teal bags. -shiny plum bags contain 4 clear bronze bags. -vibrant red bags contain 3 bright magenta bags. -mirrored orange bags contain 2 mirrored white bags, 3 dotted brown bags, 3 bright silver bags, 4 pale teal bags. -dull indigo bags contain no other bags. -wavy yellow bags contain 4 wavy white bags. -muted turquoise bags contain 2 posh red bags, 3 dark green bags, 4 mirrored white bags. -striped indigo bags contain 3 dark cyan bags, 5 clear blue bags, 2 faded chartreuse bags. -mirrored green bags contain 4 mirrored chartreuse bags, 3 striped red bags. -plaid white bags contain 1 vibrant salmon bag, 1 dark yellow bag, 2 vibrant violet bags. -dark plum bags contain 4 muted coral bags, 4 mirrored blue bags, 1 vibrant aqua bag. -drab turquoise bags contain 1 dotted purple bag, 1 light plum bag. -light maroon bags contain 2 wavy purple bags, 2 dim orange bags, 1 mirrored white bag, 3 striped tomato bags. -shiny maroon bags contain 2 bright blue bags. -drab crimson bags contain 1 bright magenta bag, 3 drab white bags. -dark aqua bags contain 3 shiny brown bags, 5 dark gray bags. -posh turquoise bags contain 2 shiny gray bags. -muted indigo bags contain 4 wavy purple bags. -dotted salmon bags contain 1 vibrant violet bag, 1 mirrored lavender bag. -plaid indigo bags contain 2 wavy indigo bags, 2 dark white bags, 3 wavy tan bags, 3 vibrant crimson bags. -muted brown bags contain 3 posh yellow bags, 4 shiny lime bags, 5 striped lavender bags. -vibrant gray bags contain 1 mirrored silver bag, 2 light coral bags, 1 faded gold bag, 1 dull fuchsia bag. -drab tomato bags contain 1 wavy tan bag, 1 shiny tan bag, 1 clear crimson bag. -wavy white bags contain 3 muted blue bags, 2 wavy plum bags, 4 dim silver bags, 3 mirrored tan bags. -shiny lavender bags contain 1 posh coral bag, 2 dotted crimson bags, 2 plaid red bags, 1 striped silver bag. -dull fuchsia bags contain 4 light bronze bags, 3 clear gray bags, 1 bright coral bag. -drab teal bags contain 5 muted chartreuse bags, 4 dull silver bags, 5 vibrant black bags, 3 shiny olive bags. -clear crimson bags contain 4 clear brown bags, 3 drab crimson bags, 4 clear blue bags, 1 vibrant black bag. -posh beige bags contain 5 plaid teal bags. -clear silver bags contain 3 plaid tomato bags, 3 bright silver bags, 1 mirrored white bag. -mirrored red bags contain 2 striped indigo bags, 2 drab teal bags. -posh indigo bags contain 3 faded red bags. -dark silver bags contain 5 wavy tan bags, 2 dotted maroon bags. -drab red bags contain 2 dotted chartreuse bags, 3 mirrored tan bags, 5 pale plum bags. -plaid turquoise bags contain 4 dim silver bags, 1 bright orange bag. -dim blue bags contain 1 muted lavender bag, 1 wavy plum bag. -plaid coral bags contain 2 shiny coral bags. -striped silver bags contain 2 muted brown bags. -vibrant tomato bags contain 1 muted black bag. -dark turquoise bags contain 2 light silver bags. -vibrant lime bags contain 2 light beige bags, 3 bright green bags, 5 faded purple bags. -mirrored chartreuse bags contain 2 wavy tan bags, 5 dim tan bags. -light plum bags contain 5 faded green bags. -dim tan bags contain 1 faded chartreuse bag, 2 clear brown bags, 1 faded green bag, 2 muted gold bags. -shiny bronze bags contain 5 drab aqua bags. -dotted tomato bags contain 4 wavy magenta bags. -mirrored crimson bags contain 1 dim bronze bag. -light crimson bags contain 3 posh red bags. -dull coral bags contain 3 striped crimson bags, 4 mirrored salmon bags. -drab lavender bags contain 3 dim salmon bags. -dotted crimson bags contain 3 dark cyan bags, 4 posh blue bags, 2 light fuchsia bags. -dotted tan bags contain 2 posh fuchsia bags, 4 dim black bags. -dark coral bags contain 2 mirrored green bags, 4 shiny white bags, 2 shiny tomato bags. -striped orange bags contain 1 muted violet bag, 5 pale cyan bags, 2 drab tomato bags, 3 faded violet bags. -pale aqua bags contain 3 shiny fuchsia bags, 4 shiny violet bags. -wavy plum bags contain 4 light chartreuse bags, 5 vibrant tan bags, 4 muted lime bags. -mirrored turquoise bags contain 4 shiny brown bags, 4 drab tan bags. -dark magenta bags contain 5 faded violet bags, 2 posh lavender bags. -striped bronze bags contain 3 light silver bags, 3 mirrored brown bags, 3 posh purple bags, 4 drab turquoise bags. -faded red bags contain 2 dark cyan bags, 2 striped tan bags, 4 mirrored violet bags. -faded turquoise bags contain 1 striped crimson bag. -clear gold bags contain 3 clear crimson bags, 5 faded green bags, 4 dim tan bags. -clear coral bags contain 3 striped salmon bags. -faded gray bags contain 4 light salmon bags, 5 clear orange bags, 1 dim yellow bag, 2 wavy green bags. -posh lavender bags contain 2 clear silver bags, 1 wavy indigo bag, 4 faded brown bags, 2 light white bags. -pale red bags contain 3 clear orange bags. -dim lavender bags contain 1 posh silver bag. -vibrant orange bags contain 2 pale magenta bags. -pale gray bags contain 2 dark aqua bags, 2 mirrored turquoise bags, 2 striped fuchsia bags, 5 wavy purple bags. -pale teal bags contain 2 striped brown bags, 4 shiny brown bags. -muted tan bags contain 3 dotted purple bags, 5 clear blue bags, 5 bright plum bags. -dotted cyan bags contain 1 mirrored chartreuse bag, 2 dotted gray bags, 5 pale tomato bags, 1 mirrored lime bag. -dark brown bags contain 4 vibrant orange bags, 3 faded olive bags, 5 posh blue bags. -dull orange bags contain 5 posh coral bags, 5 vibrant green bags, 3 dull maroon bags, 1 striped tomato bag. -plaid silver bags contain 1 muted turquoise bag, 1 wavy green bag. -dull crimson bags contain 4 faded red bags, 1 dotted plum bag, 2 plaid orange bags, 1 posh yellow bag. -muted orange bags contain 4 pale yellow bags, 1 dark maroon bag, 5 mirrored white bags. -wavy black bags contain 4 mirrored blue bags, 4 drab chartreuse bags, 4 dull aqua bags. -light magenta bags contain 2 muted coral bags, 3 wavy violet bags. -faded crimson bags contain 2 dim orange bags, 3 vibrant crimson bags, 4 clear lime bags, 5 wavy olive bags. -light fuchsia bags contain 2 dull green bags, 4 dull indigo bags. -mirrored black bags contain 1 wavy magenta bag, 3 light bronze bags, 3 dull teal bags. -striped tan bags contain 5 vibrant yellow bags, 3 dull silver bags, 5 mirrored teal bags. -dark crimson bags contain 1 mirrored teal bag, 2 muted maroon bags, 5 dull green bags. -light indigo bags contain 5 dotted purple bags. -light brown bags contain 4 dark fuchsia bags, 1 bright olive bag. -wavy purple bags contain 3 vibrant black bags, 5 dull teal bags, 1 bright magenta bag. -posh white bags contain 5 muted purple bags, 5 drab silver bags. -faded gold bags contain 2 dull teal bags, 5 muted orange bags, 3 mirrored lavender bags, 2 clear orange bags. -clear maroon bags contain 2 dim crimson bags, 3 dim maroon bags, 5 wavy salmon bags, 5 mirrored black bags. -bright maroon bags contain 5 dark bronze bags, 4 pale coral bags. -clear turquoise bags contain 1 muted gold bag. -bright coral bags contain 3 striped lavender bags, 4 drab tomato bags, 1 bright lime bag. -wavy teal bags contain 3 faded tan bags. -mirrored gold bags contain 4 faded violet bags. -dark orange bags contain 5 muted purple bags, 1 drab turquoise bag, 5 pale beige bags. -dull green bags contain 1 faded chartreuse bag. -posh plum bags contain 1 dull turquoise bag. -plaid red bags contain 4 wavy orange bags. -faded green bags contain 2 wavy tan bags, 2 muted gold bags. -drab maroon bags contain 5 striped fuchsia bags, 5 light indigo bags. -clear blue bags contain 5 bright magenta bags, 2 muted gold bags, 1 faded chartreuse bag. -shiny purple bags contain 3 mirrored lavender bags, 3 light crimson bags, 2 light turquoise bags, 1 drab aqua bag. -wavy silver bags contain 5 mirrored tan bags, 2 dotted crimson bags, 3 pale magenta bags, 5 vibrant plum bags. -drab gray bags contain 4 mirrored red bags, 4 plaid yellow bags, 4 muted silver bags, 3 light black bags. -striped maroon bags contain 5 dull teal bags, 1 bright indigo bag, 3 clear gray bags. -striped tomato bags contain 2 clear gold bags, 4 plaid red bags, 1 vibrant yellow bag, 2 dark aqua bags. -vibrant brown bags contain 4 vibrant orange bags. -wavy green bags contain 5 striped coral bags, 5 clear brown bags, 4 drab gold bags, 3 faded green bags. -dark tomato bags contain 3 wavy gray bags, 4 clear yellow bags, 4 light fuchsia bags, 1 drab plum bag. -plaid gold bags contain 3 faded red bags. -light tomato bags contain 1 striped black bag. -clear olive bags contain 2 drab lime bags. -dim red bags contain 4 light yellow bags, 5 vibrant yellow bags, 3 dark green bags, 2 vibrant aqua bags. -vibrant indigo bags contain 1 vibrant silver bag. -pale crimson bags contain 4 wavy green bags, 1 striped fuchsia bag, 4 posh indigo bags. -clear lime bags contain 1 wavy tan bag. -muted gray bags contain 1 faded green bag, 2 dull silver bags, 4 drab crimson bags. -striped chartreuse bags contain 2 vibrant silver bags, 2 shiny tan bags, 3 muted silver bags, 2 shiny maroon bags. -muted coral bags contain 5 dark maroon bags, 1 clear lavender bag, 4 bright teal bags, 4 faded cyan bags. -posh coral bags contain 2 clear brown bags. -bright crimson bags contain 2 vibrant salmon bags. -muted plum bags contain 1 pale silver bag. -dull plum bags contain 2 shiny cyan bags, 3 faded salmon bags. -bright olive bags contain 3 dim brown bags, 5 dark brown bags, 1 muted white bag. -clear plum bags contain 5 clear chartreuse bags, 5 striped aqua bags. -muted chartreuse bags contain 1 faded crimson bag, 1 dark cyan bag. -muted purple bags contain 1 bright plum bag, 2 light olive bags, 2 striped red bags, 4 pale magenta bags. -posh yellow bags contain 4 wavy purple bags, 3 dark green bags, 3 striped tomato bags, 3 light chartreuse bags. -light violet bags contain 5 plaid black bags, 1 muted brown bag, 1 vibrant aqua bag. -drab olive bags contain 1 dim brown bag, 2 dull blue bags. -pale indigo bags contain 3 dark magenta bags, 2 dull blue bags. -mirrored blue bags contain 5 clear crimson bags, 1 clear orange bag, 3 drab tomato bags. -striped green bags contain 2 shiny black bags, 4 dotted chartreuse bags, 4 wavy white bags. -plaid teal bags contain 4 dark green bags, 5 muted chartreuse bags, 5 vibrant aqua bags, 4 dotted olive bags. -faded plum bags contain 2 drab white bags, 4 light blue bags, 2 clear lavender bags, 3 vibrant white bags. -dim green bags contain 2 faded green bags, 2 bright magenta bags. -dark lavender bags contain 2 muted lime bags, 2 faded tomato bags, 5 wavy purple bags, 3 light olive bags. -dim purple bags contain 4 dotted plum bags. -dark salmon bags contain 1 dull violet bag, 3 bright indigo bags. -dim cyan bags contain 5 dim crimson bags, 2 clear brown bags, 1 muted brown bag, 4 light silver bags. \ No newline at end of file +shiny aqua bags contain 1 dark white bag. +muted blue bags contain 1 vibrant lavender bag, 4 dotted silver bags, 2 dim indigo bags. +drab gray bags contain 5 mirrored white bags, 1 light green bag, 5 shiny lavender bags, 5 faded aqua bags. +muted indigo bags contain 4 muted chartreuse bags, 2 dotted teal bags. +drab white bags contain 2 dull fuchsia bags, 1 vibrant bronze bag. +dim lavender bags contain 4 muted tan bags. +dotted tomato bags contain 1 mirrored lime bag, 2 vibrant white bags. +clear orange bags contain 5 clear violet bags, 2 dull beige bags, 2 dark chartreuse bags. +bright lime bags contain no other bags. +striped brown bags contain 3 bright orange bags. +vibrant green bags contain 3 shiny fuchsia bags. +plaid tomato bags contain 3 faded chartreuse bags, 2 wavy salmon bags, 1 faded white bag, 3 mirrored maroon bags. +drab beige bags contain 2 shiny bronze bags, 4 pale violet bags, 3 bright tomato bags, 4 pale red bags. +posh green bags contain 2 dull lavender bags, 4 clear plum bags, 2 dark gray bags. +dull maroon bags contain 3 dull magenta bags, 1 dull tan bag, 1 faded cyan bag, 5 dull silver bags. +faded crimson bags contain 2 muted purple bags, 4 dotted olive bags, 5 drab silver bags. +wavy bronze bags contain 3 dark orange bags, 2 dark brown bags, 5 bright silver bags. +dark turquoise bags contain 5 dull plum bags. +dull lavender bags contain 4 dotted maroon bags, 3 muted brown bags, 4 drab black bags, 4 dull cyan bags. +dotted plum bags contain 1 shiny bronze bag, 3 clear brown bags, 3 muted indigo bags. +dull white bags contain 3 clear tan bags, 5 shiny gold bags, 2 drab crimson bags. +dull teal bags contain 2 bright tomato bags. +shiny crimson bags contain 3 light green bags, 5 striped brown bags, 3 faded fuchsia bags. +wavy brown bags contain 1 drab crimson bag, 2 wavy indigo bags. +dark tan bags contain 2 faded gray bags, 4 shiny salmon bags. +shiny red bags contain 4 dull chartreuse bags, 5 pale tomato bags. +bright orange bags contain no other bags. +wavy yellow bags contain 5 light indigo bags, 5 dark gray bags, 5 plaid indigo bags, 4 faded red bags. +faded bronze bags contain 4 faded cyan bags, 5 shiny beige bags, 5 muted red bags. +dull bronze bags contain 1 mirrored beige bag, 5 muted violet bags, 1 wavy lime bag. +dark lime bags contain 2 drab maroon bags, 5 bright indigo bags, 4 shiny black bags, 5 dotted turquoise bags. +drab red bags contain 5 bright red bags, 2 vibrant brown bags. +dotted salmon bags contain 3 vibrant turquoise bags, 2 dull beige bags, 3 light turquoise bags. +dull gray bags contain 3 striped green bags, 3 wavy coral bags, 1 dark gray bag, 2 light indigo bags. +faded black bags contain 4 muted fuchsia bags, 4 wavy coral bags, 1 drab tomato bag. +muted magenta bags contain 2 posh chartreuse bags, 4 pale violet bags. +light tan bags contain 2 posh turquoise bags, 3 vibrant white bags, 1 light black bag. +dark blue bags contain 3 plaid indigo bags, 2 posh black bags. +dull indigo bags contain 4 light gray bags, 3 dotted tan bags, 4 dull coral bags. +dim fuchsia bags contain 3 vibrant yellow bags, 3 mirrored cyan bags, 4 mirrored brown bags. +shiny beige bags contain 2 dull silver bags, 3 bright lime bags, 5 dull magenta bags. +light cyan bags contain 3 vibrant violet bags, 2 mirrored tomato bags, 2 vibrant coral bags, 4 mirrored silver bags. +clear turquoise bags contain 4 drab tomato bags, 3 shiny gold bags, 4 drab gold bags. +pale teal bags contain 2 wavy maroon bags, 2 dotted olive bags, 4 shiny white bags, 2 drab turquoise bags. +dark purple bags contain 1 wavy indigo bag, 3 bright black bags, 3 dotted teal bags. +bright white bags contain 5 wavy red bags, 2 mirrored cyan bags, 3 drab green bags. +mirrored aqua bags contain 1 faded violet bag, 5 dotted purple bags. +shiny lime bags contain 4 dark aqua bags. +pale bronze bags contain 1 clear crimson bag. +vibrant white bags contain 5 plaid lavender bags, 1 drab red bag, 4 vibrant brown bags. +plaid tan bags contain 5 dim crimson bags. +posh olive bags contain 3 bright red bags. +plaid brown bags contain 5 vibrant turquoise bags. +mirrored tomato bags contain 2 dotted chartreuse bags, 3 light aqua bags, 3 posh beige bags. +plaid blue bags contain 5 striped green bags, 1 plaid purple bag, 4 muted gold bags. +shiny tan bags contain 5 striped coral bags, 1 dull brown bag. +shiny gold bags contain 1 dull magenta bag, 5 dark white bags, 4 faded turquoise bags. +dull salmon bags contain 2 plaid gold bags, 2 light indigo bags. +striped tomato bags contain 2 striped tan bags, 4 light blue bags, 4 drab tan bags. +drab tomato bags contain 3 dim teal bags, 4 striped yellow bags, 3 bright red bags. +faded olive bags contain 1 drab plum bag, 1 pale aqua bag, 3 light blue bags. +dotted indigo bags contain 2 clear tomato bags. +dark white bags contain 5 light aqua bags, 2 dim teal bags, 2 muted fuchsia bags, 5 light purple bags. +dull orange bags contain 4 pale gold bags, 5 posh brown bags, 2 mirrored brown bags, 3 dark bronze bags. +bright maroon bags contain 1 mirrored yellow bag, 4 light teal bags. +bright silver bags contain 1 vibrant coral bag, 3 dim teal bags, 5 light purple bags. +muted olive bags contain 5 plaid orange bags, 1 muted magenta bag. +dull silver bags contain no other bags. +pale maroon bags contain 2 pale bronze bags. +light gray bags contain 4 vibrant yellow bags, 2 pale red bags. +drab teal bags contain 2 light crimson bags, 3 vibrant brown bags, 3 vibrant tan bags. +bright gold bags contain 1 wavy red bag, 5 wavy coral bags. +plaid chartreuse bags contain 2 dim coral bags, 4 drab silver bags, 5 dim chartreuse bags, 3 light purple bags. +clear blue bags contain 2 pale tomato bags, 4 dull gold bags, 4 dim fuchsia bags, 4 pale coral bags. +vibrant purple bags contain 5 faded orange bags. +plaid aqua bags contain 3 muted cyan bags, 2 wavy gray bags, 4 drab green bags, 4 pale beige bags. +muted lime bags contain 1 muted tan bag. +faded coral bags contain 3 drab turquoise bags, 1 shiny plum bag, 5 mirrored green bags, 5 clear white bags. +vibrant lime bags contain 5 posh coral bags. +faded green bags contain 3 pale orange bags, 5 dull turquoise bags, 1 mirrored crimson bag. +mirrored gray bags contain 5 dim indigo bags. +wavy maroon bags contain 4 mirrored bronze bags, 1 striped olive bag, 2 dull salmon bags, 3 shiny crimson bags. +dark violet bags contain 2 light purple bags. +dark green bags contain 2 dim cyan bags. +pale black bags contain 1 mirrored gold bag. +bright yellow bags contain 2 vibrant crimson bags, 3 plaid lime bags, 2 dotted gold bags. +muted teal bags contain 1 pale violet bag, 4 dull silver bags. +dim beige bags contain 5 wavy red bags. +muted purple bags contain 4 clear cyan bags. +plaid fuchsia bags contain 3 dark coral bags. +plaid bronze bags contain 5 plaid orange bags, 2 drab indigo bags. +faded indigo bags contain 1 dark chartreuse bag, 4 dull green bags, 1 mirrored magenta bag. +posh plum bags contain 3 dark chartreuse bags, 3 dotted turquoise bags, 4 dull maroon bags, 1 posh bronze bag. +pale gold bags contain 4 striped brown bags. +mirrored chartreuse bags contain 4 bright silver bags, 3 mirrored tomato bags, 4 wavy orange bags. +pale orange bags contain 2 posh fuchsia bags, 2 clear salmon bags, 2 bright green bags. +clear brown bags contain 4 light lime bags, 4 bright green bags, 5 pale yellow bags, 2 drab cyan bags. +shiny plum bags contain 5 vibrant gray bags, 3 bright blue bags, 5 dark tomato bags. +wavy white bags contain 4 plaid lime bags, 4 posh maroon bags, 5 drab lime bags, 1 vibrant crimson bag. +faded red bags contain 1 dull coral bag, 5 clear cyan bags, 4 plaid chartreuse bags, 3 plaid orange bags. +plaid red bags contain 5 pale blue bags, 4 light crimson bags, 3 faded fuchsia bags. +bright cyan bags contain 3 dark white bags, 2 light crimson bags, 1 bright aqua bag. +muted lavender bags contain 1 light green bag, 4 striped silver bags, 3 posh crimson bags. +wavy crimson bags contain 1 light purple bag, 4 bright blue bags, 2 dull coral bags, 1 wavy beige bag. +faded aqua bags contain 5 muted brown bags. +mirrored fuchsia bags contain 1 faded beige bag, 3 muted gold bags. +dark chartreuse bags contain 5 bright lime bags. +plaid green bags contain 4 mirrored tan bags, 1 mirrored tomato bag, 5 pale indigo bags, 1 mirrored plum bag. +shiny black bags contain 3 plaid chartreuse bags. +dotted purple bags contain 2 dim teal bags. +faded tan bags contain 2 bright fuchsia bags, 5 shiny fuchsia bags, 1 muted fuchsia bag, 1 mirrored brown bag. +drab brown bags contain 1 striped orange bag, 4 dotted tomato bags. +dull olive bags contain 1 striped black bag, 1 vibrant magenta bag. +mirrored plum bags contain 1 clear gold bag, 5 pale green bags. +dim tomato bags contain 4 drab gold bags, 2 shiny aqua bags. +light lavender bags contain 1 muted violet bag. +dim gray bags contain 3 light purple bags, 1 posh crimson bag, 1 faded brown bag. +muted aqua bags contain 4 dull beige bags, 4 dull red bags. +faded silver bags contain 1 mirrored cyan bag. +shiny green bags contain 5 dull maroon bags. +muted chartreuse bags contain 2 clear tan bags. +plaid plum bags contain 1 dotted lime bag, 4 clear brown bags, 4 dull red bags. +dotted silver bags contain 1 posh coral bag. +dim crimson bags contain 4 faded violet bags, 1 striped silver bag. +bright brown bags contain 1 bright coral bag, 3 posh brown bags, 4 drab tan bags. +wavy cyan bags contain 3 clear gold bags, 1 mirrored salmon bag, 3 bright fuchsia bags, 2 light bronze bags. +dull violet bags contain 5 striped white bags, 4 light blue bags, 4 dim black bags. +vibrant olive bags contain 2 vibrant coral bags. +bright coral bags contain 2 vibrant tan bags, 3 shiny indigo bags, 2 plaid indigo bags. +dim turquoise bags contain 1 pale violet bag. +striped crimson bags contain 2 faded gray bags. +clear green bags contain 3 mirrored olive bags, 3 shiny tomato bags. +faded violet bags contain 2 wavy coral bags, 2 dull tan bags, 1 dull silver bag, 1 bright orange bag. +pale chartreuse bags contain 4 shiny crimson bags, 2 clear bronze bags. +light plum bags contain 3 drab bronze bags, 1 bright bronze bag, 1 posh yellow bag. +pale tomato bags contain 1 dim teal bag, 5 drab cyan bags, 3 muted coral bags, 2 dim chartreuse bags. +plaid coral bags contain 1 striped tan bag, 3 vibrant cyan bags, 3 light beige bags, 2 dotted green bags. +bright gray bags contain 4 mirrored teal bags, 4 striped brown bags, 1 dim green bag, 4 clear cyan bags. +drab fuchsia bags contain 2 mirrored salmon bags, 4 posh orange bags, 3 faded crimson bags, 3 pale plum bags. +light tomato bags contain 2 dotted gold bags, 1 dotted bronze bag. +muted violet bags contain 2 light chartreuse bags. +drab tan bags contain 2 light green bags, 5 bright red bags, 4 shiny beige bags. +drab chartreuse bags contain 2 drab salmon bags, 2 dark brown bags, 4 clear turquoise bags. +drab violet bags contain 4 faded red bags. +posh cyan bags contain 4 bright violet bags. +posh orange bags contain 4 pale plum bags, 5 posh aqua bags. +plaid silver bags contain 1 dotted brown bag, 3 drab gold bags, 4 clear yellow bags. +mirrored silver bags contain 3 shiny beige bags, 1 drab silver bag. +faded gray bags contain no other bags. +wavy tomato bags contain 1 bright brown bag, 3 striped red bags, 2 vibrant maroon bags. +posh violet bags contain 2 dim aqua bags. +bright blue bags contain 5 light lime bags, 2 faded violet bags, 3 light aqua bags, 4 vibrant coral bags. +dark teal bags contain 5 muted fuchsia bags. +striped fuchsia bags contain 1 wavy turquoise bag, 5 wavy green bags, 4 posh gold bags. +posh maroon bags contain 2 dull red bags. +shiny purple bags contain 2 clear tan bags. +wavy lime bags contain 2 dark coral bags, 1 shiny gold bag. +wavy silver bags contain 4 dotted white bags. +shiny silver bags contain 2 plaid gold bags, 2 dim green bags, 5 plaid lime bags, 3 dull red bags. +wavy red bags contain 3 vibrant brown bags, 4 bright indigo bags. +dull chartreuse bags contain 4 dotted lime bags, 2 bright silver bags, 3 dull red bags, 4 wavy maroon bags. +vibrant silver bags contain 1 bright fuchsia bag, 3 drab lavender bags, 2 drab olive bags, 3 dotted teal bags. +striped gray bags contain 5 plaid orange bags, 1 wavy coral bag. +striped green bags contain 4 wavy coral bags, 4 shiny gold bags, 3 dark brown bags, 5 vibrant brown bags. +mirrored violet bags contain 3 dim silver bags, 1 posh tomato bag, 1 light salmon bag. +dull purple bags contain 1 light gray bag, 3 wavy yellow bags, 1 wavy salmon bag. +mirrored beige bags contain 4 dark cyan bags, 5 dull green bags. +posh lime bags contain 3 posh chartreuse bags. +vibrant tan bags contain 2 dull plum bags, 1 striped brown bag, 4 vibrant coral bags. +dotted orange bags contain 1 mirrored olive bag, 5 drab silver bags. +clear indigo bags contain 3 light lime bags, 4 dull coral bags. +pale gray bags contain 1 faded black bag, 3 dim green bags, 4 wavy lavender bags, 2 posh brown bags. +posh gold bags contain 5 dark tan bags, 2 dotted olive bags, 5 dark aqua bags. +striped chartreuse bags contain 2 dull magenta bags, 1 posh tomato bag. +mirrored bronze bags contain 2 faded fuchsia bags. +clear salmon bags contain 4 posh bronze bags, 5 clear plum bags, 5 dull blue bags. +posh purple bags contain 5 dim gray bags, 3 faded brown bags. +faded lime bags contain 5 dim turquoise bags, 3 dark indigo bags, 2 vibrant gray bags, 1 muted silver bag. +wavy beige bags contain 1 dark bronze bag, 4 dull plum bags, 4 mirrored silver bags. +clear yellow bags contain 2 vibrant teal bags. +vibrant plum bags contain 4 muted chartreuse bags, 4 posh silver bags. +striped yellow bags contain 2 dull maroon bags, 5 bright red bags, 2 posh chartreuse bags. +dark coral bags contain 3 dull tan bags. +dull magenta bags contain no other bags. +dark gold bags contain 1 dotted indigo bag, 4 shiny teal bags, 4 dotted silver bags. +dim tan bags contain 1 striped lavender bag, 1 shiny tomato bag. +muted maroon bags contain 2 dull salmon bags, 4 dim chartreuse bags, 3 bright aqua bags, 2 faded indigo bags. +vibrant tomato bags contain 2 dark silver bags, 3 plaid purple bags. +dotted lime bags contain 3 shiny crimson bags, 2 pale yellow bags. +muted fuchsia bags contain 1 dull tan bag. +bright tan bags contain 5 pale gold bags, 5 drab teal bags, 2 light blue bags. +dark crimson bags contain 4 shiny orange bags, 3 faded purple bags, 3 bright white bags. +striped tan bags contain 4 dotted turquoise bags, 4 drab lime bags, 5 dim teal bags. +posh fuchsia bags contain 2 dotted olive bags, 2 mirrored beige bags, 3 shiny bronze bags. +pale silver bags contain 4 vibrant lavender bags, 4 clear beige bags, 4 striped gold bags. +posh aqua bags contain 4 drab lime bags, 4 dull tan bags, 5 vibrant tan bags. +plaid salmon bags contain 5 dim coral bags, 2 wavy bronze bags. +mirrored orange bags contain 4 vibrant gray bags. +dim yellow bags contain 5 pale tan bags, 4 dark black bags. +dotted coral bags contain 4 dotted chartreuse bags, 2 bright red bags, 1 vibrant white bag, 1 vibrant brown bag. +muted crimson bags contain 4 striped orange bags, 5 pale yellow bags, 3 posh blue bags, 1 muted red bag. +striped lavender bags contain 3 striped brown bags. +striped maroon bags contain 2 shiny yellow bags. +vibrant blue bags contain 3 faded cyan bags, 1 shiny lime bag, 3 dark tomato bags. +pale lavender bags contain 4 plaid magenta bags, 4 striped blue bags. +dull tan bags contain 4 shiny indigo bags, 2 light purple bags, 4 faded cyan bags. +dotted beige bags contain 3 drab indigo bags. +light indigo bags contain 1 faded cyan bag, 5 bright aqua bags, 1 shiny indigo bag. +vibrant crimson bags contain 4 dotted fuchsia bags. +wavy blue bags contain 4 wavy teal bags, 1 dull blue bag. +vibrant chartreuse bags contain 4 striped orange bags. +vibrant cyan bags contain 5 wavy coral bags. +faded brown bags contain 5 faded turquoise bags. +faded magenta bags contain 1 dull indigo bag, 4 plaid aqua bags, 4 dim crimson bags. +mirrored coral bags contain 4 drab crimson bags, 2 light salmon bags, 2 clear indigo bags. +faded cyan bags contain no other bags. +dark brown bags contain 5 light purple bags. +wavy violet bags contain 3 dull coral bags, 1 bright aqua bag, 3 shiny lavender bags. +posh tomato bags contain 4 vibrant chartreuse bags, 4 mirrored teal bags. +pale crimson bags contain 1 plaid orange bag, 1 dark violet bag, 3 plaid lavender bags. +dark fuchsia bags contain 4 plaid beige bags, 2 plaid chartreuse bags. +plaid magenta bags contain 3 clear lavender bags, 5 mirrored brown bags, 5 shiny bronze bags. +striped blue bags contain 1 dull bronze bag, 1 dotted fuchsia bag, 1 light lavender bag, 1 clear turquoise bag. +dotted olive bags contain 4 dotted turquoise bags, 5 dotted bronze bags, 3 pale yellow bags, 4 pale red bags. +posh silver bags contain 3 pale violet bags, 1 plaid salmon bag, 1 posh coral bag. +dotted chartreuse bags contain 3 bright blue bags. +light coral bags contain 4 shiny fuchsia bags, 2 pale red bags, 1 muted silver bag, 2 bright cyan bags. +pale brown bags contain 5 light aqua bags. +dotted black bags contain 2 plaid purple bags, 1 mirrored aqua bag, 5 posh beige bags. +posh coral bags contain 3 dark aqua bags, 2 pale yellow bags, 5 plaid blue bags, 4 dim aqua bags. +shiny gray bags contain 1 bright gold bag, 1 muted bronze bag, 5 striped green bags, 5 shiny teal bags. +drab orange bags contain 5 plaid salmon bags, 2 vibrant beige bags. +plaid yellow bags contain 4 clear teal bags, 2 bright red bags. +striped violet bags contain 4 mirrored fuchsia bags, 4 vibrant white bags, 3 dim teal bags. +dim aqua bags contain 1 muted fuchsia bag, 1 dull tan bag. +light orange bags contain 2 bright red bags, 4 dark white bags, 1 dim chartreuse bag, 5 faded fuchsia bags. +faded salmon bags contain 5 wavy gray bags. +shiny yellow bags contain 2 vibrant plum bags, 3 dim teal bags, 1 plaid tan bag, 5 posh plum bags. +vibrant beige bags contain 2 wavy lavender bags, 4 posh chartreuse bags, 3 pale teal bags, 5 wavy lime bags. +light fuchsia bags contain 3 clear brown bags, 3 bright lavender bags. +pale magenta bags contain 4 posh silver bags. +dark maroon bags contain 3 drab turquoise bags. +faded beige bags contain 1 vibrant white bag, 4 drab red bags, 1 drab lavender bag. +bright bronze bags contain 1 pale bronze bag, 3 muted silver bags, 2 striped coral bags, 3 clear gray bags. +light silver bags contain 3 dotted lavender bags, 2 wavy lavender bags. +muted salmon bags contain 2 drab tan bags, 5 wavy tomato bags. +bright black bags contain 5 plaid tan bags. +dim chartreuse bags contain 5 muted gold bags, 5 bright blue bags, 5 faded cyan bags. +shiny white bags contain 4 bright tan bags. +bright red bags contain 3 dull silver bags. +dark aqua bags contain 2 dull red bags. +drab plum bags contain 4 muted brown bags, 5 muted plum bags. +muted yellow bags contain 5 light purple bags, 3 dotted silver bags, 3 faded turquoise bags. +light violet bags contain 1 pale red bag, 4 dim silver bags, 2 mirrored bronze bags. +pale lime bags contain 4 bright lavender bags. +pale tan bags contain 4 striped green bags, 2 dotted chartreuse bags. +dim green bags contain 1 light lime bag, 1 shiny beige bag. +mirrored gold bags contain 4 mirrored white bags. +dim silver bags contain 5 pale coral bags, 3 wavy coral bags. +dull aqua bags contain 3 posh indigo bags, 5 dotted coral bags, 1 dark salmon bag, 3 striped crimson bags. +posh yellow bags contain 1 dark bronze bag, 2 mirrored white bags, 2 light crimson bags. +mirrored magenta bags contain 1 bright violet bag, 2 drab lavender bags, 3 pale violet bags, 2 plaid salmon bags. +shiny chartreuse bags contain 2 dotted purple bags, 5 wavy red bags, 3 plaid beige bags. +light black bags contain 1 dark chartreuse bag, 3 faded tomato bags. +clear plum bags contain 5 vibrant brown bags, 3 dim coral bags, 4 mirrored brown bags, 1 faded black bag. +pale violet bags contain 2 dull tan bags. +bright fuchsia bags contain 4 dull orange bags. +dotted teal bags contain 5 bright red bags, 3 wavy red bags, 1 dull coral bag, 3 clear plum bags. +dotted blue bags contain 2 wavy beige bags, 3 muted purple bags. +muted gray bags contain 3 faded aqua bags, 1 shiny olive bag, 5 clear salmon bags, 1 vibrant violet bag. +dull beige bags contain 1 wavy lavender bag, 4 dark bronze bags, 5 dull tan bags. +drab turquoise bags contain 3 posh gray bags, 5 drab red bags. +vibrant yellow bags contain 2 shiny aqua bags, 4 light chartreuse bags. +posh brown bags contain 3 bright green bags, 5 posh lavender bags. +faded gold bags contain 4 vibrant maroon bags, 4 dotted purple bags. +dotted turquoise bags contain 5 clear plum bags, 3 muted gold bags, 4 dark violet bags. +dotted tan bags contain 5 dim aqua bags, 4 striped violet bags. +posh crimson bags contain 4 striped blue bags, 5 dull magenta bags, 2 bright coral bags. +muted white bags contain 5 dull olive bags. +vibrant teal bags contain 5 dotted turquoise bags, 1 striped tan bag, 1 drab tan bag. +dotted yellow bags contain 3 plaid turquoise bags, 2 posh yellow bags, 4 striped blue bags, 5 posh black bags. +posh magenta bags contain 5 mirrored black bags. +dotted green bags contain 4 dim crimson bags, 1 shiny lavender bag, 4 bright salmon bags, 1 plaid gray bag. +bright green bags contain 3 bright aqua bags, 3 dull maroon bags, 4 dark brown bags. +dark gray bags contain 5 muted purple bags, 2 striped blue bags, 4 faded lavender bags. +bright crimson bags contain 2 striped olive bags, 3 muted blue bags. +muted cyan bags contain 3 shiny tomato bags. +light yellow bags contain 2 striped red bags, 4 shiny crimson bags. +pale aqua bags contain 5 shiny yellow bags, 3 dark lavender bags, 3 posh white bags. +clear red bags contain 1 dotted silver bag, 1 dull teal bag, 1 faded maroon bag, 1 dotted salmon bag. +pale red bags contain 2 faded gray bags. +dotted maroon bags contain 5 posh aqua bags, 3 dull silver bags. +dull blue bags contain 4 light crimson bags, 3 light lime bags, 1 dark orange bag, 5 light indigo bags. +posh turquoise bags contain 1 muted gold bag, 5 striped lavender bags, 3 dull salmon bags, 5 vibrant chartreuse bags. +striped magenta bags contain 1 posh silver bag, 5 dark brown bags. +pale blue bags contain 2 muted gold bags, 4 vibrant brown bags, 1 light lavender bag. +vibrant violet bags contain 5 bright red bags. +faded fuchsia bags contain 2 light lime bags, 4 bright lime bags, 3 pale violet bags. +shiny coral bags contain 1 clear plum bag, 5 muted chartreuse bags, 1 muted violet bag, 5 striped yellow bags. +pale olive bags contain 4 plaid lime bags, 1 posh salmon bag. +wavy tan bags contain 3 faded gray bags. +faded chartreuse bags contain 3 dim coral bags, 1 mirrored bronze bag, 3 posh bronze bags. +mirrored brown bags contain 1 faded violet bag, 4 dull maroon bags, 5 dotted magenta bags. +clear white bags contain 5 muted magenta bags, 4 dull magenta bags, 3 pale plum bags, 4 drab indigo bags. +drab maroon bags contain 2 clear beige bags, 3 wavy beige bags, 5 faded purple bags. +striped silver bags contain 3 drab tomato bags. +faded plum bags contain 1 clear teal bag, 3 bright aqua bags. +plaid violet bags contain 2 drab violet bags, 4 muted turquoise bags, 5 muted indigo bags. +clear black bags contain 5 muted fuchsia bags, 1 muted coral bag, 2 light black bags. +vibrant maroon bags contain 1 dark lavender bag, 1 pale crimson bag, 4 bright indigo bags, 5 mirrored maroon bags. +drab indigo bags contain 2 dim coral bags, 1 drab green bag, 2 shiny lavender bags. +drab olive bags contain 2 dark aqua bags, 4 striped brown bags. +dull crimson bags contain 3 dull cyan bags. +wavy teal bags contain 4 striped orange bags, 2 drab cyan bags. +dark red bags contain 2 dull maroon bags, 4 muted plum bags, 4 dull plum bags. +striped salmon bags contain 3 bright red bags, 1 light aqua bag, 4 wavy gold bags. +mirrored tan bags contain 5 dotted olive bags, 2 dim tomato bags, 2 mirrored tomato bags, 4 clear teal bags. +striped white bags contain 2 pale coral bags, 2 shiny green bags. +shiny tomato bags contain 5 pale coral bags, 5 dull beige bags. +vibrant indigo bags contain 2 dim black bags, 4 dim blue bags, 3 dim white bags. +wavy lavender bags contain 4 faded bronze bags, 4 muted red bags, 3 light lime bags, 4 muted gold bags. +shiny turquoise bags contain 2 dull red bags, 5 faded gray bags, 1 muted turquoise bag. +shiny lavender bags contain 5 bright aqua bags. +posh tan bags contain 1 shiny yellow bag, 3 drab magenta bags. +light green bags contain 4 bright red bags, 1 vibrant coral bag. +drab black bags contain 5 faded tomato bags, 3 dotted chartreuse bags. +clear chartreuse bags contain 3 wavy bronze bags, 4 plaid purple bags, 3 dark orange bags. +dull black bags contain 1 wavy teal bag, 3 light lavender bags, 2 striped indigo bags. +wavy black bags contain 2 clear orange bags, 4 muted purple bags. +pale plum bags contain 1 bright coral bag, 1 drab tan bag, 1 plaid fuchsia bag, 1 dotted fuchsia bag. +dotted violet bags contain 3 bright black bags. +posh red bags contain 3 bright black bags. +plaid lime bags contain 5 posh beige bags, 1 dotted turquoise bag. +wavy aqua bags contain 1 dark yellow bag, 3 drab indigo bags. +dim magenta bags contain 3 dark violet bags. +drab aqua bags contain 5 posh orange bags, 1 dark silver bag, 4 plaid purple bags, 2 wavy teal bags. +dull brown bags contain 4 light lime bags. +striped orange bags contain 5 light crimson bags, 3 muted tan bags, 5 dotted coral bags, 3 plaid blue bags. +muted brown bags contain 1 posh blue bag, 4 dotted magenta bags, 3 dull coral bags. +faded blue bags contain 5 striped black bags, 1 vibrant yellow bag. +plaid indigo bags contain 3 dark brown bags, 5 light purple bags, 4 light aqua bags, 3 light green bags. +plaid turquoise bags contain 5 dotted teal bags. +light turquoise bags contain 2 dull salmon bags, 5 dotted tan bags. +dim purple bags contain 4 muted white bags, 5 drab purple bags. +pale coral bags contain 5 posh gray bags. +clear lime bags contain 3 dim magenta bags, 3 plaid tomato bags, 1 drab magenta bag, 3 shiny purple bags. +dim black bags contain 3 clear gold bags, 4 muted violet bags. +light maroon bags contain 4 muted yellow bags, 1 pale cyan bag, 2 mirrored turquoise bags, 4 dull lavender bags. +clear magenta bags contain 2 shiny magenta bags, 2 muted chartreuse bags. +striped bronze bags contain 5 clear tan bags, 1 drab lavender bag, 2 pale crimson bags. +dark salmon bags contain 1 vibrant plum bag, 5 drab tan bags, 4 drab coral bags, 4 dull tan bags. +vibrant salmon bags contain 2 muted olive bags. +dim gold bags contain 2 dim olive bags, 5 plaid olive bags, 2 posh orange bags. +wavy chartreuse bags contain 4 shiny yellow bags, 4 vibrant blue bags. +vibrant brown bags contain 3 striped brown bags, 4 muted red bags, 2 shiny indigo bags. +plaid maroon bags contain 2 muted teal bags, 2 pale yellow bags, 2 bright beige bags, 5 striped yellow bags. +dim indigo bags contain 4 dull tomato bags, 4 clear cyan bags, 2 shiny salmon bags, 1 bright aqua bag. +muted red bags contain 3 dull tan bags, 4 dull magenta bags, 1 bright aqua bag. +posh beige bags contain 5 shiny black bags, 3 dotted magenta bags, 3 drab blue bags, 2 muted coral bags. +pale fuchsia bags contain 3 dark brown bags, 5 posh gold bags. +dark bronze bags contain 1 dim green bag, 5 posh chartreuse bags. +dim coral bags contain 3 dull coral bags, 3 striped brown bags. +drab crimson bags contain 2 dark bronze bags, 4 shiny indigo bags, 3 dull tan bags. +bright indigo bags contain 3 bright blue bags. +pale yellow bags contain 5 dim aqua bags, 1 vibrant brown bag, 2 vibrant tan bags, 3 wavy lavender bags. +drab salmon bags contain 1 dotted indigo bag, 3 muted chartreuse bags, 5 dark olive bags. +muted orange bags contain 4 faded lime bags, 2 dull coral bags, 5 vibrant magenta bags, 4 dull magenta bags. +striped gold bags contain 2 dull silver bags, 5 bright lavender bags, 5 dim teal bags, 5 dark coral bags. +posh chartreuse bags contain 3 dim teal bags, 5 light aqua bags. +shiny blue bags contain 3 dull tan bags, 5 muted magenta bags. +muted silver bags contain 3 wavy blue bags, 2 dim teal bags, 5 muted bronze bags. +shiny bronze bags contain 1 light green bag, 4 vibrant magenta bags. +wavy coral bags contain no other bags. +shiny orange bags contain 2 muted purple bags. +posh teal bags contain 4 clear plum bags. +striped turquoise bags contain 3 muted indigo bags. +dim bronze bags contain 2 shiny silver bags, 1 light silver bag, 2 dim indigo bags, 4 dim tomato bags. +plaid white bags contain 4 drab turquoise bags. +wavy indigo bags contain 3 clear gold bags, 5 mirrored bronze bags. +faded teal bags contain 4 mirrored white bags. +shiny fuchsia bags contain 3 drab indigo bags. +dim red bags contain 3 clear bronze bags. +dotted brown bags contain 4 wavy maroon bags, 5 drab green bags, 3 dark purple bags. +dark tomato bags contain 3 vibrant coral bags, 5 dull coral bags, 2 drab cyan bags, 1 posh blue bag. +clear teal bags contain 3 dark white bags. +dark silver bags contain 3 dark cyan bags, 4 plaid salmon bags. +wavy fuchsia bags contain 4 bright brown bags, 4 bright aqua bags, 5 light orange bags. +light bronze bags contain 4 clear plum bags. +striped purple bags contain 1 dim indigo bag. +clear tomato bags contain 4 mirrored tomato bags, 3 muted indigo bags, 1 striped tan bag. +muted turquoise bags contain 5 faded beige bags, 4 clear crimson bags, 2 bright teal bags. +dull cyan bags contain 5 mirrored aqua bags, 2 shiny aqua bags, 3 light black bags, 4 bright coral bags. +plaid crimson bags contain 2 mirrored teal bags, 2 dull fuchsia bags. +shiny maroon bags contain 1 posh gold bag. +dim white bags contain 5 striped brown bags, 2 dull magenta bags, 5 plaid tan bags. +muted green bags contain 2 dull magenta bags, 5 clear cyan bags. +plaid teal bags contain 2 dark tan bags, 3 pale lime bags. +dotted lavender bags contain 2 posh aqua bags, 3 dull cyan bags. +light salmon bags contain 5 dark silver bags. +faded white bags contain 2 wavy maroon bags, 3 dull cyan bags. +dull tomato bags contain 2 dim aqua bags, 4 posh lavender bags, 1 faded red bag. +dark olive bags contain 5 clear bronze bags, 2 drab plum bags. +pale indigo bags contain 2 mirrored beige bags, 5 wavy turquoise bags, 4 striped green bags, 2 dotted lavender bags. +plaid purple bags contain 1 light lime bag. +clear purple bags contain 3 vibrant white bags. +dark yellow bags contain 2 pale olive bags, 4 pale cyan bags, 5 bright teal bags. +muted beige bags contain 2 posh lime bags, 5 shiny gray bags, 2 dull blue bags. +vibrant orange bags contain 5 posh crimson bags, 4 light chartreuse bags. +light magenta bags contain 2 plaid maroon bags, 1 posh beige bag, 5 pale salmon bags. +dotted crimson bags contain 5 dark chartreuse bags. +striped coral bags contain 2 dim aqua bags. +striped aqua bags contain 3 posh salmon bags, 3 dull red bags. +mirrored salmon bags contain 5 bright red bags, 2 light green bags, 3 clear black bags, 5 posh brown bags. +posh white bags contain 4 drab violet bags, 2 dotted silver bags. +posh blue bags contain 4 dull maroon bags, 3 vibrant coral bags. +dim orange bags contain 2 dull olive bags. +shiny teal bags contain 1 faded tomato bag, 4 muted violet bags. +mirrored maroon bags contain 3 dull blue bags. +dark lavender bags contain 1 drab red bag, 3 shiny indigo bags, 4 faded beige bags, 1 drab turquoise bag. +shiny olive bags contain 3 dark violet bags, 1 striped gold bag, 2 mirrored lime bags. +bright violet bags contain 2 wavy bronze bags, 3 drab olive bags, 5 mirrored olive bags, 2 wavy lavender bags. +clear olive bags contain 5 faded turquoise bags. +mirrored lavender bags contain 1 light white bag, 4 light purple bags, 3 wavy lavender bags, 2 shiny lime bags. +pale turquoise bags contain 4 dark tan bags. +shiny salmon bags contain 1 shiny gold bag, 5 drab turquoise bags. +vibrant gray bags contain 3 posh brown bags. +dark indigo bags contain 1 mirrored black bag, 5 dull beige bags, 4 shiny beige bags, 3 drab lavender bags. +light teal bags contain 5 dark olive bags, 5 vibrant chartreuse bags, 3 plaid salmon bags, 5 light yellow bags. +clear violet bags contain 3 light crimson bags. +clear tan bags contain 3 striped orange bags, 4 wavy lavender bags, 3 striped silver bags. +clear bronze bags contain 2 plaid beige bags. +clear gray bags contain 4 dotted cyan bags, 4 vibrant plum bags. +drab cyan bags contain 1 light aqua bag, 1 drab teal bag, 3 bright orange bags, 3 dark white bags. +plaid beige bags contain 3 dull green bags. +wavy gold bags contain 4 shiny olive bags, 3 bright tan bags. +clear aqua bags contain 3 posh chartreuse bags, 4 drab silver bags, 5 clear gray bags. +bright chartreuse bags contain 2 light violet bags, 3 vibrant gray bags. +plaid black bags contain 2 posh gray bags. +light beige bags contain 4 dotted olive bags, 5 dull olive bags, 1 faded orange bag. +mirrored teal bags contain 4 mirrored aqua bags. +bright magenta bags contain 1 mirrored magenta bag, 3 bright blue bags, 1 vibrant blue bag, 2 drab gold bags. +dim maroon bags contain 4 light bronze bags, 5 clear violet bags. +light lime bags contain 4 plaid indigo bags. +posh lavender bags contain 4 dark brown bags. +clear beige bags contain 4 posh silver bags, 3 dull coral bags, 2 posh gray bags. +drab bronze bags contain 4 plaid maroon bags. +mirrored purple bags contain 3 dim magenta bags. +dark magenta bags contain 4 faded maroon bags, 1 drab crimson bag, 5 dotted brown bags, 2 bright teal bags. +dim brown bags contain 3 muted olive bags, 5 drab green bags, 1 mirrored olive bag. +dark plum bags contain 2 vibrant tan bags. +bright turquoise bags contain 1 mirrored aqua bag, 3 clear plum bags. +muted black bags contain 5 faded cyan bags, 5 pale tan bags, 2 dotted chartreuse bags. +dotted gray bags contain 3 posh plum bags. +vibrant black bags contain 2 vibrant magenta bags, 5 faded cyan bags. +mirrored cyan bags contain 2 clear cyan bags, 4 light aqua bags, 5 drab blue bags, 1 drab gold bag. +wavy purple bags contain 5 striped magenta bags, 3 clear maroon bags, 1 mirrored green bag, 1 pale black bag. +drab blue bags contain 3 mirrored lime bags, 1 mirrored blue bag. +clear maroon bags contain 5 bright orange bags. +shiny cyan bags contain 2 clear gray bags, 5 pale crimson bags. +pale cyan bags contain 2 wavy turquoise bags, 5 wavy salmon bags. +plaid gold bags contain 1 clear lavender bag, 1 bright beige bag. +mirrored lime bags contain 2 dull tan bags, 3 shiny beige bags. +drab green bags contain 1 vibrant yellow bag. +dull red bags contain 5 plaid blue bags, 5 clear brown bags, 3 pale salmon bags, 2 dark orange bags. +bright beige bags contain 4 dull silver bags, 5 vibrant brown bags, 4 drab red bags, 2 pale violet bags. +clear silver bags contain 4 drab indigo bags, 2 clear salmon bags. +posh bronze bags contain 5 bright indigo bags, 5 dotted purple bags, 1 dark violet bag, 2 dark orange bags. +posh salmon bags contain 5 bright red bags, 3 striped green bags, 3 dark brown bags. +clear cyan bags contain 5 dark chartreuse bags, 1 bright indigo bag, 4 pale yellow bags, 2 vibrant coral bags. +mirrored blue bags contain 2 vibrant white bags. +mirrored yellow bags contain 5 dotted gray bags, 4 dull maroon bags, 2 striped violet bags, 5 clear tomato bags. +striped teal bags contain 2 clear black bags, 3 pale coral bags. +faded orange bags contain 2 dark bronze bags. +mirrored indigo bags contain 3 light tomato bags, 2 shiny crimson bags. +pale green bags contain 4 light chartreuse bags. +plaid cyan bags contain 4 plaid fuchsia bags, 2 shiny teal bags, 3 dotted fuchsia bags, 3 dim red bags. +muted gold bags contain 2 dull tan bags, 1 faded bronze bag, 4 dull maroon bags. +wavy green bags contain 5 pale coral bags, 1 dull blue bag, 4 drab blue bags, 1 striped tan bag. +light chartreuse bags contain 4 striped brown bags, 5 plaid purple bags, 4 drab cyan bags, 3 dull plum bags. +dotted cyan bags contain 4 shiny black bags. +light purple bags contain no other bags. +dotted aqua bags contain 4 light gray bags, 2 light purple bags, 5 mirrored lime bags. +drab gold bags contain 2 bright green bags, 5 bright indigo bags. +posh gray bags contain 5 bright orange bags, 5 bright blue bags. +striped red bags contain 4 drab green bags, 1 clear cyan bag. +dotted bronze bags contain 5 light orange bags. +muted plum bags contain 2 bright black bags, 3 dotted tomato bags, 2 vibrant brown bags. +mirrored black bags contain 3 plaid chartreuse bags, 2 shiny indigo bags, 2 shiny beige bags. +drab lavender bags contain 5 drab cyan bags, 1 muted purple bag, 1 wavy red bag, 3 drab crimson bags. +vibrant turquoise bags contain 3 shiny beige bags, 3 striped brown bags, 5 dim teal bags. +muted tan bags contain 1 plaid purple bag, 3 shiny beige bags, 1 drab gold bag. +pale beige bags contain 5 bright silver bags. +wavy olive bags contain 4 dotted turquoise bags, 4 dull silver bags, 1 bright gold bag. +dim olive bags contain 5 light lavender bags, 4 shiny tomato bags, 4 clear cyan bags. +wavy salmon bags contain 4 bright aqua bags. +dotted gold bags contain 3 shiny red bags, 3 dull fuchsia bags. +shiny violet bags contain 3 dotted tomato bags, 1 drab coral bag. +striped plum bags contain 4 drab beige bags, 3 clear tan bags, 5 light aqua bags, 1 shiny fuchsia bag. +clear lavender bags contain 2 bright aqua bags, 3 dull silver bags, 3 bright green bags, 2 bright orange bags. +faded maroon bags contain 5 dark indigo bags, 1 posh fuchsia bag. +vibrant red bags contain 4 striped fuchsia bags, 3 drab orange bags, 1 clear brown bag, 1 plaid turquoise bag. +dull coral bags contain 2 dim teal bags, 3 faded bronze bags. +pale salmon bags contain 3 dull magenta bags, 1 light crimson bag. +dotted magenta bags contain 4 dull maroon bags, 2 bright lime bags, 4 plaid indigo bags, 4 faded cyan bags. +wavy gray bags contain 4 muted gray bags, 3 shiny magenta bags, 1 posh teal bag. +light red bags contain 4 shiny chartreuse bags. +dim blue bags contain 4 vibrant orange bags. +muted bronze bags contain 5 mirrored aqua bags, 4 dim green bags. +drab lime bags contain 1 drab cyan bag, 3 pale crimson bags, 4 bright green bags, 3 drab lavender bags. +light white bags contain 5 bright green bags. +bright teal bags contain 4 shiny brown bags, 4 dark silver bags. +striped beige bags contain 2 shiny magenta bags. +wavy magenta bags contain 5 pale bronze bags, 5 pale plum bags, 3 muted silver bags. +dark orange bags contain 1 drab tomato bag, 3 striped brown bags, 1 dim teal bag, 5 bright beige bags. +striped indigo bags contain 1 vibrant gold bag, 1 shiny green bag. +clear coral bags contain 2 shiny gray bags. +faded yellow bags contain 4 faded gold bags, 2 bright turquoise bags, 5 dark silver bags, 3 wavy coral bags. +dim plum bags contain 1 clear purple bag, 4 light brown bags. +mirrored turquoise bags contain 5 wavy indigo bags, 3 dark fuchsia bags, 5 plaid white bags, 2 dim turquoise bags. +posh black bags contain 2 striped black bags, 5 dim teal bags, 3 bright silver bags, 5 posh beige bags. +dotted fuchsia bags contain 1 faded turquoise bag, 2 shiny lavender bags, 4 posh salmon bags, 1 clear olive bag. +faded lavender bags contain 2 striped yellow bags, 1 posh lavender bag. +dim lime bags contain 2 wavy gray bags, 5 clear gray bags. +vibrant bronze bags contain 3 drab tomato bags, 5 bright tan bags. +dull plum bags contain 5 bright red bags, 4 dull magenta bags. +dim teal bags contain 4 light purple bags, 4 plaid lavender bags, 1 dull magenta bag. +dull yellow bags contain 4 vibrant orange bags, 1 dark tomato bag, 5 pale tan bags. +dull green bags contain 2 bright blue bags, 5 dull red bags. +light crimson bags contain 5 dull maroon bags, 4 muted gold bags. +dark black bags contain 1 dim silver bag, 3 plaid magenta bags. +bright lavender bags contain 4 muted fuchsia bags. +drab coral bags contain 4 shiny chartreuse bags, 3 posh yellow bags, 3 wavy indigo bags. +mirrored crimson bags contain 3 posh maroon bags, 5 striped olive bags, 3 mirrored magenta bags. +muted coral bags contain 3 wavy violet bags, 1 dotted chartreuse bag, 1 shiny beige bag. +vibrant gold bags contain 2 dull orange bags, 1 clear chartreuse bag. +wavy orange bags contain 5 dark bronze bags. +mirrored white bags contain 5 clear gold bags, 3 drab tomato bags, 4 dotted bronze bags, 3 striped orange bags. +clear gold bags contain 3 drab indigo bags, 4 wavy violet bags, 2 shiny salmon bags, 4 light brown bags. +shiny magenta bags contain 5 drab silver bags, 2 muted gold bags. +dim violet bags contain 1 posh lime bag, 4 shiny orange bags, 2 posh chartreuse bags. +striped olive bags contain 4 plaid indigo bags, 5 dim chartreuse bags, 4 clear lavender bags. +plaid gray bags contain 3 shiny gold bags, 2 dull coral bags. +clear crimson bags contain 4 shiny aqua bags, 3 light crimson bags, 5 dim chartreuse bags. +drab silver bags contain 1 dim teal bag, 3 faded cyan bags, 1 shiny indigo bag. +mirrored green bags contain 5 dotted lime bags, 4 pale cyan bags. +bright aqua bags contain no other bags. +bright plum bags contain 4 dim aqua bags, 2 dull crimson bags, 1 wavy maroon bag. +vibrant lavender bags contain 1 plaid tan bag, 3 vibrant brown bags, 3 drab gold bags, 4 faded red bags. +pale white bags contain 3 bright brown bags, 4 mirrored beige bags. +plaid lavender bags contain 1 dull magenta bag, 2 dull silver bags, 1 shiny indigo bag. +bright salmon bags contain 1 striped coral bag, 4 plaid lavender bags, 1 muted red bag, 1 drab red bag. +plaid olive bags contain 5 faded turquoise bags, 4 dim green bags, 2 striped beige bags. +wavy plum bags contain 1 clear lavender bag, 2 faded brown bags. +clear fuchsia bags contain 1 muted bronze bag. +wavy turquoise bags contain 5 shiny lime bags, 1 drab olive bag, 4 dim white bags, 1 dotted gray bag. +vibrant aqua bags contain 2 faded lavender bags. +dotted white bags contain 3 muted crimson bags, 5 mirrored white bags, 1 mirrored fuchsia bag. +bright purple bags contain 2 dotted chartreuse bags, 4 posh cyan bags, 3 bright plum bags. +light aqua bags contain 1 plaid lavender bag, 3 wavy coral bags, 5 shiny indigo bags. +drab yellow bags contain 4 shiny teal bags, 2 dotted green bags, 5 vibrant silver bags, 3 dotted turquoise bags. +mirrored olive bags contain 1 dull plum bag. +light olive bags contain 1 shiny coral bag, 4 drab white bags, 3 dim turquoise bags, 4 dull gold bags. +shiny indigo bags contain no other bags. +dull gold bags contain 3 dark indigo bags. +bright tomato bags contain 5 muted blue bags. +faded purple bags contain 4 bright orange bags, 2 faded violet bags. +drab magenta bags contain 3 wavy lavender bags, 2 drab cyan bags, 2 clear beige bags, 4 bright indigo bags. +striped lime bags contain 4 light tan bags. +light gold bags contain 2 pale plum bags. +striped black bags contain 1 plaid salmon bag, 2 plaid beige bags, 4 dotted teal bags, 2 posh chartreuse bags. +faded tomato bags contain 2 striped yellow bags, 4 muted red bags. +dull fuchsia bags contain 5 dotted olive bags, 2 muted purple bags. +pale purple bags contain 4 posh silver bags, 4 wavy yellow bags. +bright olive bags contain 5 shiny fuchsia bags, 5 dull crimson bags, 5 drab red bags, 5 posh turquoise bags. +vibrant fuchsia bags contain 1 vibrant beige bag, 5 shiny magenta bags. +faded turquoise bags contain 5 light lime bags, 4 dark white bags. +plaid orange bags contain 5 vibrant coral bags, 4 light crimson bags, 4 plaid chartreuse bags, 1 dull green bag. +posh indigo bags contain 3 wavy green bags, 2 shiny orange bags, 5 faded violet bags, 2 dotted coral bags. +mirrored red bags contain 4 mirrored olive bags, 1 dark silver bag, 1 dull red bag. +dim salmon bags contain 1 striped salmon bag, 5 faded gray bags. +dim cyan bags contain 3 wavy olive bags, 5 drab purple bags, 3 mirrored bronze bags. +light blue bags contain 2 striped bronze bags, 4 dull white bags, 1 posh bronze bag. +dull turquoise bags contain 4 striped red bags, 1 light lavender bag, 5 plaid bronze bags, 1 mirrored brown bag. +vibrant coral bags contain 1 bright orange bag. +striped cyan bags contain 2 dark white bags, 4 drab red bags, 2 plaid salmon bags. +muted tomato bags contain 4 drab red bags, 3 vibrant silver bags, 4 clear fuchsia bags, 3 wavy white bags. +dotted red bags contain 1 light blue bag. +dark beige bags contain 2 posh lime bags, 3 striped black bags. +dark cyan bags contain 1 dim chartreuse bag, 2 shiny beige bags, 4 dotted magenta bags, 4 light chartreuse bags. +dull lime bags contain 3 muted chartreuse bags. +light brown bags contain 3 mirrored brown bags. +vibrant magenta bags contain 1 dim green bag. +shiny brown bags contain 5 bright brown bags, 3 faded cyan bags, 5 clear tan bags, 2 plaid maroon bags. +drab purple bags contain 1 shiny indigo bag, 4 striped yellow bags. diff --git a/7/part1.py b/7/part1.py index 4f00ce5..9352b5d 100644 --- a/7/part1.py +++ b/7/part1.py @@ -5,10 +5,10 @@ with open("input.txt", "r") as f: rawRules = f.read() rules = {} -for rawRule in rawRules.split("\n"): +for rawRule in rawRules.splitlines(): bags = re.findall(r"(\d+)? ?(\w+ \w+) bag", rawRule) targetColor = bags[0][1] - + rules[targetColor] = {} if (bags[1][1] != "no other"): for bag in bags[1:]: @@ -29,4 +29,4 @@ def doesContainShinyGold(color): for color in rules.keys(): doesContainShinyGold(color) -print(sum(shinyGoldMemo.values())) \ No newline at end of file +print(sum(shinyGoldMemo.values())) diff --git a/7/part2.py b/7/part2.py index d154f32..81abe51 100644 --- a/7/part2.py +++ b/7/part2.py @@ -5,10 +5,10 @@ with open("input.txt", "r") as f: rawRules = f.read() rules = {} -for rawRule in rawRules.split("\n"): +for rawRule in rawRules.splitlines(): bags = re.findall(r"(\d+)? ?(\w+ \w+) bag", rawRule) targetColor = bags[0][1] - + rules[targetColor] = {} if (bags[1][1] != "no other"): for bag in bags[1:]: @@ -22,4 +22,4 @@ def getTotalBagCount(color): countMemo[color] += (getTotalBagCount(bag[0]) + 1) * bag[1] return countMemo[color] -print(getTotalBagCount("shiny gold")) \ No newline at end of file +print(getTotalBagCount("shiny gold")) diff --git a/8/input.txt b/8/input.txt index 0eeee4e..c80892c 100644 --- a/8/input.txt +++ b/8/input.txt @@ -1,626 +1,591 @@ -jmp +149 -acc -11 -nop +95 -acc -6 -jmp +196 -acc +2 -acc -6 -acc +38 -acc +18 -jmp +246 -acc +43 -acc +37 +acc -5 +acc +48 acc -1 -jmp +390 -acc +32 +acc +5 +jmp +426 +acc +8 +jmp +72 +acc +22 +nop +64 +acc +18 +jmp +447 +acc +9 +acc +21 +acc -1 +acc -18 +jmp +349 +jmp +475 +acc +10 +nop +273 +acc -12 +acc +16 +jmp +519 +jmp +315 acc -15 -jmp +487 -jmp +382 -jmp +71 -jmp +331 +acc +7 +acc +41 acc -3 -acc -12 -acc +4 -jmp +417 -acc +30 -acc +20 -jmp +410 -acc +22 -acc +25 -acc +19 -acc +5 -jmp +405 -acc +15 -acc +33 -acc +7 -acc -18 -jmp +463 -acc +25 -acc +8 -acc +1 -jmp +64 -jmp +1 -jmp +562 -jmp +4 -acc +21 -acc +12 -jmp +467 -nop +197 -acc +32 -jmp +7 -acc +2 -jmp +352 -acc +15 -jmp +289 -acc +39 -jmp +448 -jmp +227 -acc +17 -acc +4 -jmp +326 -acc -1 -nop +167 -acc +30 -nop +471 -jmp +101 -acc +45 -nop +276 -acc +12 -jmp +215 -nop +80 -acc +23 -acc +31 -jmp +104 -acc +39 -acc +15 -jmp +40 -nop +433 -acc +21 -acc +22 -acc +37 -jmp +421 -acc +14 -jmp -30 -acc +42 -acc +38 -jmp +203 -acc -8 -acc +27 -jmp +102 -acc -5 -acc +0 -acc +18 -acc +26 -jmp +212 -acc +25 -acc +18 -jmp +209 -acc +18 -acc +44 -acc +47 -nop -40 -jmp +372 -acc +29 -jmp +384 -acc +39 -acc -11 -acc +43 -jmp +406 -acc +2 -nop +439 -jmp +343 -acc +29 -acc +18 -jmp +457 -jmp -31 -jmp +146 -acc +12 -acc +26 -nop +98 -jmp +125 -acc +6 -acc +35 -acc +48 -acc +44 -jmp +497 -acc +17 -acc -8 -jmp +223 -acc +47 -jmp +405 -jmp +212 -jmp +317 -acc -13 -acc -6 -jmp +94 -acc +47 -acc +50 -acc -16 -acc +38 -jmp +290 -jmp +383 -nop -44 -acc +38 -nop +418 -acc +42 -jmp +233 -nop -94 -acc +46 -jmp +413 -acc +10 -acc -6 -jmp +410 -acc +30 -jmp -93 -acc -13 -jmp +6 -acc -16 -acc +18 -nop +403 -acc +0 -jmp +68 -acc +45 -jmp +302 -acc +5 -jmp +26 -acc -5 -acc +49 -jmp +412 -acc +3 -acc +14 -jmp +278 -acc +6 -acc +4 -jmp -58 -acc +14 -jmp -60 -acc -12 -acc +23 -jmp +225 -acc +9 -acc +17 -acc -10 -acc -13 -jmp +216 -acc -8 -nop +363 -jmp +84 -nop +300 -acc -15 -jmp +415 -acc +17 -acc -11 -nop +96 -jmp +377 -nop +259 -acc +4 -jmp +327 -acc +0 -jmp +149 -jmp +12 -acc +23 -acc +43 -acc +2 -jmp +1 -jmp +400 -acc +24 -jmp +114 -acc +3 -acc -13 -jmp +149 -jmp +100 -jmp +1 -jmp +157 -acc +23 -acc -15 -jmp -139 -nop -85 -jmp +201 -acc -2 -acc +39 -acc +30 -nop -93 -jmp -11 -acc +46 -jmp +285 -jmp +1 -acc +41 -jmp +115 -acc +48 -acc -12 -acc -17 -jmp -15 -nop +82 -acc +25 -jmp -151 -acc +20 -acc -14 -acc +9 -acc -9 -jmp +284 -acc +27 -acc +38 -acc +50 -jmp +145 -nop +279 -jmp -55 -nop +245 -jmp +254 -acc +4 -jmp +368 -nop -119 -acc -11 -acc +16 -acc +19 -jmp -54 -nop -186 -nop -187 -acc +9 -acc +44 -jmp -222 -jmp +253 -nop -234 -acc +33 -acc +35 -acc -17 -jmp +11 -acc +2 -acc +41 -acc +47 -jmp +310 -acc +0 -acc -8 -acc +1 -jmp +55 -acc -1 -jmp -257 -acc +7 -acc +44 -nop +253 -acc +41 -jmp +302 -acc +16 -jmp -185 -jmp +140 -jmp +1 -nop +3 -acc +35 -jmp -267 -acc +6 -jmp -269 -jmp +211 -acc +30 -acc +14 -acc +16 -acc +41 -jmp -47 -jmp -192 -nop -21 -acc -1 -jmp +192 -acc -6 -acc +15 -acc +3 -nop -247 -jmp -88 -jmp +164 -acc +47 -nop +43 -acc +40 -jmp +151 -jmp +85 -jmp +1 -acc +40 -jmp -257 -acc +13 -acc +13 -jmp -256 -acc +25 -acc +39 -jmp +260 -acc +13 -acc -18 -acc -19 -acc -14 -jmp -10 -acc -16 -acc +9 -jmp -199 -nop +185 -acc +38 -jmp -261 -nop +200 -acc -18 -nop +115 -acc +36 -jmp -259 -acc +47 -acc -2 -acc +9 -jmp -139 -nop -117 -jmp -13 -jmp +1 -jmp +247 -acc +19 -acc +49 -jmp +177 -acc -1 -jmp +249 -jmp -218 -acc +12 -acc +33 -jmp +108 -jmp -48 -nop -205 -acc +32 -jmp -159 -jmp -129 -acc +32 -jmp +1 -jmp +249 -nop +75 -acc +17 -acc -16 -jmp +253 -acc -9 -jmp -12 -acc +15 -jmp -14 -acc +13 -acc -8 -nop -13 -jmp +27 -nop -336 -acc +33 -acc +10 -acc -1 -jmp -350 -nop -134 -acc -11 -jmp +5 -acc +10 -acc +13 -acc +13 -jmp -249 -acc +8 -jmp -215 -jmp +49 -acc +35 +jmp +97 acc +28 -jmp -54 -acc +14 -nop -264 -jmp +1 -jmp -166 -jmp -291 -acc +9 -acc +43 -jmp -301 -nop +149 -acc -9 -jmp -81 -jmp -287 -acc +9 -acc +35 -acc -12 -jmp -295 -acc +46 -jmp -394 -acc +29 -acc +19 -acc +9 -jmp -58 -acc +7 -acc +32 -nop -261 -acc +44 -jmp -365 -jmp +1 -jmp +120 -acc +37 -nop -177 -jmp +101 -acc +42 -acc +13 -acc +36 -jmp -343 -acc +45 -jmp -408 -acc +23 -acc +0 -jmp -66 -jmp +1 -acc +34 -acc +19 -jmp +104 -jmp +1 -acc +36 -jmp -141 -jmp -44 -acc +9 -acc +30 -acc +18 -acc +0 -jmp -303 -jmp +1 -acc +12 -jmp +66 -acc +0 -jmp +82 -acc +43 -acc +18 -jmp +49 -acc -16 -acc -3 -acc +0 -jmp -249 -acc -2 -nop +81 -jmp +40 -jmp +94 -acc -16 -acc +1 -jmp -445 -jmp +1 -acc +22 -jmp -130 -acc +44 -jmp -73 -acc +3 -acc +5 -jmp -121 -jmp -352 -jmp -163 -acc +15 -acc +47 -nop +141 -jmp +140 -acc -18 -nop -289 -acc +16 -jmp -476 -acc -19 -nop +134 -acc -10 -acc +37 -jmp -13 -jmp -359 -acc +32 -acc +14 -jmp -306 -acc +25 -acc +30 -jmp -441 -acc +44 -acc +14 -acc +12 -acc +19 -jmp -387 -jmp -12 -jmp -180 -jmp -113 -jmp -29 -acc +34 +jmp +245 +acc +20 acc -13 -acc -12 +acc +14 +jmp +304 +acc +20 nop +73 -jmp -263 -jmp -373 -jmp -360 -acc +38 -nop -123 -jmp -176 -nop -155 -acc -11 -acc +32 -nop +54 -jmp -461 -acc +31 -acc +10 -acc -7 -acc -19 -jmp -212 -acc +41 -acc +4 -nop -2 -jmp -483 -acc +16 -acc +42 -acc -15 -jmp -286 -jmp -122 -acc -4 -jmp -436 -acc +27 -jmp -508 -acc +38 -nop -309 -jmp +10 -acc +31 -acc +18 -acc +5 -jmp -119 -acc +8 -acc -7 -acc -16 -acc +18 -jmp -416 -acc -15 -acc +1 -acc +30 -acc +8 -jmp -476 -jmp -298 -acc +29 -acc +24 -acc -9 -acc +35 -jmp -438 -nop -5 -jmp -100 -acc +5 -acc +3 -acc +5 -acc -4 -jmp +14 -acc +43 -acc +3 -acc +40 -jmp -517 -acc +10 -acc +35 -acc +38 -jmp -120 -acc +1 -acc -18 acc +0 +jmp +308 +jmp +1 +acc +6 +acc -18 +nop -7 +jmp +327 +acc +39 +acc -14 +jmp +473 +jmp +1 +nop +31 +acc -17 +jmp +496 +nop +449 +jmp +163 +acc +50 +nop -31 +nop -11 +acc -7 +jmp +29 +nop +376 +nop +311 +acc +14 +acc -11 +jmp +24 +acc -13 +jmp +237 +jmp +518 +jmp +246 +jmp +380 +acc +40 +acc +17 acc +42 -jmp -69 +acc -14 +jmp +293 +acc +8 +acc +25 +acc +9 +nop +251 +jmp +464 +jmp +409 +jmp +452 +jmp +1 +acc -6 +jmp +230 +jmp +106 +acc -13 +jmp +40 +jmp +452 +acc +16 +jmp +37 +acc -11 +jmp +118 +acc -5 +nop +322 +acc +4 +jmp +425 +nop +61 +nop +190 +acc +37 +acc +44 +jmp +275 +acc +32 +jmp -78 +jmp +485 +nop -1 +acc +50 +jmp +424 +jmp +423 +acc +23 +jmp +460 +acc -11 +acc +10 +jmp -67 +acc -14 +acc -14 +acc +39 +acc -6 +jmp +331 +acc +12 +acc +7 +acc +29 +jmp +65 +nop -26 +jmp +1 +acc +45 +jmp +188 +acc +23 +acc +42 +acc +18 +acc +34 +jmp -94 +acc +35 +acc +0 +nop +282 +acc +33 +jmp +297 +acc +10 +acc +16 +jmp +142 +acc -9 +jmp +9 +acc +35 +jmp +15 +jmp +1 +acc -19 +acc +18 +jmp +156 +jmp +230 +jmp +421 +acc +33 +acc -2 +acc +24 +acc +17 +jmp -66 +acc +32 +acc +38 +jmp -76 +acc +13 +jmp +74 +acc +30 +acc +49 +jmp +220 +nop -44 +acc +36 +nop -23 +nop -29 +jmp +157 +acc -3 +acc -13 +jmp -124 +nop +350 +acc +29 +acc +7 +acc +42 +jmp +282 +acc -4 +acc +33 +acc +50 +acc +1 +jmp +101 +acc +13 +nop +369 +acc -11 +acc -2 +jmp +56 +jmp -5 +acc -1 +acc -1 +jmp +52 +jmp +246 +acc +38 +acc -11 +jmp +30 +acc +18 +nop +15 +jmp +67 +jmp -112 +acc -14 +jmp -8 +nop -73 +jmp +4 +acc +0 +nop +111 +jmp +317 +acc -17 +nop +108 +jmp +91 +acc +9 +jmp +324 +acc +35 +acc +9 +acc +31 +nop +208 +jmp +177 +acc -17 +jmp -135 +jmp +46 +nop +145 +acc +41 +acc -4 +acc -17 +jmp -147 +acc +8 +jmp +357 +acc +25 +jmp +231 +acc -19 +acc +46 +jmp +268 +acc -18 +acc +34 +jmp +3 +jmp -83 +jmp +294 +jmp +89 +nop +27 +acc +32 +acc -1 +acc +5 +jmp +230 +acc +9 +nop -92 +jmp -146 +acc +16 +nop +91 +jmp +251 +jmp +1 +acc +50 +jmp -49 +acc +28 +nop -60 +jmp -29 +nop +328 +acc -13 +jmp +115 +jmp +160 +jmp +1 +acc +34 +acc +44 +acc -18 +jmp +40 +jmp +305 +acc -18 +acc +44 +jmp -174 +acc +15 +nop -62 +jmp +275 +nop +34 +nop +59 +acc +27 +jmp -212 +acc +8 +acc +36 +acc +2 +jmp +27 +jmp -240 +acc +10 +acc +22 +jmp +225 +acc -13 +jmp +246 +jmp -230 +jmp +120 +acc -14 +acc -19 +jmp +261 +acc +8 +jmp -170 +acc -17 +acc +33 +acc +43 +jmp +16 +acc +6 +acc +25 +jmp +140 +jmp +12 jmp -101 acc +1 -jmp -271 -acc +37 -acc +17 -jmp +1 -jmp -401 -acc +1 -acc +3 -acc -8 -jmp -392 -nop -99 -acc +2 -jmp -301 -acc +10 -acc +32 -acc +3 -jmp -286 -jmp +1 -jmp -444 -nop -364 +jmp +67 +jmp +141 +jmp +219 +jmp -46 +acc +20 +acc +6 +acc +39 +acc +43 +jmp +32 acc +46 -acc +30 -acc -2 -jmp -13 -nop -65 -acc +22 -jmp -292 -acc -13 -jmp -480 -acc +4 -acc -8 -nop -500 -jmp -113 -acc -16 -acc +40 -acc -18 -jmp -125 -jmp -482 -acc +28 -acc -5 -jmp -471 +jmp -41 +acc -1 +acc +48 +jmp +220 +acc +13 acc +33 -acc +49 -acc +21 +acc -9 +nop -206 +jmp -137 +acc +35 +acc +11 +acc -12 +acc -2 +jmp +1 +acc +11 +acc +15 +jmp -73 +jmp +1 +jmp +142 +jmp +1 +acc +29 +acc -7 +acc +45 +jmp -302 +acc -9 +jmp +5 +acc +14 +acc +5 +jmp -313 +jmp -86 +acc -11 +acc +13 +acc +3 +jmp +171 +acc -8 +acc +47 +nop +205 +jmp +181 +acc -19 +acc +26 +jmp -340 +acc +31 +acc +45 +acc +16 +acc +16 +jmp -41 +acc +44 +jmp +76 +acc +0 +acc +47 acc +9 -jmp +1 \ No newline at end of file +acc -12 +jmp +159 +acc +21 +jmp -50 +jmp +1 +jmp -18 +acc +46 +jmp -5 +jmp +120 +jmp +51 +jmp +123 +acc +28 +nop -288 +jmp -293 +jmp -39 +jmp -309 +jmp -206 +jmp -274 +acc -10 +acc +39 +jmp +124 +acc +6 +acc -12 +acc -12 +jmp -294 +acc +30 +acc +42 +acc +30 +acc -17 +jmp -227 +nop -241 +acc +46 +jmp -64 +nop -106 +nop -25 +acc +48 +acc +48 +jmp -323 +acc +30 +acc -10 +jmp -382 +acc +44 +jmp -21 +acc -6 +jmp -102 +acc -17 +acc -13 +acc +23 +jmp -199 +acc +7 +acc +28 +acc +43 +jmp -186 +nop -105 +jmp -390 +acc +29 +nop +168 +acc +49 +jmp -9 +jmp -335 +acc +4 +jmp -86 +nop -348 +acc -17 +acc -12 +jmp +107 +acc +28 +jmp -72 +acc +17 +acc +31 +nop -10 +jmp -295 +acc +41 +jmp -271 +jmp -350 +nop -64 +acc -11 +acc +6 +jmp -198 +acc -5 +jmp -206 +acc +23 +jmp -390 +jmp +1 +jmp +1 +acc +9 +nop -91 +jmp -15 +acc +36 +acc +27 +acc +42 +jmp +18 +acc +20 +acc +10 +acc +44 +jmp +46 +jmp +110 +acc +31 +jmp -371 +acc +13 +acc -16 +nop -245 +acc +30 +jmp +38 +acc -6 +acc -14 +acc +21 +acc +46 +jmp -206 +acc +35 +acc +25 +acc +22 +acc -9 +jmp -92 +acc +20 +nop -113 +nop -189 +jmp -453 +acc +43 +acc -18 +acc -19 +acc -4 +jmp -364 +acc +35 +acc +44 +acc +19 +acc -13 +jmp -297 +acc -11 +acc +36 +nop -92 +jmp -93 +jmp -330 +acc +40 +jmp -248 +jmp -255 +acc +36 +acc +32 +jmp -190 +acc -15 +jmp -187 +jmp -23 +nop -268 +jmp -203 +acc -10 +acc +14 +acc -17 +nop -400 +jmp +61 +nop +60 +acc +17 +acc -9 +jmp -409 +acc +0 +acc +13 +acc +47 +acc -6 +jmp -102 +acc +37 +jmp -257 +acc -1 +acc +41 +acc +25 +jmp -397 +acc +9 +acc +31 +jmp -48 +acc -11 +jmp -332 +jmp -433 +jmp +30 +jmp +38 +acc +17 +nop -376 +nop -93 +acc +50 +jmp -249 +acc -10 +jmp -225 +acc +10 +jmp +35 +jmp -475 +acc +18 +jmp -250 +acc -12 +acc +25 +jmp -450 +jmp -411 +acc +45 +jmp -117 +acc -6 +acc +30 +acc -6 +nop -313 +jmp -271 +acc +22 +acc +13 +acc -12 +acc +4 +jmp -379 +acc +36 +acc +17 +acc +15 +acc +47 +jmp -417 +jmp +4 +jmp -332 +acc +23 +jmp -336 +acc +34 +acc +1 +acc +50 +acc +7 +jmp -466 +jmp -70 +acc +4 +nop +8 +acc +18 +jmp -28 +jmp -47 +jmp -410 +acc -1 +acc +3 +jmp -90 +acc +12 +acc +41 +jmp -98 +jmp -55 +acc +17 +nop -85 +acc +48 +acc +50 +jmp +1 diff --git a/8/part2.py b/8/part2.py index 5e2d7bc..1fda8a7 100644 --- a/8/part2.py +++ b/8/part2.py @@ -2,7 +2,7 @@ import re lines = [] with open("input.txt", "r") as f: - lines = f.read().split("\n") + lines = f.read().splitlines() def simulate(): acc = 0 @@ -40,4 +40,4 @@ for i in range(0, len(lines)): if status == "exited": print(acc) - break \ No newline at end of file + break diff --git a/9/input.txt b/9/input.txt index 210177c..6f3976e 100644 --- a/9/input.txt +++ b/9/input.txt @@ -1,1000 +1,1000 @@ -2 -29 -23 -1 -49 -16 -14 -10 -45 -17 -48 -19 -5 -24 -6 -31 -37 -27 -40 -18 -22 -26 -9 -25 -39 3 -7 -53 -12 -8 -11 -43 -34 -10 -13 -16 -14 -33 -15 -29 -92 17 -19 -35 -41 -42 -18 -82 -20 -21 -23 -22 -24 -25 -26 -54 32 -31 +2 +19 +45 +22 +18 +38 +8 +16 +13 +41 +35 +23 +29 +11 46 +12 27 -37 +49 +34 +20 +14 +47 +50 +10 +15 +17 +21 +57 +25 +19 +18 +22 +76 +24 +32 +26 +28 +23 +30 +29 +31 +33 +27 +35 +42 34 36 -33 -78 -38 -67 -57 -39 -43 -56 +91 40 -41 -79 +37 +38 +43 +47 44 -121 -49 -106 -103 -71 -68 -58 -61 -65 -63 -118 -69 +41 +45 72 -100 -84 -81 -147 -101 +49 +61 80 -83 -85 -105 -107 -93 -102 -159 -112 -119 -121 -123 -169 -209 -124 -128 -219 +55 +66 +71 +56 +117 141 -149 +69 +135 +70 +73 +83 +74 +75 +114 +78 +79 +113 +213 +189 +86 +104 +173 +105 +116 +131 152 +194 +149 +125 +139 +142 +143 +144 +247 +188 +157 +191 +153 +238 164 -185 -161 -181 -371 -192 +165 190 -178 -254 -195 -205 -306 -231 -233 -449 -245 -276 -447 -252 -265 +202 +209 +211 +393 269 -349 -313 -527 -316 -454 -425 -437 -359 -509 -368 -373 -677 -717 -460 -743 -476 -561 -478 -649 -712 -517 -521 -581 -628 -689 -1017 -791 -675 -684 -741 -934 -1153 -727 -938 -1187 -851 -936 +221 +291 +299 +281 +264 +267 +268 +327 +351 +301 +379 +310 +318 +317 +430 +329 +429 +641 +477 +411 +420 +578 +432 +522 +485 +488 +582 +531 +532 +929 +652 +569 +611 +740 +795 +627 +937 +746 +1081 +759 +749 +1063 +888 +1109 +963 +852 +917 +920 +1508 +1677 +1019 +1100 +1142 +1143 +1180 +1196 +1360 +1942 1376 -1037 -1104 +1373 +1601 1495 -995 -999 -1192 -1439 -1149 -1102 -2038 -1777 -1364 -1888 -1425 -1994 -1411 -1665 -1578 -1787 -2103 -1935 -2514 -1955 -2887 -2032 -2543 -2097 -2934 -2144 -2251 -3939 -2466 -2574 -2513 -3346 -2775 -2789 -3299 -3513 -2989 -4822 -4478 -3722 -3967 -4038 -5353 -4129 -3987 -4966 -4176 -4241 -4671 -4395 -4718 -4764 -4979 -5087 -7540 -5288 -5764 -5564 -6918 -6288 -8751 -9054 -7689 -7709 -7760 -9108 -8025 -8116 -12668 -8163 -9328 -8417 -8636 -9066 -9113 -14458 -9743 -10066 -10375 -10852 -11052 -12482 -11852 -15396 -20015 -15714 -15398 -15449 -18394 -15785 -16141 -17182 -16752 -16580 -16799 -17053 -29446 -25851 -19132 -18856 -19809 -20118 -27851 -32148 -26250 -22904 -24334 -27566 -30794 -30847 -43992 -34530 -31234 -32584 -68326 -32721 -33332 -33379 -36185 -36862 -35909 -47684 -88135 -37988 -65916 -39927 -50912 -47238 -59714 -57484 -55181 -79959 -58360 -61641 -80570 -63818 -63955 -66053 -65305 -68906 -66100 -76112 -75836 -72094 -72771 -73897 -85226 -131358 -77915 -87165 -90839 -98150 -120486 -141677 -167124 -113541 -120001 -122178 -137753 -136589 -127773 -129260 -146668 -131405 -135006 -138194 -157997 -150009 -144865 -227924 -151812 -163141 -176065 -227428 -274783 -188989 -211691 -233542 -241314 -265353 -235719 -283059 -280175 -257033 -259178 -298480 -266411 -269599 -276270 -279871 -327877 -400680 -448489 -296677 -422319 -410990 -487961 -365054 -416417 -422531 -424708 -506667 -469261 -477033 -559329 -492752 -516211 -523444 -893432 -743444 -691918 -545869 -823211 -556141 -797138 -776044 -956821 -1062808 -661731 -833521 -1200752 -1618949 -781471 -841125 -847239 -901741 -1693504 -946294 -969785 -1008963 -1039655 -1062080 -1266888 -1207600 -1248059 -1996476 -2157573 -1332185 -1337612 -1437775 -3312453 -1748980 -1508970 -1443202 -1886894 -1622596 -1628710 -1683212 -2054839 -1793533 -1848035 -1955257 -2517933 -2031865 -2948974 -2101735 -2946745 -2455659 -2539785 -3387024 -2775387 -2669797 -2769960 -3469640 -2880977 -2952172 -3065798 -3330096 -3416129 -3305808 -3422243 -3311922 -4871695 -4010096 -4568920 -5264164 -4410916 -4619668 -4133600 -5962028 -4557394 -5309745 -6891073 -7327354 -5439757 -5445184 -5550774 -9929413 -5833149 -10316879 -6017970 -10860519 -6838372 -6617730 -6728051 -7432339 -12167808 -8143696 -8421012 -9030584 -19004215 -8544516 -8753268 -9578784 -9867139 -17749218 -29321094 -10884941 -13566423 -10990531 -15648314 -11568744 -16896964 -11851119 -12635700 -12746021 -23735336 -13345781 -15038742 -17999796 -15576035 -27616357 -35586455 -16965528 -17575100 -18123300 -18411655 -18332052 -20463725 -20752080 -22453685 -31566219 -23736552 -22559275 -22841650 -23419863 -33498101 -30920881 -24486819 -28384523 -26091802 -28921816 -37598017 -30614777 -34540628 -33151135 -46796178 -35698400 -39419213 -35986755 -63155765 -38875380 -43305375 -41215805 -70137621 -46578202 -45400925 -67691763 -36845998 -46261513 -47906682 -64418982 -55013618 -102031145 -56706579 -59242937 -59536593 -77202560 -63765912 -68849535 -122603485 -71685155 -72544398 -72832753 -74862135 -75721378 -101591820 -92839715 -94484884 -82246923 -96088935 -123464073 -126934700 -128386128 -205588688 -102920300 -111720197 -128092472 -115949516 -116243172 -118779530 -167029282 -202656078 -132615447 -140534690 -144229553 -191670894 -145377151 -225055893 -204559912 -314376275 -208789231 -188928650 -176731807 -178335858 -306721986 -235022702 -300648847 -243454990 -214640497 -341299065 -227669713 -234729046 -261326667 -285911841 -251394977 -401861357 -273150137 -276845000 -284764243 -349937063 -322108958 -323713009 -355067665 -550176976 -385521038 -387125089 -365660457 -391372304 -544103837 -442310210 -449369543 -458095487 -511574046 -491485497 -462398759 -479064690 -486124023 -512721644 -635848904 -524545114 -809837032 -973972805 -608477252 -606873201 -645821967 -677176623 -915917418 -720728122 -845220576 -751181495 -752785546 -1135272110 -840741847 -941463449 -891679753 -907465030 -1326865870 -948522782 -953884256 -1199792812 -1263903139 -998845667 -1037266758 -1131418315 -1133022366 -1215350453 -1252695168 -1705065751 -1658646525 -1596402071 -1397904745 -1636645540 -1471909617 -1503967041 -1591923342 -1593527393 -2437143918 -1732421600 -2163873235 -2459888236 -2542050175 -1902407038 -2237059570 -1952729923 -2170289124 -2214196120 -2396750412 -2168685073 -2264440681 -3065437010 -2873996978 -2724604785 -2901871786 -2869814362 -4444457213 -2975876658 -3063832959 -4674084356 -5416047153 -3546257316 -3495934431 -3634828638 -4121414996 -3855136961 -4989045466 -6576491394 -4384485244 -4123019047 -4217170604 -4382881193 -4433125754 -7420333871 -6610090275 -5134255043 -11020948607 -7314271575 -7878815624 -5771686148 -6471811089 -9967745520 -6039709617 -7763427920 -7042191747 -7181085954 -14350626713 -7130763069 -7489965599 -7976551957 -8072307565 -8340189651 -8505900240 -8507504291 -10472835371 -11697152768 -15183761791 -9567380797 -12381776423 -13261651747 -11173964660 -18784376527 -11811395765 -15548091987 -12243497237 -29534388504 -16698143866 -13081901364 -14172954816 -14223277701 -14311849023 -19187118367 -14620728668 -15466517556 -16048859522 -16412497216 -16846089891 -18073281037 -20318900056 -21264533565 -27245244755 -21810878034 -31960589203 -24193172188 -26343553111 -25346919476 -24054893002 -27254856180 -49056122789 -27710014793 -27305179065 -41395778998 -30087246224 -28396232517 -28535126724 -32385130060 -30669588190 -31466818559 -37164989947 -32461356738 -48312908450 -34919370928 -57924444370 -41583433621 -46004050222 -67814928256 -62174227108 -55701411582 -48248065190 -51360072067 -49401812478 -63928175297 -54560035245 -55015193858 -55840305789 -56931359241 -58483478741 -64846486798 -60001945283 -59204714914 -97649877668 -62136406749 -79714883749 -117129159284 -113159395248 -126982893547 -76502804549 -87587483843 -89831498811 -108178277330 -99608137257 -100761884545 -102808100435 -116206558865 -103961847723 -104417006336 -109575229103 -178342965614 -112771665030 -114323784530 -115414837982 -191829380345 -119206660197 -121341121663 -164944507184 -138639211298 -141851290498 -156217688298 -203794042708 -179310904984 -225781787968 -279268291714 -224149222098 -190593383356 -345490343761 -203569984980 -523833309375 -206769948158 -237547680528 -338473006628 -304601045375 -223899013633 -240547781860 -252962995828 -229738622512 -365750304131 -277558809961 -259980332961 -263192412161 -332444673854 -280490501796 -321162195482 -503167305347 -369904288340 -428141063884 -573474273320 -536083727117 -397363331514 -394163368336 -410339933138 -427468998613 -756130301175 -539214622012 -476862009461 -464446795493 -483879346594 -453637636145 -731196446106 -482701618340 -489718955473 -939224577451 -537539142922 -523172745122 -601652697278 -612935175650 -887201942599 -691066483822 -764067656676 -1118535482435 -804503301474 -880064949854 -874786728631 -1173768102162 -1001985938415 -1344131621756 -881106634758 -943356591618 -947148413833 -1005874363462 -918084431638 -936339254485 -972420573813 -2262216053394 -1012891700595 -1327676046596 -1136107920772 -1487721904281 -1537991951763 -1214587872928 -1923038783909 -1455134140498 -1942213617947 -1568570958150 -2054874736920 -1679290030105 -2402282554331 -1811125983116 -2245760478234 -1799191066396 -1817445889243 -2474331206248 -3126867112992 -1953022777295 -1854423686123 -1908759828298 -2651710603918 -2500613604876 -2227479573523 -2148999621367 -2782810187094 -2350695793700 -2669722013426 -2752579824691 -3496735919348 -3960125604483 -3616636955639 -3247860988255 -3367762024546 -5314181808591 -5053993158249 -8930818764230 -3763183514421 -3671869575366 -3653614752519 -4604733381213 -4499695415067 -5275866734359 -4003423307490 -4637233873217 -4649613226243 -8597359477700 -4578175367223 -11281514557930 -4818721634793 -5103275618391 -6901475740774 -6000440812946 -6120341849237 -7723309118904 -6615623012801 -6864497943894 -7945937391769 -7021376777065 -7325484327885 -7416798266940 -8503118722557 -8367916895634 -7657038060009 -9149308641310 -8822144942283 -8581598674713 -8640657180707 -8653036533733 -10578616180169 -9227788593466 -19806404773635 -12946092262857 -13480120956695 -9921997253184 -11103716431337 -14066279241006 -12120782662183 -12735964862038 -16949515570347 -14272661072810 -20501497733760 -14346861104950 -17517225536944 -20271576590742 -17730907316023 -22629429598005 -16238636734722 -16297695240716 -22647877915719 -31270086778712 -17222255855420 -31300914449452 -31583504777950 -49031821765475 -19149785846650 -21025713684521 -23988276494190 -22657962115222 -22042779915367 -32129430115858 -26467643767133 -24856747524221 -27082825966988 -28619522177760 -46739220357875 -30585497839672 -30644556345666 -44690657831086 -37493832446162 -32536331975438 -33460892590142 -35447481087366 -33519951096136 -67983813062804 -42079003379641 -41210532349610 -52326628133973 -40175499531171 -41192565762017 -43138062340840 -55562731011503 -44700742030589 -49740788082210 -46899527439588 -57668323806660 -96755296773520 -57393079499659 -55702348144748 -59205020017432 -63180888321104 -61230054185338 \ No newline at end of file +1901 +2248 +1611 +1637 +2128 +1740 +1769 +1772 +1936 +2280 +2339 +2515 +4281 +2162 +2296 +2553 +2516 +4451 +2556 +2733 +2749 +2868 +3096 +4334 +3541 +3248 +3988 +6613 +3897 +3509 +3934 +3705 +4098 +4216 +7236 +4458 +4677 +4678 +4715 +4812 +6116 +5249 +5289 +5305 +5482 +12525 +5964 +8612 +6757 +6789 +10510 +7443 +12038 +9490 +8798 +7639 +7803 +9387 +8674 +10117 +9135 +16874 +9393 +9527 +10061 +12078 +10538 +10594 +10787 +11446 +17032 +13407 +13546 +14396 +16850 +15082 +15246 +15442 +22542 +16313 +26559 +16477 +17809 +19673 +26036 +28320 +30257 +18920 +19588 +21325 +21984 +21132 +28489 +22233 +24853 +38461 +26953 +28628 +29478 +30688 +33251 +31559 +44526 +49845 +34286 +35397 +53206 +37397 +38508 +41821 +41572 +40052 +40913 +40720 +42457 +67136 +43365 +49186 +93712 +55581 +61239 +56431 +58106 +63939 +62247 +65845 +66956 +92551 +69683 +71683 +111735 +90603 +75905 +78560 +80772 +80965 +81633 +113125 +160921 +85822 +101471 +174364 +115031 +113687 +112012 +119345 +128114 +143019 +186714 +128092 +132801 +145516 +166594 +195996 +152455 +268347 +167455 +226288 +194652 +161737 +241217 +329733 +187293 +197834 +199509 +213483 +225699 +227043 +556776 +466916 +453331 +256206 +457825 +280547 +278317 +285256 +357733 +386802 +654209 +743081 +329192 +361246 +349030 +478381 +385127 +397343 +424877 +412992 +411317 +693539 +504016 +665674 +483249 +677890 +614448 +534523 +536753 +563573 +558864 +682599 +1042113 +1102767 +678222 +1041954 +690438 +710276 +1071276 +734157 +1103430 +782470 +808660 +1324724 +1186615 +894566 +1151201 +987265 +1241463 +1778216 +1224961 +1093387 +1095617 +1241795 +1122437 +2050455 +1424595 +1936679 +2337412 +1936520 +1885900 +1400714 +2229060 +1516627 +1902047 +2749319 +1795925 +1703226 +2690491 +2796613 +1990183 +3196639 +2944689 +3629774 +3653655 +3085800 +2189004 +2917341 +2825309 +2523151 +2941222 +3402527 +3103940 +3390897 +5392710 +6189740 +5515800 +3219853 +6045162 +4899865 +6282439 +4620567 +3693409 +6320265 +5014313 +5627091 +8416840 +4712155 +10526956 +6779209 +6494837 +11182304 +5742650 +5348460 +6622380 +6161075 +9149102 +12406300 +18596040 +10757317 +6913262 +7840420 +7932008 +9854484 +8313976 +8405564 +9436059 +13662436 +24189392 +9726468 +11788166 +12940284 +10060615 +11091110 +20618363 +18260048 +11509535 +13280468 +16439570 +25875629 +13074337 +14753682 +14845270 +15227238 +18597737 +19162527 +32503368 +37385164 +16719540 +31200332 +46165804 +23723051 +26354805 +24953706 +31709473 +83550968 +21151725 +23341083 +28301575 +50459501 +24583872 +24790003 +30000008 +35905407 +60011048 +32236864 +29598952 +30072508 +42503610 +52624947 +70749676 +41303412 +55026214 +41673246 +44874776 +44492808 +77111640 +45735597 +48131086 +52940035 +82697455 +45941728 +47924955 +59671460 +49373875 +54182824 +104164268 +62236872 +71375920 +61835816 +62309372 +70902364 +83012543 +82976658 +85796220 +86166054 +103982618 +86548022 +89598201 +93660552 +160124183 +144533271 +124315955 +132071330 +93866683 +95315603 +97298830 +264288451 +132386418 +103556699 +147843376 +181481657 +124072688 +124145188 +132738180 +133211736 +153879022 +169560565 +168772878 +171962274 +172714076 +176146223 +180208574 +183258753 +271988564 +189182286 +191165513 +218011871 +192614433 +226604863 +228053783 +316687121 +277951710 +331610482 +227629387 +248217876 +256810868 +257284424 +256883368 +265949916 +429246698 +322651900 +338333443 +340735152 +344676350 +257342611 +356354797 +375873186 +372441039 +410626304 +380347799 +637690410 +419219296 +420243820 +454234250 +455683170 +475847263 +484440255 +484971998 +484512755 +505028744 +513694236 +514167792 +523292527 +579994511 +854902944 +713025781 +595676054 +598077763 +602018961 +752788838 +1208472008 +969484753 +856881294 +829845600 +799567095 +874478070 +875926990 +909917420 +1343539836 +931530433 +960287518 +969412253 +1218054525 +1397770597 +1018722980 +1027862028 +1094162303 +1474004753 +1540282029 +1686726894 +1512592876 +1193753817 +1200096724 +2118389428 +1552355933 +1629412695 +1656448389 +1674045165 +1675494085 +1709484515 +1750405060 +2312216828 +1879329673 +1891817951 +1900942686 +2509694282 +2046585008 +2112885283 +2122024331 +2692768145 +2287916120 +2294259027 +2393850541 +3227008923 +3246681732 +3186638041 +4240413759 +2752452657 +3181768628 +3208804322 +3338897210 +3330493554 +5078455992 +4506735824 +3459889575 +3792760637 +3771147624 +3938402959 +4903544823 +4013827969 +4622579565 +4159470291 +4234909614 +6520665838 +4987027172 +4582175147 +8085313451 +5146303198 +7733744747 +8446916747 +6547701532 +5961256979 +14967582585 +7123254191 +7231037199 +6669390764 +6790383129 +8006057238 +7252650212 +16091370689 +7563908261 +8596003116 +13029091894 +8173298260 +15569965499 +8394379905 +8741645438 +10948284151 +9569202319 +13433943919 +11107560177 +11694004730 +13338084661 +12508958511 +12630647743 +12751640108 +23964345404 +13459773893 +19113617415 +14796440367 +20435650168 +14043033341 +16159911377 +14816558473 +20194556004 +15737206521 +24991317492 +16567678165 +18310847757 +17136025343 +19342664056 +25924118650 +28790559120 +20676762496 +22801564907 +23616518688 +29887665451 +25260598619 +25139606254 +25382287851 +26211414001 +27502807234 +29612998840 +28859591814 +28839473708 +29780239862 +30202944718 +35910342221 +30553764994 +64769934035 +36478689399 +33703703508 +37812787839 +35446873100 +42518313194 +40019426552 +43478327403 +44293281184 +45816368750 +46418083595 +48756124942 +50400204873 +55162527713 +93629525849 +59983184580 +66672379653 +58472590654 +57699065522 +73132754892 +76222016702 +75596608612 +60756709712 +82459828450 +67032454393 +117426036076 +70182392907 +149132208103 +95430057680 +75466299652 +88775551494 +104288959404 +87771608587 +90109649934 +94572493692 +121884383247 +99156329815 +105562732586 +112861593235 +116171656176 +154443988240 +133938890306 +118455775234 +124731519915 +142629063005 +127789164105 +156186767392 +136223009364 +181616158265 +137214847300 +186927938402 +231653067044 +163237908239 +165575949586 +179755259056 +198861453096 +177881258521 +182344102279 +239501622892 +193728823507 +217612105049 +204719062401 +218424325821 +246244939339 +243187295149 +252394665540 +261728054411 +261946367215 +260954529279 +264012173469 +301798958950 +273437856664 +356966731746 +494181579046 +398179584877 +350165846641 +419256881948 +567777951690 +343457208107 +357636517577 +360225360800 +371610082028 +680211411227 +398447885908 +411340928556 +422331167450 +466665429616 +461611620970 +504915349560 +495581960689 +513349194819 +619364571988 +522900896494 +700246844858 +537450030133 +710391207441 +633663217464 +809788814464 +693623054748 +715067290135 +701093725684 +839039168796 +876525431588 +1030705500544 +793941249478 +1071856926886 +782951010584 +820779053358 +860059506878 +833672096006 +883942788420 +962247390305 +974960815789 +1000497310249 +1114946532677 +1535846343493 +1060350926627 +1156564113958 +1237696874991 +1231073084881 +1327286272212 +1527295150754 +1484044736268 +1534765821690 +1659818222154 +1495034975162 +1576892260062 +1603730063942 +1614720302836 +1616623106590 +1643010517462 +1654451149364 +2064745180887 +1693731602884 +1717614884426 +1858903604209 +1937208206094 +2726108060043 +2845793387717 +3221309294845 +2216915040585 +4462416494307 +4459006169836 +3174905081085 +2558359357093 +2811331008480 +3018810557958 +3228497424574 +3831635343421 +3071927235224 +3353938579371 +3191612562898 +3308451905720 +3231343409426 +3310354709474 +3654823090520 +3348182752248 +3411346487310 +3552635207093 +5090247013635 +3796111810303 +5438224335430 +7003005842768 +5906542109341 +4775274397678 +5028246049065 +6193715639043 +6963981694403 +6247307982532 +5369690365573 +5830141566438 +9058638991012 +6624562442317 +6263539798122 +6303270644650 +6765285066681 +6965177799994 +6541698118900 +6579526161674 +12077449548970 +8327909604771 +6759529239558 +9317888596651 +10118493062700 +8571386207981 +16283066396645 +10968990036721 +13762535082326 +9803520446743 +14834926006103 +10397936414638 +25803916042824 +11199831932011 +11949216527247 +13589740242311 +19296899641492 +14631180249421 +17741530050911 +13068555711331 +12844968763550 +19828084950889 +17363114214632 +13121224280574 +34663010956992 +15087438844329 +16878022302258 +15330915447539 +19540376244702 +18374906654724 +18969322622619 +20201456861381 +20772510483464 +23466492125969 +22872076158074 +53037917611716 +23519160695212 +23149048459258 +37942986912292 +24794185290797 +61462147607504 +44334561535499 +25966193044124 +25913524474881 +34300238070158 +35288895705710 +28208663124903 +28452139728113 +29999246582832 +41297108491663 +61092035371550 +39170779484000 +33705822102263 +37344229277343 +54365664202994 +49432685170093 +40973967344845 +67942233495124 +46021124617332 +46391236853286 +51879717519005 +60266431114282 +47943233750055 +114333470348410 +50707709765678 +54122187599784 +54174856169027 +71934649092213 +55912771057713 +56660802853016 +58207909707735 +58451386310945 +77942480332887 +63705068685095 +74679789447108 +87365204198131 +72876601586263 +71050051379606 +97900842136337 +139876882587337 +96728834383010 +91681677110523 +92412361470618 +93964358367387 +94334470603341 +123814366611218 +110087627226740 +98650943515733 +104829897365462 +104882565934705 +108297043768811 diff --git a/9/part1.py b/9/part1.py index af158d9..f1be587 100644 --- a/9/part1.py +++ b/9/part1.py @@ -2,7 +2,7 @@ from itertools import combinations numbers = [] with open("input.txt") as f: - numbers = list(int(num) for num in f.read().split("\n")) + numbers = list(int(num) for num in f.read().splitlines()) for i in range(25, len(numbers)): possible = False diff --git a/9/part2.py b/9/part2.py index e7b2835..995f9f2 100644 --- a/9/part2.py +++ b/9/part2.py @@ -1,13 +1,15 @@ from itertools import combinations +preamble_size = 25 + numbers = [] with open("input.txt") as f: - numbers = list(int(num) for num in f.read().split("\n")) + numbers = list(int(num) for num in f.read().splitlines()) def getInvalidNumber(): - for i in range(25, len(numbers)): + for i in range(preamble_size, len(numbers)): possible = False - for numberPair in combinations(numbers[i-25:i], 2): + for numberPair in combinations(numbers[i-preamble_size:i], 2): if sum(numberPair) == numbers[i]: possible = True break @@ -17,9 +19,10 @@ def getInvalidNumber(): invalidNumber = getInvalidNumber() found = False for setSize in range(2, len(numbers)): - for setStart in range(0, len(numbers)-setSize, 1): - if sum(numbers[setStart:setStart+setSize]) == invalidNumber: - print(numbers[setStart] + numbers[setStart+setSize-1]) - found = True - break - if found: break + for setStart in range(0, len(numbers)-setSize, 1): + contiguos_set = numbers[setStart:setStart+setSize] + if sum(contiguos_set) == invalidNumber: + print(min(contiguos_set) + max(contiguos_set)) + found = True + break + if found: break diff --git a/9/test.txt b/9/test.txt new file mode 100644 index 0000000..28d66e4 --- /dev/null +++ b/9/test.txt @@ -0,0 +1,20 @@ +35 +20 +15 +25 +47 +40 +62 +55 +65 +95 +102 +117 +150 +182 +127 +219 +299 +277 +309 +576