From: Greg Burri Date: Wed, 2 Dec 2020 12:56:51 +0000 (+0100) Subject: Rename 'main.jl' + some code clean up. X-Git-Url: http://git.euphorik.ch/index.cgi?a=commitdiff_plain;h=1f659592631e3d54dc768b2e61dc1db93850ad0a;p=advent_of_code_2020.git Rename 'main.jl' + some code clean up. --- diff --git a/advent_of_code_2020.jl b/advent_of_code_2020.jl new file mode 100644 index 0000000..df49843 --- /dev/null +++ b/advent_of_code_2020.jl @@ -0,0 +1,137 @@ +### A Pluto.jl notebook ### +# v0.12.15 + +using Markdown +using InteractiveUtils + +# ╔═╡ f0dd4400-3313-11eb-3295-af913c2212fb +md"# Advent Of Code 2020" + +# ╔═╡ 0b7b8920-3314-11eb-2cfb-7d20c0967e67 +md"## Day 1" + +# ╔═╡ 877b32e0-3315-11eb-0e96-650b19da693e +input_day1 = parse.(Int64, split(readline("data/day01.txt"))) |> sort + +# ╔═╡ 4adcf8d0-33a8-11eb-0220-696f06894ef3 +function day1_part1(input) + for n ∈ input + r = searchsorted(input_day1, 2020 - n) + if r.start ≤ r.stop + return n * input[r.start] + end + end +end + +# ╔═╡ 1e8e7230-33ae-11eb-0a77-035e6a4b9ba8 +function day1_part2(input) + l = length(input) + for i ∈ 1:l + for j ∈ i+1:l + v = 2020 - input[i] - input[j] + if v ≤ 0 + break + end + r = searchsorted(input_day1, v) + if r.start ≤ r.stop + return input[i] * input[j] * input[r.start] + end + end + end +end + +# ╔═╡ 7a037310-33ac-11eb-34fb-9bf552883937 +md"**Result for part 1:** $(day1_part1(input_day1))" + +# ╔═╡ c7dcdae0-33b1-11eb-2cab-fbc06c8ef76b +md"**Result for part 2:** $(day1_part2(input_day1))" + +# ╔═╡ 5d9712b0-3472-11eb-1423-719331dfe52f +md"## Day 2" + +# ╔═╡ b9144990-3473-11eb-0ba9-59f3fe6ddbc0 +struct Password + policy_range :: UnitRange + policy_char :: Char + p :: String +end + +# ╔═╡ 10f5ffa0-3474-11eb-2a36-d5c6f78f18c6 +function parse_day2(lines) + line_regexp = r"^(\d+)-(\d+) ([a-z]): ([a-z]+)$" + + function parse_line(line) + m = match(line_regexp, line) + Password( + UnitRange(parse(Int, m.captures[1]), parse(Int, m.captures[2])), + m.captures[3][1], + m.captures[4] + ) + end + + parse_line.(lines) +end + +# ╔═╡ 6695038e-3472-11eb-1846-3b1c041be59d +nb_of_valid_passwords_part1(passwords) = + count( + password -> + count(==(password.policy_char), password.p) ∈ password.policy_range, + passwords + ) + +# ╔═╡ bbda1c1e-347a-11eb-0e7a-756906c4c9f4 +nb_of_valid_passwords_part2(passwords) = + count( + password -> + (password.p[password.policy_range.start] == password.policy_char) ⊻ + (password.p[password.policy_range.stop] == password.policy_char), + passwords + ) + +# ╔═╡ a0cfb670-3474-11eb-1a05-c12914658a0a +let + test1_input = + split(""" + 1-3 a: abcde + 1-3 b: cdefg + 2-9 c: ccccccccc""", + '\n' + ) + + test1_part1_result = nb_of_valid_passwords_part1(parse_day2(test1_input)) + test1_part2_result = nb_of_valid_passwords_part2(parse_day2(test1_input)) + + md" +Test 1, part 1: $(test1_part1_result == 2) + +Test 1, part 2: $(test1_part2_result == 1) + " +end + +# ╔═╡ 4a629040-347a-11eb-2aae-6f37a4c89168 +input_day2 = parse_day2(readlines("data/day02.txt")) + +# ╔═╡ 5825aa50-347a-11eb-37ca-811e1b59d37a +md"**Result for part 1**: $(nb_of_valid_passwords_part1(input_day2))" + +# ╔═╡ de3c2f00-347b-11eb-0aec-8b776a855f6a +md"**Result for part 2**: $(nb_of_valid_passwords_part2(input_day2))" + +# ╔═╡ Cell order: +# ╟─f0dd4400-3313-11eb-3295-af913c2212fb +# ╟─0b7b8920-3314-11eb-2cfb-7d20c0967e67 +# ╠═877b32e0-3315-11eb-0e96-650b19da693e +# ╠═4adcf8d0-33a8-11eb-0220-696f06894ef3 +# ╠═1e8e7230-33ae-11eb-0a77-035e6a4b9ba8 +# ╟─7a037310-33ac-11eb-34fb-9bf552883937 +# ╟─c7dcdae0-33b1-11eb-2cab-fbc06c8ef76b +# ╟─5d9712b0-3472-11eb-1423-719331dfe52f +# ╠═b9144990-3473-11eb-0ba9-59f3fe6ddbc0 +# ╠═10f5ffa0-3474-11eb-2a36-d5c6f78f18c6 +# ╠═6695038e-3472-11eb-1846-3b1c041be59d +# ╠═bbda1c1e-347a-11eb-0e7a-756906c4c9f4 +# ╟─a0cfb670-3474-11eb-1a05-c12914658a0a +# ╟─4a629040-347a-11eb-2aae-6f37a4c89168 +# ╟─5825aa50-347a-11eb-37ca-811e1b59d37a +# ╟─de3c2f00-347b-11eb-0aec-8b776a855f6a diff --git a/data/day01.txt b/data/day01.txt new file mode 100644 index 0000000..a679df5 --- /dev/null +++ b/data/day01.txt @@ -0,0 +1,200 @@ +1254 +1313 +1456 +1782 +1742 +1391 +1273 +1286 +1373 +1891 +1188 +1994 +1887 +1816 +1984 +961 +1428 +1105 +1123 +1699 +1154 +1953 +1977 +1450 +1696 +1068 +1241 +1926 +1228 +1591 +1789 +1966 +1508 +1193 +1190 +1654 +444 +1282 +1169 +1165 +1778 +1669 +1570 +1671 +1845 +1208 +1728 +1798 +847 +1300 +1817 +1200 +1297 +1658 +1296 +1571 +1991 +1305 +1314 +1903 +1472 +1359 +1506 +1999 +1877 +1168 +1137 +1288 +1083 +1656 +413 +1430 +1408 +1397 +1846 +1218 +684 +1234 +2007 +900 +1604 +1460 +1848 +1693 +1324 +1401 +1968 +1918 +1975 +1665 +1413 +1874 +1852 +1521 +1753 +1229 +1940 +1650 +1976 +1235 +1130 +1927 +1365 +1908 +1441 +1302 +1986 +1449 +1692 +1944 +1277 +1312 +1826 +1231 +1289 +1814 +1170 +1606 +1608 +1773 +1883 +1936 +1626 +1497 +1860 +1673 +1295 +2005 +1481 +1995 +1734 +1646 +1557 +1298 +1174 +1894 +1309 +1240 +1982 +1414 +1799 +1620 +1863 +1220 +1642 +508 +1146 +1187 +1253 +1284 +1952 +1527 +1610 +1333 +1221 +1362 +1457 +1721 +1493 +1330 +156 +1647 +1841 +1724 +2000 +1398 +1745 +1985 +1269 +1722 +2001 +1923 +1395 +1094 +1140 +1958 +1239 +1336 +1588 +1338 +1750 +1757 +1444 +1822 +1335 +1941 +1865 +1767 +1881 +1499 +1157 +1990 +1210 +1779 +1201 +1784 +1961 +1476 +1861 +1468 \ No newline at end of file diff --git a/data/day02.txt b/data/day02.txt new file mode 100644 index 0000000..4c4c5a3 --- /dev/null +++ b/data/day02.txt @@ -0,0 +1,1000 @@ +1-13 r: gqdrspndrpsrjfjx +5-16 j: jjjjkjjzjjjjjfjzjjj +14-16 r: rrrnrrrrrcnrgxrr +1-3 k: bkktwhgktv +3-5 q: dxqqqzmqvs +11-14 s: sssssssssssssv +1-3 d: cdzdq +13-16 q: scdqpdgpkvbwwqbv +9-10 d: ddrdddlddd +15-17 v: jvvvvvvgcvvvvrcvnv +2-3 s: xssx +8-15 j: jwjjjjkhjjjltjmjjjr +7-15 m: wqspfmtpjftmplwp +1-11 s: swdgzhgsxtssndzfm +3-4 b: bgjrg +1-12 x: jxgxxxpjwpsht +5-15 x: xxjxwshpxjxxxxsnxvz +4-11 r: bjnrpswfprrng +12-14 j: wjjzmwnmmvzsjhnnkj +3-4 d: dddv +2-4 b: bfxx +15-16 r: rrrrrrrrrrrlrrphrr +6-11 j: jsljjjjjjjj +6-7 m: mpttcmmmmng +6-7 g: gsggggg +2-10 b: nbtbqbbfpb +4-6 h: hhqhrzkcrhh +13-14 b: bbbbbbbbbbnbbbb +5-6 g: gggggg +5-6 x: rsxvxx +3-6 q: wxqzqqqtzsq +1-2 h: sjhj +6-18 t: jtptcwtbfgffpkdwthbf +5-9 w: wwwwcwwww +15-16 g: wqdwztbmrqdmgmvc +8-15 t: ttttgztvtttnttb +9-11 r: rrvrrrrnhrzr +8-9 l: lllllllqwl +10-11 h: hhhhhhhhhhd +3-5 g: gggrwqc +5-12 f: ffcdxfglcffsf +6-7 f: fffffzk +3-5 b: btbbbb +2-8 z: wblnvfzzwzzbchx +13-14 r: rrrrrfrrrrrrlf +2-9 r: wgbmfvksl +5-12 m: xrmmfhmqdhmmvhvrzmwq +3-4 j: jwpd +6-8 v: mvfwgskpxgvcsr +1-3 c: ctpr +2-8 d: dzdfsddd +10-14 c: ccccczcccccqlchvclcc +2-8 s: sscwcfssssssdt +2-11 l: xlsslrlclfls +7-8 r: rrrjrrrrtdcr +7-9 z: zzzzzzzpzz +12-14 r: rrrrrrrrrrrprrr +13-14 g: hdczwngvjtgmhn +1-7 q: qqdqqqqvq +5-6 q: qqqqql +11-16 p: wgwrzltpskwgxprm +4-12 d: dvddddddwddz +15-16 q: qqqqqqqqqqqqqqqqq +1-5 m: mmrjmmqsjkm +13-14 m: mlmxmmmdmgmmmw +4-5 q: qcqvmhqdq +2-3 m: brdzbfzj +3-4 s: snshj +5-9 k: kzpkkbkvqjktrk +12-13 t: fltttttttjtpstttt +7-8 c: kcccfccccxtcc +2-6 q: nnjqqd +2-9 n: msnvnrxgldqnxnngsn +2-4 c: scccwp +12-13 c: ccbccqdcccfcvdccc +6-7 f: fmdffffxcbbpffl +2-6 r: rbrrrvr +7-10 j: jzjtjjqfvjj +3-7 j: jjrjjjjj +2-13 m: mmmlmqddkmtmmm +19-20 l: drpwllkdlsjslmllsdrv +3-5 v: vxmrwwvh +5-13 z: zzzzkzzzzzzzkzzzf +5-6 g: gggggfg +4-6 c: crfvlc +14-18 x: xxxxxxxxxjxxxzxdqc +4-7 p: plzqjtp +2-4 v: nmdbhftxvbv +5-8 s: knfcsbbsxssssxd +2-13 p: mpwpnbrnlxmqvfbltcq +7-11 v: vbvvvkfvvvg +14-17 x: xxrxxxbxxwmhxxpxqxv +5-7 f: qffndfmqfsrv +7-8 v: vvvqvvbvv +9-10 j: jjjdjjjslljjjjjch +4-6 l: lllplgr +3-4 n: nnqn +4-5 c: ccccc +1-2 q: lwhqw +6-7 d: dddmddqd +6-7 g: gggggzxg +2-10 j: jsjjjjjjjsjj +13-15 b: dxbbbbbbbbbbbmbbbmbl +5-10 q: qqqqwqqqqxq +12-13 j: jjjjjzjjjjbjxjjb +5-10 t: ttfttphtttttmthttp +3-4 t: tttj +7-8 n: nnknnpphfwnn +9-10 x: xxxxxxxxcx +14-17 h: hhkhhzxhhhhhhjhhxhh +4-5 w: whxtwwftw +10-12 q: xqgqsqqvqqlqqqdqpqrq +1-3 l: jsvlzrm +8-16 z: sbzzqzxzzzskzzxgrzcz +7-10 k: kkkkjklkkt +9-11 f: ffffwfffwflnwf +1-8 c: cmccwcqzzhxccr +6-9 h: vnfxddhrhbdqkqr +8-9 t: tzttdtttvvtb +6-9 q: qqqqqqqqqqqqq +15-17 k: kkkkkkkkkkkkkklkqk +3-10 p: pprppppppfp +5-11 d: nhgkdjgvmdddt +7-9 d: rdddddddpd +1-3 r: rrwrr +5-16 t: gttwtrqqmwwljhfn +6-9 q: qqqswdzllqqf +7-13 b: mxpxbjgvsncqwv +7-8 d: dddddrddds +3-4 z: zzqzz +10-18 z: zzzqzzzzbzzwzzpzzzz +8-9 p: pppppppppp +13-16 f: fffffffffffffxtf +8-9 w: fwgwwwlsfpww +4-5 g: grgmcpdqggwckq +16-17 g: gggggwgggggggggln +3-13 j: jjmjjjjjjjjjbjjjjjj +9-13 x: xxxxxxxxxxxxx +5-12 b: bbrmbhbbsgbbbpbbz +14-18 z: zzzszzszzzzzzzzzzzh +1-13 k: pkkkkkhgfkfbtkkpkf +3-14 v: vvvpdlvvvvdfvvjvvsv +12-13 m: mmmmrmbmmmmmmrmmm +12-14 v: vvvvvvvvvcrlvkvv +18-19 p: mxpppgpwcphkzppktppk +4-10 x: xxxxxxxxxxxxx +4-5 k: kklkkk +11-13 m: mmmvmmwmzwmmmnvgmm +7-11 p: qdppjspwtcpppp +4-8 l: lllllllll +12-16 j: jjvjtjjsstfjjnjjk +15-17 h: phhhhhhhhhhrhhhhh +4-7 j: sqfjjjj +3-20 m: wzmqhwmjmclzmmmdlzqm +8-13 m: jpmmbmtgmnprgt +8-13 h: hhhhjjhchhbhqshh +15-20 b: mbbbgbbzmkbbkbbpffqb +2-3 t: tdlt +10-16 l: llllkgllrnllllll +2-4 p: phpf +3-5 d: ddddd +5-6 h: hhhhhhh +2-3 j: cjjrj +7-10 g: hgwtggfgbcpgd +3-4 d: dddk +4-6 t: mltdtf +8-9 h: zhljxshhh +2-3 p: vqjgbsp +6-7 x: gcxvjxp +15-17 s: sswgssdsgssjlssss +1-3 m: qvswmm +1-7 v: svbrvsjv +3-5 j: vjhjdq +15-16 b: bbbnbbbmbbbbbbbdbbmb +6-19 k: spkgcpkhlkkthkgkfzkj +1-2 c: dxqxnrrlfnnc +7-11 j: qjjjjjkdrjjjjj +5-11 g: ztdgvvgwhrlgnq +3-4 c: fcmqglp +4-5 q: qqqqqqq +6-7 c: cccccrc +7-11 n: nnnnbnnnnnn +9-13 x: xxxxxbdtqxdwxsx +9-15 j: ljjjjjjjjjjjjjz +2-11 j: pjjhzmtwlgjwpkjjdwq +5-6 k: kkkkkk +12-13 q: qqqqqqqqqqqmg +3-14 j: nwkjjlbbrnqvqm +3-4 h: hhhhshhhhhhmrh +2-4 l: djkxl +1-9 t: tttttfttl +9-10 g: ckggggtggggggv +3-12 l: cqlclvwhpxwlnzzsqgs +8-14 d: ddddddddnddfdh +1-5 v: vvvvxm +2-5 q: mqqqqlqk +3-4 j: tkjpj +13-16 w: wwwwwwwwwwwwwwxww +13-18 m: mmmmmmmmmmmmmzmmmmm +2-4 x: xxfxx +1-2 d: ddvddddkdddd +3-5 c: cctdc +2-10 q: tqjkqqpsctx +2-18 n: nlnnhnxnnnnnnnnnnln +3-7 k: rkkkbkk +3-4 n: ngnn +3-11 d: dqdbwtbghbdj +3-5 q: fqqqq +5-10 x: xxxxfgxxjbxbhxx +5-6 m: mmtmcn +4-6 x: xxxkxk +17-19 b: bbbbbbbbbbbbbmbbbjbb +5-6 k: kkkkhk +10-12 k: kkkkkkkkkpkgk +3-4 z: zzzz +18-19 p: plcppppksppcnptppvmp +3-6 t: tdtrltmn +3-4 q: qqqq +10-19 v: vvzrvvvvvvvvvvvvvvhv +11-16 d: kjdtddddkdvcdddpd +12-16 l: lllllllllllllllll +4-10 b: dbvbqfqlrb +10-11 k: kbkvkhlkqrv +1-9 x: sbqnkxdmxpc +5-10 l: ldlllkllrln +9-13 j: bpjjjjjjjkjzjnj +11-12 j: jjjjjjjjdjjj +2-8 l: jllzbhjlqlwcltllq +4-5 s: gsssd +2-4 s: kswn +1-18 p: bpppppppppppppppptp +9-11 v: vhvvvvvvvvvv +2-5 v: vvkvvv +8-11 p: plplqpjhdzlfpppppl +11-18 g: ggggglgvgcgggggggg +9-11 r: rrrrwrrrmrzp +3-12 g: tggggmggwnpzvgpnp +13-17 t: tnvvttxttttvtftptgt +5-16 c: cccqccccjvcccccccczc +2-4 f: tfbfrjftf +2-4 s: ssssx +3-9 v: vvspvvvjv +3-4 h: hhxh +15-17 l: lllllllllqllmlvwblll +4-9 j: rjljjjjfjjskdkwttbjt +9-10 m: jmmmmmvmhh +1-8 w: wwwlcwgwwwp +1-8 j: mllsjncl +3-4 b: tfbkbssb +1-7 g: qvdbrjkdgggb +1-3 l: wlbll +4-6 v: jvzqbvvvg +2-3 w: vjlwx +10-12 c: ccvcccrccjfhgccdw +10-18 b: bbtbbbbbggbbbbbbbvb +8-9 j: jjjjjjjjjpjg +5-15 c: ccbccccccccccvccc +16-17 t: ttttgtttttttttttthtx +13-15 t: tvsmjtjttktztrt +9-12 c: jzrpnzdncldmxqjmvccb +6-7 v: jjdvpdhv +4-5 c: ccccccccccccc +6-7 t: ttzttttt +10-11 q: qgxqqqqqqqqqq +14-15 h: hhhhhhhhhhhhhhh +3-8 b: bbbbmbbbbb +11-12 r: rhlrsrrrrjrr +2-6 v: vrvvvhv +4-5 n: nnnhn +3-5 p: pqhmnjp +7-13 h: qhhcwhhhhqhhfq +10-11 d: dddddddddxh +10-11 d: gdcdcdddcddtddsddd +1-5 f: bffspf +5-8 s: skssblsg +8-11 m: mmmcmmmwmzmmmvm +6-8 q: kqqkmqhqq +2-8 q: nqnqbdgm +6-11 b: bbbbmbbqbbb +5-14 q: qqqqpbqqqqqqqgqq +2-5 p: prprwh +13-14 k: kkkkkkkkkkkkkkkk +2-7 v: vnvvdlwvd +2-3 t: hpsqzxrltrwbttwgbz +1-5 n: srnlwnnkjnnwhnf +2-3 r: dtlcv +2-5 h: hhthhdcm +2-11 d: rdxfbdhqpbdjjlhf +1-4 b: bxbshbjr +4-10 s: sthspqlnsst +1-10 h: mhwpfrbhhbn +16-18 g: gggggggglgjgggqcgzgg +3-4 d: dddd +12-16 h: dhhhhhhhshhhmnlhhhh +15-19 q: qmqkqqzqtqdqnqqzqqz +14-15 p: kgjpqpppppqpdpph +4-6 z: zzlzzztbbzzr +11-14 l: blllwlqmhlllldllll +2-4 q: qqrqc +5-6 r: qrrvrrr +2-4 f: fffv +13-15 v: vkvvvpvvvvvvvhvvvv +3-8 k: kzqkkkkkk +4-10 w: wvkwwcwxkwv +2-6 t: tvtttttttt +3-4 t: tttt +11-12 p: pzpzppplplppppk +6-12 p: pppppdpppppgp +5-9 w: wwwwwwwzwwww +4-6 m: mmmmmhmmq +4-9 j: xsqjsllnjj +6-9 c: zmcdccgtfccbccfc +4-5 p: vwpzhpp +15-16 v: pjtmwtrxmjnjfkvgrv +9-10 p: pppppppspp +2-10 f: vffzxnfnxfcfcsmtrncz +5-7 v: blwvvvvfvvh +12-16 z: zzzzzzzzzzzzzzzr +5-6 z: zkvhpz +9-13 w: wwnwwwwwwwwww +5-6 p: wmlhpptppmfvngh +9-11 r: rrrrrgsrrdrmrrrr +2-5 b: bbbbzb +13-15 r: rcrrrrrlrrrrqgfrrnr +5-7 k: klkmkkk +3-4 f: zfffgdnfff +3-4 q: qjbjhzltvl +17-19 w: wwwwwwmwwwwwwwwwqwqw +7-9 l: nlrldrlvlnvllllvf +8-9 m: mmmmmpmmm +11-16 k: kkmkkkwkkkkbkkkkd +11-14 s: mvsdsnsncsssrs +6-17 j: jjjjjgzjjsjjjjjjjjd +19-20 p: ppppppppppppppppppkp +1-16 k: nkkkkkkktkkxkkxz +2-4 c: xkcccvvcv +3-4 v: vvvvvkn +11-13 q: qqqqqqqqqqsqj +10-13 g: gxggggggggggg +3-4 x: xxpx +4-7 d: dvbddcdhdd +17-18 g: gggggggggggggggglbgg +18-19 m: mmmmmmmmmmmmmmmmsmtm +4-6 g: xbtgrgbgggmgcrx +8-13 w: wtwcwnwwwcwssxwpbw +2-3 v: vcsv +4-5 g: gggpt +2-3 g: tggtpgkg +3-4 p: pglt +9-12 v: vvvvvvvvvvvvn +11-15 f: fhffffffffnfffq +2-5 s: snssk +2-3 m: mmmm +10-14 x: xxmjbxbxkbwjxxxxj +5-14 l: lmlmlczxfsllzpkljt +6-12 n: nnnxpjtbjjdnrnsvxnwt +5-9 s: ssssfsssb +3-11 f: bffrlbwzfpf +3-4 t: twtt +1-4 r: rkxrsrlrr +7-8 x: xxxxxxlf +9-15 d: nddbddddxdddrdntdd +16-18 v: vrxvwgbqtlkzprlvwvrk +9-10 l: lllllllllzlll +3-18 l: mfllwjggswwjjgrnrl +5-7 j: jjjtjxjvqjjltjj +5-14 n: nnnnnnnnnnnnnnqn +3-12 l: pllqlhpllpklcds +2-5 f: fsgfrpfflq +4-8 q: xqsfqqqrqhqjsqndz +1-5 c: hcttt +13-14 r: rrrrrrrrrrrrrgrr +4-6 d: dddddt +3-4 d: tdqgdk +14-15 s: snskdsjxpsgmbsssssf +3-5 m: mhlcxmmmw +2-12 c: ccmccchbrrscv +14-16 c: ccccccrccccccccmc +8-17 w: pwqmtwwwwrwxwtmmww +5-8 h: hhhhmhhmlb +10-12 b: bbbqwbbbbbbb +6-7 n: nxnnnnl +7-10 v: vcvgvtgvvkwvtlvcv +10-11 t: ttttttktttttttt +2-5 t: tzdtkpsf +4-5 r: rrrmhr +9-10 w: wcdwxgxrwwwk +1-6 g: jggggcg +1-7 v: vvvvvvvmv +12-15 q: rqqqqkqqqjqqbqqqqqrq +3-10 w: vwwgwwwzwwwwxwwxsw +3-4 c: mmhfccccjclccrdccc +1-5 m: mmmmm +4-5 h: vhhxh +13-14 z: zzbzzzzzzzzzbcz +9-11 k: bkkskkkkkkk +1-6 j: jxvjrm +4-6 f: ffffff +3-5 m: mmmmmm +1-3 x: xxxxxxxxxxx +16-17 f: fffffffffffvfffrxf +3-4 f: fwff +2-11 j: zvbdwnthjfh +9-10 f: gffffffffff +1-3 z: zmrnxvs +5-16 k: llkdkrkvkkhkktkktlkd +9-13 z: mvjzzzkhzvzxzqmf +4-5 d: flgsdd +2-6 p: mftwthqkqqkp +2-4 f: vfff +7-12 w: swwwwwwwfwwwwqwfvw +10-13 c: csdkvcctnccncczc +12-15 q: qqqqqqhvqqqmqqcfqq +2-8 v: gvkfgbzvvmfmg +3-14 m: txwnzwhmcrnnltc +8-13 v: zsvmsddwnkvrkgmx +12-13 f: fffffffffffff +1-16 g: trrkggqglgbbgljx +13-14 c: ccxcccccccmccd +9-12 x: xxxxxxxxcxxlxx +10-14 q: qqqfcqwqqpqqqs +11-16 l: xllllllllllllbll +12-13 v: vvvvvvvvvvvvvv +17-18 g: gggggxggggggggggpcg +1-5 x: xxrxxklxgw +4-5 f: fffqt +10-11 l: llllbklllsgxllr +6-9 r: crfmrsjhpf +4-8 h: hhhchhhx +6-12 v: cvlvvvtbqcsvvzvlztv +2-3 x: bsgfvxdl +2-5 j: njzjjj +13-14 s: ssssssssssssfw +8-11 l: jllfllllllmlllll +2-11 p: pxppppppphq +6-9 f: crtfxvfmwwdvt +3-5 n: nnnnnn +3-4 h: hhhh +3-5 d: kldhd +18-19 x: xxxxxxxxxxxxxxfxxbs +4-5 k: kkkct +9-12 n: nxlnnpnnwnnb +2-4 g: gqggz +15-16 z: zzzzzzzzzzzzzzzz +8-10 p: kpcppjbrzqpfcpgppp +5-6 g: qggggrg +7-8 c: cccfncccccc +2-8 k: hgnsbkckkkqktkstks +3-14 x: xxlxjxxxxxxxxvxfbx +1-8 l: lllllllll +1-2 p: ptbmvp +10-15 k: jkkkkktkkkkkkkkkknzg +6-11 k: kkkkdgkkkkk +7-8 m: mmmmmmmm +13-19 z: zzzzzzzkzzzzkzzzvzxz +2-4 g: tghm +3-8 b: bbbbbvdb +6-8 d: dddddrvxdddfdd +5-10 m: mnmnsmmmmxmd +1-8 r: cgcnqrvfb +16-17 l: mhjqbmhszwllqqllr +2-4 s: csssts +7-10 j: jjjjjjzjqt +1-12 x: xmxtxxxxxtxxzdxx +5-6 w: wwnwmwrw +10-11 p: lpjpgpqpkpprdpppp +8-9 k: zhkkbkfkk +1-2 j: klhz +6-13 d: dmstddpddtddddddd +1-8 h: khvcwhhhhlj +8-11 s: bsssbzsfdrsssss +1-18 s: xsssssssssssssssstss +8-15 l: xjllsmjtlllmsxll +1-5 m: mmmmmm +17-18 k: kkkkkkkkwkkkkkkkbmk +1-7 t: tttttgtdclpkx +4-14 k: tgvzgdwkgtcdrd +2-3 z: tzprzcdzhnnll +2-4 j: rntmnjxbwq +5-6 r: rrnjnr +5-9 g: lrggvfggp +4-5 s: sssdl +4-18 h: hhhhhghphbshhhhhhhhh +4-6 s: sfpjvsk +1-10 m: fwgstfsjmtp +4-8 w: wpwwwwwmwsh +2-19 l: lnllllllllllllllllwl +4-15 v: vmwhvvwvvvvsvtdvvkv +5-6 p: lpppslppjppp +5-7 p: ppzppcmdppt +14-18 f: mffxfftfwffdffffffff +4-7 v: kvvdvjvvkmh +1-7 p: rdkzpkfdpzrxq +2-3 h: cdhhngnnjslfjbh +3-6 q: qqzqqwqt +5-10 s: kpcsszfcwsh +11-12 g: gggggggggggw +14-15 w: wwwwwwwwwwwwwsp +6-10 h: bhkzhhhsbhhh +3-4 l: fcnvfxtln +2-7 j: jzsjfrjjjmxqjxjjss +6-9 s: nvdhnsbhsdwxhlj +1-2 v: vvrp +2-5 h: qhnbhfbsdhs +3-4 x: xqvzps +3-4 m: mcmm +9-11 l: srdlflnwlrl +1-8 x: cxjgmlgwvqdpnbzn +3-4 q: qqqk +4-5 r: wsdlmbdv +1-3 d: tbtdddp +3-8 g: gsggsggvgggpgrgx +5-7 t: ktzrvktqpllxwzt +1-2 s: spss +6-19 d: dtjdmqdldddbdcnzkqpd +9-11 f: fffffffffzf +1-12 g: wggnvsgcrgmx +5-7 f: qfpzfmkfmfjc +14-15 j: jhjjjjjjxqjdvvfj +6-7 v: vvtvvqs +4-11 q: qqqxqcqjqqmqqgt +1-3 l: gbkhxlzld +1-4 s: pssz +13-16 x: xxxxxxxxxxxxfsxpp +3-6 p: mlptcpvcrppn +13-15 x: xxxxxxxxxxxxxxxxx +13-14 f: ffffffffffffff +2-5 j: jjpwj +2-7 r: xrrzrvrkjr +8-9 m: mmhlmhmmmpzpmmhgmvz +3-4 g: zgggdwgggdl +6-9 t: tttttxjzttttr +1-4 h: njzthhch +3-14 x: xprxtxbpxxxxlg +9-15 q: qqqqqjqqqqqqhqqqqq +4-6 w: wwfwwwrb +6-8 w: wwwwwwww +10-11 k: kkkkkkkkksl +3-4 n: nnqfvfn +11-13 c: ccccccccccccc +5-9 n: vnvnmnnnqfnq +13-14 f: ffpzrfflffffffqffff +17-18 p: ppppppppppthpppppzp +3-8 m: hsmzgwdmm +4-7 z: zlzhtzcnzzzz +6-13 b: bvbbbhbbbbbbgbb +11-16 x: lpxtdgxvzbxpcwxc +10-14 d: dddddddddrddddddd +2-5 j: lhjnv +2-3 p: pdkp +3-10 l: lnllqjpgqfl +1-4 t: ttttttt +4-8 q: qxzqqqfczksrwmmzx +1-4 l: lllll +5-19 z: ttzhzcbczmjxzrjzpwz +4-7 s: sgssssjs +12-13 s: sssssssssssbq +9-12 h: hhhlchhhvhwb +5-13 n: fncqnnnnwkhnn +10-13 g: ggggjggggrgcqgg +8-12 q: qqxqvqqmqrpdrxqq +5-6 l: ldwlvnllwq +12-15 v: cvvvkvvvvvvvvrvvvl +6-11 x: kxmthvnkgxq +6-9 n: nfdfnkmnln +3-5 x: nqcxt +2-7 p: tpgkbpwxhpzldtmrqd +8-9 r: rrrsrrzrrmrr +3-10 x: fmmjlxbqlz +1-10 g: cngggggqghf +10-11 r: frrrrrrrrgj +2-5 q: sqgqq +7-8 x: cxxxwxsvjgxx +8-16 t: ttttttgpttqttttt +4-8 n: ndznlllnqwpmnnfwvxb +4-15 j: jjbszvrjjjjfjjjwjjcj +4-5 c: ccvrlc +17-19 f: ffffkpfffjxffwffcff +3-4 z: qfzzz +7-9 s: szssssjsm +13-18 q: lngqqpvqqdjvcqdqvlq +7-8 b: bbbbbbbb +2-4 n: lnqr +11-13 k: kkkkkgkkkqxkhfk +2-4 g: tggqzdxp +3-5 t: ttvtft +2-4 v: pzbbr +1-4 h: thhhh +2-5 m: mqxdt +8-9 k: kkkkkkkkk +2-6 w: jqfwlhv +17-18 x: xhxxxkxxxxxxxxxxxbxx +9-10 p: ppwppdpxvvjzpp +10-16 h: hmhjpxmhvnhqhjfmb +11-15 k: kkxkkkkkkgckkkcs +5-9 b: cwcbjsqbdwmbw +10-11 z: zzzzzzzzzzz +14-16 w: wptvwbwdwwwwwwww +8-10 c: xccclcchcrvtqc +7-12 r: rhnrrrrrrrkqrrtm +3-5 h: hhrhph +7-10 c: wblrcccpctnhvdc +15-17 n: nnnnnnnnnnnnnnnnn +5-13 s: ssssssssrssmslsssv +8-19 k: pvqbhlzkwpnkcgkvkwk +4-5 s: pkrxgskxsswbqwlfxsvw +5-10 d: ddsbdcdsdd +12-13 q: hwrkqrhqrrxmw +5-15 b: blcbfqbgbnghjbnglbbb +1-3 z: zzczzz +3-14 s: jsxssskvsssptw +8-13 n: nnnnknnnnnnnnnn +3-11 c: ccccccccccbccccc +1-6 n: nnnlbn +9-12 k: qkkkkkkkkxwkkk +19-20 w: wwwwwwwrwwwwwwwwwwww +10-15 n: nnnnnnndnnndfnnnn +8-14 c: cvndjxlcsccwxl +1-3 v: vrvwv +8-10 s: rshsssjssss +2-10 n: nnjnnnnnnhnkm +1-2 c: ccbcflcp +3-6 v: jtntcsvvvhp +3-5 q: qqqql +17-19 p: ppppppppppppppppmpg +10-11 k: kkkkkkkkktrk +2-4 f: tgprtftkfx +8-9 x: xxxxxxxld +4-6 l: lhzllllzhv +8-9 g: bhgkfgsggxg +5-9 d: dkdddddmdwd +2-13 s: sdffzhrpbnvtswxsbrcs +7-8 q: qjqpdqvwqqdtxpq +5-8 n: lncnfnzxtsn +8-9 p: khtrxgvhtqwrfpqrd +2-4 s: zhln +5-6 q: bqqqddp +7-13 g: gggjggggggggg +10-12 w: wwwwwwwwwkww +1-4 b: bwbbdbhbl +9-18 j: jjjjjjjjjjjjjjjjjjj +10-18 j: jjjvjjjtjjqjjjjfbjd +11-13 m: mmdmmmmmdmmmqm +6-9 n: nnnndtnvfnn +2-3 q: qckq +16-17 x: xcxxxxxxxxxxxxxpxx +14-17 k: kkkkkkkkqkkkkkkck +3-8 l: llkllllvl +8-13 p: nkptlpntkcknppwpdhb +6-12 s: ssssssssssss +8-14 c: ccccccccccccccccsc +6-9 p: cpppdnppztxbpp +8-12 w: vshmsmbckwjmw +1-10 g: qqtfmmxnbg +1-6 m: mmkmmmfmw +5-8 v: vvvwxvvdqv +7-8 f: ffffffff +2-10 k: kkkkkkkkkk +1-4 g: wjhxhq +3-4 w: znpwwmwcwjgs +5-9 d: ddddrdddwl +6-8 j: kjjhvzrbrwcjjm +2-5 j: jhjjxjjsj +2-6 t: ccwdcm +4-12 q: qlqrsgqqhqqf +13-16 w: mwwwwwhwwwwwwwwwww +9-10 g: ggggggggggmtgwj +1-3 x: xxxx +1-3 n: jxtqjbhpkgrcrdrptvd +14-15 w: wwhwwwwwwwwwwww +7-10 d: wddddzvdddkdm +1-4 p: lzph +6-9 w: wwwzwswwr +17-18 t: kjtktrtfgkhpzthvsjt +12-13 j: jjjjjjjjjjjxs +8-9 r: srrzrmrxnhrrr +1-5 s: spzsshkzfmkdss +1-7 z: zzsmzzhzzxzzzzz +1-2 d: ddvx +2-9 h: hhhhhhhhhhh +6-8 p: ppppppppx +4-8 v: bqvvxmvtvhfvv +3-4 z: zzzz +2-4 r: rrrrrrr +4-5 r: mhrrrrrrq +5-6 b: nkhgfjrzqldbbbbmpx +7-8 n: nnnsnwnncdnn +13-15 p: pppntwcpppppppv +5-11 r: tmkrdcmrpcrrkrl +3-4 v: vvgf +4-5 j: jjvtcj +3-5 p: ppppp +1-3 r: mrrr +13-14 v: vvvvvsvvnvvvhxvvv +10-14 z: ltwsklmfdpvxmxgq +16-17 b: bbbbbbbbbbbbbbbqqbbb +3-8 q: qbpqpvqll +9-10 x: xxxxqtxxzxxxx +8-12 d: pdddnddcbcdx +2-3 m: fmmmsfmvcmkc +9-10 x: slxtnxxtjnnxjnq +5-13 h: hhshhhhvhffhhn +6-14 t: wwwmqttttkpmqtrt +1-5 b: mbbbb +10-12 k: kfkkpkrkkkkkkkh +5-6 m: mnlmbvmm +5-6 x: xxxxvl +5-7 b: dbbbpbc +2-19 t: qhdtkxjzdcwjqjkglpzr +1-4 h: hhgqhnhhhhfhhh +1-10 b: bqbbbbzbbbbbbwb +2-3 b: dbbkgnxmbtpg +3-8 r: rrrjrgrrwq +4-7 s: ssrfwfgvskmssws +13-14 m: smdmmmmmgmfmmjs +13-15 h: hhhshhwhjhhhhhhhh +12-13 n: nnnnnnnnnnnnnn +6-14 n: ndnnpqwrlgfrmn +3-16 m: rldkmmmkhmsmbnqbmgs +2-3 m: rmmmmm +5-9 x: xxxxfxxstxxs +4-8 b: bgbbbbgbbbb +9-11 c: kwcclccccscxp +10-17 v: vvvvvvvvvvvvvvvvvv +13-18 n: nrnnnnnnnnnnfnnnnpn +3-4 c: hbcc +13-14 w: wwgwwwwwwwwwwc +4-6 z: fwmzzzz +12-15 h: vhhfhhhhhwhrhhlkmhhh +1-5 v: jqvvhvvbt +4-5 n: vnnscn +5-6 n: qnrvnnndnffnkknfrdt +6-7 w: wwwwwvznwwwwww +6-12 h: hvhhhdhhhhhr +4-5 m: vtmmmmdmp +8-9 f: ffffffffffffffffdf +5-11 z: zzzzjzhzgjwzzhlz +8-10 d: mdnnfwswns +4-15 c: rptccckzhgcvlccbh +4-5 r: brrrgtd +4-15 x: rxsfxqhhzxdsxqxgw +8-9 c: ccccclcccccccc +2-9 l: mwltgglzztlpllgf +12-13 g: nnjgzggjkgzgd +4-6 j: jjfjjnj +11-14 m: mmfqpmkmmmmmmmrm +6-7 c: cccccqccmccccc +6-9 f: ffzgcfcpfwztjk +6-9 r: sjgrxnrvnqmmlxdrsp +3-11 c: cchwcfcckcn +7-10 p: jpzdflzgkxnbhj +5-6 b: bblblp +7-8 p: ppppppllppp +10-13 b: bbbbbvbbggbbb +5-6 p: pppptp +2-6 t: qttttjtt +3-6 n: vwlhczrnwpnvrnl +8-9 r: jrrdrrrjwrrrrrs +3-4 n: nnwqn +4-8 b: mbscbwxn +10-12 v: tqbvxmlqvvvv +1-9 l: qcllllncllcllllrn +6-10 b: gbbxfblbbx +11-13 g: gggqgggtgggtgrgsg +2-3 f: fjkz +5-11 t: tttttttttttt +5-18 j: zjdxgjjpshjjkjbtjvg +9-11 k: kjkfkwkkrkgk +1-8 w: hwhcwwbffvcdwzwbww +7-16 l: rrljlvlmmlssllkllqj +1-4 d: hddldvddddf +7-9 b: bgbbbrmblb +2-5 v: ltvvvv +5-6 r: rgrrdvrrrrrrr +8-9 n: wnnnnnnnn +1-8 q: sfmbjqqwvqqq +2-11 b: wblbmlrcwffl +4-5 n: cfmnn +15-16 g: gggggggggggggggq +6-10 x: xxxxxxxxltxxx +5-9 g: gggbgxgggpgn +8-10 z: zzztjzzzqzp +4-5 x: xxxfl +6-10 v: vvvhvvvvvv +6-8 v: tdrvsnvpvzxbwvv +8-11 q: qqqqqqqqqqjqqq +12-13 z: zjzzzvzjkzzzz +1-8 b: bsqqmbnbcwhkphfh +1-5 z: zdjzzrm +3-4 m: vlmmtbmmxcdkmdmfb +7-14 k: kkwpcjfkkkrknzkk +1-3 f: cfbljmpfghhgxdbg +6-7 n: mrnhnxn +16-17 g: gggggggggggggggmr +7-8 q: qqqkqhqqwkpzshq +9-15 j: jjjjjjjjjjpjjjj +5-6 t: tttttl +4-15 h: hhhhhbsbphhhlzgh +4-6 h: qhhlhh +2-6 f: wfwdff +1-7 c: rczccfx +3-8 b: jkznbbbqlk +8-14 r: srtchmrjxmzznm +4-8 s: ssgskspsdsmclrmxzp +9-12 j: kjjjfcjjljjqjj +3-5 l: lllvllll +15-16 s: sssssssssssssszs +5-6 z: zzzzmfjz +13-14 v: vnvvgvvvvwvvfrvspv +7-8 t: ttttttkst +17-18 f: ffffffffffffffffhx +8-11 b: bbbkbswbbpbnbbbbx +7-14 s: ssjfssssssjsdp +6-8 s: sssssqsps +5-8 h: hhdhphhmhhhh +8-9 r: prrmrpsrrrvrzrrrsrn +4-17 t: ttttjttjttthtktttt +7-9 v: tvvwvpvrbnvvvv +8-12 j: plfsgrjjgjrjwcgc +2-7 r: krqzzprxrldwg +4-11 k: sfpkkkcwkwk +2-3 z: zzhp +6-9 h: xkjwshvmhbjhfjvkwcmh +4-8 d: dvndvmdzn +3-6 r: wrrrrr +6-8 g: kggdgfgzz +3-5 j: jjjjj +2-9 x: qkksvkxxvxbxx +12-17 b: kjpbpbmddcnwbbbxb +2-10 w: rwpbpbwrbmwgwwvghvg +1-12 f: fbfqmffffftf +1-8 z: qvbjgplznjztjvqjhv +1-5 b: bbbbbbbbb +7-11 p: kddppkdtqpjcfpp +14-20 z: zzzzzmzzzzzzzzzzzzzz +7-8 p: sjspdphq +11-12 w: wpwwwwwwwwwd +7-12 d: sdddddkdjddd +6-8 g: gggfzzhglgxqpgbnbgbx +10-13 c: hcccctjcccccccn +14-16 k: kkkkkvkkkkkkkkpxk +16-18 c: ccccccccclcccccccjc +2-4 r: llrh +11-13 g: ggggggggggggm +1-4 z: zfwzzz +4-6 s: ssssfs +5-12 t: tttttntttttt +2-6 n: gnghnp +1-3 q: qqgq +10-11 f: rdzfzffhtfffffff +4-9 k: kpfhvkkkk +3-10 t: twlkttptttt +4-10 d: dkdvgkdddwd +5-12 t: ttttnttghtthtvtt +4-5 c: ctczwcccc +17-18 l: llllllllllllllllmx +2-8 t: knmttnttdjbtttvtkt +1-2 j: jdjjjj +12-16 j: wmqlfjlnxnvlrjkmj +13-17 s: snsdsssssssssssss +8-14 h: hhhhhfhhhwhphhscphd +9-10 b: bbbgbbbbqcb +15-16 z: fjjcjrwjtrcnltzz +6-8 s: ssssxjshd +2-4 k: kkkw +3-6 s: xsfgbpss +13-15 x: xxpxxxxdxxxgjxgxxx +4-5 l: llqlllsl +10-15 g: jggxgsggggggjtgg +2-6 b: prpbjbkbbkcb +7-9 h: hhhhhkfhh +8-11 f: fzhftffvffwffnl +11-15 x: xxxcxxxxxngxxxcxx +11-12 k: skkkkkkkkkxhn +5-15 n: cnnnnqqbnnnncznnp +1-3 v: vqvxlfwpjvxtpkvlhxjv +3-8 b: gfbbbsfbb +3-4 z: qzzzbczk +8-17 t: cpttttttpttttttttt +11-17 l: lprllfllllnlllllnll +7-8 f: ffffffrd +2-6 z: hghjzzwpwz +6-13 m: thzmtmcsmtctf +2-4 c: dctc +10-17 s: sssssssspzssssssl +6-10 j: jjjjljljjjjjzj +5-7 b: bbxbvsxphgrmnqgzbbx +1-11 l: rlnlllllllvlllll +13-16 b: bbbbfbnbbbbbzgbwbb +5-11 p: bpjpnpqpppjpmppphrk +1-3 l: llll +11-15 l: llgllllcllllllllfll +2-7 x: kxsnzzx +18-19 g: gglgggvqkjzgkgggzgg +3-5 j: fqvjjcjjhb +6-7 c: fccccccct +13-16 m: mzmtcgmcmmmkdmlk +5-9 w: wwsjwwwww +1-2 m: jzmj +16-18 m: mmmmmmvmmmmmmmmqwn +11-12 w: wwwbrwcwwxwwmwwrdww +3-4 v: nsvddwnvvvm +5-8 m: mjmrbpmh +2-3 t: xdrtzgdl +2-6 n: fnwwgnnzwsp +7-9 p: jpppppvppsqt +1-8 k: gkkkkkkkk +2-9 q: jqqqwfzxhqqqqsxqm +2-4 t: jtwt +6-20 d: hqdkcmkdndjrftmgjgqc +2-9 r: crgmrqpwrrr +9-15 p: pwmjlrgnrppwphg +3-4 t: ttqttttnttttt +1-5 v: hvvvv +1-2 x: ggxxxxt +17-18 m: mmmmmmmmmmmmmmmmcl +4-10 d: dxtmsjvhczfjd +8-10 x: xpbxsxpxgxqxxqxxk +6-9 f: ffffmffdwkfrlffx +8-10 m: ldmmgxxmbmnqftt +12-13 p: ppxpxhppgppqqpvppp +4-12 k: kkkkkkkgklkkjkkqvkk +3-4 x: xxcp +7-8 k: kkkkkkkr +11-14 d: dddkpddvdddddg +3-8 l: lsgmlqll +12-13 z: znzzzzzzzzzzrz +3-5 h: hhdphh +3-4 h: hqhhh +4-6 f: wfsfrffzf +8-12 k: ktkdmhvkxktkhr +2-6 d: dpdwdddd +7-12 n: nnnnnnpnnnnxn +1-3 v: vvvv +3-11 q: gmqqqqmqshpq +3-4 j: jjjjkjhjf +2-4 b: glbxb +13-14 s: ssssssssssrssds +16-18 d: dddddddddddddddddd +3-9 g: fgggzttsg +11-12 r: grrrrrrqrrrrrrr +2-5 q: cdqqv +6-11 l: lfclllslllxllll +2-3 d: dzdddg +2-4 n: tkwm +4-5 r: kdccjnrfrzrhplrz +4-16 j: tfxsmxlrjptjjrxw +16-17 p: stpsgsgwvqrzpblpsx +8-12 r: rrdrgrrgrrhrwqjmp +5-8 j: jjqjjkjjjjnv +2-7 n: wzgnnnnnn +1-3 v: vvvv +4-5 l: hlgnx +8-15 c: ccccpccczvcsccc +3-15 f: ffnfffffffffffv +4-5 w: wwjgww +10-15 d: ddddbcrddmddddld +7-11 w: wwwwwwwwwwz +3-4 h: hhhh +4-9 v: vvpgvvnvtv +8-11 q: qqqqvqqqxqcqnmq +2-5 s: lsnpdqqqsj +8-9 g: ggsgggggz +6-10 s: sssssbsbbtss +12-16 z: zhzzzszzzzznnzbwz +9-10 p: ppnpdpgldl +10-11 r: rrrrrrrlrtfrr +1-13 h: xhhrhhhhhhhhchhhhcp +5-14 m: mmmmmmmmmmmmmqm +8-9 h: hhhhchhhhhkt +3-4 f: fflf +7-13 s: ssssssssscsssjs +2-3 t: twlcfmbmbxtt +4-6 v: vdvhvf +1-7 c: bccccccccccc +13-14 r: wrrvrvrtrrrrrrrrrrr +1-3 b: sjvfpdrbcnwr +1-7 z: xzzzzwjz +6-14 j: jfrxjjjrqcqjwmbfjjjm +11-14 f: ffffffffffqffzqf +6-8 z: zzzzzrzw +1-5 j: jjjnjjjjj +9-10 g: ggggggxggg +7-9 r: rrrvrrbrdr +9-18 j: jjjjjjjjnjjjjjjjjfjj +14-18 q: kjtxqqqqltlpgqshdx +8-12 k: kkkkkkwjkkkfkkk +2-4 s: ssvs +3-5 z: zzfjk +9-10 m: rmmlmsmfmbj +14-15 z: nlzzzzzzzzzdzzzzzz +8-12 r: zrrrrprrxrrrrkrhk +1-2 z: qlfzd +1-6 j: kqjpjzpsgjjqz +1-5 s: qfssks +2-5 r: nrrzrr +4-6 g: kggggg +6-7 c: cccccdqcc +2-6 x: vjkxbrfwnj +16-18 s: kssssssswssssssssssb \ No newline at end of file diff --git a/main.jl b/main.jl deleted file mode 100644 index dd5e7f5..0000000 --- a/main.jl +++ /dev/null @@ -1,1347 +0,0 @@ -### A Pluto.jl notebook ### -# v0.12.15 - -using Markdown -using InteractiveUtils - -# ╔═╡ f0dd4400-3313-11eb-3295-af913c2212fb -md"# Advent Of Code 2020" - -# ╔═╡ 0b7b8920-3314-11eb-2cfb-7d20c0967e67 -md"## Day 1" - -# ╔═╡ 877b32e0-3315-11eb-0e96-650b19da693e -begin - input_day1_raw = "1254 - 1313 - 1456 - 1782 - 1742 - 1391 - 1273 - 1286 - 1373 - 1891 - 1188 - 1994 - 1887 - 1816 - 1984 - 961 - 1428 - 1105 - 1123 - 1699 - 1154 - 1953 - 1977 - 1450 - 1696 - 1068 - 1241 - 1926 - 1228 - 1591 - 1789 - 1966 - 1508 - 1193 - 1190 - 1654 - 444 - 1282 - 1169 - 1165 - 1778 - 1669 - 1570 - 1671 - 1845 - 1208 - 1728 - 1798 - 847 - 1300 - 1817 - 1200 - 1297 - 1658 - 1296 - 1571 - 1991 - 1305 - 1314 - 1903 - 1472 - 1359 - 1506 - 1999 - 1877 - 1168 - 1137 - 1288 - 1083 - 1656 - 413 - 1430 - 1408 - 1397 - 1846 - 1218 - 684 - 1234 - 2007 - 900 - 1604 - 1460 - 1848 - 1693 - 1324 - 1401 - 1968 - 1918 - 1975 - 1665 - 1413 - 1874 - 1852 - 1521 - 1753 - 1229 - 1940 - 1650 - 1976 - 1235 - 1130 - 1927 - 1365 - 1908 - 1441 - 1302 - 1986 - 1449 - 1692 - 1944 - 1277 - 1312 - 1826 - 1231 - 1289 - 1814 - 1170 - 1606 - 1608 - 1773 - 1883 - 1936 - 1626 - 1497 - 1860 - 1673 - 1295 - 2005 - 1481 - 1995 - 1734 - 1646 - 1557 - 1298 - 1174 - 1894 - 1309 - 1240 - 1982 - 1414 - 1799 - 1620 - 1863 - 1220 - 1642 - 508 - 1146 - 1187 - 1253 - 1284 - 1952 - 1527 - 1610 - 1333 - 1221 - 1362 - 1457 - 1721 - 1493 - 1330 - 156 - 1647 - 1841 - 1724 - 2000 - 1398 - 1745 - 1985 - 1269 - 1722 - 2001 - 1923 - 1395 - 1094 - 1140 - 1958 - 1239 - 1336 - 1588 - 1338 - 1750 - 1757 - 1444 - 1822 - 1335 - 1941 - 1865 - 1767 - 1881 - 1499 - 1157 - 1990 - 1210 - 1779 - 1201 - 1784 - 1961 - 1476 - 1861 - 1468" - input_day1 = parse.(Int64, split(input_day1_raw)) |> sort -end - -# ╔═╡ 4adcf8d0-33a8-11eb-0220-696f06894ef3 -function day1_part1(input) - for n ∈ input - r = searchsorted(input_day1, 2020 - n) - if r.start ≤ r.stop - return n * input[r.start] - end - end -end - -# ╔═╡ 1e8e7230-33ae-11eb-0a77-035e6a4b9ba8 -function day1_part2(input) - l = length(input) - for i ∈ 1:l - for j ∈ i+1:l - v = 2020 - input[i] - input[j] - if v ≤ 0 - break - end - r = searchsorted(input_day1, v) - if r.start ≤ r.stop - return input[i] * input[j] * input[r.start] - end - end - end -end - -# ╔═╡ 7a037310-33ac-11eb-34fb-9bf552883937 -md"**Result for part 1:** $(day1_part1(input_day1))" - -# ╔═╡ c7dcdae0-33b1-11eb-2cab-fbc06c8ef76b -md"**Result for part 2:** $(day1_part2(input_day1))" - -# ╔═╡ 5d9712b0-3472-11eb-1423-719331dfe52f -md"## Day 2" - -# ╔═╡ b9144990-3473-11eb-0ba9-59f3fe6ddbc0 -struct Password - policy_range :: UnitRange - policy_char :: Char - p :: String -end - -# ╔═╡ 10f5ffa0-3474-11eb-2a36-d5c6f78f18c6 -function parse_day2(input :: String) :: AbstractArray{Password} - line_regexp = r"^(\d+)-(\d+) ([a-z]): ([a-z]+)$" - result = Array{Password, 1}() - for line ∈ split(input, '\n') - m = match(line_regexp, line) - push!( - result, - Password( - UnitRange(parse(Int64, m.captures[1]), parse(Int64, m.captures[2])), - m.captures[3][1], - m.captures[4] - ) - ) - end - result -end - -# ╔═╡ 6695038e-3472-11eb-1846-3b1c041be59d -function nb_of_valid_passwords_part1(passwords :: AbstractArray{Password}) - sum( - function (password) - m = 0 - for c in password.p - m += c == password.policy_char - end - m ∈ password.policy_range - end, - passwords - ) -end - -# ╔═╡ bbda1c1e-347a-11eb-0e7a-756906c4c9f4 -function nb_of_valid_passwords_part2(passwords :: AbstractArray{Password}) - sum( - password -> - (password.p[password.policy_range.start] == password.policy_char) ⊻ - (password.p[password.policy_range.stop] == password.policy_char), - passwords - ) -end - -# ╔═╡ a0cfb670-3474-11eb-1a05-c12914658a0a -let - test1_input = "1-3 a: abcde -1-3 b: cdefg -2-9 c: ccccccccc" - - test1_part1_result = nb_of_valid_passwords_part1(parse_day2(test1_input)) - test1_part2_result = nb_of_valid_passwords_part2(parse_day2(test1_input)) - - md" -Test 1, part 1: $(test1_part1_result == 2) - -Test 1, part 2: $(test1_part2_result == 1) - " -end - -# ╔═╡ 2b112350-347a-11eb-1725-5f70e3623379 -input_day2_raw = "1-13 r: gqdrspndrpsrjfjx -5-16 j: jjjjkjjzjjjjjfjzjjj -14-16 r: rrrnrrrrrcnrgxrr -1-3 k: bkktwhgktv -3-5 q: dxqqqzmqvs -11-14 s: sssssssssssssv -1-3 d: cdzdq -13-16 q: scdqpdgpkvbwwqbv -9-10 d: ddrdddlddd -15-17 v: jvvvvvvgcvvvvrcvnv -2-3 s: xssx -8-15 j: jwjjjjkhjjjltjmjjjr -7-15 m: wqspfmtpjftmplwp -1-11 s: swdgzhgsxtssndzfm -3-4 b: bgjrg -1-12 x: jxgxxxpjwpsht -5-15 x: xxjxwshpxjxxxxsnxvz -4-11 r: bjnrpswfprrng -12-14 j: wjjzmwnmmvzsjhnnkj -3-4 d: dddv -2-4 b: bfxx -15-16 r: rrrrrrrrrrrlrrphrr -6-11 j: jsljjjjjjjj -6-7 m: mpttcmmmmng -6-7 g: gsggggg -2-10 b: nbtbqbbfpb -4-6 h: hhqhrzkcrhh -13-14 b: bbbbbbbbbbnbbbb -5-6 g: gggggg -5-6 x: rsxvxx -3-6 q: wxqzqqqtzsq -1-2 h: sjhj -6-18 t: jtptcwtbfgffpkdwthbf -5-9 w: wwwwcwwww -15-16 g: wqdwztbmrqdmgmvc -8-15 t: ttttgztvtttnttb -9-11 r: rrvrrrrnhrzr -8-9 l: lllllllqwl -10-11 h: hhhhhhhhhhd -3-5 g: gggrwqc -5-12 f: ffcdxfglcffsf -6-7 f: fffffzk -3-5 b: btbbbb -2-8 z: wblnvfzzwzzbchx -13-14 r: rrrrrfrrrrrrlf -2-9 r: wgbmfvksl -5-12 m: xrmmfhmqdhmmvhvrzmwq -3-4 j: jwpd -6-8 v: mvfwgskpxgvcsr -1-3 c: ctpr -2-8 d: dzdfsddd -10-14 c: ccccczcccccqlchvclcc -2-8 s: sscwcfssssssdt -2-11 l: xlsslrlclfls -7-8 r: rrrjrrrrtdcr -7-9 z: zzzzzzzpzz -12-14 r: rrrrrrrrrrrprrr -13-14 g: hdczwngvjtgmhn -1-7 q: qqdqqqqvq -5-6 q: qqqqql -11-16 p: wgwrzltpskwgxprm -4-12 d: dvddddddwddz -15-16 q: qqqqqqqqqqqqqqqqq -1-5 m: mmrjmmqsjkm -13-14 m: mlmxmmmdmgmmmw -4-5 q: qcqvmhqdq -2-3 m: brdzbfzj -3-4 s: snshj -5-9 k: kzpkkbkvqjktrk -12-13 t: fltttttttjtpstttt -7-8 c: kcccfccccxtcc -2-6 q: nnjqqd -2-9 n: msnvnrxgldqnxnngsn -2-4 c: scccwp -12-13 c: ccbccqdcccfcvdccc -6-7 f: fmdffffxcbbpffl -2-6 r: rbrrrvr -7-10 j: jzjtjjqfvjj -3-7 j: jjrjjjjj -2-13 m: mmmlmqddkmtmmm -19-20 l: drpwllkdlsjslmllsdrv -3-5 v: vxmrwwvh -5-13 z: zzzzkzzzzzzzkzzzf -5-6 g: gggggfg -4-6 c: crfvlc -14-18 x: xxxxxxxxxjxxxzxdqc -4-7 p: plzqjtp -2-4 v: nmdbhftxvbv -5-8 s: knfcsbbsxssssxd -2-13 p: mpwpnbrnlxmqvfbltcq -7-11 v: vbvvvkfvvvg -14-17 x: xxrxxxbxxwmhxxpxqxv -5-7 f: qffndfmqfsrv -7-8 v: vvvqvvbvv -9-10 j: jjjdjjjslljjjjjch -4-6 l: lllplgr -3-4 n: nnqn -4-5 c: ccccc -1-2 q: lwhqw -6-7 d: dddmddqd -6-7 g: gggggzxg -2-10 j: jsjjjjjjjsjj -13-15 b: dxbbbbbbbbbbbmbbbmbl -5-10 q: qqqqwqqqqxq -12-13 j: jjjjjzjjjjbjxjjb -5-10 t: ttfttphtttttmthttp -3-4 t: tttj -7-8 n: nnknnpphfwnn -9-10 x: xxxxxxxxcx -14-17 h: hhkhhzxhhhhhhjhhxhh -4-5 w: whxtwwftw -10-12 q: xqgqsqqvqqlqqqdqpqrq -1-3 l: jsvlzrm -8-16 z: sbzzqzxzzzskzzxgrzcz -7-10 k: kkkkjklkkt -9-11 f: ffffwfffwflnwf -1-8 c: cmccwcqzzhxccr -6-9 h: vnfxddhrhbdqkqr -8-9 t: tzttdtttvvtb -6-9 q: qqqqqqqqqqqqq -15-17 k: kkkkkkkkkkkkkklkqk -3-10 p: pprppppppfp -5-11 d: nhgkdjgvmdddt -7-9 d: rdddddddpd -1-3 r: rrwrr -5-16 t: gttwtrqqmwwljhfn -6-9 q: qqqswdzllqqf -7-13 b: mxpxbjgvsncqwv -7-8 d: dddddrddds -3-4 z: zzqzz -10-18 z: zzzqzzzzbzzwzzpzzzz -8-9 p: pppppppppp -13-16 f: fffffffffffffxtf -8-9 w: fwgwwwlsfpww -4-5 g: grgmcpdqggwckq -16-17 g: gggggwgggggggggln -3-13 j: jjmjjjjjjjjjbjjjjjj -9-13 x: xxxxxxxxxxxxx -5-12 b: bbrmbhbbsgbbbpbbz -14-18 z: zzzszzszzzzzzzzzzzh -1-13 k: pkkkkkhgfkfbtkkpkf -3-14 v: vvvpdlvvvvdfvvjvvsv -12-13 m: mmmmrmbmmmmmmrmmm -12-14 v: vvvvvvvvvcrlvkvv -18-19 p: mxpppgpwcphkzppktppk -4-10 x: xxxxxxxxxxxxx -4-5 k: kklkkk -11-13 m: mmmvmmwmzwmmmnvgmm -7-11 p: qdppjspwtcpppp -4-8 l: lllllllll -12-16 j: jjvjtjjsstfjjnjjk -15-17 h: phhhhhhhhhhrhhhhh -4-7 j: sqfjjjj -3-20 m: wzmqhwmjmclzmmmdlzqm -8-13 m: jpmmbmtgmnprgt -8-13 h: hhhhjjhchhbhqshh -15-20 b: mbbbgbbzmkbbkbbpffqb -2-3 t: tdlt -10-16 l: llllkgllrnllllll -2-4 p: phpf -3-5 d: ddddd -5-6 h: hhhhhhh -2-3 j: cjjrj -7-10 g: hgwtggfgbcpgd -3-4 d: dddk -4-6 t: mltdtf -8-9 h: zhljxshhh -2-3 p: vqjgbsp -6-7 x: gcxvjxp -15-17 s: sswgssdsgssjlssss -1-3 m: qvswmm -1-7 v: svbrvsjv -3-5 j: vjhjdq -15-16 b: bbbnbbbmbbbbbbbdbbmb -6-19 k: spkgcpkhlkkthkgkfzkj -1-2 c: dxqxnrrlfnnc -7-11 j: qjjjjjkdrjjjjj -5-11 g: ztdgvvgwhrlgnq -3-4 c: fcmqglp -4-5 q: qqqqqqq -6-7 c: cccccrc -7-11 n: nnnnbnnnnnn -9-13 x: xxxxxbdtqxdwxsx -9-15 j: ljjjjjjjjjjjjjz -2-11 j: pjjhzmtwlgjwpkjjdwq -5-6 k: kkkkkk -12-13 q: qqqqqqqqqqqmg -3-14 j: nwkjjlbbrnqvqm -3-4 h: hhhhshhhhhhmrh -2-4 l: djkxl -1-9 t: tttttfttl -9-10 g: ckggggtggggggv -3-12 l: cqlclvwhpxwlnzzsqgs -8-14 d: ddddddddnddfdh -1-5 v: vvvvxm -2-5 q: mqqqqlqk -3-4 j: tkjpj -13-16 w: wwwwwwwwwwwwwwxww -13-18 m: mmmmmmmmmmmmmzmmmmm -2-4 x: xxfxx -1-2 d: ddvddddkdddd -3-5 c: cctdc -2-10 q: tqjkqqpsctx -2-18 n: nlnnhnxnnnnnnnnnnln -3-7 k: rkkkbkk -3-4 n: ngnn -3-11 d: dqdbwtbghbdj -3-5 q: fqqqq -5-10 x: xxxxfgxxjbxbhxx -5-6 m: mmtmcn -4-6 x: xxxkxk -17-19 b: bbbbbbbbbbbbbmbbbjbb -5-6 k: kkkkhk -10-12 k: kkkkkkkkkpkgk -3-4 z: zzzz -18-19 p: plcppppksppcnptppvmp -3-6 t: tdtrltmn -3-4 q: qqqq -10-19 v: vvzrvvvvvvvvvvvvvvhv -11-16 d: kjdtddddkdvcdddpd -12-16 l: lllllllllllllllll -4-10 b: dbvbqfqlrb -10-11 k: kbkvkhlkqrv -1-9 x: sbqnkxdmxpc -5-10 l: ldlllkllrln -9-13 j: bpjjjjjjjkjzjnj -11-12 j: jjjjjjjjdjjj -2-8 l: jllzbhjlqlwcltllq -4-5 s: gsssd -2-4 s: kswn -1-18 p: bpppppppppppppppptp -9-11 v: vhvvvvvvvvvv -2-5 v: vvkvvv -8-11 p: plplqpjhdzlfpppppl -11-18 g: ggggglgvgcgggggggg -9-11 r: rrrrwrrrmrzp -3-12 g: tggggmggwnpzvgpnp -13-17 t: tnvvttxttttvtftptgt -5-16 c: cccqccccjvcccccccczc -2-4 f: tfbfrjftf -2-4 s: ssssx -3-9 v: vvspvvvjv -3-4 h: hhxh -15-17 l: lllllllllqllmlvwblll -4-9 j: rjljjjjfjjskdkwttbjt -9-10 m: jmmmmmvmhh -1-8 w: wwwlcwgwwwp -1-8 j: mllsjncl -3-4 b: tfbkbssb -1-7 g: qvdbrjkdgggb -1-3 l: wlbll -4-6 v: jvzqbvvvg -2-3 w: vjlwx -10-12 c: ccvcccrccjfhgccdw -10-18 b: bbtbbbbbggbbbbbbbvb -8-9 j: jjjjjjjjjpjg -5-15 c: ccbccccccccccvccc -16-17 t: ttttgtttttttttttthtx -13-15 t: tvsmjtjttktztrt -9-12 c: jzrpnzdncldmxqjmvccb -6-7 v: jjdvpdhv -4-5 c: ccccccccccccc -6-7 t: ttzttttt -10-11 q: qgxqqqqqqqqqq -14-15 h: hhhhhhhhhhhhhhh -3-8 b: bbbbmbbbbb -11-12 r: rhlrsrrrrjrr -2-6 v: vrvvvhv -4-5 n: nnnhn -3-5 p: pqhmnjp -7-13 h: qhhcwhhhhqhhfq -10-11 d: dddddddddxh -10-11 d: gdcdcdddcddtddsddd -1-5 f: bffspf -5-8 s: skssblsg -8-11 m: mmmcmmmwmzmmmvm -6-8 q: kqqkmqhqq -2-8 q: nqnqbdgm -6-11 b: bbbbmbbqbbb -5-14 q: qqqqpbqqqqqqqgqq -2-5 p: prprwh -13-14 k: kkkkkkkkkkkkkkkk -2-7 v: vnvvdlwvd -2-3 t: hpsqzxrltrwbttwgbz -1-5 n: srnlwnnkjnnwhnf -2-3 r: dtlcv -2-5 h: hhthhdcm -2-11 d: rdxfbdhqpbdjjlhf -1-4 b: bxbshbjr -4-10 s: sthspqlnsst -1-10 h: mhwpfrbhhbn -16-18 g: gggggggglgjgggqcgzgg -3-4 d: dddd -12-16 h: dhhhhhhhshhhmnlhhhh -15-19 q: qmqkqqzqtqdqnqqzqqz -14-15 p: kgjpqpppppqpdpph -4-6 z: zzlzzztbbzzr -11-14 l: blllwlqmhlllldllll -2-4 q: qqrqc -5-6 r: qrrvrrr -2-4 f: fffv -13-15 v: vkvvvpvvvvvvvhvvvv -3-8 k: kzqkkkkkk -4-10 w: wvkwwcwxkwv -2-6 t: tvtttttttt -3-4 t: tttt -11-12 p: pzpzppplplppppk -6-12 p: pppppdpppppgp -5-9 w: wwwwwwwzwwww -4-6 m: mmmmmhmmq -4-9 j: xsqjsllnjj -6-9 c: zmcdccgtfccbccfc -4-5 p: vwpzhpp -15-16 v: pjtmwtrxmjnjfkvgrv -9-10 p: pppppppspp -2-10 f: vffzxnfnxfcfcsmtrncz -5-7 v: blwvvvvfvvh -12-16 z: zzzzzzzzzzzzzzzr -5-6 z: zkvhpz -9-13 w: wwnwwwwwwwwww -5-6 p: wmlhpptppmfvngh -9-11 r: rrrrrgsrrdrmrrrr -2-5 b: bbbbzb -13-15 r: rcrrrrrlrrrrqgfrrnr -5-7 k: klkmkkk -3-4 f: zfffgdnfff -3-4 q: qjbjhzltvl -17-19 w: wwwwwwmwwwwwwwwwqwqw -7-9 l: nlrldrlvlnvllllvf -8-9 m: mmmmmpmmm -11-16 k: kkmkkkwkkkkbkkkkd -11-14 s: mvsdsnsncsssrs -6-17 j: jjjjjgzjjsjjjjjjjjd -19-20 p: ppppppppppppppppppkp -1-16 k: nkkkkkkktkkxkkxz -2-4 c: xkcccvvcv -3-4 v: vvvvvkn -11-13 q: qqqqqqqqqqsqj -10-13 g: gxggggggggggg -3-4 x: xxpx -4-7 d: dvbddcdhdd -17-18 g: gggggggggggggggglbgg -18-19 m: mmmmmmmmmmmmmmmmsmtm -4-6 g: xbtgrgbgggmgcrx -8-13 w: wtwcwnwwwcwssxwpbw -2-3 v: vcsv -4-5 g: gggpt -2-3 g: tggtpgkg -3-4 p: pglt -9-12 v: vvvvvvvvvvvvn -11-15 f: fhffffffffnfffq -2-5 s: snssk -2-3 m: mmmm -10-14 x: xxmjbxbxkbwjxxxxj -5-14 l: lmlmlczxfsllzpkljt -6-12 n: nnnxpjtbjjdnrnsvxnwt -5-9 s: ssssfsssb -3-11 f: bffrlbwzfpf -3-4 t: twtt -1-4 r: rkxrsrlrr -7-8 x: xxxxxxlf -9-15 d: nddbddddxdddrdntdd -16-18 v: vrxvwgbqtlkzprlvwvrk -9-10 l: lllllllllzlll -3-18 l: mfllwjggswwjjgrnrl -5-7 j: jjjtjxjvqjjltjj -5-14 n: nnnnnnnnnnnnnnqn -3-12 l: pllqlhpllpklcds -2-5 f: fsgfrpfflq -4-8 q: xqsfqqqrqhqjsqndz -1-5 c: hcttt -13-14 r: rrrrrrrrrrrrrgrr -4-6 d: dddddt -3-4 d: tdqgdk -14-15 s: snskdsjxpsgmbsssssf -3-5 m: mhlcxmmmw -2-12 c: ccmccchbrrscv -14-16 c: ccccccrccccccccmc -8-17 w: pwqmtwwwwrwxwtmmww -5-8 h: hhhhmhhmlb -10-12 b: bbbqwbbbbbbb -6-7 n: nxnnnnl -7-10 v: vcvgvtgvvkwvtlvcv -10-11 t: ttttttktttttttt -2-5 t: tzdtkpsf -4-5 r: rrrmhr -9-10 w: wcdwxgxrwwwk -1-6 g: jggggcg -1-7 v: vvvvvvvmv -12-15 q: rqqqqkqqqjqqbqqqqqrq -3-10 w: vwwgwwwzwwwwxwwxsw -3-4 c: mmhfccccjclccrdccc -1-5 m: mmmmm -4-5 h: vhhxh -13-14 z: zzbzzzzzzzzzbcz -9-11 k: bkkskkkkkkk -1-6 j: jxvjrm -4-6 f: ffffff -3-5 m: mmmmmm -1-3 x: xxxxxxxxxxx -16-17 f: fffffffffffvfffrxf -3-4 f: fwff -2-11 j: zvbdwnthjfh -9-10 f: gffffffffff -1-3 z: zmrnxvs -5-16 k: llkdkrkvkkhkktkktlkd -9-13 z: mvjzzzkhzvzxzqmf -4-5 d: flgsdd -2-6 p: mftwthqkqqkp -2-4 f: vfff -7-12 w: swwwwwwwfwwwwqwfvw -10-13 c: csdkvcctnccncczc -12-15 q: qqqqqqhvqqqmqqcfqq -2-8 v: gvkfgbzvvmfmg -3-14 m: txwnzwhmcrnnltc -8-13 v: zsvmsddwnkvrkgmx -12-13 f: fffffffffffff -1-16 g: trrkggqglgbbgljx -13-14 c: ccxcccccccmccd -9-12 x: xxxxxxxxcxxlxx -10-14 q: qqqfcqwqqpqqqs -11-16 l: xllllllllllllbll -12-13 v: vvvvvvvvvvvvvv -17-18 g: gggggxggggggggggpcg -1-5 x: xxrxxklxgw -4-5 f: fffqt -10-11 l: llllbklllsgxllr -6-9 r: crfmrsjhpf -4-8 h: hhhchhhx -6-12 v: cvlvvvtbqcsvvzvlztv -2-3 x: bsgfvxdl -2-5 j: njzjjj -13-14 s: ssssssssssssfw -8-11 l: jllfllllllmlllll -2-11 p: pxppppppphq -6-9 f: crtfxvfmwwdvt -3-5 n: nnnnnn -3-4 h: hhhh -3-5 d: kldhd -18-19 x: xxxxxxxxxxxxxxfxxbs -4-5 k: kkkct -9-12 n: nxlnnpnnwnnb -2-4 g: gqggz -15-16 z: zzzzzzzzzzzzzzzz -8-10 p: kpcppjbrzqpfcpgppp -5-6 g: qggggrg -7-8 c: cccfncccccc -2-8 k: hgnsbkckkkqktkstks -3-14 x: xxlxjxxxxxxxxvxfbx -1-8 l: lllllllll -1-2 p: ptbmvp -10-15 k: jkkkkktkkkkkkkkkknzg -6-11 k: kkkkdgkkkkk -7-8 m: mmmmmmmm -13-19 z: zzzzzzzkzzzzkzzzvzxz -2-4 g: tghm -3-8 b: bbbbbvdb -6-8 d: dddddrvxdddfdd -5-10 m: mnmnsmmmmxmd -1-8 r: cgcnqrvfb -16-17 l: mhjqbmhszwllqqllr -2-4 s: csssts -7-10 j: jjjjjjzjqt -1-12 x: xmxtxxxxxtxxzdxx -5-6 w: wwnwmwrw -10-11 p: lpjpgpqpkpprdpppp -8-9 k: zhkkbkfkk -1-2 j: klhz -6-13 d: dmstddpddtddddddd -1-8 h: khvcwhhhhlj -8-11 s: bsssbzsfdrsssss -1-18 s: xsssssssssssssssstss -8-15 l: xjllsmjtlllmsxll -1-5 m: mmmmmm -17-18 k: kkkkkkkkwkkkkkkkbmk -1-7 t: tttttgtdclpkx -4-14 k: tgvzgdwkgtcdrd -2-3 z: tzprzcdzhnnll -2-4 j: rntmnjxbwq -5-6 r: rrnjnr -5-9 g: lrggvfggp -4-5 s: sssdl -4-18 h: hhhhhghphbshhhhhhhhh -4-6 s: sfpjvsk -1-10 m: fwgstfsjmtp -4-8 w: wpwwwwwmwsh -2-19 l: lnllllllllllllllllwl -4-15 v: vmwhvvwvvvvsvtdvvkv -5-6 p: lpppslppjppp -5-7 p: ppzppcmdppt -14-18 f: mffxfftfwffdffffffff -4-7 v: kvvdvjvvkmh -1-7 p: rdkzpkfdpzrxq -2-3 h: cdhhngnnjslfjbh -3-6 q: qqzqqwqt -5-10 s: kpcsszfcwsh -11-12 g: gggggggggggw -14-15 w: wwwwwwwwwwwwwsp -6-10 h: bhkzhhhsbhhh -3-4 l: fcnvfxtln -2-7 j: jzsjfrjjjmxqjxjjss -6-9 s: nvdhnsbhsdwxhlj -1-2 v: vvrp -2-5 h: qhnbhfbsdhs -3-4 x: xqvzps -3-4 m: mcmm -9-11 l: srdlflnwlrl -1-8 x: cxjgmlgwvqdpnbzn -3-4 q: qqqk -4-5 r: wsdlmbdv -1-3 d: tbtdddp -3-8 g: gsggsggvgggpgrgx -5-7 t: ktzrvktqpllxwzt -1-2 s: spss -6-19 d: dtjdmqdldddbdcnzkqpd -9-11 f: fffffffffzf -1-12 g: wggnvsgcrgmx -5-7 f: qfpzfmkfmfjc -14-15 j: jhjjjjjjxqjdvvfj -6-7 v: vvtvvqs -4-11 q: qqqxqcqjqqmqqgt -1-3 l: gbkhxlzld -1-4 s: pssz -13-16 x: xxxxxxxxxxxxfsxpp -3-6 p: mlptcpvcrppn -13-15 x: xxxxxxxxxxxxxxxxx -13-14 f: ffffffffffffff -2-5 j: jjpwj -2-7 r: xrrzrvrkjr -8-9 m: mmhlmhmmmpzpmmhgmvz -3-4 g: zgggdwgggdl -6-9 t: tttttxjzttttr -1-4 h: njzthhch -3-14 x: xprxtxbpxxxxlg -9-15 q: qqqqqjqqqqqqhqqqqq -4-6 w: wwfwwwrb -6-8 w: wwwwwwww -10-11 k: kkkkkkkkksl -3-4 n: nnqfvfn -11-13 c: ccccccccccccc -5-9 n: vnvnmnnnqfnq -13-14 f: ffpzrfflffffffqffff -17-18 p: ppppppppppthpppppzp -3-8 m: hsmzgwdmm -4-7 z: zlzhtzcnzzzz -6-13 b: bvbbbhbbbbbbgbb -11-16 x: lpxtdgxvzbxpcwxc -10-14 d: dddddddddrddddddd -2-5 j: lhjnv -2-3 p: pdkp -3-10 l: lnllqjpgqfl -1-4 t: ttttttt -4-8 q: qxzqqqfczksrwmmzx -1-4 l: lllll -5-19 z: ttzhzcbczmjxzrjzpwz -4-7 s: sgssssjs -12-13 s: sssssssssssbq -9-12 h: hhhlchhhvhwb -5-13 n: fncqnnnnwkhnn -10-13 g: ggggjggggrgcqgg -8-12 q: qqxqvqqmqrpdrxqq -5-6 l: ldwlvnllwq -12-15 v: cvvvkvvvvvvvvrvvvl -6-11 x: kxmthvnkgxq -6-9 n: nfdfnkmnln -3-5 x: nqcxt -2-7 p: tpgkbpwxhpzldtmrqd -8-9 r: rrrsrrzrrmrr -3-10 x: fmmjlxbqlz -1-10 g: cngggggqghf -10-11 r: frrrrrrrrgj -2-5 q: sqgqq -7-8 x: cxxxwxsvjgxx -8-16 t: ttttttgpttqttttt -4-8 n: ndznlllnqwpmnnfwvxb -4-15 j: jjbszvrjjjjfjjjwjjcj -4-5 c: ccvrlc -17-19 f: ffffkpfffjxffwffcff -3-4 z: qfzzz -7-9 s: szssssjsm -13-18 q: lngqqpvqqdjvcqdqvlq -7-8 b: bbbbbbbb -2-4 n: lnqr -11-13 k: kkkkkgkkkqxkhfk -2-4 g: tggqzdxp -3-5 t: ttvtft -2-4 v: pzbbr -1-4 h: thhhh -2-5 m: mqxdt -8-9 k: kkkkkkkkk -2-6 w: jqfwlhv -17-18 x: xhxxxkxxxxxxxxxxxbxx -9-10 p: ppwppdpxvvjzpp -10-16 h: hmhjpxmhvnhqhjfmb -11-15 k: kkxkkkkkkgckkkcs -5-9 b: cwcbjsqbdwmbw -10-11 z: zzzzzzzzzzz -14-16 w: wptvwbwdwwwwwwww -8-10 c: xccclcchcrvtqc -7-12 r: rhnrrrrrrrkqrrtm -3-5 h: hhrhph -7-10 c: wblrcccpctnhvdc -15-17 n: nnnnnnnnnnnnnnnnn -5-13 s: ssssssssrssmslsssv -8-19 k: pvqbhlzkwpnkcgkvkwk -4-5 s: pkrxgskxsswbqwlfxsvw -5-10 d: ddsbdcdsdd -12-13 q: hwrkqrhqrrxmw -5-15 b: blcbfqbgbnghjbnglbbb -1-3 z: zzczzz -3-14 s: jsxssskvsssptw -8-13 n: nnnnknnnnnnnnnn -3-11 c: ccccccccccbccccc -1-6 n: nnnlbn -9-12 k: qkkkkkkkkxwkkk -19-20 w: wwwwwwwrwwwwwwwwwwww -10-15 n: nnnnnnndnnndfnnnn -8-14 c: cvndjxlcsccwxl -1-3 v: vrvwv -8-10 s: rshsssjssss -2-10 n: nnjnnnnnnhnkm -1-2 c: ccbcflcp -3-6 v: jtntcsvvvhp -3-5 q: qqqql -17-19 p: ppppppppppppppppmpg -10-11 k: kkkkkkkkktrk -2-4 f: tgprtftkfx -8-9 x: xxxxxxxld -4-6 l: lhzllllzhv -8-9 g: bhgkfgsggxg -5-9 d: dkdddddmdwd -2-13 s: sdffzhrpbnvtswxsbrcs -7-8 q: qjqpdqvwqqdtxpq -5-8 n: lncnfnzxtsn -8-9 p: khtrxgvhtqwrfpqrd -2-4 s: zhln -5-6 q: bqqqddp -7-13 g: gggjggggggggg -10-12 w: wwwwwwwwwkww -1-4 b: bwbbdbhbl -9-18 j: jjjjjjjjjjjjjjjjjjj -10-18 j: jjjvjjjtjjqjjjjfbjd -11-13 m: mmdmmmmmdmmmqm -6-9 n: nnnndtnvfnn -2-3 q: qckq -16-17 x: xcxxxxxxxxxxxxxpxx -14-17 k: kkkkkkkkqkkkkkkck -3-8 l: llkllllvl -8-13 p: nkptlpntkcknppwpdhb -6-12 s: ssssssssssss -8-14 c: ccccccccccccccccsc -6-9 p: cpppdnppztxbpp -8-12 w: vshmsmbckwjmw -1-10 g: qqtfmmxnbg -1-6 m: mmkmmmfmw -5-8 v: vvvwxvvdqv -7-8 f: ffffffff -2-10 k: kkkkkkkkkk -1-4 g: wjhxhq -3-4 w: znpwwmwcwjgs -5-9 d: ddddrdddwl -6-8 j: kjjhvzrbrwcjjm -2-5 j: jhjjxjjsj -2-6 t: ccwdcm -4-12 q: qlqrsgqqhqqf -13-16 w: mwwwwwhwwwwwwwwwww -9-10 g: ggggggggggmtgwj -1-3 x: xxxx -1-3 n: jxtqjbhpkgrcrdrptvd -14-15 w: wwhwwwwwwwwwwww -7-10 d: wddddzvdddkdm -1-4 p: lzph -6-9 w: wwwzwswwr -17-18 t: kjtktrtfgkhpzthvsjt -12-13 j: jjjjjjjjjjjxs -8-9 r: srrzrmrxnhrrr -1-5 s: spzsshkzfmkdss -1-7 z: zzsmzzhzzxzzzzz -1-2 d: ddvx -2-9 h: hhhhhhhhhhh -6-8 p: ppppppppx -4-8 v: bqvvxmvtvhfvv -3-4 z: zzzz -2-4 r: rrrrrrr -4-5 r: mhrrrrrrq -5-6 b: nkhgfjrzqldbbbbmpx -7-8 n: nnnsnwnncdnn -13-15 p: pppntwcpppppppv -5-11 r: tmkrdcmrpcrrkrl -3-4 v: vvgf -4-5 j: jjvtcj -3-5 p: ppppp -1-3 r: mrrr -13-14 v: vvvvvsvvnvvvhxvvv -10-14 z: ltwsklmfdpvxmxgq -16-17 b: bbbbbbbbbbbbbbbqqbbb -3-8 q: qbpqpvqll -9-10 x: xxxxqtxxzxxxx -8-12 d: pdddnddcbcdx -2-3 m: fmmmsfmvcmkc -9-10 x: slxtnxxtjnnxjnq -5-13 h: hhshhhhvhffhhn -6-14 t: wwwmqttttkpmqtrt -1-5 b: mbbbb -10-12 k: kfkkpkrkkkkkkkh -5-6 m: mnlmbvmm -5-6 x: xxxxvl -5-7 b: dbbbpbc -2-19 t: qhdtkxjzdcwjqjkglpzr -1-4 h: hhgqhnhhhhfhhh -1-10 b: bqbbbbzbbbbbbwb -2-3 b: dbbkgnxmbtpg -3-8 r: rrrjrgrrwq -4-7 s: ssrfwfgvskmssws -13-14 m: smdmmmmmgmfmmjs -13-15 h: hhhshhwhjhhhhhhhh -12-13 n: nnnnnnnnnnnnnn -6-14 n: ndnnpqwrlgfrmn -3-16 m: rldkmmmkhmsmbnqbmgs -2-3 m: rmmmmm -5-9 x: xxxxfxxstxxs -4-8 b: bgbbbbgbbbb -9-11 c: kwcclccccscxp -10-17 v: vvvvvvvvvvvvvvvvvv -13-18 n: nrnnnnnnnnnnfnnnnpn -3-4 c: hbcc -13-14 w: wwgwwwwwwwwwwc -4-6 z: fwmzzzz -12-15 h: vhhfhhhhhwhrhhlkmhhh -1-5 v: jqvvhvvbt -4-5 n: vnnscn -5-6 n: qnrvnnndnffnkknfrdt -6-7 w: wwwwwvznwwwwww -6-12 h: hvhhhdhhhhhr -4-5 m: vtmmmmdmp -8-9 f: ffffffffffffffffdf -5-11 z: zzzzjzhzgjwzzhlz -8-10 d: mdnnfwswns -4-15 c: rptccckzhgcvlccbh -4-5 r: brrrgtd -4-15 x: rxsfxqhhzxdsxqxgw -8-9 c: ccccclcccccccc -2-9 l: mwltgglzztlpllgf -12-13 g: nnjgzggjkgzgd -4-6 j: jjfjjnj -11-14 m: mmfqpmkmmmmmmmrm -6-7 c: cccccqccmccccc -6-9 f: ffzgcfcpfwztjk -6-9 r: sjgrxnrvnqmmlxdrsp -3-11 c: cchwcfcckcn -7-10 p: jpzdflzgkxnbhj -5-6 b: bblblp -7-8 p: ppppppllppp -10-13 b: bbbbbvbbggbbb -5-6 p: pppptp -2-6 t: qttttjtt -3-6 n: vwlhczrnwpnvrnl -8-9 r: jrrdrrrjwrrrrrs -3-4 n: nnwqn -4-8 b: mbscbwxn -10-12 v: tqbvxmlqvvvv -1-9 l: qcllllncllcllllrn -6-10 b: gbbxfblbbx -11-13 g: gggqgggtgggtgrgsg -2-3 f: fjkz -5-11 t: tttttttttttt -5-18 j: zjdxgjjpshjjkjbtjvg -9-11 k: kjkfkwkkrkgk -1-8 w: hwhcwwbffvcdwzwbww -7-16 l: rrljlvlmmlssllkllqj -1-4 d: hddldvddddf -7-9 b: bgbbbrmblb -2-5 v: ltvvvv -5-6 r: rgrrdvrrrrrrr -8-9 n: wnnnnnnnn -1-8 q: sfmbjqqwvqqq -2-11 b: wblbmlrcwffl -4-5 n: cfmnn -15-16 g: gggggggggggggggq -6-10 x: xxxxxxxxltxxx -5-9 g: gggbgxgggpgn -8-10 z: zzztjzzzqzp -4-5 x: xxxfl -6-10 v: vvvhvvvvvv -6-8 v: tdrvsnvpvzxbwvv -8-11 q: qqqqqqqqqqjqqq -12-13 z: zjzzzvzjkzzzz -1-8 b: bsqqmbnbcwhkphfh -1-5 z: zdjzzrm -3-4 m: vlmmtbmmxcdkmdmfb -7-14 k: kkwpcjfkkkrknzkk -1-3 f: cfbljmpfghhgxdbg -6-7 n: mrnhnxn -16-17 g: gggggggggggggggmr -7-8 q: qqqkqhqqwkpzshq -9-15 j: jjjjjjjjjjpjjjj -5-6 t: tttttl -4-15 h: hhhhhbsbphhhlzgh -4-6 h: qhhlhh -2-6 f: wfwdff -1-7 c: rczccfx -3-8 b: jkznbbbqlk -8-14 r: srtchmrjxmzznm -4-8 s: ssgskspsdsmclrmxzp -9-12 j: kjjjfcjjljjqjj -3-5 l: lllvllll -15-16 s: sssssssssssssszs -5-6 z: zzzzmfjz -13-14 v: vnvvgvvvvwvvfrvspv -7-8 t: ttttttkst -17-18 f: ffffffffffffffffhx -8-11 b: bbbkbswbbpbnbbbbx -7-14 s: ssjfssssssjsdp -6-8 s: sssssqsps -5-8 h: hhdhphhmhhhh -8-9 r: prrmrpsrrrvrzrrrsrn -4-17 t: ttttjttjttthtktttt -7-9 v: tvvwvpvrbnvvvv -8-12 j: plfsgrjjgjrjwcgc -2-7 r: krqzzprxrldwg -4-11 k: sfpkkkcwkwk -2-3 z: zzhp -6-9 h: xkjwshvmhbjhfjvkwcmh -4-8 d: dvndvmdzn -3-6 r: wrrrrr -6-8 g: kggdgfgzz -3-5 j: jjjjj -2-9 x: qkksvkxxvxbxx -12-17 b: kjpbpbmddcnwbbbxb -2-10 w: rwpbpbwrbmwgwwvghvg -1-12 f: fbfqmffffftf -1-8 z: qvbjgplznjztjvqjhv -1-5 b: bbbbbbbbb -7-11 p: kddppkdtqpjcfpp -14-20 z: zzzzzmzzzzzzzzzzzzzz -7-8 p: sjspdphq -11-12 w: wpwwwwwwwwwd -7-12 d: sdddddkdjddd -6-8 g: gggfzzhglgxqpgbnbgbx -10-13 c: hcccctjcccccccn -14-16 k: kkkkkvkkkkkkkkpxk -16-18 c: ccccccccclcccccccjc -2-4 r: llrh -11-13 g: ggggggggggggm -1-4 z: zfwzzz -4-6 s: ssssfs -5-12 t: tttttntttttt -2-6 n: gnghnp -1-3 q: qqgq -10-11 f: rdzfzffhtfffffff -4-9 k: kpfhvkkkk -3-10 t: twlkttptttt -4-10 d: dkdvgkdddwd -5-12 t: ttttnttghtthtvtt -4-5 c: ctczwcccc -17-18 l: llllllllllllllllmx -2-8 t: knmttnttdjbtttvtkt -1-2 j: jdjjjj -12-16 j: wmqlfjlnxnvlrjkmj -13-17 s: snsdsssssssssssss -8-14 h: hhhhhfhhhwhphhscphd -9-10 b: bbbgbbbbqcb -15-16 z: fjjcjrwjtrcnltzz -6-8 s: ssssxjshd -2-4 k: kkkw -3-6 s: xsfgbpss -13-15 x: xxpxxxxdxxxgjxgxxx -4-5 l: llqlllsl -10-15 g: jggxgsggggggjtgg -2-6 b: prpbjbkbbkcb -7-9 h: hhhhhkfhh -8-11 f: fzhftffvffwffnl -11-15 x: xxxcxxxxxngxxxcxx -11-12 k: skkkkkkkkkxhn -5-15 n: cnnnnqqbnnnncznnp -1-3 v: vqvxlfwpjvxtpkvlhxjv -3-8 b: gfbbbsfbb -3-4 z: qzzzbczk -8-17 t: cpttttttpttttttttt -11-17 l: lprllfllllnlllllnll -7-8 f: ffffffrd -2-6 z: hghjzzwpwz -6-13 m: thzmtmcsmtctf -2-4 c: dctc -10-17 s: sssssssspzssssssl -6-10 j: jjjjljljjjjjzj -5-7 b: bbxbvsxphgrmnqgzbbx -1-11 l: rlnlllllllvlllll -13-16 b: bbbbfbnbbbbbzgbwbb -5-11 p: bpjpnpqpppjpmppphrk -1-3 l: llll -11-15 l: llgllllcllllllllfll -2-7 x: kxsnzzx -18-19 g: gglgggvqkjzgkgggzgg -3-5 j: fqvjjcjjhb -6-7 c: fccccccct -13-16 m: mzmtcgmcmmmkdmlk -5-9 w: wwsjwwwww -1-2 m: jzmj -16-18 m: mmmmmmvmmmmmmmmqwn -11-12 w: wwwbrwcwwxwwmwwrdww -3-4 v: nsvddwnvvvm -5-8 m: mjmrbpmh -2-3 t: xdrtzgdl -2-6 n: fnwwgnnzwsp -7-9 p: jpppppvppsqt -1-8 k: gkkkkkkkk -2-9 q: jqqqwfzxhqqqqsxqm -2-4 t: jtwt -6-20 d: hqdkcmkdndjrftmgjgqc -2-9 r: crgmrqpwrrr -9-15 p: pwmjlrgnrppwphg -3-4 t: ttqttttnttttt -1-5 v: hvvvv -1-2 x: ggxxxxt -17-18 m: mmmmmmmmmmmmmmmmcl -4-10 d: dxtmsjvhczfjd -8-10 x: xpbxsxpxgxqxxqxxk -6-9 f: ffffmffdwkfrlffx -8-10 m: ldmmgxxmbmnqftt -12-13 p: ppxpxhppgppqqpvppp -4-12 k: kkkkkkkgklkkjkkqvkk -3-4 x: xxcp -7-8 k: kkkkkkkr -11-14 d: dddkpddvdddddg -3-8 l: lsgmlqll -12-13 z: znzzzzzzzzzzrz -3-5 h: hhdphh -3-4 h: hqhhh -4-6 f: wfsfrffzf -8-12 k: ktkdmhvkxktkhr -2-6 d: dpdwdddd -7-12 n: nnnnnnpnnnnxn -1-3 v: vvvv -3-11 q: gmqqqqmqshpq -3-4 j: jjjjkjhjf -2-4 b: glbxb -13-14 s: ssssssssssrssds -16-18 d: dddddddddddddddddd -3-9 g: fgggzttsg -11-12 r: grrrrrrqrrrrrrr -2-5 q: cdqqv -6-11 l: lfclllslllxllll -2-3 d: dzdddg -2-4 n: tkwm -4-5 r: kdccjnrfrzrhplrz -4-16 j: tfxsmxlrjptjjrxw -16-17 p: stpsgsgwvqrzpblpsx -8-12 r: rrdrgrrgrrhrwqjmp -5-8 j: jjqjjkjjjjnv -2-7 n: wzgnnnnnn -1-3 v: vvvv -4-5 l: hlgnx -8-15 c: ccccpccczvcsccc -3-15 f: ffnfffffffffffv -4-5 w: wwjgww -10-15 d: ddddbcrddmddddld -7-11 w: wwwwwwwwwwz -3-4 h: hhhh -4-9 v: vvpgvvnvtv -8-11 q: qqqqvqqqxqcqnmq -2-5 s: lsnpdqqqsj -8-9 g: ggsgggggz -6-10 s: sssssbsbbtss -12-16 z: zhzzzszzzzznnzbwz -9-10 p: ppnpdpgldl -10-11 r: rrrrrrrlrtfrr -1-13 h: xhhrhhhhhhhhchhhhcp -5-14 m: mmmmmmmmmmmmmqm -8-9 h: hhhhchhhhhkt -3-4 f: fflf -7-13 s: ssssssssscsssjs -2-3 t: twlcfmbmbxtt -4-6 v: vdvhvf -1-7 c: bccccccccccc -13-14 r: wrrvrvrtrrrrrrrrrrr -1-3 b: sjvfpdrbcnwr -1-7 z: xzzzzwjz -6-14 j: jfrxjjjrqcqjwmbfjjjm -11-14 f: ffffffffffqffzqf -6-8 z: zzzzzrzw -1-5 j: jjjnjjjjj -9-10 g: ggggggxggg -7-9 r: rrrvrrbrdr -9-18 j: jjjjjjjjnjjjjjjjjfjj -14-18 q: kjtxqqqqltlpgqshdx -8-12 k: kkkkkkwjkkkfkkk -2-4 s: ssvs -3-5 z: zzfjk -9-10 m: rmmlmsmfmbj -14-15 z: nlzzzzzzzzzdzzzzzz -8-12 r: zrrrrprrxrrrrkrhk -1-2 z: qlfzd -1-6 j: kqjpjzpsgjjqz -1-5 s: qfssks -2-5 r: nrrzrr -4-6 g: kggggg -6-7 c: cccccdqcc -2-6 x: vjkxbrfwnj -16-18 s: kssssssswssssssssssb" - -# ╔═╡ 4a629040-347a-11eb-2aae-6f37a4c89168 -input_day2 = parse_day2(input_day2_raw) - -# ╔═╡ 5825aa50-347a-11eb-37ca-811e1b59d37a -md"**Result for part 1**: $(nb_of_valid_passwords_part1(input_day2))" - -# ╔═╡ de3c2f00-347b-11eb-0aec-8b776a855f6a -md"**Result for part 2**: $(nb_of_valid_passwords_part2(input_day2))" - -# ╔═╡ Cell order: -# ╟─f0dd4400-3313-11eb-3295-af913c2212fb -# ╟─0b7b8920-3314-11eb-2cfb-7d20c0967e67 -# ╟─877b32e0-3315-11eb-0e96-650b19da693e -# ╠═4adcf8d0-33a8-11eb-0220-696f06894ef3 -# ╠═1e8e7230-33ae-11eb-0a77-035e6a4b9ba8 -# ╟─7a037310-33ac-11eb-34fb-9bf552883937 -# ╟─c7dcdae0-33b1-11eb-2cab-fbc06c8ef76b -# ╟─5d9712b0-3472-11eb-1423-719331dfe52f -# ╠═b9144990-3473-11eb-0ba9-59f3fe6ddbc0 -# ╟─10f5ffa0-3474-11eb-2a36-d5c6f78f18c6 -# ╠═6695038e-3472-11eb-1846-3b1c041be59d -# ╠═bbda1c1e-347a-11eb-0e7a-756906c4c9f4 -# ╟─a0cfb670-3474-11eb-1a05-c12914658a0a -# ╟─2b112350-347a-11eb-1725-5f70e3623379 -# ╟─4a629040-347a-11eb-2aae-6f37a4c89168 -# ╟─5825aa50-347a-11eb-37ca-811e1b59d37a -# ╟─de3c2f00-347b-11eb-0aec-8b776a855f6a