From f369fc86ede1c38f8362ac9b2227ccb3e1585330 Mon Sep 17 00:00:00 2001 From: Xander Sigler Date: Tue, 5 Dec 2023 22:40:17 -0800 Subject: [PATCH] Added new data and answers for testing, as well as fixed Day3 console print --- AdventOfCode.InputFetcher/Program.cs | 15 +- AdventOfCode.Tests/AdventOfCode.Tests.csproj | 189 ++++ AdventOfCode.Tests/AdventOfCodeTests.cs | 28 +- .../Data/2023_Answer_Day_1A.tst.data | 1 + .../Data/2023_Answer_Day_1B.tst.data | 1 + .../Data/2023_Answer_Day_2A.tst.data | 1 + .../Data/2023_Answer_Day_2B.tst.data | 1 + .../Data/2023_Answer_Day_3A.tst.data | 1 + .../Data/2023_Answer_Day_3B.tst.data | 1 + .../Data/2023_Answer_Day_4A.tst.data | 1 + .../Data/2023_Answer_Day_4B.tst.data | 1 + .../Data/2023_Input_Day_1.tst.data | 1000 +++++++++++++++++ .../Data/2023_Input_Day_2.tst.data | 100 ++ .../Data/2023_Input_Day_3.tst.data | 140 +++ .../Data/2023_Input_Day_4.tst.data | 199 ++++ .../Data/2023_Input_Day_5.tst.data | 248 ++++ .../Data/2023_Input_Day_6.tst.data | 2 + AdventOfCode/_2023/Day3.cs | 1 - 18 files changed, 1923 insertions(+), 7 deletions(-) create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_1A.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_1B.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_2A.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_2B.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_3A.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_3B.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_4A.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Answer_Day_4B.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Input_Day_1.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Input_Day_2.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Input_Day_3.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Input_Day_4.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Input_Day_5.tst.data create mode 100644 AdventOfCode.Tests/Data/2023_Input_Day_6.tst.data diff --git a/AdventOfCode.InputFetcher/Program.cs b/AdventOfCode.InputFetcher/Program.cs index 066d6a1..4cb2467 100644 --- a/AdventOfCode.InputFetcher/Program.cs +++ b/AdventOfCode.InputFetcher/Program.cs @@ -11,8 +11,8 @@ namespace AdventOfCode.InputFetcher private static HttpClient _client; static void Main(string[] args) { - Console.WriteLine("Please select your year! Default: 2022"); - var year = SanitizeInput(Console.ReadLine(), "2022"); + Console.WriteLine("Please select your year! Default: 2023"); + var year = SanitizeInput(Console.ReadLine(), "2023"); Console.WriteLine("Please enter your session key for advent of code:"); var sessionKey = Console.ReadLine(); Console.WriteLine("Please input the target directory for the input files! Default: Current working directory"); @@ -36,7 +36,15 @@ namespace AdventOfCode.InputFetcher bool dataFileExistsOnDisk = filesOnDisk.EnumerateFiles().Any(x => x.Name == dataFileName); if (!dataFileExistsOnDisk || (overwrite.ToUpper() == "Y")) { - File.WriteAllText(targetDir + Path.DirectorySeparatorChar + dataFileName, PullDataForDay(year, day)); + try + { + File.WriteAllText(targetDir + Path.DirectorySeparatorChar + dataFileName, PullDataForDay(year, day)); + }catch(FileNotFoundException e) + { + //Input data not available yet + continue; + } + } @@ -85,6 +93,7 @@ namespace AdventOfCode.InputFetcher private static string ExecuteWebRequest(string url) { var resp = _client.GetAsync(url).Result; + if (resp.StatusCode == System.Net.HttpStatusCode.NotFound) throw new FileNotFoundException("No day input was found!"); return resp.Content.ReadAsStringAsync().Result; } diff --git a/AdventOfCode.Tests/AdventOfCode.Tests.csproj b/AdventOfCode.Tests/AdventOfCode.Tests.csproj index 97e3a87..1319c68 100644 --- a/AdventOfCode.Tests/AdventOfCode.Tests.csproj +++ b/AdventOfCode.Tests/AdventOfCode.Tests.csproj @@ -22,6 +22,195 @@ + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + PreserveNewest diff --git a/AdventOfCode.Tests/AdventOfCodeTests.cs b/AdventOfCode.Tests/AdventOfCodeTests.cs index a08a664..63e3aac 100644 --- a/AdventOfCode.Tests/AdventOfCodeTests.cs +++ b/AdventOfCode.Tests/AdventOfCodeTests.cs @@ -5,6 +5,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Linq; +using System.Text.RegularExpressions; namespace AdventOfCode.Tests { @@ -14,7 +15,8 @@ namespace AdventOfCode.Tests [TestMethod] public void TestAllDays() { - var directoryInfo = new DirectoryInfo(Directory.GetCurrentDirectory()); + var dataDirectoryPath = Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + "Data"; + var directoryInfo = new DirectoryInfo(dataDirectoryPath); var validDays = GetValidDays(directoryInfo.EnumerateFiles().Where(x => x.Name.EndsWith(".tst.data"))); var error = false; @@ -39,9 +41,9 @@ namespace AdventOfCode.Tests { Version = version, IgnoreLogMessages = true, - Input = File.ReadAllText(Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + input) + Input = File.ReadAllText(dataDirectoryPath + Path.DirectorySeparatorChar + input) }); - var actualAnswer = File.ReadAllText(Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + answerData); + var actualAnswer = File.ReadAllText(dataDirectoryPath + Path.DirectorySeparatorChar + answerData); Console.WriteLine($"Asserting that (Answer) [{actualAnswer}] == [{resp.Answer}] (Tested)\n"); Assert.AreEqual(resp.Answer.ToString(), actualAnswer); } @@ -108,6 +110,26 @@ namespace AdventOfCode.Tests aocDay = (AOCDay)(IAOCService)Activator.CreateInstance(x); } } + else + { + var ns = x.Namespace; + var className = x.Name; + var dayParsed = 0; + _ = int.TryParse(Regex.Replace(className, "[^0-9.]", ""), out dayParsed); + + var match = Regex.Match(ns, @"\d{4}"); + if (match.Success) + { + var yearParsed = 0; + _ = int.TryParse(match.Value, out yearParsed); + if (yearParsed == year && dayParsed == day) + { + aocDay = (AOCDay)(IAOCService)Activator.CreateInstance(x); + } + } + + } + if (aocDay != null) break; } return aocDay; } diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_1A.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_1A.tst.data new file mode 100644 index 0000000..0423296 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_1A.tst.data @@ -0,0 +1 @@ +55002 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_1B.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_1B.tst.data new file mode 100644 index 0000000..306f611 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_1B.tst.data @@ -0,0 +1 @@ +55093 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_2A.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_2A.tst.data new file mode 100644 index 0000000..045e745 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_2A.tst.data @@ -0,0 +1 @@ +2913 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_2B.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_2B.tst.data new file mode 100644 index 0000000..e4acce7 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_2B.tst.data @@ -0,0 +1 @@ +55593 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_3A.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_3A.tst.data new file mode 100644 index 0000000..aa7d122 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_3A.tst.data @@ -0,0 +1 @@ +550064 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_3B.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_3B.tst.data new file mode 100644 index 0000000..fa6dacc --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_3B.tst.data @@ -0,0 +1 @@ +85010461 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_4A.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_4A.tst.data new file mode 100644 index 0000000..ae43bdb --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_4A.tst.data @@ -0,0 +1 @@ +18653 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Answer_Day_4B.tst.data b/AdventOfCode.Tests/Data/2023_Answer_Day_4B.tst.data new file mode 100644 index 0000000..f2be1d4 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Answer_Day_4B.tst.data @@ -0,0 +1 @@ +5921508 \ No newline at end of file diff --git a/AdventOfCode.Tests/Data/2023_Input_Day_1.tst.data b/AdventOfCode.Tests/Data/2023_Input_Day_1.tst.data new file mode 100644 index 0000000..0e85701 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Input_Day_1.tst.data @@ -0,0 +1,1000 @@ +tsgbzmgbonethreedrqzbhxjkvcnm3 +7qlpsnhbmnconeeight78 +prbqsfzqn57 +ctrv3hmvjphrffktwothree +9six9qbgcvljfvccdjslspprgonenine +eighteight9dnvcqznjvfpreight +one5sevenfour3 +gjgfiveonekzssz9c +one54 +rtsevenfourfive1rqhslone +xkxfdhk25fourtwot8 +kjgcsncmeightdxdgkxfzqmmkg1351 +7qpnldcvgs +reightwotz5 +nineqrtrsfsreightthreetworvrphxptlrbczxsix1 +1svfvgsfcssjpvhzr +1seven174ndseight2 +56lrkxdfive +2jvrgmmlninejf583 +fvsspqpt31 +3threemhjhvrvgkseven +eightoneoneeightttlpjqgnkndbnmppjsdhzdbhkhl12 +vxjgghc18dzbsssnssh +one2cgxdfbfhl3 +8ssfour997six6 +8onesrtcvqmxpzeighttwo6 +3twoptpvz5cbgpdrggdtwoseven +35smnsnzxmdjtsns6sevenonethree +fivetwoeightfdjpscncb41 +flkdknzdxtgdxcfqkn4mbh4tqvgdq +one3threethree +sevenfourgdnxhsqq5one1 +kkrjgpm2sixeight24 +krrhdhjqgmc5dv4 +cvlh16nineeight +495five2nine1 +tzmcxvdtvxpmrcsevenfour15one +2qvbrsxqsix45threeeight +pfmktwo29onensbfgdddfm2 +7xqjzxstvsthree +37ninetwo3 +5vhtctxvjrvftwoone2six +hbhxhjjl5twoqxmlprccr5 +ninefour2foureight69 +1sevenmggmcxfcfdxptktsgcgsc +fnkzsdjh3kqxpdvmkmvqqjcjn +twotcspvbvppqqntwo1hlcvppcpnv5 +xbfhpnkqbnxdfgbgtm5 +84tpzgonelnine6bzkx +bgslbmdkfpbx6 +lqpfphxdtfourxbqdhrbcz2cmhtddsnkpgln +7fourfzthreezhrjdjlvsix4lrrfv +2seven3 +fourtdggtgsdm5 +1pbphhpsxbnqmfbxzone +tskfvdph7mftvqpnvcj2oneninenine2 +3fiveeighttwothreeninenine +seven687two1pdjbbprztwo +eightrslvddpmonejfive4hhqbdq +xbhcqzx52eight52seventwo +fbgpj8fourthreecqngmbbvkktlbss +plckgsixeight6eight95bnrfonetwonej +1nine97rtrtxhqnone2 +cntfouronerdsnn4lfcmhvlrq1five +hrh34sixfourqqng7eightwot +sixlfldl7qjsclxqfive15 +khdfour17 +frmcpx65 +five6bjlbxkp7qthreethreecc3 +5four6qlmpsrdeightfour +9lxdxgfrnlk4lsgbjnz9two +one7five2fvdqfqqn92xsxnblxvhdfcrz +hmhmxvqljdgvvvdfour5one68zgm +718 +3onefive43 +xgpqs5four267six +pqseven17nineninephpszgqzsixldhxmhzgf +ncxxlsqdkvc8fiverslzqtzhzltcmbkthreelkjjckxsvljvs +nine6sixkrs +5kcqpgfms +1znbcrpxmjcsixeight +sixtwo28eight59fql +8nfcseven +8five864sixfive +8fzsvsrjmjxmc +kftvseven6dcsfqtmtjvmgbrninefvv6 +twoseven65 +nine58sjshtgtqlz +lhjfzvlbtrfffour9eighteight73 +9crhmmqkrrfour +threeklhhtlmczn6thfkvdd +dvjxkdgsnlds44kxs +9gtvhrcphvnzbmckkeightfour +fouronejtvrscxj9onethreelgslth +86four +4hvnqzfthree +8qone9 +lnkngkxsflqsvm3threenine2seven3 +65five +8529xdd5threeonexq +sevenlthree1 +5sevennineflfivevgp +6pmzqczjtlnfvgg1sevensix +sixtwoone2 +kqrxsgtrrjsix9 +2twonebs +fs9hmjmdmbhkskqvdb +293 +9sevenbprbbnzqjbhfpcgnxjmflxgkvqgvc +rkd58six +5mbgfldv7rskkllhm +fcjdzfjpvptdcxfltdddm7twornkskrnqnqv +bkqzf51two8twoeight8 +2fivefour4777six8 +mzq67threetwonrqpcrptwo +7bmkeightm8 +z6twoeight5threerfckddtc +threeninesixmtdc7xtjhvksjjc +5fxffvhqzgtdlfdxdhsixnmjtvlq2five +nqpsvzgql1 +six3qljkjbfeight +sgddglfjrtwoseven3 +rxzhvffr1rfxqpr +7zjv5 +3tcsxlpxhsmnmg27 +lbqkvfxp8sevendcjlrfour7 +cxlvqldcjhhlzcvsix6crleight6 +jhchtninehrvlsfvkr7two +48ninetwo +45fivefiveone2 +hthchfc1 +oneninetwobfk7two +ninesevenkfnlhrznqseventhree9 +2fzbgjdvbnktwoonefivefiveqhz +seven28mxjxnzb +gqrznvtjeight9six277five +four3three +1kpqmrjctwolngk8 +49zks +threesevensix9fivergmlzrblg +eight9sixeightlfvrbvfhd5one +4sevensevenonegm6 +six11one3lrztzsjczlnhddxbn +eightsevenpqdsxzmblmvdmjpeight9 +71seven +cjqcqjlkgffoursvfcqxfkkszjhjl73 +dgndjkhcplztmkjrdn53 +1eight91vqjhmxrq9nine6 +bthlrtwo54hxppxfourdsnxnlnpvhmrpqtqzlr +1bhdmvdrjvzthreenine6four6 +threerknmhjtfourtwoeight65eight7 +1hbgvsdxtrsixmsfzxrlzskkkgh +4hsjt +twothreefxhlr1bfngthreemthqqvgfpxeight +nineeight4hp5nhksqdvrhcn22 +hdcfdknjkhsxnk9 +pshjqxmqcbkhqkc5onekzfgkbeight +five3ninektmsrxhsdrseveneight1onenine +p5five +2sixrgznrrvmxbbvnxhqtpeightthree77 +threehmpjclsbhjlbxj1 +982 +vcjxvjvbmmzmrvv97one6rdxrdk +four8one9xpgfjgvjmdsevennineeight5 +five7jmcrkbnine2 +kmbhc8threessdnfmsix +214sixfkxkllldfive6 +dbhbfprsqkpmnfxgkgcone4qfgrgghqtqhxqn +1plplklqjqjdsix +ztzgqsixqsevenseven4 +3threedjnbdbvxseven3qpsjone +dnccnninetwomkzk52sixcgq +94rdhfgjjr1gzl +8three2ljbjjfvx +8sdklzklt +onexvrsttmhfninetftbrhtwo1gkpbninekh +vsbfour5six +2phhz85 +two73fourfive +2twonineninesjkljpdgx +2h +tghzldzcj38foursix +9srzlsv9seven +twojzssixfive53 +85eight35foursix +rzx2lb +ghfnqk396nxqgvvgsmnine9hhc +6sixnine746zlrksxcglg58 +1nbfivelvpcjnsddt3eight4fourblrzckjvf +sixninethreednqkk9zzspxbcfjmfive +16tsvqdplfnbnh +l13tkbfldqcdfzjsdvtfttphmcmsix7 +rcgmlmnine94foureightnine +lpvmrmtkthdqll5 +gjjprdvggvtjvqsnbg7xjvnp3eightninebhrdrq +lzzmsmbpqnineninemnine6two4 +52qldxmrfive36ninetwo +four6fourhrsgf29 +9zb97kffl +eighttwonine5fourkqtjsjthree +two21 +two6fourtjjn147 +lxnzlpcvzkbd9pxtr6qhbfmcmblbhmncljqd +zccjlmzhm9 +11zdnjgj +one5fourone4onerttltxrzgf3 +eight2nine83onepxjhx +38fourllqpbclqnlmfourthree +treight9threesevenqgj +jb7threezfvnine28seven +kmnkbmmnine53lddseven3 +3jxgfdzkgznine +72lzbqmclqtwo94nkt5 +threejdqnineeight4seven9two9 +sevenqnpjbznp6sevenfrnghcmvlfbns +oneone23oneeightone +52qngdcmftmchfzt +two8hnine1qsseven1three +seventjlsdnmx25pnxvtxtsix4 +3veightjkgnbmcssevenpjrszdxqthree +kkhxtnqzvz4jdqmtwoeight +4eight15niner +kreightpprcklznlcstjvqhn36ggfkphxdhm +four53ngjzlmhg +ztwoneoneshxnb2sevenxcrgjbckmfiveeight +3five5221ddgprnvgpnj +2hdkdzcvcmmtcrbsvfsevenone +dtkjdncq73threechgcccdgqqsixthreehlfroneightn +vtfvj4nine23seven2two +phcvhvlq4kjnjcdkjrgninefourthreethree57 +twopxngznkbrmrmrz7135one +one3bqdzone9sevenc2 +69threesix +6jcmfivenine6fivefivethreetr +six1jpxjrqkpgllkqldf +rjz4two59gjjgs2five +joneight9gvqknfour7sevenfhzjsrldj +9one4onesixhvvkqtpleightwovmh +seven4threekpstdppxhvtwo7 +flxzfrxp1 +seven57eightthreeeightseveneight1 +6sevengmkvrvone +five1eightfour19 +nqxnqn7five3txrngheightnine +rdfkkkthree7lnpmdgdb9 +jhhvznhlsevenninefourcmkrbtfive3thtfbjvgvdnv +2seven7eight8jrjkf4fourhv +oneone7hmdfjpzr57vfz +7vqsllrhznvrdccrdrnjvmzmmknp4 +412sevenflfcvksjzk +7eight43mq354oneightv +sevenseven7eightoneightvvj +twotwosix2ninefour9three +threefourtwotwothree1lj +jpqccxztdninepncqqmnlxninexjfgvgccrm1 +5cr +jlhrrqmtlgtqfqpmkrhqjmpmxjshshblthreefournine2 +four93kssrxr +bztqzsjkeight6two18four +sevenoneone587ghfbdmjpqxnpbh +823onesevenseven1 +tt3qmcsbcm1eight +prkptfivefourtwo8 +4six8836gmmgvlrz +qklnpxjqhpczsc775 +phblxtj9 +jgz8lrghthree813eightone +vppt4eightthreezpgqt6dmxdtllksgrtmcbpfjh +nine9lgsgzkjvbcmtfourr +7three61ninefqgsfbpvjrx +98ninenfzfh +two2one8seventwo3hpdbstnhvkthree +fourstrljqf8nine +5kzgf5rspljfnsljrfrhg2mdsh +jkbjkbjhvfoureightgfnnxxnqh826z +3ksgl +3vfivehntm +threeeightone64krfskdqlxsfive +oneseventwo8vqzvnine9ninenq +7fivesrkfkfthree8qmxmdrvhl +447lhctbzpphthreebkmrthreetwo +two92seven +95sevenonecgj +kcgsqqdpfhrpxzceight88 +9c4six +rdkqfzkdlggfq661tfmqlgkcfmfcvpqsmr82 +1zzhzhz +six2ndsdxkfxsfthreeonesevenzlp +eight5threeoneightmxp +sixfour4hdktht3two3seven +9zdphltlnrfg9225 +6eightfourplxbgjfnnzfk2sevendcpbl +threenineeightsltsrkvpl28six8nine +lmbqmrmjldlgb7 +2sixninedxnhmdfxh4five66 +5mllgtrxzkgxskkqxvpjttninefour3 +2hjl6two +h5 +eightthreethree3hcsrt +htjlplnfxgfqkm77seven +lpmggpmcq943lcsvrhdljsqqdlgrphlnnine +7twoonecgtdnfvlrsixrhnineseven +lxszmkhj983five +four9fourninefourtwol +eight58sixsix94 +2sixthreefkbvtdgjq +1rnc +86seven13 +one6f3jkrlrtf +two4nine72twojtfive +fourtdtwo27 +two6eight +nxhzvln3five5 +six7lbgqhnzkntwo +hsfjgnjxjvzskjninezfndhtwofghpstbqzcseven1four +6q +ffszknxdbqzgvmg2p +cvl52 +nmfmp8six5threenhnxs4 +9fdknpvztworqfdpjrk36eight9 +brmqzbhx84 +two72nvrlnhkjnineseven +1spsmjscthone8 +sevenphkpdzvgzcjvlskdzbhqgpknrzdpsn39 +gfmxvrrvk8 +8zkpvrq7ggjskkr +7ninemvm41sbftf6 +nine2sevenfiveonetlnhbbxv +rtwone881998 +eight5threegthree +fhlnkzgqh191 +48fourcmfivecz +5mdvbgmdhqbctxclonedhx1sevenqczd +12one +sixsixeightjmnbqzfive49bk +nine2seventhreehvrfvm11 +gnsixb3three2 +one3hrqzfsc3one8threehhjbzkmln +vvxcbrrone95 +nine7twosnpv2threeeighttgg +8onetwobqnxkkvhk5 +qrphvhfqninemcnzfrhfbvdtsnhst3 +2eightj +eightmdjmnqd1seven +seven5sixtwoeightcglpqvlzxdfive32 +nine3scvsffour6 +3onefourseven +cfqfkxv4five +2dbq8fnzpzp +fivekbblqgnjt12pxnvjxrssm +sixfive16r8dqkgspmlb +ninexjhfsgn9ninezv +lcfourtwofiveffrl6gfhxsrzmdl +8oneshvxjn +8threeeight8sixqbfnpxhr +smdjbhvsxlnhcqnxxgqcxfive5 +threeonesevenglblr56lsntrdsjhp +seven1ninevqpssj +58seven +lghxjdhpdbqs19 +lkcttrkrcpfourjtkfxmxcfive4kxnchspbqvqrfv +7mpgnvdrmsqbcnfzrhtpjhz +threezkjqk5fourthree8four3 +7398 +xpmrcfffmhqpnmxtqxsblcd2fourq6eightdqvj +6onedvdxtv9 +sevenzzvgmlqk5phcldhgghvshclp8 +xpddfttzsix63one3 +threem5eightwomp +2crrxnvrcjklzvdxk1slmrkq2 +5fivesix8mstzprjlvqhcrn +rzkhdgfvkqonexhblnnine32 +5rseight377fivepnlsngxvmthree +onesixseven9 +9dgr98 +6jjcb1hlmlchvtqhpp36nine +lrxhvzs538seven76mkt +six48fivexqxqxdzzhggvcb1 +94seven7two7 +five2bqxzjllksix4 +21three2eight +9rbsrdjbgmgln2fivesixninejfvk1 +9foursixsevennine1 +9zjxdzqbxjlbbsnine +8zfslsdlhdqmptwozzndjcskhptwo68 +9fiveone3fourpncrvfive9 +tbslbmgkqv936sixgsqzkfcjpl +fournxfsgdthq4bsmp38sevenfivegclrlpgxt +1kzql +7onehfzqjdnlzcxflzrlxdh8four9mzf +1sevensfivevgxeight9frcbzhpn +four1seven8njj8 +74dtgcn +sevennine8twothreeztstwoklxhgfbgnnb +7seven3bdrbpnzcr +2twooneggtzrfqcsqqq +rfxnrxkk5twocjddcmqbrqjvprtbdjtpngl99 +pspkmpxzmn9cndplpjskthree7klc +eighthcnhhvvjxc295rxgfour +74nine +jk17mxgfhjveight8twonine +2six8seven2nine4sevenkrgmk +6k96 +5jseveneight6eightnpfqt +ntwone1dkfrhmfourzngslfournine +nine64 +njeightwo52 +15mhnqxqcdgcqbqtdp +hlpgsrxf429four +tncmkps6bninergvfkrv649 +bqqlgvbdp3 +7sixpzpbrxbhqjgvgns +849zhtmsevenfour77 +three15seven9fourthreejfmxhllseven +ksixeight4three4fqkjthreemjqhxqgk +four4seven4eightkgsg +sxgrghvnfknfrsixnkflvngkmsznhc8 +6dzxmxkvvpnkp6fnzdfkjsevendlqrsgdztone +eighttwo81cbrtrrfour9fourqkkbk +hvnjpcxhlb9skfjsixseven9two9 +pmt113onertkj4 +seveneightdftwotttone6 +fnsmzpthreexcssct42 +5eight4threefgllrpsgqhdtsqbqvzxtpgpdgnvctt +rfddtbdpftrvf641five2x +1three8clseventjtwodlhggr +fivelxhrninej8fjngzdskseveneight +ninexxlhmhzdj7tfzds3khvctlrxmhsxdnbm +bggglk31threefivenineonepqcdzczjm +223seveneightfp +mkvsblkv76 +7three86 +xkmxnbmtzrpdp2threesixfjkpbhpzb +9four2 +7tqqg +three4five +zndhqdmkntwo6 +rgblqcvrxzv5clzjdmfkph5 +skcvbd2seven5 +eight8xnlmzm +9twovfnvrmcfhn2gm187 +seven8sevenjshjndsdgrnczlsevensix7djrk +bt2one4jgztwo +one126eightnzpxkgfj +blrlnfnnvbhkltmgqqsixsix2bdnprfp2rpqtnvbtwonenpx +prffzmfndlqfqjncvskgdtwovmbqnxm8twojttxpv2 +6qhjdzs5bm +76lcmfntskmxddthreesixone23 +bstcghjbhkrlpxf1six +7ptpcjchcfffivenineoneone +7ninethreezstzpdr1two +szxlzxpn2fiverhjrp +5625 +two6ghnhfvrzlqdtqflvfgldfjj37gcxnxf +one3scnfcdpsn2five3ninejbv +eight569nffztptqgd1mqbkssdcppjg +fbsvjlln4cdshlvmxpmmc4threemfqnseven +nljzcfzfive5ninen +gmhlb2sixfive55cvnkgknrpbdtnrd +47six +skkhbxfour6trmh7nineseven +three9five +12ninexcc +eight6kdtbvfourb +425threetwo4hxnxseven +five4jbbftjkcmjqxrdls3nlhvcgeightrjn3 +knnjdj5tgtsrgnmjqmjjrnht1 +nine3mhxxsix39 +fivefourseven2drz3eight +215xnm +6seven3 +77kqzfcbklvznhgvnpfivefivejx5 +8seven6sevengjssbvngxzbgcmm1 +mqqxqgmzdvzdgjrlkntdjhgfouronegrkddl14 +5threetxbscpfxdgfive +two3bdhxhkqnd87cmrkzxf5 +two7twobgnxklp +9sdnnzrkms8rbbzfqms8one +2hxdxxstwo +foursrb7smqxmkt +14xfhdkfmh +84trqvtltpqvdtzdlch +19hjjhfljxnine +1lbkvjcjbbeightngnqdvz8nddkmqmvvb8seven +mlnpptcflthdprj4fiveseven92sdhxchdcj +cdmbfivepgdbgdfvbklz8six7 +cbqvbtpljv8skzgmbzbfgrbffmmb +one9ninev4 +nzvjsqx7fivebgptkrxsx65sixfivesczbl +42bhjthree1 +twoqnsxllxrsfive64vgtpcmxc9 +sixbzflbdv7 +54threehf9vhctwofour +4pmkmlpnnine3 +3sk88qglhbsjxdsdcnqrnpdz +79szleighttwofivef +vbctcrttwo43oneone +qjhdlqzqftfgxgnbbscsbznfgslbltd6szdppxfpm +fivenbbsgfthree9 +hjqmr9rqsrhspcfjmfj379 +lxjeightwo6four8 +45twonkxhqq +ggcvxfz6lfpbcspvzsqztjllrrpd +qmlvh9bmlkfive83fivepbtnine +1qqqbrct45sevenx +ttgtbnzrn1dprs6four +nine1rcstjdlhb6hsrnvsjxeight1 +gtlhk3gjhqvtwotv +six278kd +vlgzjxlmfs6 +8d51 +seven6lzjgcc +sz7sixctstdkhlb89 +27three +6two3msmszdzcrfgxj5 +8dbvzcrqv +tftbmjrjd831gbzrhscthree6jvvfour +254sevensixzzkjsq1jmmbvdbhtmfjsp +ghqgzfkqhnqntwo4nfj1 +sixfourninetwoxjtsxcr3 +five2niner2 +22blmbkts7 +one2cbkvqstone5threekzvskbzdt5 +48lgvmpjvhlfsixone6seventwo9 +1five5pzglqpqltn +8dc6blpnqcjndthree5 +lncn3sevenptdrlpqsbseven +9mdzt +flnr3sevensevenpjgrgdbrvdgkhtlzzljdnppp +lpljgkpqdgqsevenseven8foureight5 +xzrkml7 +127 +hgxdcdprhg4qkxtwo1rlc +nine9five5g +three1lgdctzmqpgc4zbmc6ttsls +onethree495three +eightfblxhxptkdnhk6npbbsxgxlhoneights +fourm6sixeightmrztnbjptqfv +twoone76 +6dsbcqrjj +pfkoneightmv8bdrmhlnhmninektnbdtvtwo6twod +qttsnrppd6s +76three5 +thrxlfmbmtsxjzsx5fivelvknrgctp5vlmpf +nine7ninethreeztmlsfch +18eightthreetwo978seven +bseightwovtlxsb5sevensrqnrklqvzstncmr6zg +3zthdrzlqcjbdsfgqphkzqeight +mvfnine6sevenrkbxbhlld35five +cddpxjhdgt9fsfmkxmvtm3dnqndzsnm +vrhjfsfkt3sevenqcsxvkdrfndtfljvkxzckctwoonednpklkm +hqjfnbh9threexqfive +mrpdsqbhzjzplrlqf4fjstqq +6htcxzghbx +nine6dflrcbjl65 +bpclpbkbbmq9threeonetwonejn +eight5fivedcsqtsnfkthreefour9six +4lvl +fourq2 +four388rrkjtfjzrceight8 +7lznsixfh41pdlvhbh9tr +9nineseven438 +tgcqntlpqonevmcqninezcxfxbbone6 +seven2gg +two1one65threexsix +1one6lrgflmsixfivefour +sevenone46 +61crvnncdxmkseventzqvdsmfkx +khztxzpnl6nine +threeonehjxpgj3nine6threehcsix +twotwo5mpbgbtfjpcxbksix49two +62 +kssevengjcdtrcmklxdgftslsz7kfclxsdtc +9mgpqjhlfivesix34sevenone +89711 +3tgkpfrvvcpxfs8jhmdcxz392 +6ghbglhfive469x +9ctfqkhbgprf38 +cshsctcqr6tcxzjgrzsx +chn5onethreevqdhhdv74 +one9fmlbplqeightfthchbzjhzgkbv +fourtwopkllbslsix94bcshtp2 +rvmpsxkmcqninetwovhjzvhm3 +4eightbcdvjjr5ninethree6fiveone +6three6eightdqkcg +rsix7seven6fdpzpgvmkp +eightrvlmbdq91six +x978bsdxxnknine +81five3 +6bmmvdflqfxcmhtsixjprt +five6two4five37seven7 +nine6hldzbzxhzdvnptjeight4ninejxlhvtkpzd +eightfone9 +4vknnxxj6192q6nnfbcm +twolzt6two23two1 +84lltlrz4vsl3two +rnfour39cpcggzone +hgfx464 +6tdldmclkhqkkdzxmhvtthree8 +9sevensix +pfgb55 +mqnqnineplccphpctvxs3sldkl +cblchzhrsone4fcbvfxkjjbcptp8oneightv +5mndn +pptwone8 +fivejvzddb3bcvvskzxstfive5 +k7sevenninefivefiveqzbxlsgcmoneone +gxqthreejzntslggzhxnsevensix1onecphllcxc +6slttzsdvnkfgbqldqvlqrszlpsixtwo3 +7lqlkstbxpt87xcbssmn +fourtwoeightjnflkkbksn566 +dkjpckbtnninejcxg3 +6713ninetwo +9six3rskfprrbqhbstmp9 +4onepfqshseven4seven +1d +zdht4sksmztjpcrjthreenine +four29one2csmk +93lmdlxrrj4threeeight +zkbckninedlzxpmdneight4 +gjdshxctnszcrlxj8 +4nqfvtshhk +hvjvrh37threehznzlrprtptwo4one +eightghbtgpbjfdprqnpvhhcbdtrzsjgsix2 +sixmgpzcmxq3sixsixxpdrfpzdsmqsr +onefivegphhdggf6kdrmnvgfqj +mvtj2six +6jhtqngl7jtphdsvtkbvscm1fivehv +632onefiveeight2 +9ninezfbzdplrfourthree3eight8 +164three7fbznchn8 +fsklrdzbzv8threefour8sevensix +twosixtwo4sixsevenfivethree +foursevensix4fourxhfjzjbkhsix +eight26foursixseven +8frxqhzqstxzmlsqpqtcsevenfive9 +mgck4815plnnmrvhfvhbsln +3fxpccfplrfivetwobbngonephjs9four +4gbbgpbqnpbqjzgvjrgpprtwoqvjrrn +four17two93eightthree +twoseven3 +one5vqpmvkpgtwo88seven +sssmblvsixseven2 +6fsdxfxgdhnqkcpzmbljlfkfsjztdp94h +kx99pbk6 +nineone7knpqj +2fourzgseightseven5 +sixninekdbvrrllrl8sevencvrdhnine +8jtqlpz2 +hgblktnine92htpggp22 +8l3 +xfxb82srqlldfonelqjhssmsrfkbmldjqt2klnq +321one42seventhreenlrtm +jponefoureight6nine +3lsljdntnsjrseven +two1rvc9fiveonerkdnrnfd1 +1twoclddjfsixtwovhhczl +4two48krlhhbvzhq +78fourncglqhghzxhbrb98threeglzklqgkg +threetmzvnrfnqq23 +9five5four5ones8 +six4onefive6 +45lfmdrgsrvkkkzglnqmrlt +64onevthree +onefour9zvkgndsv2 +dmrk46vlrztxbjfsbll +2four8oneeighteight +pqtvvlbrgninethreeone1 +6four733d +seven1qhxhgxsx8fzlbkm9hpmnqkknjpseven +6cspj21fivetwo +seven3fllzkctljxlcqljbxfrcleightwov +73bkkkdnptddqqxhjteight +jjdmnfourp1threextxpmdnnnine +five2lvhh4kfg3 +rbconeightthree8 +59lqvpccqlbmqqtzfourseven547 +vdvsbhcptvxbgd46three6 +xtrbzgtwofour9kq9 +2nineeight +29nlcdzgrkh7 +onehglhgkcksm2onemzpnqmbxccvpxxssg1gcpvhl +sevenhhhgntcldxlfbrpks27threeeightwoh +2kccbsjdblthree +nine6threenine +nkbcdbseven8cqfour +bfour3 +nineeighttneight833 +3glgsvfhkz7fivefivefive +zzlxqlfour3mcjjp +93eight28 +1threeffive4c5oneightgdg +five4six +gpzjjxthree4fmvbzmzbjf31six +bcbdtbjrtn3five11 +kbtnkjvkmdh6 +fpjsqbxv5 +3twofive +9vplnvkkmhpdfxckm2js64 +4eightsixxgmbxzkkcsevennvdgprqcgvsqct +eightsix1five8one5sevenvqjmrkdjq +9seven7 +ngmnllfj49dlqdmnthree +sixthreeqbkmzvmt7sbgsscqsg +5sjbrdqvbksss7gnfcp6vjpbfcgps +nhssblqsixtwo57 +fourbthree7four +6foursix +pfcbeightfvtnlrmld273 +fivefhthree8189mvhf +nine5qzvxjvj1nkljhvdpnf9 +tgrllhmcmpmpeightzjd7 +vnblzqbhx4four6 +5qb6six2one9 +sevenprjnnznl9nvbfour28sixnpxttwonemcn +4sixsix +7two9 +7pzzdv2fourgxxczzqtdxfjgtxjztbvjt +218jxfvzrfournine +4sevennine +662onecvzlsixzj7six +bpnmf95seven2 +clfcfivetwo9mkxqnthnnhkpxcm +klgfmtjlctstwo9 +1zlqhkkhmdvszg2three4nljlbrzz +five6threesevensnprfgsggs1nqqjtsqxpdtjlfr +nhkvqk89four +rtgzhbhjcjcznp5cxbprzxfoureighteight4lng +xdvgfzxbvzfdkff5dthree +1two465sixnine +2six327mflsr +qpeightwo4sixfivetwokvzhkg +4seven9jmbnjrhrtthree +4flchcfh1four +94fourldjgvg7drlcxqtnv2 +99sevenfourmfhnjg9 +32fivesix275ninelpmkponeightnp +9xzgfxcmplrzjsbnlkgcbnpchth +htoneighttntmj6ninethreen7 +64one9sevenghcqjjrseven +8nvkfqkbbpzseven63zpnbbnine62 +fivefoursmdnvczb6 +mmrqfrtwo2hhpk7eightthree +dnrrfklrpxstln57vqzkrxlqnmsvmgdbthreeoneightc +19rqmvljqfrmfoureightseven +twofive9vm1csqlrvngtfiveeight +zeightwofivefour6gcmh97 +7pzts +42ninecnbthreedlgglgp +3kqthqfprdntgbfqqc +sixdrrqxxdgl8dhf4 +51three +39qpctcjfnh7 +9bfour4 +onefourseventwohbqpxn73 +jzbqdcsevenseven8seven8mmbktn +xlzeightwo3648threegrfourrjzvz +eighttmmtcrqhlpnrjjlchrvvthree6 +5five3one69eightthf +bctwonelppl122bkfivetwo +foursix2ddxqqz +hbmcnbvdhpkhp3sv88 +csdp3onebjxxlckthreetwoplskdphhmp +rvkdmmgfvsfive8ggvcvxgjgrsix +7zjsdzbeightfour7 +four3qfsvmbhhfv276 +krdnine4bnneightbpxfdvl9pcf +scdklgdh46fivefiveseven24seven +9rmmsthreethrlxjtjkb +7fivesevenstfourfivecddbzmxrrqeight +fivethreeninexgkpmpbvsix7 +sixvqpdpfk43rhmd9 +2zvkhxtfourpdfnsbsnbvone +four7lrcvtsczdp2sixvvlkzrzzk9gcxtmx7 +61pzlq74cmlkjvseven +qcjzncctvv237dsjvqm2three +89threezgd2eight8 +nxll6fivev6kt4rmtfkrnkfive +lvxxvnpzlrk8sbmbnhtmlds +sevensevenjhcxcninesevendlghdvfj5mkmdb +vfq4 +gxkcbkknqg8187eight +six79tcdlv +bsntwone3six8 +8nd +qdlhkvvpxrtgbrzpmcfourfivegpjqjfbfmngnnbpshfkdpsdgj2 +threetjbcjmzlcvnchp34nineseven +zjpxzkdlmhcbzkrflvfour5mdqldvgrnx5sixlmgjpqx +cjnvmsdrpmq8 +threeqr8xrxgv87 +rcfsntqrlonezlgl7dhlflqckc9vhd21 +9three7three +ptkqnrtmrnsixfiveseven67 +44fourfive9 +4fstrhjjctsvrz7cpbr6gjpkkxglx +6rjqcmpfbp +731 +fivexdfkzmjs3146five6kvdsnvsxsj +dhhz6 +sltpllcs4seven8771 +1fourkjfhfcfxbeightseven8three +sevengrzlghdkg8three +sixsixnkgfcfivekqfzsj59 +4qbqggqlmjkrgnrxthree9dxgssjkrseven +xhlmbone3one8 +3t +8six37 +fivethree3onegthree9thhfzp +9xdmvkx7fourfxpgsvnine77 +coneightfivedfkqrfjcckghzsrtrc9sevenone1 +five4ninevxldttfxxdfxfhttbxkvjkfour23 +cpfklzcpp2eightfjqcrsmhlnxckxmtdchbzqblqsqqp +34six1 +5fivex4 +fivefivepjfrpzdvcq2 +onelnppnxczthreelldqndvt3 +nine699ninexjnine +16one74 +8jdkblqbq59zlkhj97one +ckrft6sixeight +fourldmq24 +87zvt +threefiveone75hxnqqsjroneeight +lsxlzvssshlvbr5vtvgsznrxhkp73 +threeknpqxxgg84 +oneone3mvtlxjhfiveksgpnms9kzkf +thxrqsrninefourfive31kbcp57 +fivesixnine6oneqgxckbjqfszpsvhjgms +eightsix83 +ttwone9qqhg7 +7fhvffiveftkbfgxsdfourthree1 +hbkst6foursixdndhmtwosix +mhgxpvgmndjgsftqjkkxkfzxmhgtdpxxmbztwo6six +two6ljpjc8ffgmblpxrcsevenvbsm +xqbmzh85mqchftctnfourfkeight7 +xlbltdqcsx2sixmqdzvxhqj +eight468 +nine2rcrgfpx5 +eight5tjoneseven +hncnnjvbdfdfcthree1 +sixzfllx24threesevensix +7eighteight +8652sslmpr1 +m88ktthbnh5 +six1ninethree +sevengtb6 +9eightzpdkqzp3 +tplshfhqsshs4 +4twothreefpj +48threetwockbzxdhqp4eight +eightmkeightjdgmvxdqfx7 +six99 +69one +twodmnzphhsb2 +three3zhqckdqeight1 +2x9xjzgtdgk5ninefourseven +4vrpseven7tq +86cjqrqp +one8four67 +three7two7six2kxl +bhnbkthreetwofqchzvbxjqqm4seven4five +onehncctk2qnphtkjns +6stmbmtj1ms +mdhmknhftkdtnrgkbmh7six1six +six4three5 +fnccxltjdn4gteightfourone3 +twofoureight5seven4 +four7twosix8three +pgvjtszlkx4 +threeseven438two5 +six78qhspmhqtkc +56sevenjdfvfbzvsgthreemrbmcqctgonesixppg +fivesevenlsixvgxfkxtbclkbsqt35 +sixeightfiveseven7three +frmgthreefour3szxtf1 +5eightrvflvtqzq8sevenj +five5dbtfxqxzfour52mxfzmkfks +2ggjtsdmdr6 +cpszsjthree4 +rrd8rrfcvzhcdr651rfc6h +sfnfsc89eighttmsc888t +46eight +992sevenzsxkzxxppnkxlxkpbz +seven93tzgthree +952sszqqqrc1seven +fivetwo3sevenfive4 +pfgdhlvv23onesixtwoznfrlcndlvr8 +mhcvnl1three5 +3twofour3pgjtjp2five1 +nfcvxxcltwo49khnmggcdlr5 +8frh21n +6p477xtfrhvclvnxpbdmftrgd2 +sevenbqsdxlceight3 +seven2nine86jx +44cqv +7bfgmrc +88twoonethree4m5oneightn +94eightthreefourdqdrnx8threetwonepbt +onegvkdxllnd76 +onechljqc4mvhljvcgbthree +2ninenine1two +threenineone8ggnbmnfcnfteightsix1 +eight6fivermqnm94onessnplzpkzjm +7fivezcnlhtfournine +pfourvpqfqz7foursix +sevenonedcs9 +threebfspz4b6sevennzkznbd7 +tbg56jzgmkgmxnbncvtgrpk4 +337sdxdlbqd2 +4tcvrpvqkkhhthmcjzggqgmpdonektzmrrszs +twocfgqtp7 +sevenfcmgkblzh4mvgjmktn4 +ptnqxxf1two +fqftxjznine186three +6foursevenonenjkbdjfbhhtvdthreethreeeight +4two3 +zhronethree2six3five7 +3fxbqvvkh6twoneftm +zf2two4xndhkmb93 +fivefivefour9rhcjxxtbtd63nxtk +five3qpvgdcqcvcvbn6 +1qjckjqkbqvbtqkrbvkxp +2gnglzbllksix6fgfjrrltrhrspl5seven +four6five8gpktxzxcdtvqsevenqlbsnine +seven6lgkknlfouronegxnine2 +9ninefour8fourpd2threetwo +358lmjlsevensjrlhkbspkqxcfourmktxqrhjz +mbqnmgjcbninenine82djlmzk38 +four6lgd66eighteight8 +three566 +czeightwoninefive7one +threecmkmzszq337rsctbvvpgvlfvreight +btwone91blrcbjvpfl +cgfddzmnmz3 +seven3sixsixnqt9 +xsthfourtwo1nine5dpvjpnine +97fpjzktsixtzpdseven5 +seven6fivefive +two16 +nddxvnqnggdzcnhthree2 +1sixseven +three1nvpdzhrndgbvfiveeight1 +134 +threeeightlvbp6 +qmrmqcjkdfoursixfive8915six +2jrsix78twoninefour +5vgtsevenfoureighttmntdgptbvxonez +2npzxnpmdtxctgeightrbvrgdkqthree5fg +hxtvnvqffivekgzcl6dtmplhqprfdbzdoneninesix +two384zlqs8351 +2sevensgnxgzkqsixtwo +nkone877fivegtr +ldr43 +six3nrstcpvfive6 +one799onenineseven +4onetwofourfourghpzmgjthree +one53two8tnmlpcxvvqvrtjthreefour +49nine +sgnxr3two +threeblnc1six3hvdlj1 +8sskxtzkl35hknine8one +keightcqbkbz9gsbxdqshzngxcbjqtqn +7foursixnine +sbhv3lvkgsgk +dmvthree152cjh +two6nzdd7rrltcngdbshfzlhsix +1nxthreetchfsleightq6v +5threevrc9four6st +b2threeeightonesix44hnxzcm +2threefourfournine +1fxbbfszjhseven +lrxhhqdzx2sixsixtwo7eight6nine +2eightmzzcgszpxr +7nine7sevenzndthknx1 +kkstmkvmfeight92ninelpxhsssk9 +1zjpvbmzdxxc +ninevtqgtzxtprbst1bxxsrrrztnhbjrdqvlheightvbhncs +7seven8threeeight +mfzkktfoneseven8pvqpszgqjszx +lr9kddzcxmmxc253lxfournine +three29gpbvjthree6hcnxzqcdcj +sixljtcnxbq8vnbrjgd9qsqonethreenzdnvjjg +vpeightwo15 +lctthree6four14nine +eightfiveone47sevenhdxtlninegffpzhjmh +foursixhtx9nineseven8 +seven94four +9h6nine +fivemxkfxvbpneight8hqlmmrmeight6 +five5bhrghlfiveseventhreeoneseven +eight79nbmspstpkxhttvrq +xqcmqxnine6 +prcnjkshkvlcgsixfiveone6 +btbcs2rsrcrshzp8six89 +5tg578fldlcxponefourtwonet +v4 +gqrnpz5sth +xcsmcfour3eightts +eight691seven8cxdbveightzv +onenjhcd9 diff --git a/AdventOfCode.Tests/Data/2023_Input_Day_2.tst.data b/AdventOfCode.Tests/Data/2023_Input_Day_2.tst.data new file mode 100644 index 0000000..ef98355 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Input_Day_2.tst.data @@ -0,0 +1,100 @@ +Game 1: 1 green, 2 blue; 15 blue, 12 red, 2 green; 4 red, 6 blue; 10 blue, 8 red; 3 red, 12 blue; 1 green, 12 red, 8 blue +Game 2: 5 green, 2 red, 18 blue; 18 blue, 6 red, 9 green; 6 blue, 3 green; 6 green, 1 red, 9 blue; 19 blue, 2 green, 6 red +Game 3: 16 red, 10 green; 12 red, 6 blue, 9 green; 10 green, 5 blue; 10 green, 16 red; 5 red, 8 green, 8 blue +Game 4: 9 blue, 20 green; 1 red, 3 blue, 10 green; 7 blue, 18 green; 4 blue, 20 green; 8 blue, 1 green, 1 red; 1 green +Game 5: 3 green, 8 red; 1 blue, 10 red; 6 red, 4 green; 8 red, 1 blue, 3 green; 1 blue, 4 green, 3 red; 1 green, 1 blue, 4 red +Game 6: 7 green, 15 red, 11 blue; 2 red, 12 blue; 11 red, 11 green +Game 7: 14 green, 10 blue, 4 red; 3 red, 11 green, 14 blue; 1 red, 2 green, 11 blue; 9 green, 1 red; 6 red, 6 blue, 9 green +Game 8: 1 red, 6 green, 3 blue; 4 green; 4 red, 3 green, 1 blue; 2 red, 10 green, 3 blue; 2 green, 6 red, 3 blue +Game 9: 2 green, 8 red, 3 blue; 2 green, 4 blue, 2 red; 2 green, 5 blue, 2 red +Game 10: 9 green, 1 blue; 2 blue, 12 green, 3 red; 2 red, 3 blue, 1 green; 3 blue, 8 green; 4 blue, 4 red, 1 green; 5 green, 4 blue +Game 11: 5 red, 2 blue, 2 green; 3 blue, 2 green, 8 red; 6 red, 1 green +Game 12: 8 blue, 7 green; 2 green, 2 red, 7 blue; 4 green, 1 red, 20 blue; 5 green, 13 blue, 2 red +Game 13: 1 blue, 11 green, 13 red; 6 blue, 13 red, 19 green; 5 blue, 6 green, 6 red +Game 14: 12 blue, 1 red, 15 green; 16 green; 1 red, 18 blue, 15 green; 14 blue; 12 blue, 1 red, 8 green; 4 blue, 16 green +Game 15: 6 blue, 3 green; 1 red, 1 blue, 2 green; 3 green, 4 blue, 7 red +Game 16: 17 red, 14 green, 6 blue; 5 blue, 2 red; 1 blue, 11 red, 2 green; 13 green, 12 red +Game 17: 14 green, 4 red; 1 green, 5 blue, 15 red; 5 green, 14 red, 5 blue +Game 18: 8 blue, 2 green, 1 red; 12 blue, 1 green; 1 green, 1 red, 5 blue; 1 green, 1 red, 9 blue +Game 19: 1 red, 2 blue; 2 green, 5 red; 1 blue, 2 green, 11 red; 10 red; 4 green, 11 red +Game 20: 5 red, 11 green, 5 blue; 2 red, 5 blue, 7 green; 12 blue, 5 green, 10 red; 4 blue, 15 red, 10 green; 11 green, 12 blue, 7 red; 15 red, 12 blue, 5 green +Game 21: 5 blue, 6 green, 1 red; 18 blue, 13 green; 7 blue, 3 red; 9 blue, 2 red, 14 green +Game 22: 4 blue, 2 green, 19 red; 11 green, 5 blue, 17 red; 12 red, 4 blue, 13 green; 2 blue, 11 green; 1 blue, 19 red, 10 green; 8 blue, 2 green +Game 23: 12 green, 6 red; 1 blue, 1 red, 11 green; 1 blue, 3 red, 8 green; 4 green, 8 red +Game 24: 8 blue, 1 green, 6 red; 6 blue, 9 red; 8 red, 1 green, 1 blue +Game 25: 2 red, 4 blue, 1 green; 1 blue, 4 red, 2 green; 1 green, 5 blue, 1 red; 3 red, 2 blue +Game 26: 2 green, 10 blue, 5 red; 14 blue, 6 green, 12 red; 7 green, 2 red, 1 blue; 3 blue, 5 green, 3 red; 7 blue, 1 red, 3 green; 5 red, 2 green, 6 blue +Game 27: 8 blue, 2 red; 2 green, 8 blue, 6 red; 4 green, 2 red; 2 blue, 4 green, 7 red +Game 28: 8 green; 1 red, 9 blue, 10 green; 8 green, 9 blue, 2 red +Game 29: 5 red, 3 green, 2 blue; 12 red, 6 blue, 1 green; 6 red, 12 blue; 2 green, 4 blue, 5 red +Game 30: 9 red, 1 blue, 2 green; 13 green, 12 blue, 11 red; 11 red, 5 green, 9 blue; 4 blue, 12 green, 3 red; 10 red, 8 green; 2 red, 3 blue, 12 green +Game 31: 11 green, 5 red; 1 green, 4 red; 6 green, 9 red, 2 blue +Game 32: 6 blue, 3 red; 2 red, 11 blue, 4 green; 1 green, 4 red, 12 blue; 3 blue, 2 red +Game 33: 1 green, 7 red; 15 red, 15 green, 1 blue; 15 green, 3 red; 1 blue, 13 green, 6 red; 1 blue, 13 green, 20 red +Game 34: 3 red, 5 green, 1 blue; 13 green, 5 blue, 2 red; 3 red, 3 blue, 8 green; 3 blue, 1 red, 1 green; 4 blue, 3 red; 9 green, 3 red +Game 35: 6 blue, 8 green; 6 red, 9 blue, 12 green; 4 green, 3 blue; 5 red, 3 blue +Game 36: 17 green, 1 red, 1 blue; 1 red, 7 blue, 13 green; 6 blue, 5 green; 9 blue, 6 red, 5 green +Game 37: 2 green, 16 blue, 1 red; 3 red, 5 blue, 4 green; 3 green, 5 red, 2 blue +Game 38: 10 red, 3 blue, 1 green; 2 blue, 4 red; 7 red, 1 blue; 8 blue, 5 red, 11 green; 12 green, 4 blue, 8 red +Game 39: 3 blue, 3 green, 1 red; 5 green, 9 blue; 1 green, 6 blue; 5 blue, 7 green, 1 red; 9 blue, 1 green +Game 40: 1 blue, 2 red, 2 green; 2 green, 14 blue; 2 red, 6 blue; 13 blue; 2 green, 10 blue +Game 41: 1 red, 1 blue, 1 green; 11 green, 1 red; 4 green; 5 green; 1 blue, 1 red, 10 green +Game 42: 4 blue, 3 red, 2 green; 6 red, 1 blue, 6 green; 11 red, 7 blue, 3 green; 6 blue, 7 red, 1 green; 11 red, 1 green, 6 blue; 2 blue, 4 green, 10 red +Game 43: 3 red, 5 blue; 2 green, 4 red, 3 blue; 7 red, 10 blue, 13 green +Game 44: 13 green, 5 blue, 3 red; 1 green, 5 blue, 8 red; 11 green, 4 blue, 9 red; 5 blue, 7 green, 9 red +Game 45: 12 red, 9 blue, 5 green; 9 green, 3 red; 3 green, 11 blue, 15 red +Game 46: 5 blue, 2 green, 1 red; 1 blue, 3 red, 3 green; 2 green, 7 blue +Game 47: 8 red, 8 green, 5 blue; 12 blue, 8 green, 7 red; 5 red, 1 blue, 2 green; 1 red, 4 green, 6 blue; 1 red, 3 blue; 5 green, 1 red, 3 blue +Game 48: 3 blue, 2 red, 5 green; 4 green, 5 blue; 3 blue, 13 green, 5 red +Game 49: 4 red, 9 blue, 1 green; 12 red, 8 blue; 5 red, 2 blue, 1 green; 11 red, 2 green, 9 blue; 8 red, 9 blue, 3 green +Game 50: 3 blue, 2 red; 3 blue, 7 green; 4 red, 2 blue, 8 green; 7 green, 2 blue, 4 red; 3 red, 3 green; 6 green, 4 red, 2 blue +Game 51: 9 blue, 4 red, 2 green; 5 red, 3 green, 3 blue; 5 green, 10 blue, 5 red; 8 red, 11 blue, 5 green; 1 red, 3 blue, 7 green +Game 52: 1 blue, 9 red, 6 green; 8 red, 1 blue, 4 green; 13 green, 3 blue, 6 red; 3 green, 9 red; 3 blue, 12 green, 7 red +Game 53: 1 blue, 9 green; 1 red, 2 green; 7 green, 1 red +Game 54: 3 green, 3 blue, 9 red; 6 blue, 11 green, 1 red; 6 green, 1 red, 4 blue; 4 blue, 2 red, 13 green; 3 green, 1 red; 6 blue, 3 green, 8 red +Game 55: 1 blue, 6 green; 4 red, 5 green; 8 red, 12 green; 5 red, 1 blue, 7 green; 1 blue, 11 red, 3 green +Game 56: 1 green, 11 red, 1 blue; 2 green, 8 blue, 3 red; 5 blue, 6 red, 1 green +Game 57: 5 green, 3 red, 2 blue; 10 green, 12 blue, 16 red; 7 blue, 13 red, 11 green +Game 58: 5 green, 16 blue, 5 red; 9 blue, 2 green, 5 red; 5 blue, 3 red, 9 green +Game 59: 2 blue, 2 red; 7 blue, 3 green, 4 red; 2 green, 1 blue +Game 60: 12 red, 5 green, 1 blue; 2 blue, 12 red, 4 green; 16 red, 4 green, 2 blue +Game 61: 3 green, 1 blue, 6 red; 4 green, 1 blue, 8 red; 4 red, 1 blue, 1 green; 4 green, 13 red +Game 62: 2 red, 4 blue; 2 blue, 13 green, 8 red; 4 red, 9 green, 4 blue; 8 green, 3 red, 7 blue; 3 blue, 6 red, 3 green +Game 63: 1 green, 3 blue; 6 blue, 4 red, 3 green; 3 blue, 1 green, 1 red; 2 green, 2 blue, 3 red; 1 red, 2 blue; 5 red, 6 blue +Game 64: 7 red, 10 blue, 4 green; 1 green, 18 red, 2 blue; 7 blue, 2 green; 10 red, 1 green, 7 blue; 3 green, 5 blue, 11 red +Game 65: 11 red, 2 blue; 1 green, 2 blue, 1 red; 3 blue, 2 green, 3 red; 3 blue, 3 red, 7 green +Game 66: 3 red, 7 blue, 11 green; 10 blue, 4 green, 9 red; 11 blue, 11 red, 12 green; 8 red, 7 blue, 10 green; 5 red, 14 green, 3 blue +Game 67: 5 green, 1 red; 7 green, 4 blue; 3 red, 1 green, 3 blue +Game 68: 9 blue, 11 green, 10 red; 12 blue, 3 red, 3 green; 8 red, 7 green, 9 blue +Game 69: 1 green, 7 blue, 1 red; 1 red, 9 blue; 1 green, 2 red +Game 70: 9 green, 2 blue, 1 red; 1 red, 2 blue, 16 green; 13 green, 4 blue, 13 red; 8 red, 7 green, 6 blue; 12 green, 3 blue, 3 red +Game 71: 2 green, 4 red, 6 blue; 11 green, 6 blue, 2 red; 3 green, 1 blue, 5 red; 7 blue, 6 green +Game 72: 4 blue, 1 green; 4 blue; 1 green, 3 blue; 4 blue; 1 red, 4 blue; 3 blue +Game 73: 4 red, 1 green, 7 blue; 15 green, 4 blue, 17 red; 19 green, 3 blue, 11 red; 13 green, 5 blue, 1 red; 10 blue, 13 green, 17 red +Game 74: 9 green, 2 blue, 18 red; 5 red, 8 green; 3 green, 4 blue, 3 red; 5 green, 3 blue +Game 75: 1 red, 10 blue, 1 green; 2 red, 19 blue; 4 red, 10 blue; 3 red, 7 blue, 1 green; 2 red, 3 blue +Game 76: 4 green, 9 red, 7 blue; 8 green, 7 blue; 12 green, 9 red +Game 77: 1 red, 6 blue, 2 green; 8 red, 5 green, 4 blue; 4 blue, 2 red, 3 green +Game 78: 9 blue, 1 red, 8 green; 2 green, 9 blue; 2 green, 9 blue +Game 79: 4 blue, 4 green, 1 red; 4 blue, 4 red, 4 green; 4 green, 1 blue, 6 red; 6 green; 6 red +Game 80: 13 red, 8 blue; 2 green, 14 red, 13 blue; 7 red, 9 blue; 11 red, 18 blue; 2 blue, 3 red, 1 green +Game 81: 2 green, 9 red, 12 blue; 5 green, 5 red, 13 blue; 5 blue, 5 red; 2 red, 8 blue +Game 82: 6 red, 15 green; 1 blue, 15 red, 13 green; 6 green, 1 blue, 1 red; 5 red, 6 green, 1 blue +Game 83: 1 green; 1 blue, 1 green, 10 red; 7 red, 1 blue; 1 green, 11 red; 2 blue, 1 green, 3 red +Game 84: 17 green, 8 red; 1 blue, 14 green, 2 red; 6 red, 1 blue, 6 green; 4 red, 10 green, 1 blue; 2 red, 2 blue, 1 green; 4 blue, 5 green, 3 red +Game 85: 5 blue, 3 red; 1 blue, 1 green; 6 green, 1 blue, 1 red; 4 green, 2 blue, 7 red +Game 86: 7 red, 3 blue, 4 green; 1 blue, 13 red; 3 red, 3 blue, 6 green; 1 blue, 1 green, 17 red; 8 blue, 13 red, 4 green; 6 blue, 4 green, 17 red +Game 87: 10 red, 3 green, 4 blue; 12 green, 10 red, 3 blue; 2 green, 16 red; 16 red, 3 blue, 14 green; 14 green, 11 red, 1 blue; 9 red, 4 blue, 6 green +Game 88: 7 green, 4 red, 19 blue; 1 green, 5 red, 18 blue; 19 blue, 3 green, 6 red; 9 green, 14 blue, 5 red; 3 green, 5 red +Game 89: 4 red, 2 blue, 10 green; 6 blue, 5 red; 3 green, 4 blue, 1 red; 12 green, 2 red, 2 blue; 3 blue, 3 green, 3 red +Game 90: 1 green, 19 red, 1 blue; 7 blue, 4 green, 10 red; 6 blue, 3 green, 13 red +Game 91: 1 green, 9 blue; 7 green, 4 red, 3 blue; 6 green, 2 red, 8 blue; 1 red, 1 blue; 3 red, 2 green +Game 92: 18 red, 2 green, 2 blue; 6 blue, 4 red, 6 green; 3 blue, 10 red; 8 blue, 2 green, 7 red +Game 93: 13 blue, 3 green, 15 red; 14 red, 2 green, 7 blue; 1 blue, 4 green, 13 red; 19 red, 5 green +Game 94: 6 blue; 5 green, 8 blue; 1 red, 9 blue; 1 red, 8 blue; 5 green, 6 blue; 1 red +Game 95: 9 blue, 14 green; 2 green, 1 red, 1 blue; 1 red, 3 green, 2 blue; 6 green, 1 red; 1 red, 8 blue, 14 green; 1 green, 5 blue +Game 96: 7 blue, 17 green; 19 green, 3 red, 2 blue; 6 green, 2 red, 2 blue; 3 blue, 16 green; 3 red, 20 green; 4 green, 2 blue +Game 97: 1 green, 1 red, 1 blue; 4 red, 2 blue; 7 red; 6 red; 7 red +Game 98: 2 red, 15 green; 10 green, 1 red; 1 red, 11 blue, 11 green; 13 blue, 8 green, 2 red; 1 red, 12 green, 7 blue +Game 99: 14 red, 2 blue, 1 green; 3 green, 13 red, 9 blue; 9 red, 9 blue, 2 green; 13 red, 7 green, 5 blue; 5 blue, 3 green, 11 red +Game 100: 1 blue, 1 red, 1 green; 8 blue, 1 green; 1 green, 7 blue, 1 red; 1 green, 4 blue, 1 red; 1 green, 3 blue diff --git a/AdventOfCode.Tests/Data/2023_Input_Day_3.tst.data b/AdventOfCode.Tests/Data/2023_Input_Day_3.tst.data new file mode 100644 index 0000000..3b50562 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Input_Day_3.tst.data @@ -0,0 +1,140 @@ +.........................3.......................................94...............806....................596.........793...........186...... +.../..........*574.587..*........161......904.......412.........*.................*.................................=.....637.%......*...... +..614..831..33.....*...........@....*398..&.....690*............183.........503..916..790................................*.....256....632... +.........*.................332..374......................%184...........467..........*....969.632.......26....457......440.........@........ +..........535...541=........*.......696..@..323..................93=.......*.......30......*....*......-........+.222$.......458.817....66.. +....*.......................885.....*...123.=...641...&188..577.......339..688.........287.684..219.........................+...........*... +...61........397...#386...=........313........-...&............*......*................@.............../.........621+....................169 +..............*.........34..................934..........17..168..320..263.........412.......$......966.....................303.....554..... +...............353.447.......@.....251............54....*........#.............149....*...871..964.................714.....*....403...*..... +...805......$......*.......632.....#...+514.944.....*....48..........*133.959.*....814...........-.521...........................*.....398.. +..../.......906.289...238.....................*................772........*...591......260.122......*........309...677...357.....790........ +........#................/.........450.....594.................*.......705............*....&.....676...@954.%....@....&.*................... +.....310..928...+.............488.*.............790.........286..982.........416*944..103.........................351...519...705........... +..............872.....+........*..820.....5....*.....529.........*...........................@..884......356*449................*..596...... +...................780......507.........$..*...936.............406...........*560..704....931...+....618..................%243.817...*...... +.386.....937.+904......*.............540...320............702.............118.........*............../.....445.....291.............899...... +........*...........930............*......................&......204...............243....*948.....*..........*...*.......512$.............. +......956....................$..788.487...........894.955..............................479.......709.........57....374................930... +............/534..260*33..680...............324...*....*......574......219................................................../934.......-.... +..261...........................*813....=...*..........378......&....-..%...198............................885.........666.................. +...*....../........905$......706......281...314...642......701....736.......*.................................*..........*...532............ +..235..400....670.........-........................../......................849...204...197..646...............548.......61.*.........538... +.............*.............927....340...........641..............................&......*...*.........137..144...............513............ +..400./285...16.......704............*896..836.....*..........738......102.&190..........89.137............*...$582....................&.... +...*.............763...#....541....................629...........*646.............295............368@....&..62........990...@428........955. +....218...650.....*.........%................269............669...........709.......+..810.............52........447...@.........784........ +.............=.....313.............*........+..........444....*.%.........................-.....225.......684...*.........../107...*........ +..66...643.......................87...770.........=.......@.122.495.......177.....226.974.........*.580..*......921....216*.........724..... +...*..*....................328.........../...460.325.....................+...........*.........198.....-.316...............912.............. +..882..421.......%766.........*..............................978*..........124.110.......$.....................467..............780......... +...........732.........531.....439...%...........................230..........*....396..126........................508...........*.......... +............/..........*.............401..69.........$.................630............*.....114.......959...81.............515..664......43. +......-............491..929.363*.............178..686.....546...................628...4.......%......+..............106...*.........*....... +...456....154..659...+..........111.*...........-.........*...............66.%...*......%...................583../1.*.....206.......439..... +...........&...$..........548.......560................431......752......@...574.534....303...843../.................844.................... +.........%.....................320%.......871*.....647..........*....................89.............981..................................... +.92....832.....194.804.270.992................388..................%..583*..........*......255..730.............................138..121.... +.../................%..../..*.........58.106......*..373.........107......964...52.910.465..*..*........15...@.....*14.=847...........#..... +......850...503......................*......*....411....*....674...............*...........532.124.......*.471..380......................... +......*........*...390..641......99...997..688..............-......403...6.....156.....................320................*721.............. +.......471....555..*.....*......*.../................749...........*......*..........92*756................336.....241.581.................. +...................904..762..681..695.&639..903&......*.........753........936...................683-..........921..*......654....7.470..... +.........16*494.....................................395..112...........=..................601..........+..........*.901.......*....*........ +................45...........77............$..636.........*...@593...670.........*796.270..*.......%..835.501...190......369.618.%.......... +......918..@....*....597...........758..550...$...895...688...................952.....*...761...176........%..............*......261........ +.....*......957.108.....+.....788................&..........221..........-308.....$..567..............562-.............963...833............ +....431.484...............35.+.....476.902.....................$.....495.......137...........880.199.......306+................*..725....... +..........*..............*.....312...=.....50-...687...274..........................-........%.....*.................*......930...*....349.. +.....197...748.........639........=................*..*.........601*.......19....995..............470.....81.954..684....82......872...*.... +....=................................996........457..208.403........379...=...............193..........61...*...........*....37.........248. +........155...................%........*.......................................689.211...+..........52*..................969..*....922...... +......*.........151......698.723.....175..10...........&............................*......852.486......442...900....934......60.....+...... +...103.896..142*.................430.....*..........-...743.........346&.................#..*...&........*.............*.........197........ +......................811........*..................813........802.............#333...167...916...856.....590..........658....-....-...563.. +..............838.275...-......529.............718.......502....*.................................*................284.....967.............. +...8....64.......*............................*....870......*.901......606.226...................534........773....*...............*43...... +....*.........57............338*142.......589.525....*...563...................745#......152..............%..*..298..206.................... +.....311.....=............................&.........309........630.....238................*.....345......701............*.....235....541.... +..................288...596...45...............953.............%.................@....379.746......-..%.........937....571...........=...... +161@................&......*.....47.=.........#......586.....&...281............764....*...............903.=810..-............837........... +............................944..&...650.............&....918.......*..74...............369....437&............................*........777. +......146...*..................................772*.................52...@......*895.@.......................371.......*76.....282.......... +......*.....278...696...........365....=334........786........879.=..........983.....877......@38........784..*.....255....&................ +.....132.............*.849........*........................%......783...553.................................&..663......297........419.440.. +.977...........839&.......=.393&.77....895*770............636..........................-803..353+......-.......................406*.....*... +...*.=....376......................................69..........&.....116*949.......................186..295............%.................833 +261...853...*...81........993.191.810...731..........*575......636..................306...........*............129....691....999*.+712...... +...........319...&..........*..*....*....-..903*187....................890....875......@........557............&............................ +...........................840..403.255.............*.......138.........*......../.841..................257........499.........*........%... +....430.....283.........................897......566.74..11...........705.641...................71*104.*...........*........197.782......290 +.....................605..........401..../....................690....................633...............957........739....................... +.280*135...706...........709.........*................388..............813............*.....906....%..................606................... +..............*.=965...............669.......944$..............................288.131.........-.183..594...............*..852..819......... +.......#513.676......667...............93..........#.....$.......984.............#.....511.....................172.283.323............+426.. +......................%....826........$...........709..91...........*....919..........*......................./....*..........%............. +....................$.......*....829........656......................400.*....................995.798.203..........107.994.....598.543...... +.........88.../..568.......194......*931.......*654..............*........533....................*.....*................+................... +............844................491.......642..................839.603.125.....777...96..24.312.........272................671.394.....532... +........85............/...@........*339..%......914...601.............+........*.....-....*......251.......29.....962.......+........@...... +...969...............916.265....630........791&....*.*..........$.........-166..307.................*........*543.&.............445......... +..........811.457...................942.........755..944.......108..254...................322.....695....250................86..*........290 +..........+....@............-871.......*....602......................*.......................*........15.=...........274.......637.......... +.....................&810........894-..130...*..........................................315...76.....+...............*.....55............... +..........................261.................894..582.....................................*............14....%...737.....*.........+....... +..375.987........803..69.*........&....80#................685.....386.....................602....10.....%......65........932./..742.24...... +.........@.608..*......*........563........630..947.................*..........234...728..........*..........................92..*.......... +.....89.......+.550....43........................*....471......286..517.510....../......*..........966...795............$.........813....... +.....*...651...............#.../573..569..........239.*..................*...........591.....935..........*...........536...536............. +.....344.*.............681..90........*........./......43.........../...473.....................=.....679..545.................*843......... +..........610.72.952..................850.......81.........733......895.....975..........132..........*........+898.......583.........656... +790=.@179...........*........$...............................&..............@....935.......#...270..621...................#.............*... +...................618....366...776..................143.......115.../..............*....*.......=...........306.........................369 +..............258................*...97........./967.-........*.....281...%............32.65........43.721.....*...........738...462*....... +..606........*................713.....*..................513............114..746...............................86.............*......507.... +......402.....200...983...............746...335......938........488.........*......$.649.............................214.......493.......... +........*..............*32.....................*381..*....46.......*..205..16...100....*.444#....&..522........896..*...............411..... +.......583........./................734..19..........795..*.....219...*.............804.......391......*............881................&.... +..............93....228............%.......*...985........936.......%..........=..+........................361.692................784....... +.....219.................808..........755..........233............348.......463....147..............162.....*.......464$.................... +.......+....&...876...+....*..461$...$.............*.....550...........456.............826.330.........*997..657.................763........ +..../......143....%...87...............225..160*8.66.......+.....#623..*..................*.......612............709...679*........$........ +.....271..................#.....610.....................................799......*....866.....965...=.456........*.........530......./...... +.........10...#495..508.521.......+......746.........165.........-978.........638.145...*.576*...........*......926.............468...267... +...........*........*.................&....$...........*...294..............$.........822.................535.........727.351............... +...671..233.......903....541.....421..760..............299.*..............570..............540.......947.............*....*...802........... +.....#........920.........*..455*...............942.........953..390..................365.....+.........*..........779...55.......293*...... +.................*........40......50..827........*..............*......................*..&.....-....374..............................80.... +......#...........636.274...............=.......72.............785...+596.............36..59...843............206..+625....%................ +......767.......*......*..........948..............*.345..................#..........................927..861....%........701...........64.. +.242.........476.363...936....347.*.........@.....41...............31...362.447...+902.....538........*.....*......+...........262&......... +......#.........................&.517..*911..791...................*......................=....187.....926.800...54......108................ +.593..829..............................................166.524=.....................+381........+..*.................468*.............&..... +..........766*......273...347.........347..........$...............836......436............843=....473..@.....=344...............573.675.... +..............279...%........*...786..........-..100.860..........*........*....421.....................414.................616...#......... +...322....496............334.648..*....75...520......*......881....87....120....$..............*.............79.............*..........*.... +.....*......*.....................367.............704.............................&..........59.542.........*.......-992..53...811..192.556. +...308....485...948.......................383*559........282.......15.........298.774.......................377...................*......... +...............+.......348........................&.809.-.....249.......699../............740..650...584...............801*563..721..470.... +.........343..........................970...324.782................324..*...........380...*...*......*....-.........................*....... +...627$....*...713#.....799...420........*....*......................*...24..........$..131.......148......245....94*781...%.......302...... +........698.........635.+...............644..593.%......784.....-....644......................409........&.....*...........952.............. +.999.................*............................627.........866..........418..........483*.....$....227...248.665...265.......222...&..... +...*...............320...396......%......................77........186........*991..................*.................*...232....*....255... +..363..35...=39............*.......831.......892.........@...=..+........268..................513..373.....875.......48....../....680....... +.........................259.............374*...............137..482.432...&...276....132........*.....798...&.................16........... +..669*246.......................491.............+...+..492...........................*.........=..603.@..........849........................ +...............429.220......-......*..........928..304...*......177................741...482.204.........*.........+....=........36......... +...218..449.......*..........214...620.................827.252..@...689...................*......598..460.473...........341.704../...434.... +......*....*548.....-679.149.................................%......*...371..........998..815...*...................................&....... +.......403................=.........166............................741.....&........%...........329.............62..............*........... +..706*......991*738..347.....571...*....983..........+..208...319...............406..................175#......*.................891........ +......392...........*...........*.409.....*........72......*.-.........233.......*...........................478.............256............ +...................559..................-.540..734........6....*.......-......771............398.729.............928#..+.................... +.....603.......472................%...892..............=....314.684.......712............206......+.....657.%..........844.584.456...=...... +......*..........*..#..........801...............738...524.................*........817.......+........*....57.............*..........749... +648..799........517.999...............#...........$..+.....................742..516*....939=..694...945..................863...480.......... +..........700........................994....314......214....105.............................................#....137............*...522..... +...153.....*.........685..283................*...151........*....#....232......$.......99.92...863....*.....567.....*.285.....69.....*...... +............205.........*..*..............275....*.........220...644...*....293.........$..%..*....337.91...............*.............963... +.......................844.32......449..........932....................869....................77......................288................... diff --git a/AdventOfCode.Tests/Data/2023_Input_Day_4.tst.data b/AdventOfCode.Tests/Data/2023_Input_Day_4.tst.data new file mode 100644 index 0000000..1769597 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Input_Day_4.tst.data @@ -0,0 +1,199 @@ +Card 1: 66 92 4 54 39 76 49 27 61 56 | 66 59 85 54 61 86 37 49 6 18 81 39 4 56 2 48 76 72 71 25 27 67 10 92 13 +Card 2: 8 9 21 99 15 84 39 47 63 18 | 10 50 55 75 78 28 47 19 63 81 8 61 5 66 3 7 12 27 33 9 16 39 17 4 64 +Card 3: 85 17 43 97 49 48 24 72 64 42 | 91 94 18 23 45 95 77 8 5 13 65 66 96 47 86 93 90 98 67 50 20 73 99 32 15 +Card 4: 54 82 19 99 2 28 7 86 41 55 | 14 55 23 88 98 57 79 28 13 34 53 86 39 41 54 99 19 42 25 10 4 47 8 94 2 +Card 5: 49 11 83 64 89 40 19 39 7 9 | 89 43 23 57 24 49 27 37 50 42 58 55 6 81 8 12 2 39 70 94 83 90 4 74 67 +Card 6: 65 11 96 47 25 57 89 88 71 24 | 6 33 38 45 84 74 8 93 67 13 64 2 43 61 15 88 30 22 20 39 68 91 37 18 10 +Card 7: 96 55 17 61 88 8 54 50 22 30 | 61 38 17 74 41 32 1 22 19 50 97 57 86 58 96 4 76 54 55 90 34 85 8 88 30 +Card 8: 70 93 31 55 11 16 69 98 41 64 | 69 11 1 6 48 77 16 88 19 70 42 64 65 43 85 79 98 44 12 55 36 41 13 14 93 +Card 9: 5 95 64 30 40 39 21 51 52 69 | 45 78 12 5 76 49 59 62 41 43 87 47 52 98 61 40 17 55 29 90 54 85 15 79 88 +Card 10: 44 32 54 74 50 77 13 35 95 65 | 22 74 60 18 88 25 73 45 69 47 50 13 99 65 4 16 77 14 81 56 54 58 44 28 61 +Card 11: 68 49 41 59 70 17 56 33 15 63 | 27 12 37 85 39 41 69 86 81 78 87 74 19 68 13 8 50 59 22 98 23 93 91 90 46 +Card 12: 85 46 97 69 87 33 47 92 80 54 | 66 78 7 6 9 87 73 29 81 93 4 97 24 14 13 31 52 74 79 28 18 83 51 10 61 +Card 13: 23 75 54 97 92 4 41 99 95 56 | 63 92 71 99 25 53 57 97 4 23 34 40 22 27 59 41 70 75 46 10 67 65 29 95 7 +Card 14: 4 43 73 89 85 41 60 58 47 42 | 56 42 1 94 33 43 47 50 79 12 90 91 65 88 60 63 53 55 27 59 85 41 78 72 9 +Card 15: 72 4 73 56 11 26 45 23 89 14 | 9 40 30 55 69 95 72 3 49 88 61 71 13 67 38 59 23 36 87 89 93 53 8 73 14 +Card 16: 90 34 79 48 37 99 63 10 2 13 | 13 74 83 75 8 59 40 25 26 47 66 41 23 82 10 89 43 38 56 96 94 90 42 5 88 +Card 17: 55 78 73 65 49 48 15 11 16 4 | 14 98 80 73 82 21 88 22 72 85 99 42 57 78 62 77 29 11 8 86 74 30 91 95 48 +Card 18: 53 33 61 49 46 45 66 10 16 35 | 45 3 63 52 55 97 10 60 11 21 33 24 65 17 30 58 77 56 13 62 44 82 6 5 29 +Card 19: 85 19 4 3 80 28 39 20 35 30 | 2 63 32 12 21 15 77 13 6 55 27 81 49 74 99 20 72 94 60 37 41 50 24 69 17 +Card 20: 22 34 49 33 29 11 39 30 84 32 | 86 9 25 18 54 13 80 94 32 11 69 61 48 7 64 70 43 56 74 35 87 12 38 4 89 +Card 21: 73 8 49 77 69 29 42 32 80 91 | 93 47 14 28 2 18 86 87 62 85 57 64 50 3 67 1 95 19 71 9 31 44 52 58 25 +Card 22: 70 27 22 21 28 51 89 62 77 7 | 6 49 36 94 64 61 52 41 99 86 32 47 53 54 69 12 84 58 57 81 23 63 4 55 38 +Card 23: 31 22 64 50 3 18 34 41 67 47 | 22 64 81 3 73 19 18 80 50 85 48 31 70 8 34 47 43 41 69 6 67 75 74 83 92 +Card 24: 54 93 70 46 83 26 61 49 30 87 | 16 97 22 80 54 49 55 70 56 46 83 59 26 93 21 14 30 87 4 84 33 61 81 98 9 +Card 25: 74 11 97 31 5 24 52 27 51 76 | 95 51 11 27 87 60 5 53 50 63 45 97 6 74 66 84 75 31 24 52 99 56 76 17 10 +Card 26: 22 1 7 80 31 15 69 91 19 48 | 25 97 21 74 24 7 15 77 75 76 52 37 80 28 89 36 65 32 33 91 10 22 48 70 59 +Card 27: 82 95 44 42 7 68 83 43 86 47 | 64 50 47 13 15 92 94 65 25 57 46 95 2 77 32 28 14 85 81 90 52 83 22 19 53 +Card 28: 14 13 12 27 98 60 92 79 49 66 | 68 75 94 54 47 58 28 36 72 90 73 2 4 79 59 97 20 33 55 63 99 65 19 81 86 +Card 29: 50 3 21 88 22 78 29 99 45 18 | 37 58 60 99 55 49 63 50 47 54 8 77 88 15 84 9 26 1 3 79 24 14 22 97 28 +Card 30: 95 62 97 61 40 48 46 22 73 2 | 19 68 46 74 82 57 99 90 49 79 61 26 77 88 33 94 13 98 16 63 40 4 14 15 59 +Card 31: 93 95 81 21 34 9 6 47 96 94 | 95 89 31 94 21 59 86 48 64 81 28 5 71 47 84 51 11 79 15 91 98 29 23 24 6 +Card 32: 99 57 79 76 88 34 85 35 3 81 | 12 38 52 20 9 86 54 77 48 93 71 45 92 69 32 59 13 18 50 87 56 4 73 39 96 +Card 33: 64 36 39 42 81 70 57 22 19 83 | 7 18 17 84 61 94 72 52 55 44 39 49 6 74 76 45 85 30 48 20 33 83 34 98 73 +Card 34: 58 27 41 83 17 92 89 86 60 43 | 55 37 70 68 39 86 13 92 18 40 60 38 89 41 28 43 3 2 30 95 45 51 74 17 7 +Card 35: 54 84 96 24 41 30 75 53 3 49 | 68 53 47 12 67 3 29 35 81 42 19 23 45 52 8 96 9 5 87 15 90 40 62 77 33 +Card 36: 43 13 23 87 80 4 45 17 97 22 | 34 13 79 53 45 74 17 44 28 40 97 87 60 43 46 4 25 27 11 56 31 5 93 18 99 +Card 37: 78 2 47 82 7 66 64 14 16 81 | 29 67 3 47 18 58 57 25 39 10 15 56 86 13 72 34 74 61 79 26 31 38 81 89 71 +Card 38: 51 74 98 82 79 13 90 3 38 69 | 16 41 7 4 90 22 58 18 51 79 13 74 3 45 47 82 40 69 54 1 89 78 70 84 23 +Card 39: 50 70 52 29 69 11 86 73 5 18 | 87 62 27 68 47 28 99 92 85 9 88 31 30 17 25 59 69 51 66 61 16 5 1 80 13 +Card 40: 82 61 98 72 81 93 15 50 68 48 | 57 86 1 39 22 62 3 35 24 69 67 94 90 41 9 70 82 87 56 92 97 21 7 30 17 +Card 41: 96 24 98 53 19 1 84 32 90 2 | 18 14 31 83 34 99 71 79 50 61 2 54 62 89 25 45 29 35 44 98 76 38 86 20 85 +Card 42: 49 37 17 74 38 87 66 73 68 7 | 5 49 84 26 62 23 14 7 68 34 25 65 39 16 44 61 82 87 69 10 45 74 97 81 13 +Card 43: 77 37 23 93 2 48 54 61 81 74 | 5 44 86 83 38 15 49 13 80 40 65 16 4 62 85 25 8 58 66 45 7 87 75 33 30 +Card 44: 76 35 10 55 88 26 1 48 33 22 | 52 30 61 62 9 20 86 90 3 96 1 22 99 67 95 66 11 31 94 38 21 47 16 89 80 +Card 45: 1 28 48 62 99 21 9 45 30 10 | 13 20 4 58 66 72 14 41 85 7 8 31 69 22 64 67 32 91 59 57 27 50 23 89 38 +Card 46: 45 17 4 97 37 92 71 56 81 95 | 28 43 40 64 33 35 10 83 65 38 41 95 72 15 73 19 23 24 26 87 11 98 18 48 79 +Card 47: 44 11 20 5 3 64 78 60 41 84 | 81 62 45 99 59 75 8 13 82 88 35 83 30 87 96 21 2 49 1 48 77 73 71 43 51 +Card 48: 25 45 65 44 55 16 27 48 81 64 | 65 31 3 18 15 68 71 44 62 42 48 49 27 34 75 89 84 35 93 73 29 99 55 32 98 +Card 49: 42 94 97 36 96 18 19 69 98 22 | 77 58 40 53 57 97 91 6 86 20 35 78 26 93 85 9 68 10 96 99 21 62 29 16 81 +Card 50: 81 45 6 37 19 72 40 23 65 71 | 99 12 71 25 34 40 18 32 48 37 43 9 14 98 77 45 42 90 74 96 92 53 97 72 89 +Card 51: 47 57 22 48 44 15 85 93 81 54 | 69 55 11 87 49 14 78 22 10 7 68 53 43 38 48 94 28 18 30 9 56 44 91 85 15 +Card 52: 20 34 38 61 62 17 50 33 59 7 | 93 35 67 7 61 62 95 6 42 40 50 80 13 88 72 37 32 59 53 71 18 96 58 86 55 +Card 53: 65 41 5 79 67 35 55 25 45 42 | 65 96 1 5 11 98 92 15 4 45 86 63 8 20 6 72 26 97 25 21 78 87 2 7 61 +Card 54: 79 12 1 74 8 85 25 69 29 59 | 97 26 71 79 82 1 61 5 4 59 29 69 6 31 8 75 85 2 12 19 72 70 32 39 55 +Card 55: 72 98 84 44 37 56 75 42 68 8 | 91 32 82 44 4 52 59 30 55 18 8 79 36 61 72 20 58 9 69 84 54 68 63 60 77 +Card 56: 43 80 7 27 66 79 26 50 63 72 | 26 52 17 41 5 79 11 9 1 2 57 72 60 33 54 22 7 4 27 82 85 47 12 8 10 +Card 57: 81 93 2 31 20 34 53 98 90 1 | 30 69 32 65 9 80 84 94 37 78 26 18 13 15 12 17 91 74 34 73 81 43 4 46 38 +Card 58: 86 8 51 30 44 81 62 10 95 91 | 31 15 45 2 11 52 99 87 49 55 21 53 66 88 70 28 61 74 38 80 67 69 43 14 32 +Card 59: 67 60 59 87 52 39 7 65 98 30 | 51 53 4 27 14 25 88 8 41 39 86 96 38 75 9 11 76 10 55 78 93 18 85 35 84 +Card 60: 58 39 34 31 66 40 80 24 78 71 | 89 33 91 60 16 35 18 70 22 41 54 75 37 99 53 32 2 55 46 19 84 63 15 72 25 +Card 61: 26 53 99 43 93 9 37 38 65 46 | 97 68 54 87 24 78 88 19 91 90 95 2 7 84 67 29 22 27 28 23 8 51 42 31 16 +Card 62: 71 32 42 7 68 17 29 93 99 55 | 16 88 85 40 11 49 75 9 15 46 70 31 58 22 18 64 79 86 28 1 27 35 54 50 43 +Card 63: 78 58 70 40 11 62 24 19 16 68 | 62 59 44 31 97 11 94 78 83 64 43 40 58 36 98 16 20 68 19 1 84 46 29 24 70 +Card 64: 88 7 39 76 19 53 35 28 20 1 | 46 20 66 1 44 39 60 30 7 76 56 18 42 61 14 57 84 23 89 54 10 2 93 58 80 +Card 65: 20 12 95 39 73 7 48 67 28 62 | 60 1 69 81 63 47 25 10 76 27 12 20 28 48 52 16 89 95 57 59 17 62 72 61 99 +Card 66: 46 93 50 57 53 62 8 69 7 23 | 6 34 82 29 71 45 60 61 25 8 1 85 98 83 13 46 4 42 59 43 44 11 16 28 81 +Card 67: 9 32 39 18 15 33 16 84 34 35 | 18 39 52 46 84 60 9 32 35 79 16 77 80 72 15 6 36 88 65 34 78 67 83 33 87 +Card 68: 29 99 33 41 36 3 43 60 27 72 | 95 16 85 72 36 40 29 69 41 27 14 97 20 84 33 90 75 99 60 81 43 58 3 74 45 +Card 69: 2 31 13 80 84 15 5 66 40 26 | 19 86 55 9 46 5 39 96 64 58 54 48 26 32 2 53 62 77 79 94 70 16 35 92 68 +Card 70: 15 13 48 63 82 71 19 11 51 1 | 18 95 50 67 13 97 96 73 41 60 86 64 42 72 82 3 94 85 69 31 36 17 2 76 39 +Card 71: 58 50 73 38 41 6 98 34 90 28 | 81 90 47 25 94 59 36 75 89 63 28 58 6 83 43 85 29 19 53 73 49 98 41 50 4 +Card 72: 13 6 65 15 77 12 97 4 93 56 | 36 3 67 74 10 20 26 22 39 84 31 98 71 38 79 62 87 2 70 25 46 50 27 53 5 +Card 73: 67 29 98 90 80 25 65 42 14 47 | 78 12 88 41 86 16 48 89 47 79 29 58 39 57 80 37 98 24 14 18 67 90 62 1 11 +Card 74: 37 77 62 93 28 75 97 21 2 88 | 73 10 89 57 70 29 36 1 65 59 82 26 75 63 66 4 44 20 90 28 50 93 15 2 33 +Card 75: 34 50 51 23 67 91 95 37 92 89 | 17 90 35 32 87 53 40 79 81 27 1 24 8 45 75 46 4 52 62 3 43 86 25 94 41 +Card 76: 34 98 36 50 53 80 82 56 29 67 | 13 21 27 11 39 7 34 78 37 41 56 77 82 12 29 64 35 65 76 96 73 68 20 58 53 +Card 77: 38 39 60 78 43 76 24 86 79 87 | 93 89 43 91 83 25 82 69 86 59 5 18 60 65 72 99 22 74 3 50 24 85 6 73 26 +Card 78: 23 70 14 53 65 6 44 85 71 99 | 95 82 73 81 40 32 49 75 47 11 1 57 39 34 74 13 42 45 79 6 37 69 20 76 56 +Card 79: 76 55 94 36 70 84 5 27 86 29 | 26 60 9 46 7 12 65 54 8 68 6 16 85 28 21 49 72 62 3 43 61 67 24 66 33 +Card 80: 48 8 42 24 83 87 44 90 4 68 | 68 34 84 1 9 41 79 67 22 91 32 28 11 53 35 83 43 98 40 95 38 50 57 30 45 +Card 81: 35 8 64 4 98 87 31 71 14 74 | 92 68 73 77 59 93 27 21 18 13 2 39 52 1 63 55 82 34 32 90 26 23 37 47 10 +Card 82: 99 84 98 14 29 78 17 24 94 92 | 4 70 73 3 60 55 76 71 79 50 58 7 61 40 38 46 43 56 90 42 22 54 16 15 32 +Card 83: 93 64 53 42 71 56 66 13 65 40 | 53 42 51 62 94 39 9 71 64 13 7 93 85 46 55 56 83 88 66 75 65 58 5 30 40 +Card 84: 64 83 75 15 84 35 71 4 36 51 | 89 83 75 4 22 32 16 17 88 23 10 81 93 99 67 53 51 84 66 64 30 28 39 36 71 +Card 85: 63 32 2 22 30 96 37 60 93 86 | 44 11 59 51 40 73 64 63 20 42 68 90 49 52 77 38 70 28 76 61 65 47 83 58 92 +Card 86: 60 68 98 62 30 44 61 91 72 75 | 30 54 1 10 38 25 40 15 81 83 39 16 36 79 52 72 37 35 46 61 95 32 31 64 56 +Card 87: 63 26 7 44 97 19 20 23 34 58 | 86 62 1 81 53 32 39 76 55 31 41 96 94 2 43 33 88 73 92 5 67 91 36 74 46 +Card 88: 2 26 86 57 37 30 50 14 8 62 | 26 4 88 14 57 22 2 50 8 43 98 70 30 62 94 77 92 37 6 49 76 85 65 86 18 +Card 89: 71 40 38 74 67 33 56 21 89 64 | 4 32 84 96 41 47 3 81 86 49 29 68 55 92 72 30 69 90 27 10 59 28 71 24 78 +Card 90: 2 7 41 33 48 69 70 99 17 30 | 84 75 2 62 50 7 34 4 85 48 33 74 13 40 11 31 99 17 70 58 59 18 30 32 88 +Card 91: 22 48 46 16 20 42 59 62 71 50 | 66 21 85 62 38 4 53 74 47 27 35 2 50 9 29 28 48 63 34 78 10 59 12 42 91 +Card 92: 99 90 59 33 24 52 15 62 43 54 | 50 49 71 45 6 31 42 38 23 54 70 4 59 24 72 91 15 3 60 66 33 90 65 20 5 +Card 93: 18 58 48 84 25 83 92 1 5 15 | 40 23 92 67 64 7 42 80 94 88 45 81 13 60 84 31 66 65 27 39 74 50 79 32 59 +Card 94: 26 31 95 29 75 82 46 51 67 91 | 95 26 3 72 80 67 96 27 81 15 18 77 58 39 51 34 45 44 37 24 84 63 31 12 46 +Card 95: 25 98 20 59 29 24 62 16 74 3 | 59 25 40 9 10 53 34 51 33 80 22 15 14 19 98 36 27 16 13 32 86 65 18 60 35 +Card 96: 23 13 48 91 43 70 21 94 10 31 | 24 52 69 17 51 28 72 60 1 76 79 71 45 49 82 63 5 96 13 9 98 75 26 66 34 +Card 97: 80 98 77 42 27 29 86 60 97 59 | 37 72 48 14 64 80 62 30 27 2 50 17 77 40 41 11 51 70 55 4 87 86 61 26 12 +Card 98: 64 27 56 90 14 92 69 17 79 3 | 47 2 40 32 62 80 5 8 35 88 7 91 20 4 75 61 19 42 13 98 66 65 85 74 11 +Card 99: 96 64 28 89 69 79 15 1 70 26 | 24 64 92 28 17 47 5 86 66 36 7 57 12 80 2 50 27 91 68 29 48 10 87 51 8 +Card 100: 98 63 40 41 13 24 95 70 25 51 | 44 49 91 93 96 4 69 18 36 29 32 57 61 66 82 6 9 99 7 39 20 90 38 58 21 +Card 101: 85 67 80 27 33 81 55 71 99 74 | 4 98 95 64 63 34 15 59 79 82 72 84 39 70 2 32 49 41 13 56 17 97 42 57 9 +Card 102: 95 17 65 25 96 8 92 69 2 52 | 37 36 78 8 32 58 82 89 9 25 17 92 52 83 88 10 87 76 96 12 95 65 69 22 2 +Card 103: 43 55 38 59 96 36 6 7 69 1 | 65 68 17 70 38 67 3 83 47 94 55 74 91 20 43 96 6 34 36 53 69 25 1 7 59 +Card 104: 34 76 55 64 54 28 52 60 24 25 | 25 55 28 73 45 84 47 53 79 27 49 91 66 54 64 7 76 39 83 24 34 60 97 8 52 +Card 105: 85 32 71 95 81 33 51 91 35 65 | 32 76 85 35 75 74 5 65 81 49 84 91 62 19 30 95 69 51 96 33 71 80 41 15 14 +Card 106: 64 66 4 41 49 19 28 74 85 59 | 74 5 15 8 80 20 67 28 84 41 24 19 40 35 66 51 64 34 37 10 59 49 30 85 4 +Card 107: 34 78 82 54 88 36 87 70 38 91 | 70 54 78 17 40 89 92 99 11 66 32 72 62 87 91 88 34 2 73 82 12 23 30 75 96 +Card 108: 55 19 97 86 8 87 14 54 13 95 | 65 19 43 15 79 23 21 8 95 54 86 81 96 55 85 1 14 87 97 64 11 35 12 13 52 +Card 109: 12 8 9 85 37 36 28 6 62 94 | 12 83 8 47 94 26 91 62 18 6 20 9 36 28 48 37 45 93 88 77 74 13 85 5 49 +Card 110: 55 22 9 30 57 77 21 84 2 67 | 36 23 67 22 33 15 27 95 53 98 63 31 50 25 96 54 87 52 59 74 5 91 2 21 41 +Card 111: 73 64 4 67 5 41 66 70 74 98 | 99 82 67 2 45 60 4 75 29 81 70 87 68 63 74 41 86 78 31 38 28 89 3 98 65 +Card 112: 29 93 48 19 39 99 96 31 25 63 | 12 18 90 82 20 93 63 34 81 19 31 37 99 36 42 48 2 8 39 49 96 54 25 92 29 +Card 113: 42 32 64 9 38 37 6 20 88 65 | 35 31 86 5 99 2 52 20 93 11 74 92 27 62 37 26 58 60 46 18 94 39 59 87 56 +Card 114: 45 27 68 81 95 54 70 98 88 99 | 75 10 18 70 31 85 68 86 48 39 69 81 94 54 97 56 46 57 62 25 91 98 65 12 45 +Card 115: 47 23 97 32 52 25 51 35 10 5 | 4 83 49 42 80 25 86 6 57 93 36 82 59 1 56 66 73 89 14 8 71 39 20 95 97 +Card 116: 36 41 79 63 21 49 40 58 95 97 | 49 79 32 88 21 82 75 28 98 77 15 64 23 18 44 85 36 50 40 26 97 22 95 63 2 +Card 117: 53 74 43 3 22 42 13 36 54 59 | 34 77 10 57 74 70 42 22 14 69 46 54 5 3 12 35 8 56 78 36 80 86 92 85 98 +Card 118: 53 26 17 38 92 76 83 58 90 31 | 78 85 52 42 58 95 88 30 15 71 17 73 6 92 38 91 10 31 19 72 40 51 68 76 94 +Card 119: 55 67 27 20 5 11 80 98 21 97 | 83 31 11 62 75 10 14 7 97 98 96 36 16 18 45 55 44 81 27 9 69 80 43 41 66 +Card 120: 42 81 4 82 50 16 66 25 35 74 | 46 88 97 52 40 27 2 70 49 79 8 18 20 11 78 58 26 28 24 61 30 68 72 6 14 +Card 121: 74 73 20 11 50 94 56 46 19 6 | 7 26 74 6 93 15 51 91 47 35 19 84 29 69 96 92 88 24 82 31 12 71 85 65 55 +Card 122: 7 38 60 84 4 10 6 95 76 19 | 33 67 73 12 96 97 78 62 4 42 29 20 77 32 52 2 23 19 72 93 7 81 55 82 76 +Card 123: 71 88 20 45 38 28 27 37 52 49 | 53 5 85 42 80 41 89 14 47 98 83 68 17 8 32 12 90 71 55 30 82 16 33 77 59 +Card 124: 17 47 72 21 32 23 40 39 43 84 | 75 63 13 54 80 45 71 55 38 34 89 36 46 15 6 82 2 99 98 35 73 25 22 79 41 +Card 125: 98 88 35 63 62 60 58 61 1 97 | 1 71 41 67 86 16 93 74 95 64 91 12 79 6 80 20 31 25 44 33 26 55 87 7 47 +Card 126: 9 99 24 63 52 60 62 85 98 64 | 47 54 91 58 35 78 77 38 10 94 34 65 86 95 7 44 61 90 92 4 31 48 13 6 49 +Card 127: 88 55 26 91 34 38 46 79 92 12 | 7 88 67 82 94 93 63 6 47 49 57 52 32 38 61 77 69 51 81 25 92 36 5 39 11 +Card 128: 19 72 9 81 37 93 6 22 53 3 | 60 26 22 47 72 9 40 98 53 50 37 49 88 93 6 82 89 81 16 84 51 75 28 56 3 +Card 129: 53 28 43 67 89 2 9 83 82 14 | 53 68 42 4 92 69 95 2 33 78 97 1 72 14 45 46 13 44 26 90 8 34 20 81 77 +Card 130: 41 5 12 24 37 59 45 20 74 68 | 94 30 19 12 45 5 62 74 48 73 59 20 50 25 41 26 96 66 37 7 55 44 24 68 88 +Card 131: 49 35 40 4 15 12 13 28 70 81 | 38 70 31 2 12 4 74 15 13 50 81 29 99 9 42 65 46 54 40 32 11 34 49 28 86 +Card 132: 71 89 67 34 66 24 18 17 80 36 | 55 77 17 22 16 98 47 54 56 2 48 89 43 91 95 66 9 20 40 37 42 29 25 27 34 +Card 133: 87 59 6 34 33 73 26 72 17 60 | 75 60 58 22 19 31 79 52 72 71 21 33 73 35 51 18 8 2 64 57 74 81 76 87 32 +Card 134: 5 65 81 19 87 84 4 28 86 90 | 46 83 98 49 1 29 13 76 23 38 74 50 37 30 25 16 73 84 53 3 47 85 77 95 75 +Card 135: 73 71 76 33 38 61 88 4 91 97 | 83 5 27 80 37 43 28 2 12 82 62 90 38 7 25 76 34 85 29 89 9 71 54 95 49 +Card 136: 93 1 31 90 94 15 87 79 14 78 | 82 41 93 25 15 78 70 27 90 55 87 34 80 31 4 86 72 51 77 94 75 56 20 2 99 +Card 137: 44 5 82 35 71 81 1 60 55 32 | 36 46 86 9 65 16 78 28 35 70 15 55 66 42 7 14 23 26 75 24 88 87 38 12 92 +Card 138: 31 28 92 12 4 47 70 20 55 44 | 76 85 73 92 61 27 36 90 53 78 79 18 10 63 95 15 74 20 39 4 60 91 47 19 87 +Card 139: 46 42 19 87 2 24 31 63 26 47 | 14 87 76 16 69 77 17 30 32 24 80 28 45 64 26 47 67 13 82 57 55 88 37 15 41 +Card 140: 32 99 2 23 14 89 51 54 8 69 | 46 15 32 62 30 92 71 47 49 96 44 80 98 10 67 27 93 76 87 19 18 40 64 31 72 +Card 141: 88 59 11 19 95 39 31 43 79 94 | 9 93 3 49 33 8 10 61 35 71 51 20 13 69 91 30 27 23 84 40 60 76 29 55 66 +Card 142: 63 97 79 19 30 45 33 14 64 13 | 85 83 73 36 9 8 43 88 72 90 48 35 33 5 98 93 39 46 91 20 69 34 80 77 23 +Card 143: 16 32 97 62 81 76 21 79 86 42 | 4 82 59 99 96 49 52 56 6 1 92 91 94 10 48 15 69 18 24 72 83 47 34 77 65 +Card 144: 25 96 44 94 8 37 57 58 41 80 | 72 94 25 13 8 70 26 43 60 58 9 66 37 57 96 51 67 41 88 22 73 44 34 82 80 +Card 145: 94 41 79 86 90 78 85 2 95 24 | 57 71 95 79 25 85 41 18 75 43 47 63 46 28 64 89 48 55 17 70 2 54 8 16 81 +Card 146: 31 2 38 95 65 35 40 36 16 9 | 68 38 28 15 7 65 90 31 79 71 2 35 9 70 16 62 58 57 60 17 36 95 40 6 59 +Card 147: 46 26 34 79 51 76 57 45 52 41 | 46 47 33 79 69 59 32 16 28 99 93 44 39 90 45 48 51 75 9 66 22 86 25 58 12 +Card 148: 83 60 57 71 59 61 76 75 96 82 | 34 76 25 38 31 71 59 12 82 1 61 29 37 62 21 77 63 57 75 83 24 97 60 96 46 +Card 149: 47 35 60 76 40 11 63 34 79 73 | 73 70 48 58 78 37 89 20 95 17 46 66 57 99 98 19 51 65 69 13 62 6 61 11 63 +Card 150: 76 17 13 40 36 24 27 32 77 4 | 76 80 63 77 92 89 69 37 48 54 73 6 82 22 46 62 14 13 75 10 88 60 24 40 99 +Card 151: 90 98 22 69 67 14 39 85 3 57 | 67 87 18 22 74 13 33 46 68 85 24 15 14 5 98 17 30 36 77 66 16 89 48 39 3 +Card 152: 58 76 44 63 94 36 78 30 34 47 | 21 70 67 5 75 34 83 6 18 53 36 65 19 28 88 55 61 42 92 11 48 23 96 63 9 +Card 153: 20 11 24 87 38 45 1 19 57 83 | 83 89 71 21 31 96 55 34 88 53 51 18 15 82 24 92 87 59 17 67 43 20 68 45 57 +Card 154: 85 57 93 38 35 8 59 67 6 30 | 97 7 98 69 91 58 24 78 46 75 62 89 55 20 51 95 17 74 72 49 27 45 36 52 83 +Card 155: 14 72 37 30 47 58 44 21 74 11 | 66 38 83 88 64 10 57 18 30 9 82 28 17 61 15 48 20 34 14 7 79 26 63 44 8 +Card 156: 38 93 54 22 40 12 63 80 55 8 | 36 32 71 52 17 97 64 80 38 47 34 22 63 24 62 84 98 23 54 8 76 5 45 61 20 +Card 157: 76 81 52 37 46 82 47 5 60 26 | 28 20 83 40 71 68 84 66 72 5 69 79 29 52 81 51 64 2 55 63 26 56 76 32 31 +Card 158: 12 89 2 74 11 28 94 83 85 68 | 63 32 35 52 19 44 66 87 70 99 38 95 53 82 16 30 29 21 59 3 25 50 26 69 18 +Card 159: 62 82 61 8 23 18 25 14 68 95 | 51 13 11 36 56 29 92 79 19 49 28 77 82 96 8 58 97 73 95 72 6 2 67 91 48 +Card 160: 55 80 19 90 66 63 59 89 73 23 | 39 91 10 61 1 69 20 93 60 9 99 72 26 45 52 74 5 64 83 24 14 22 15 27 86 +Card 161: 9 11 72 31 24 68 3 36 16 59 | 56 92 7 75 80 91 44 78 84 12 22 4 17 37 42 63 49 67 70 26 43 39 66 90 27 +Card 162: 18 99 9 68 64 81 42 24 47 91 | 80 29 96 98 33 83 27 43 4 10 61 48 44 35 8 59 30 72 54 14 50 22 74 6 13 +Card 163: 77 29 4 87 21 68 53 98 45 95 | 32 50 1 6 23 97 64 61 36 47 86 60 92 15 78 74 75 37 90 72 28 73 55 3 35 +Card 164: 31 52 49 7 85 47 68 50 71 46 | 74 91 52 37 35 60 71 50 7 29 43 82 47 34 63 94 49 85 3 28 68 31 97 46 95 +Card 165: 76 50 46 25 96 45 65 55 57 7 | 56 44 52 61 3 69 72 90 86 91 87 53 95 68 83 84 82 59 23 73 48 88 81 66 28 +Card 166: 77 59 67 43 64 4 82 56 98 76 | 59 61 16 72 82 52 76 90 44 54 32 67 64 33 80 97 35 8 56 4 92 21 77 98 43 +Card 167: 43 14 22 45 58 46 5 3 86 37 | 86 65 22 24 25 80 97 3 32 69 31 5 14 66 58 87 46 21 37 59 99 43 28 45 91 +Card 168: 18 22 61 21 45 33 49 96 83 38 | 18 38 83 48 87 6 20 91 23 28 11 45 30 21 17 33 96 61 95 49 74 77 69 22 80 +Card 169: 99 12 78 48 92 51 8 6 14 45 | 46 64 80 60 9 78 54 45 1 83 59 3 14 22 11 12 29 44 5 8 61 37 49 74 38 +Card 170: 9 3 45 53 23 13 43 34 76 44 | 59 60 20 91 64 65 52 13 6 44 29 12 25 66 63 3 62 72 68 76 77 43 34 31 53 +Card 171: 27 50 54 11 90 17 80 74 7 34 | 90 40 57 15 50 74 26 53 7 80 52 31 38 54 34 17 5 46 47 27 39 48 19 11 32 +Card 172: 26 88 29 44 70 90 51 91 43 39 | 66 85 26 6 43 44 74 84 4 39 89 8 40 22 7 2 3 54 75 29 20 55 34 60 88 +Card 173: 82 41 1 85 80 29 53 47 73 37 | 12 96 90 36 33 68 92 57 71 65 63 76 3 84 43 35 28 22 97 88 94 5 73 7 4 +Card 174: 10 32 78 50 4 89 14 41 70 19 | 10 19 71 77 21 24 13 36 69 74 32 47 37 41 57 75 70 17 4 60 14 22 64 2 88 +Card 175: 48 73 37 77 1 62 3 90 16 82 | 98 25 86 30 97 46 55 31 23 78 40 27 43 71 1 18 29 92 77 70 73 15 57 37 45 +Card 176: 9 24 81 66 77 87 71 63 76 69 | 67 79 49 57 40 77 80 36 24 69 76 83 2 72 97 63 42 87 33 39 20 35 61 66 13 +Card 177: 28 1 81 43 11 14 85 16 22 96 | 7 59 48 34 26 55 13 61 84 30 39 35 88 42 71 52 24 32 89 80 5 29 94 40 97 +Card 178: 86 83 31 11 98 17 40 36 62 24 | 19 26 46 43 73 81 68 75 9 55 44 92 61 57 96 99 62 58 17 98 72 38 64 32 59 +Card 179: 57 18 30 56 69 39 54 20 16 96 | 49 94 24 8 62 79 56 43 4 77 23 76 74 55 82 98 28 65 89 2 5 87 34 13 71 +Card 180: 96 90 19 27 25 64 33 46 42 45 | 29 77 54 45 40 11 66 38 9 80 32 60 42 51 47 4 15 23 87 26 27 57 14 28 2 +Card 181: 33 2 97 78 52 35 53 34 87 46 | 56 23 9 59 60 75 13 24 27 68 76 98 12 2 63 54 47 16 69 85 71 79 3 93 64 +Card 182: 16 26 4 13 81 34 5 90 11 65 | 52 72 86 38 59 46 18 76 33 66 99 87 45 36 69 43 35 27 97 37 77 62 12 67 96 +Card 183: 29 30 38 95 42 14 91 33 69 36 | 66 39 75 12 92 47 94 17 13 73 99 54 89 16 68 41 10 7 48 25 20 24 61 31 60 +Card 184: 87 62 63 51 65 26 96 5 72 28 | 90 62 21 87 51 96 3 66 32 63 45 11 38 28 5 83 67 75 65 26 74 13 72 7 98 +Card 185: 19 76 22 24 34 98 56 90 70 49 | 34 70 2 50 23 9 90 28 64 19 17 73 39 76 8 22 49 77 56 24 27 55 75 98 91 +Card 186: 28 26 65 98 88 50 44 83 47 24 | 92 80 91 51 87 58 31 46 48 39 76 29 14 56 42 36 79 67 2 78 20 72 62 35 19 +Card 187: 10 39 36 96 21 90 9 3 29 69 | 57 39 1 96 90 2 95 29 32 74 53 84 70 22 26 12 9 38 81 50 80 62 75 10 97 +Card 188: 53 32 89 13 31 50 1 3 70 99 | 91 78 23 65 20 63 70 13 66 99 34 54 3 14 27 44 71 28 53 19 50 89 32 31 61 +Card 189: 53 87 69 96 46 70 90 18 23 93 | 91 39 79 69 71 70 5 88 12 53 56 65 74 36 64 18 24 45 31 35 77 96 7 86 66 +Card 190: 63 35 27 25 78 43 86 53 29 74 | 60 72 33 19 53 96 43 84 83 5 29 81 65 22 46 30 41 27 26 42 50 97 64 7 21 +Card 191: 91 93 37 42 76 2 69 89 66 80 | 45 19 24 92 38 21 76 7 60 14 75 81 32 65 12 53 58 35 67 33 3 68 42 22 34 +Card 192: 17 5 29 67 35 41 14 52 97 10 | 71 76 61 93 20 41 94 16 3 31 26 95 78 64 82 38 92 85 7 43 24 89 8 28 4 +Card 193: 17 77 69 4 96 22 99 56 93 85 | 50 97 82 8 54 40 91 83 65 24 88 16 12 67 17 22 45 15 93 63 27 23 78 10 85 +Card 194: 42 64 40 85 20 26 76 29 34 56 | 12 34 41 57 55 15 27 47 67 50 31 86 7 18 25 43 3 48 85 64 9 71 17 37 73 +Card 195: 33 68 37 22 85 4 25 99 41 26 | 69 78 34 31 40 66 9 35 1 29 46 91 25 56 88 86 38 75 3 28 20 97 53 41 42 +Card 196: 35 6 57 59 13 92 46 22 84 80 | 72 66 22 77 63 74 51 34 53 99 47 68 6 96 88 32 83 93 52 78 56 89 4 11 28 +Card 197: 75 37 74 76 59 12 58 39 84 45 | 50 97 32 99 3 56 81 68 11 75 93 53 96 66 12 21 35 25 77 18 72 13 80 98 71 +Card 198: 90 56 5 35 91 61 7 20 68 40 | 17 47 66 10 73 8 51 13 53 58 45 36 34 54 23 92 64 28 27 71 22 52 18 69 24 +Card 199: 16 23 27 61 14 11 89 80 98 88 | 57 48 25 66 72 45 2 33 93 9 73 58 94 79 40 6 47 19 78 69 70 8 30 29 34 diff --git a/AdventOfCode.Tests/Data/2023_Input_Day_5.tst.data b/AdventOfCode.Tests/Data/2023_Input_Day_5.tst.data new file mode 100644 index 0000000..749b9c5 --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Input_Day_5.tst.data @@ -0,0 +1,248 @@ +seeds: 4043382508 113348245 3817519559 177922221 3613573568 7600537 773371046 400582097 2054637767 162982133 2246524522 153824596 1662955672 121419555 2473628355 846370595 1830497666 190544464 230006436 483872831 + +seed-to-soil map: +4064811 506246814 25615317 +1520011681 1661018909 106057083 +1007960598 8836276 47579700 +1055540298 679332386 82196064 +2377475243 3574057730 33434621 +2323567163 2090355001 53908080 +2724594670 4209189177 35645909 +3247614896 4244835086 50132210 +2793935335 3209861711 43002393 +2560156404 2081665194 8689807 +3490249256 2918928471 290933240 +1399066513 1515349965 120856915 +3383052312 1779636204 107196944 +1634905040 1464437422 50912543 +0 849557294 4064811 +2155322314 2548120606 2883579 +3362202103 2803876083 20850209 +465575436 853622105 310104399 +3781182496 3252864104 5074346 +3297747106 3844665588 64454997 +1779636204 2144263081 375686110 +2765805312 2519990583 28130023 +1325393680 605659553 73672833 +1211533784 841842038 7715256 +164952771 1163726504 300622665 +2197289480 3607492351 121111676 +54492157 395786200 110460614 +3835840979 3257938450 316119280 +1685817583 162560616 944821 +1626068764 0 8836276 +2760240579 3728604027 5564733 +1219249040 56415976 106144640 +2836937728 3734168760 105330821 +2994742998 2551004185 252871898 +4246162438 3909120585 48804858 +775679835 163505437 232280763 +2410909864 3957925443 149246540 +3786256842 4107171983 49584137 +2158205893 1886833148 39083587 +29680128 1636206880 24812029 +2994701606 2519949191 41392 +1137736362 531862131 73797422 +1686762404 761528450 80313588 +2942268549 4156756120 52433057 +1519923428 1464349169 88253 +4151960259 2824726292 94202179 +2568846211 1925916735 155748459 +2318401156 3839499581 5166007 + +soil-to-fertilizer map: +664927065 1834026871 25712908 +1735589252 664927065 98272608 +2065221534 1506193032 310617880 +2375839414 4115277554 6678312 +3253816560 1859739779 203737617 +1850812956 4108908733 6368821 +2919962848 2399006039 522616 +468677210 108672893 44408648 +1401161152 2664100077 99602261 +1500763413 2164180200 234825839 +3984134761 1144008481 310832535 +3804009398 3016674464 2139313 +963394967 763199673 148819056 +2382517726 2954526136 62148328 +2596720874 2399528655 264571422 +1112214023 3018813777 288947129 +1874397736 2763702338 190823798 +2920485464 4108473866 434867 +2496018070 2063477396 100702804 +3824353112 3447611199 78601908 +690639973 3526213107 99743564 +3806148711 928969825 18204401 +2861292296 3388940647 58670552 +0 356321399 298014179 +3902955020 3307760906 81179741 +360004317 0 108672893 +790383537 4121955866 173011430 +3457554177 3762018645 346455221 +1833861860 912018729 16951096 +3056982305 947174226 131597944 +2444666054 1454841016 51352016 +3188580249 1078772170 65236311 +513085858 153081541 141249720 +1857181777 1816810912 17215959 +298014179 294331261 61990138 +2920920331 3625956671 136061974 + +fertilizer-to-water map: +1314722794 2859771596 110470422 +925980570 2089240080 7623550 +2161966099 923823182 18764610 +4126382841 3495278690 168584455 +1914851626 1547043780 6792197 +3603209919 3780725227 292923781 +2451774221 919021074 4802108 +3495278690 4073649008 66625331 +3896133700 3663863145 116862082 +2180730709 506275893 271043512 +3141265861 2645889920 57381085 +3136392798 1603951687 4873063 +1538199090 942587792 376652536 +620357722 2970242018 228404928 +422454208 1814118646 197903514 +1921643823 265953617 240322276 +3561904021 4140274339 41305898 +2758272184 2474071507 63802901 +1065005613 777319405 141701669 +4012995782 4181580237 113387059 +2822075085 1553835977 50115710 +1425193216 2361065633 113005874 +933604120 1682717153 131401493 +1206707282 2537874408 108015512 +2872190795 2096863630 264202003 +2684379781 1608824750 73892403 +0 2703271005 156500591 +156500591 0 265953617 +2456576329 1319240328 227803452 +848762650 2012022160 77217920 + +water-to-light map: +3911747472 2911922447 51421887 +2536764367 3668005785 140896771 +1212477776 97723896 242971514 +3654733164 2831217728 80704719 +2181820500 1577059176 179170851 +1585336302 2992871942 130403154 +3625205556 2963344334 29527608 +637624684 802080725 399476166 +3348594580 2554606752 276610976 +2677661138 1756230027 290805772 +1715739456 3808902556 44864370 +1760603826 3853766926 127009556 +263054927 0 97723896 +3735437883 3980776482 176309589 +2052216401 4165363197 129604099 +3963169359 2047035799 96879299 +1037100850 340695410 175376926 +2968466910 3287878115 380127670 +4292066496 2319688114 2900800 +360778823 516072336 276845861 +1577059176 4157086071 8277126 +0 1201556891 263054927 +2360991351 2143915098 175773016 +1455449290 792918197 9162528 +1887613382 3123275096 164603019 +4060048658 2322588914 232017838 + +light-to-temperature map: +2208796188 2205653945 16706445 +3202718202 3702799517 119048394 +1789679483 2433538636 64618493 +3035078142 2303892266 86108184 +2549270997 3861079544 160369770 +1016521015 833146166 1531563 +2446163080 1924420264 78302216 +3321766596 2112712346 92941599 +8948937 233013740 2442944 +1900324808 3247280742 118974530 +215056009 134795275 63846376 +3929651545 3821847911 39231633 +3841595991 3463600348 88055554 +3968883178 1812769444 68270872 +2709640767 1707931127 104838317 +1494154584 2498157129 295524899 +0 1122900024 8948937 +4037154050 1450117881 257813246 +2814479084 2793682028 220599058 +3121186326 2222360390 81531876 +3568078009 4021449314 273517982 +393292224 0 134795275 +1251655629 2390000450 43538186 +2154776907 3193261461 54019281 +1854297976 1447593855 2524026 +1153492607 3551655902 98163022 +2019299338 3057783892 135477569 +93266807 850231816 121789202 +2225502633 3649818924 52980593 +377738137 834677729 15554087 +361270479 972021018 16467658 +1018052578 988488676 113796383 +72651842 1102285059 20614965 +3458088143 2002722480 109989866 +326898390 198641651 34372089 +1295193815 1248633086 198960769 +2278483226 3366255272 97345076 +2375828302 1153492607 70334778 +1856822002 3014281086 43502806 +278902385 235456684 47996005 +2524465296 1223827385 24805701 +11391881 283452689 61259961 +528087499 344712650 488433516 +3414708195 1881040316 43379948 + +temperature-to-humidity map: +1719782869 425080238 132898807 +1852681676 2807250453 270691921 +1309417343 2396884927 410365526 +963471708 0 345945635 +2998807771 345945635 79134603 +2123373597 557979045 875434174 +0 1433413219 963471708 + +humidity-to-location map: +3506221501 3772218811 141412231 +862456464 199991593 70194315 +3126163959 2720338622 159394827 +2437060415 0 153033469 +1749227774 1174286868 159521600 +349850270 652576354 37663076 +158202776 305209374 55106503 +663092217 153033469 46958124 +1358475419 819305682 231265535 +1589740954 2171223218 159486820 +1296848852 450545479 26971073 +213309279 2375483203 136540991 +501031877 1333808468 54731739 +2272970697 690239430 129066252 +427251734 1050571217 73780143 +1918845890 1626226842 116689237 +3494757929 2708875050 11463572 +2781047724 3224629140 67922856 +3442916224 4132386344 51841705 +932650779 1388540207 237686635 +387513346 1742916079 39738388 +3866389034 3340362984 418348873 +710050341 587492729 57697450 +3342406366 4184228049 100509858 +0 360315877 90229602 +812520956 1124351360 49935508 +2162994520 477516552 109976177 +2035535127 1901779730 127459393 +2719729782 3758711857 13506954 +2733236736 3292551996 47810988 +2652027470 3156926828 67702312 +767747791 2330710038 44773165 +2848970580 2879733449 277193379 +1170337414 645190179 7386175 +1177723589 1782654467 119125263 +3285558786 2652027470 56847580 +1323819925 2136567724 34655494 +1908749374 2512024194 10096516 +3647633732 3913631042 218755302 +555763616 2029239123 107328601 +2402036949 270185908 35023466 +90229602 2522120710 67973174 diff --git a/AdventOfCode.Tests/Data/2023_Input_Day_6.tst.data b/AdventOfCode.Tests/Data/2023_Input_Day_6.tst.data new file mode 100644 index 0000000..832d03c --- /dev/null +++ b/AdventOfCode.Tests/Data/2023_Input_Day_6.tst.data @@ -0,0 +1,2 @@ +Time: 38 67 76 73 +Distance: 234 1027 1157 1236 diff --git a/AdventOfCode/_2023/Day3.cs b/AdventOfCode/_2023/Day3.cs index 115e55f..7667d12 100644 --- a/AdventOfCode/_2023/Day3.cs +++ b/AdventOfCode/_2023/Day3.cs @@ -66,7 +66,6 @@ namespace AdventOfCode._2023 _board[x,y] = input[x][y]; } } - _board.PrintSquareArray(); //Pull out our schematic numbers from our board for (int x = 0; x < _board.GetLength(0); x++)