diff --git a/src/AdventOfCode/.gitignore b/src/AdventOfCode/.gitignore new file mode 100644 index 0000000..bf5459b --- /dev/null +++ b/src/AdventOfCode/.gitignore @@ -0,0 +1,530 @@ +# Created by https://www.toptal.com/developers/gitignore/api/rider,visualstudio,visualstudiocode,macos +# Edit at https://www.toptal.com/developers/gitignore?templates=rider,visualstudio,visualstudiocode,macos + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### macOS Patch ### +# iCloud generated files +*.icloud + +### Rider ### +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# SonarLint plugin +.idea/sonarlint/ + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +### VisualStudio ### +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.tlog +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio 6 auto-generated project file (contains which files were open etc.) +*.vbp + +# Visual Studio 6 workspace and project file (working project files containing files to include in project) +*.dsw +*.dsp + +# Visual Studio 6 technical files + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# Visual Studio History (VSHistory) files +.vshistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd + +# VS Code files for those working on multiple tools +*.code-workspace + +# Local History for Visual Studio Code + +# Windows Installer files from build outputs +*.cab +*.msi +*.msix +*.msm +*.msp + +# JetBrains Rider +*.sln.iml + +### VisualStudio Patch ### +# Additional files built by Visual Studio + +# End of https://www.toptal.com/developers/gitignore/api/rider,visualstudio,visualstudiocode,macos diff --git a/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/.gitignore b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/.gitignore new file mode 100644 index 0000000..8afe378 --- /dev/null +++ b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/.gitignore @@ -0,0 +1,13 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Rider ignored files +/modules.xml +/contentModel.xml +/.idea.AdventOfCode.iml +/projectSettingsUpdater.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/encodings.xml b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/encodings.xml new file mode 100644 index 0000000..5f1ca7d --- /dev/null +++ b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/encodings.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/indexLayout.xml b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/indexLayout.xml new file mode 100644 index 0000000..7b08163 --- /dev/null +++ b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/indexLayout.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/vcs.xml b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/vcs.xml new file mode 100644 index 0000000..b2bdec2 --- /dev/null +++ b/src/AdventOfCode/.idea/.idea.AdventOfCode/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/AdventOfCode/AdventOfCode.sln b/src/AdventOfCode/AdventOfCode.sln new file mode 100644 index 0000000..679c64d --- /dev/null +++ b/src/AdventOfCode/AdventOfCode.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AdventOfCode", "AdventOfCode\AdventOfCode.csproj", "{005D22BF-AB46-4C1F-8647-2C7149042495}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleApp", "ConsoleApp\ConsoleApp.csproj", "{831D4A66-4778-42AC-83BE-6FAEDD97AE98}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {005D22BF-AB46-4C1F-8647-2C7149042495}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {005D22BF-AB46-4C1F-8647-2C7149042495}.Debug|Any CPU.Build.0 = Debug|Any CPU + {005D22BF-AB46-4C1F-8647-2C7149042495}.Release|Any CPU.ActiveCfg = Release|Any CPU + {005D22BF-AB46-4C1F-8647-2C7149042495}.Release|Any CPU.Build.0 = Release|Any CPU + {831D4A66-4778-42AC-83BE-6FAEDD97AE98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {831D4A66-4778-42AC-83BE-6FAEDD97AE98}.Debug|Any CPU.Build.0 = Debug|Any CPU + {831D4A66-4778-42AC-83BE-6FAEDD97AE98}.Release|Any CPU.ActiveCfg = Release|Any CPU + {831D4A66-4778-42AC-83BE-6FAEDD97AE98}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/src/AdventOfCode/AdventOfCode/AdventOfCode.csproj b/src/AdventOfCode/AdventOfCode/AdventOfCode.csproj new file mode 100644 index 0000000..2390db2 --- /dev/null +++ b/src/AdventOfCode/AdventOfCode/AdventOfCode.csproj @@ -0,0 +1,19 @@ + + + + net8.0 + enable + enable + + + + + Always + + + + + + + + diff --git a/src/AdventOfCode/AdventOfCode/Day1.cs b/src/AdventOfCode/AdventOfCode/Day1.cs new file mode 100644 index 0000000..79fc83f --- /dev/null +++ b/src/AdventOfCode/AdventOfCode/Day1.cs @@ -0,0 +1,149 @@ +using System.Buffers; +using System.IO.Pipelines; +using System.Text; + +namespace AdventOfCode; + +public static class Day1 +{ + public class Result + { + public int Sum; + } + + public static async Task ExecuteAsync(string filePath) + { + if (!File.Exists(filePath)) + { + return 0; + } + + await using var fs = new FileStream(filePath, FileMode.Open); + return await ExecuteAsync(fs); + } + + public static async Task ExecuteAsync(Stream s) + { + Result result = new(); + var pipe = new Pipe(); + var writing = FillPipeAsync(s, pipe.Writer); + var reading = ReadPipeAsync(pipe.Reader, result); + + await Task.WhenAll(writing, reading); + + return result.Sum; + } + + private static async Task FillPipeAsync(Stream fs, PipeWriter writer) + { + const int minBufferSize = 512; + + while (true) + { + var memory = writer.GetMemory(minBufferSize); + try + { + var bytesRead = await fs.ReadAsync(memory, CancellationToken.None); + if (bytesRead == 0) + { + break; + } + writer.Advance(bytesRead); + } + catch (Exception e) + { + Console.WriteLine(e); + break; + } + + var result = await writer.FlushAsync(); + if (result.IsCompleted) + { + break; + } + } + + await writer.CompleteAsync(); + } + + private static async Task ReadPipeAsync(PipeReader reader, Result result) + { + var sum = 0; + result.Sum = 0; + while (true) + { + var readResult = await reader.ReadAsync(); + var buffer = readResult.Buffer; + + while (TryReadLine(ref buffer, out var line)) + { + sum += ProcessLine(line); + } + + reader.AdvanceTo(buffer.Start, buffer.End); + + if (readResult.IsCompleted) + { + break; + } + } + + await reader.CompleteAsync(); + result.Sum = sum; + return sum; + } + + private static bool TryReadLine(ref ReadOnlySequence buffer, out ReadOnlySequence line) + { + var position = buffer.PositionOf((byte)'\n'); + + if (position == null) + { + line = default; + return false; + } + + line = buffer.Slice(0, position.Value); + buffer = buffer.Slice(buffer.GetPosition(1, position.Value)); + return true; + } + + private static int ProcessLine(ReadOnlySequence line) + { + var str = Encoding.UTF8.GetString(line); + return string.IsNullOrWhiteSpace(str) ? 0 : ParseString(str); + } + + /// + /// Assuming we don't have to deal with endianness and exotic code points + /// + /// + /// + public static int ParseString(string str) + { + var numOfDigits = 0; + char? firstDigit = default; + char? lastDigit = default; + + foreach (var ch in str) + { + if (!int.TryParse($"{ch}", out _)) + { + continue; + } + + numOfDigits++; + firstDigit ??= ch; + lastDigit = ch; + } + + if (firstDigit == null || lastDigit == null || numOfDigits < 1) + { + return 0; + } + + return !int.TryParse($"{firstDigit.Value}{lastDigit.Value}", out var result) + ? 0 + : result; + } +} \ No newline at end of file diff --git a/src/AdventOfCode/AdventOfCode/input.txt b/src/AdventOfCode/AdventOfCode/input.txt new file mode 100644 index 0000000..5af9fcb --- /dev/null +++ b/src/AdventOfCode/AdventOfCode/input.txt @@ -0,0 +1,1000 @@ +gtlbhbjgkrb5sixfivefivetwosix +ninesixrgxccvrqscbskgzxh6cpvpxsqnb6 +dxxzrlzkksfsffp4 +sbzvmddhnjtwollnjv33d2lbcscstqt +88xpnfpb +ninevct4cpdvqfxmspbz9xrvxfvbpzthreesfnncrqn +mqsxzsglbtmsbltrbzkbrt23 +seven16ninefc +8jdddctvxs3 +fivennhhdfpmrnpjhdm2sixkrsgdt +2bgkccmp2khbhmptwogsz +rrddms473xcjrtsdnhp4 +two7eighteight29 +onek3three8lpfcfivenxpkhbvdm +spcdsstlkr7fone1 +9ninejcngjshghz +six78fivethreesix7fivetwo +nine17bsrfbzpcr +1qcdtzzfdpbcshjsjdmgsix +fourtwosix3one +26rqmtqznds +fivefour4kmgtsplpvvvhspsjrsxqjmzmb +fourone1pfjsxxprgxszsmg64nine +78four +sixvrxzf8mthh +three819 +eightnqzrshnbf7gxpndlncztwonztq +szsvltgsc1onecccbfour3oneightfh +vjdbqpninepqhlbcj61sixnine +2dbpnlhxtdninesix896sevenj +6fiventhree6 +four7xfour +jlnine6cqtdltpxt4 +sevencplmbvshm5flzlqxlbjjcrfxv18fivebpscblpj +fourfourfjft3three5 +3tgsppcfpk +seven48xcgqcfhnvc +twofive619hdbghs +4xppxkgpng4mttgskp8gxnzsfivethree +zbmzpstjf6znpflg +onefour9sixseven6 +327vjsevensfcgdbdeight +hftcndxpnine7 +9onert32m5 +bfdkjxcp56 +v4vqpstmlhtt +pjb5fivemonepcfc +cjftpgfive61five +7ffjkxkbnqfninevhnnbp +xcqkcbfv9xffn2six59 +nine4ssixvlrzjsrqvkg5 +seveneight74ljmjfthree33 +hdgsbjdsixtwo7chczjk +kkrpsbqmkkpmq4two9 +sg1kllqqfpbrcvgf43 +5one5threethreefoursevenoneljddmkss +cjcvnxone47eight6five +ghqqmsxnconetrhqrq3sixsix +sixfourg3 +ndlnhscmrx53six58 +xmktfbmqdgndhcvbpb93trvgv +52 +7twobkgsntslhthreeqttvx1six1v +kfreightwoonebbhqnqdfdkvgbcx5 +ninesixnineqzgzgzhdjsix8 +four7eighttwo6 +2pnine7 +6seventhree +five4four6 +2twozbsqkgkmfive62 +one9bkbnnineninempsqszz +two9jzgzbtwonef +8txvhbm5qpcvgkdfvg1hzmvcprvs +threeeight52 +five3qbhtfpkcvn4nine4 +9vrqkdrkl12jdsfpsg69 +seven757two12bxv +njnrmxbpvfourskvbp2sixthreexqstpvxjss3four +ninejfvfsp6twoness +22rcfzrbpbgq5twoone3four +rktqjcbz53five9foureight +pcjbdlsix5threeonepdvsevenone +oneonenine2hxpmqckdrftktntwo +7four92 +qxgfxkxkkf6hqbnsg4sevenninebvpjdnnrone +ckpf2five7six +three27rgsthreeseven +19jztwo6vninevmds +eightcdtwo7 +1c8kdqkrgjfour33zp +jxsdh8eightwoffl +sljxsjgvqfive4drrdlbbcrsthreesevenqktkjkrfrzv +pfjd5sevenfiveseveneight +fivesgzvngjfvz9eight +three99jrscbrhkczxdbtqqrfdtxh +bzhbbpkpbrqvhjmgsqq72eightwod +seven88 +3msvninelbhvqhfj871 +33sevenfn +49nineseveneightfive +7ttsfxbkjqonenbkrsdthreeqbp +cqjxgppqn2746one +six1vthdh +nbchjfgzmplxlrrtprkvhxmqdp4rdckh +two5six4four +four7lvttsbdj5 +4six9tnnsj +four4seven4svfm6zg +7threefive +twoqbxzxglsevennxsqpkpneightlxzndhmfourthree6 +nine5ldqdknsjsncbjmkmlpx +jpngl7668 +sevensixffour6 +689oneeightthreekrkkgjtcvh +97szfivekptsgppfmbseven3seven +gchqxphzf7threebzglvjsxxteight +4onefour46kn9five +bqncvpx25sjlnhdlm39 +69mnbns +1ffhnnhs2mftxnfcdhtdntbxjmeight5 +7nhmmbnxglndmg9ninefivetbkjkv +six7feight +7eightfourgtcj +4seven7six8gdjpxl14pgfkfmms +8mvrzktbvhrblflvndvksjkthree8 +9hcj +eightfoursevenngssddrstz8nineseven +pdbffvgqsnmzgccnhmzpxcnctkqqpzx1 +onegsrzht7ghgmkbrdzvhd +gvkjggsrmzfive1 +2dvdxtgqpdvccfiveck2ninectrcnkdcm +onexjbpzznnv21sixsevenrnshz +5oneqqq372bhzbgpltwofive +1xzhlgkgnmmqbtlkflvlrhrhkpglgsix +sixsixnjjrncqqrpbkfour338mztvsxl +rvthjblx55kjqvnlhgkf7sevensixpbd +9vfqfdrkeighttqmclffive6 +four6fourhtspfivefourcmzhkfive +sn2one +9ninefour7 +xoneightnineoneltpvkzfvpqhxszqmv3hthtn +4fivegqdgkknineonelfg +rzxkqbpsp32ndhgqjjonelp +three6chvkhhzrjttconethree +xsmdhzsfgrmhseven6eightndcpgrrfjsix +pkdqlfive7oneonendgtdjtwo +8dpfqfour6onenqmfxhrmsx +four854hcdzjv +ninemg8xm5gftwovnn +5ptkfjdrkmdtvkgpnsixtwo2 +qmseven2 +27khblcrxdmzjxrqcsgrlninejbjg +4ftzjmgzgninenine +six78seven +3three7dndseven +qbtgsxbfour9sevenfour2ktlnsthhsznine +59eight +xdmbrqpgdqxrrtxcmrdstq2jrtfktzr4five +2kkpdpmrjh1xvmnkbkqgxthree +9threefour9drjzhjfdbnineeightwofc +eightknfgls6ztjtxmgvmeightfggfdcfjnf +7hkbnqkf23 +hjjmdpxztwoseven9three +qp6two2 +vxlkhqtwoggcgcvnhdrfds19 +four2sevenseventdpjtfnine +24nine79kvzjnnf +t23cbtmfour +fourkksztczpgthree2gr56 +57sixnineeightjdqvbtsrfj6 +sixsdlhnldk6seven5zncgtctrrhczbnrqs31 +8onefour +mtfzxxlpnqt3mnrsrfscgm +two2bdxjzbfxzblbzzdfive +five67tdmxgmfxbseven2twoeightgcrbz +zsstjzljxbzrgt5eightfcpkzsths8 +twosevenbgfxdvkloneqffplfive7 +rnkoneight1bvvhkd +sevenonebrnq4 +zrxlcfxkckk57nbvls7 +99cjnj3brlnvrfqjgtwo6 +6lx8srsflntthree +rzvgnfdzrt36f4nine6 +fourmtonehlngpjvfhjfzmbdznpp8 +7seven28xrmr +93sevennine43seven +mnnqqsixsvdpqk9fpzd +zdpvcmcjq23 +82five1jpbldxgglcsqseven9 +two7rx9seven3 +3tcnxsevenninefoureighttwo +83sevennnjjjzsdzlx5ninexns7 +1seven4 +kczs59ksfnjzthree +93zsjzjn6862pdgfxqmghcrg +threethreeqntmqqm1fqgrxdlzlrzp2 +xxroneightonefive6vjmqbr2fjdtxhjk +2vlxfvqtd +9vdhdvgllhvjthvvmg +khvlqone77seveneight +eightfourjkqfzblbr7dpkgdgm +zdddkdnineseven6vzmsqrninetwo +dcspvl6brpdhqrrxrds3sxgvdlxrfhvh36 +twosevenv7lxtmxlrsdzqvcrtkdrxs +mjjdznk4pgkrjppqr1f +jtwonenhv4rml36bdqgbbgvzqbksrlqnxone +twottz9eight +thtzc9fivetwoeight87blggcsbk +eight2seven +xlbbchh6 +332ponesjqxnnftj +821pgvbsbq9 +4seven1smptmjbfsztwo6eighttwotwonevcv +fourvkjmrhgxqnztkdgj2four +xtjrp7bsmdmlvpmjfive +1ninesmtxnv +tzkl385gjsixtwosix +6xckhjxhsgq3fourbxtfseven3 +rjcrvbsxlq84eightseven +hpvnq2 +twofivecxxzvpfrfourfour448 +82fournfour +2nchszknqrqtghsfivenine +ptssxccnvlzrtscnsl6fpqrjtrfffour1656 +29rlrctthree4vbdmmkpg +twofiveqvllxsfj1sevengnkxhthreehppbslzmcgpg +5ninefvvvmfourzndnmvgcll812 +zxqxqzc4twoeightjfrfdjnlntjbpsevenone +hrhvjbdrfourrjj45 +7sevendtgjkbmlgpmeightone1 +lxfmntfkzh5lxdhmpfrkxqckrbl +616fourkdsp +7dfllkzmcbplzqseven9five +25833eightfourseventwo +four9sixrgnscd6seveneight +two89pxddpnbtck993lfxrhpx +ckpgbsfpdffiveprvqmmczhsthreeeight9 +431knfdk +ones7 +two4fiveninesixeightonethreefour +twosixsix9tsdrcft7 +8twokstblnjfivetwothcbqh +9twothreedtcone1twoeightfk +slq9seven1mjcqsstkxnhkmzznine4fvphmqsgr +fjmmkb6four +38xzqvzm45ldkkgxzlmtwodkgmd +1eightfive5hbs9twonnxbtghrbcd +9sixlcttnctfng7vxnpmntnxh4 +2two2rzkns7two +eightdbqninekmvfcceight65 +554 +dzlc5 +8597six4 +v7 +83vrfdbksmthree3nmmrbdmpmsj1 +4fourmcbdnrmd1 +three8kphbvvndl +nineppfhcn32 +eight7fiveeightvp +nine2threebvbnp8 +435pjthreerdtf +9xvxxcrscx53rbblg5 +nine2fcmjdbsrrlrvqmxhndgvgmqnhvqjm +56z8one5sixfive +threesixtwonine5eightfive3 +1ppzmxrbrgvseven +2xqfoureightqflxrshthree4 +12five91fkeightrsxgfl +sevennfffgrc9four +51ninesix5ninenineone +fiveeightlxqzjxcthree48one +sxoneightkkckxpxmhklhdcqzh7fxhjrsix5 +1289xjht3seven5b +9qjjseven7ninemmsn58 +dcspkncsffourgghhgvgc234 +62rdlnmbfnsc8 +khpklssix6cklksvqgqmjccffkrbcjjszhbdlm +qlhfqbbdg8fninedtnvpxffbj7four5 +65sknldglkhseven5bpcvsc24 +three41sztsmds3qxrkxgbcsnjjpgmkttjzfts +2fivefivenv +mjzfiveqsdvrllthreembzcvrjgzqqsp8 +8rxtwoqsfdpksc +fivezxseventwo32nine +onesmfsthreezdcrsdzjf6twoksvpqtfrn5 +sixthreetwosnine6gbjfpone +8six39 +onetwoseven3bplhxvhkkzjgjdxjknjfktn7 +xhgkqbltlxdnq51three31one +threekbknvpssvgtvbsevenrlkczg4gtfqpvrsmj +mqzdlfour7lrc3one +2rnthreesixsevenqtgvplzjleight57 +ljvfrfqvlbnsm1fivebxnfgxptn6ffkhhrzmfz +8fourfoureightbjkcl +gsvshhxbqv1nhhsgjnkhjshqtwo +eighteighteight1 +cxfprkbjp1psdkneightwojlf +eight9dgchpkgxpkrgjrclqqrd91tlvhhspzlmcpgr +zcjshj1twofourgsgvpljsixpmlh6 +9cnrztv +qvrdxrjk5sevenbmmbrchzgthreebjhrtxgeight +qdfsdhthreevdx4qspvkbdtccpdljcsfq +onefourm9hbpvsxbqxonegtsvfltdsg +srssgmrhszjvkrszhktfsbmccz4tvsqxvcxpx6three +dxvgjmcxbmfive4zvtfour +vtfxpjqkfive6one +ctshxrjvbslhtninedfour2 +eighteighteightseventwo5zsninesix +one37qfhtfpvpmmvjnpfgbkkbhgbdhdnine +tbeightwo2qxvttmcqonesixeight +btdrgxpthreenine8gq +1vfqvmgqvpmjrtgfqngkm +one13two +8eight2eightfiveninexfsptn +qlddc8 +ninenine8 +vtwoneb2lfj +3sixeightseven +94ctfzmjhzlpkjnbrrtoneightsrm +6mqkpvlf +trspvjctskfsbj5 +9tlkmnndlnqpcspq4one +eight1three8sevenoneftrjjxhblv5eight +twothree4nrshvjkxvq1sevenseventwom +2two5sixthreedjgcfhvz4sixrm +ntwo5one7ninembfive +qgclmrksfqjcrh849 +3twoone628five +5dqzjdmcninejlhqone +99mpmtfjbxmrjsix27four +sixthreeonecxvzmrm55rkx +5threeeightseven +tq8twotfgsnjctnseven +2nine76fourtfmqjkrdtrp +2lrfive +1sxkrpzjseveneight +xtbtqzvkvfourvkjjtsevenfdmsf2 +9rlnrjhxstsixrrqcgmxr +vhzpsrzfive2nine76nineddkqzq +sloneight27ninebnfxmgfour +ninesprstwothree8threeklrfour +two7onegxqvmjvdgb1hxsjllprk +1six5foureighttwoeightthree2 +5three4hfive +nine1oneeightlhnine5three +hfz7lbtffkphnvp8 +sxp7 +kfclfdhtplbmpzsnplmqfgnc56pgprnlkp9 +threethreevfourfivehtxchgc1two +7five4five222 +7qqnfoneprdsgj +457 +fivesmgdghmfour48one +kkr7 +rpqdl8fzgdg9ljnbxzdxs +tvmtggfnkq8fxbmgntmtffive1gbreight +5fcncxjb719fivepbn +7msvcmpknn +f61 +ltzcqsf1ninebbbkzkcsix6plsp8 +16glvnbcseven8eightdp +bdvgvrmpbpztjtdsqxk391 +keight9qsqfhzgbh5zzqvtkr +eightone944bp187 +9three2 +klgsfsjgptcqz4dkd5five +ninesix6qbbqdnsmjd1five5fourxprrc +2onesevendkspzqmhjdkrvgnhqfkvh +eightvsgnsrbkk34four +czbkrztcpkctv9fhmjmm +dfourpjjbffbtj9eightsix4tzqnnnsqbzqp +sixdvmclzpfnthreefive9fourseven +sixninerknqqsdl3twotwo +fiveonefltlnpsdgmpmzqp633 +three617six +ddngjtdnine8tdxcs +onefiveqhzxr8pftvhbhphr +three469 +69mzmtjgfztwo1 +551zbxzjfglghcmfoneseventwo9 +4sfive55eightqnk +chgsglxjlmnineninesixhhqbppctqvmrslbj46dnzsmlg +zvgjxm1sixninebxzpbknmqh1skzqqblm +fourdrf28sevenfour7 +j4zgctfmgcf +4t3eight3vlvgzbjlrzbdxjkthree4 +threefournineklg4threefour5bkmxtfxtnm +5five9 +svqsrqlfjhthreegnkjb1bjvsstkdc +gcs2nine +gqnsnjvpnmsllxhxstonethree5eightone +6fnzprvv1threefive62brhhz +two89xdrzrfr96 +4ninetwotwo32zhsnzlx +ntwone4eightfourthreeeight +87rsrlb9threesixthreejjnhcnx +6onenine +twoeightfive13 +one5bqvctcbnrdktf7qszxrxvgtfc +two9jtwo +dnsrkkdjbscltfsnonethreefive1 +three5one +37dhone6one +eighttwo2five2643 +7nknhfeightfour +nineninenine2pztjcjtsmn3one +7fxvql +gdgzvxnlkbtgkssdjrxftwo2 +fourtwo9 +onefoursixzeightone262 +kjbhkp3vjvdqchhmqpnbzjxvfrgpnqzpbn6eight +52tpgzzbb85 +seven4tmzv9 +1jncptklvtwo24four38five +nv447oneeightznqddpvvztwo3 +five7971bcqk +jdmxv6hhgstzcnvscphjbgrj1sixsxp1 +fhrcrqzqglr7 +15fourgvzbczonexlqzkdx4djvckdcfour +gbtgdlzsdvseven5five16 +tzklvspsz33vpjd3 +9snmndhqmtoneprpzfnsjq +85bvtnqqhqnbkmxkqqxzxlxqbnkh +8threecfnmsffphrninehjbxlc3 +n19five9z +gqrqz1 +mtmhphhspflprqgzlzgthreeggrtppdgflrrjdseven6 +pbdfzdqbx27oneeightseven +rtgnhlgqpkfour3cmbmhtsr +26fsdgjdbsevennine9l +eightxxnvlvdsdttwo9 +kthree3 +1nckxqpkthree91 +7bxdbjtqphs9five2nxrddxstwo +seven67rrvfztx +xkqk4ninesxfive4three6rnx +mnnspxdqjf3 +zpvzzptfsevensevenseven48 +threeonetwo1dqcgzkmdqkcdzpmqhzmm +sr19 +eight9nine9four +cpfrzhrnfivevqdr8nine +4zkhhfv9 +fjzmqgr3869 +mnxtwone1982sixfournxvmnvzmxlqm4 +6rg164three +zoneightnbbnrxclsthjboneninevkjnzhqrkvmtt6 +eight7nnpn52 +nine8threejrxc4seven +4fivetcq58 +skqfhjbtqthree7 +3mhlr +three6tzhlhgnx5ljb32nine +t31kxcf +41gdkmnf2two +ffsqhzmznsixtwokxjtwoeight73 +trtcc477 +seven1261 +4eight8rhrvlzpmnqseven9twohpn +dzfffzff5fiveplhmbfnzrvphfoursix2four +onedmhzhhzrmtwofourfive7 +zqmqlcrgzb2ninesevenrrdlhznhcqxsmfltworqlvzkdhqhskshjsh +37brxzssqonefive67 +xkptstf98fivebdlrslpjfxtvzfour +oneqpsfnprzd5nine +6gxxvxb7 +39two +nggltz4sgkdnpbvzz2nineblfff1fivesix +vvxrpdvbzppfour6gz3six +dfrdtwo3284fpntbqx9 +1zgxhdt94vmxmfiveoneqvfjjq +3lrsjmr44snx +eightonerjhrdftxrvqkzfive4zvtqnddtwo +bxfive2eight +jjnine662nine1 +onesixone1kknsjgzlbbrgxdbrxlpjvhtnkjbb +fivefive2three5 +sixsevend5 +6ninelfhjjfourfour24sevenxg +dpdvmrs7rbstcg +phxszdrzdfivepfkzcmhnineeight97fivecnkcxjqrf +7dpdbzbfxztqlrsixlzgcbctp7six +eight3one9 +nineeightjpxtpltworthree2xcrk +xtgfive49 +dndltvlglgtwo2seven +6lfxsgqzqj +7bqsvgzkphcmcdcpfg242lsnine +895bcx +fourzlxshjgtplrzk24xfspckjdone +stwonefivethreefivefdgnr6five +2bcsft42three7jnndsjqckmseven +oneqkmbqdfgljtgx3 +bpfk4rdxqptq +fourfivepsqvthreejzx12pdg +sixsixseven53fgrvckfxtlseven1 +9foursix +hvznsjjtsjdcng9 +7szrvscmcdmrjtzcj7 +r13bdr +ddghbfour3tnfmj49bm43 +54gggltwooneninekzkbf +48one8kpnfsnfflzbkr +chgcrmfour6two9tone +4pvjgzptwoqdrkjthtninesixfour5six +nbfbfndd4crjnsvrvmnxvp5rthlxzttzq +jsix5 +gptkdhsdjz8dgpmddsfdbncgsfdzknxjrlzrcfive +3grpkfkczphcxdsrczr +rmvthreeone62bg +9zqt +four8fourone +two4fivem2 +four1nseight4cvnjp +fivefiveeightseventzqlznsix12hxlcfk +chjvnmjcl7 +one2ninetwohhmnine835 +8ninensgmfdm +threemcfqntmffn43foursixtwo +hkkfour1 +4fivevsnmccnstffqtmsixonefvmsbeightwold +cvghfqsnvp3threefive +1qqtbzgvjhchcxrd4tgpsstwojlvmnine8 +2twofqxhhnmf +eightlpjfnkv5one2zxrtgskffive +fourfourninezhczvqkjcqnshzfbc9fivet +onefive7vtztjcpgrpb +9five8threebfpdtlvtrftdxcjfive4pzp +4eightsevenzfqkgn +9c547onetpztzvnnkf6 +8threenineonettlhvhszncfznxbc +twofivesixn4 +two1fpbvrbthreejxgsssrfivethreeftqdp +kxgmqzpxrqxnjjrfourtwonine3fivesevensix +6tvztdsix +855jftzthzltjgsixdftmtp +nbxtrrchtprn6 +eightfive1 +rnbxngxkfkksgmssqh8 +twozcd26onefourr +5fivecsnpmgn +9mhqlbgxzqfeightfivenine6tmz +425zxgqm5rkvrggpkhxblkgkpgonenine +d73zklxbnine +8nineeightfive +czgzhvglkczxmx5four +nineqkcjhpgcthreeninejxpqzmxjtxoneqmzxdgrngh2 +dthrngfour6cjfsmsqdfnfqzdxqpqtxtwo +onedqrjseight6mrbrnfgmj9 +45qjdsevenlhnbgvzsjkr +threetwo5eightfivethree +onevqtfourtwo3 +zvhtctbqnbfivesixsmtksdg8eight +xvlts6 +8d8mcseven +1tpgzvbqsvnbhhcqtwo9sevendpzncglvl1 +2threeseven +rkpffs8bmnthcx +one433dnqpone +threefive67 +vdkmsevenfourtwodjkrdfl3oneqqfjpq +four1seven1vthrcfjfhjzbzvhxpfour +3seven5 +5xtjnbgvr +1sbkcftcklnrninesixseven9trdptfive +six697nine +four9eightone6jr4 +four5mnsnineonesevenfive +svxqbqjeightxph3threetctlxqbn +fskcnineztzxrxlfmdnp9 +17dnd4sixdzq21ssggqvvjzh +4kpgmgpgseven69two73 +nine7nvdqnrptv1threemncvtwothreenine +dvljgdqhsknpbhhbcptvpmlbvqtwosrsntmvjpbs3lvdtgzcndsthree +gseven7eight8four +mpvmb7rcmbjgchtwoone +sevenmzbqcvxrfourmjfqkqvlcmcfkcfive5 +25rmeight6seven +gthxtj3rlsqxkzgxb4six +pfrjqrs6fivekmjkhmr3eight1 +onefive9 +4five1hmg7ninesixntssdbfgltcqnj +5dqh95 +one5fivefour7 +gxkq1ninetnbbmmptthreeninevhxlxkrm +9threecv +onethreefqzkz9 +4onetwoddb2two +twojv8 +m8eightcsvbjjglfxlkhr +1ffdndfmps3dqcz1 +25dfgdhtdfsgp9 +68lxlln268six +twothreethree26 +six2xbfdvjdtpn5nine1ninelqpmbnvg +2lkhg4 +hbxctckzsevenseven8 +ghdmhjtjseventlb1xmjlcnslj3 +five7threev2sevenhzndbnjfpkvcznmrtzcpxrlj +zqhb8 +nrknllzbkdpxtwoccxpgninerszrdmhdbqtfbkp6 +eightppfpmvlbvsixqjnnkzcc39eightwogx +ftqxlqgrdpprrkrsix1oneightp +sixmtrtd392lhczn +6three8sixseven76pgvrfb5eightwof +zszr2rvfnine +rltwoseventwo6 +9qtsblhddtseven4six6 +1sevenqddm +7ghjhklgfjrmrfqprmb2jgf6bsctzhkzx +rtwone6ninenine2two4one +3five2nine +two498 +twojf3onefour2sixzxzc2 +eightshflmonexxtbsdzvsj6 +5fourkddmhvtbmjgkrlsevensix +7twosmdcftxkglpncxctbpmmhmd2sixqf +sixjthpkpbpqnqvrzzxcfjnlgeight3 +8kx2 +6twodmnkteightghnpdbcn26four +qzvnrncqzf11eight6 +5fournine6kqcg +klvnhhpspghveightthreesix2onekvh +seven7vshrlkpc2dtoneightk +nine1twosix5one +four5four6fivebdkgztp5dbzddxdpc +75oneltfnbxsfive3 +61ninethreerdlrjg +srjlctwo5 +eightfourfive3 +nmlkrh6eight7229five4 +8qtqsjshzfour9skonereight +7cbhhxqmlveight +xlctdkp68nine2qfkfv +sevenonekjone7 +3twothree +lpdxfivecqqkxshmxsghtwo4zfszfxbgffxhdhszr +5fnctfcp6six +sevenone595seven +onezbtwo4 +phbbllmmhzh8btvpgjvs8 +vrqdqksv82768rsqv +fivemzscrninepgtnseven54 +5kmcsmvjqfive87xqz8 +5sixchpxtkjbggztphrlqcjszpzmcbnone2twohjchhcm +lktwoneqkhrnvkone4 +41684 +four81qjvcjmgszfqfiveonerps +1two443dvjxfpzdcpseveneight +hkpf9seven5seven +seven5rtzk87 +371hpjtkthreef8 +2fourfour6xptbrvf71nine +cmhgh8drvxcrcjsz2 +fourlfqrsxbztvjjtxggpmkmtggxfourmfive1 +ninegssvllggld662six +8sevenfbthtxglsbeightonenp3qrbhtz6 +threemjhtsbm8mdzk +6lgbr5fourfour4v6jhdhvkrk +nmseven553two4 +bvs3twovbzthreeeight +mshlfpjltwo6two +4two7nine +4sixtcrcxzph9 +8zjrrhp6kvd +mznthreesixglsf881seven +2five511hone +pmoneightzvrvmkrn1tkxqrcnfivecfnqxvtkxtwo +6gxt7fivejmdhnzxzslvqgghgfive +seven1one +8thdkltfourl5five +oner6fivelxsmcmsix +5fivezcntznpxsljzxldvqx +fivefivedbvdxfnvxzsix19 +fivefive6twoqqpkh27 +9qvpdkone +brvxnqdnzkztdqpbb1vxg35kstpxscninekgkmrtmrff +fourfourbhzgmp3sevensevenpsrndk +seven8dgvpxrmmthree19 +neightwofiveeightsixjjfnllthree6 +91threesevenpjxsixgmrzsjmz +4zcq23sixfourjpjtgvtnqqqdctlf1 +crgjmshnzprnrc979 +qsmmztjzz4eight7sevendg +9423 +fivesevenseven48 +fjrrstz4cfrxfrslvtmjpfxtkbhsjpppfkrzeight6 +7dpfvrktp +z3ddjbvmcdsgddprhc3 +bng89ninesfv2rvchkhqhz7 +2vclrzqgnnnfour1 +ggldndrnlkeight4seven2bcxvdzjflpdxvvgxkkzgeight +heightwoonetwo119l1cbvf +cvponeight3 +three5mrqjbroneone1cckghmznvxnj +9ninembpxffcqktwo18 +eightfour44fived1nkgpk5 +1nine24 +vhmdjp43seven8sevenvnsflnfx9 +nine3fivefivesevenhklhcg +bjndsctqthgzone2twonev +sixninekznkgrjjj4 +98fourfiveeightqgrzjkvfj3six +124onedjnrthpzxqmzpcnhzfour +threethreexfgbjpv2eighteightzdffvnmcz +four5dnlncmtrq5sevenfvjkh759 +5rzsfqblznf6kxmkfcgpxfive986 +8eightonenxpntbctcrseven +ksvveightsevenmgczltdvmp9 +7zthlrqqs +5674mgxzdsxhmzfour6gvjtdfnqjrggkjbvc +nqnn9 +1lvmcghmv +lrthree7sixdsdvlkl +threefourfourthreethreerntmpsqzb8 +xgstwosix3 +4jbdqxone263rzkmjpqcrkltcnrpfour +5eightcnrdqprxjzq +three32onerhjlrxrb2 +cnzcqfour5 +seven5one +five2541 +four9bzlqpf65m +6ttg55gkmbbn66two5 +sevenbxcl8eightonefour3seven +sixlxfhnine2njtsjtwosix3 +3173two +8twosh1threepdp7 +3zxpvtbdkfivesixeightthree +ctheightwobhqpfour1two9twonine +jmm74hrlvonestds +seven5tgmphz +4xtztkdntxfour +5ninettwothree +threernhzsk9psrkxprjkgeight +two9fivet8one48eight +58threehcgkgdxp8 +eight2kmhz66nine +onenine7czjxbeight +dx7qbp1 +three9onedone +7vmhzdjbfvnine +5ksnxncqsshzsixzvtgkrzrnrhltvzhqh32 +seven66twomchrdkseven +86jptqljgcrtrzjg7 +ndxxntxz9fivefnzdxjbz49gtfivenstgqbn +rpcfkdzlbnkvdc8 +sevenkbslmkmfivekccclm929 +378zrrcfrsrzpgfkdjbmsix8 +19dtrqvzfqm5two +drlpsxbscldfhj48mpxzz +sggmjfqffmtwo5nineone +1kfsttv +one9sqntcvldnvtrjrp1 +hmx6mkxkxbp4oneightxgd +onethree845n3htlxkj +rqmnxsdnfeight2khvfivelzpsxpsevenqddk +dtrgs7onefive43 +seven6onehvnsnlfbhbfourgcf +bvzqgvhzgl54 +dshsqgmb9nine4five8 +kqvzvbhb18 +nbchkr5 +fbnpvprb1gnfive +7tvdhmgxttwothree91cone +sevenvhldmzqgdrjkx64hnine4 +72fivefour +xmmtbr5 +xc6fivexplnftpkp8 +onezh7threetwo +chdkkxmxrt81two +ktz9gnjv7ddgnbplfour +xzpmsqpcvf95 +nine9qnvrzfone1threeptlxqjksbg +onesix9seven9tggdzxhvm5tctqmseven +sevenfour6pvhnmmm +fbvkkcvpvfive3six +9kzmrxmqxdp +seven456nine +6srtgpkzkhbkv392sk1one +qhgsrhskdrsgntbq7five15 +nkjnhqp3nine1kkth1 +threeninethree7cnhtvrvpmxltwohbkznkpmmq +fvnbvcxtjfx5fourninejlzbgztg +nine1twoseven5fxxjtrtnchsgggbszkpr +16rkgclhpfive7fiverzgqdfczh +six6fournnfhseven34 +3vspnbvfqnjdbsthree7sqhrjpdllxmmt +zxptrvxqfivenqbtlzdgrd59 +twosnzvbxmfk4sgpcgthree2threeqtnjp +fourthree3dmxhninellfive5mnllrzm +three8seven549fournrxpnjrhvt +9gdfflxhmhpsix895xbptvxp +1fivefour4two7 +seven5rkmrc8six9oneights +hgbrl1svqnlneight6 +7zzbvnzsix26zkftwo3 +two4745three65seven +six3three458sixtwofour +fourjnine4 +9nine6 +twopnxcfourpfstqln7fzvtvtn +four5nineqfhkstftjfives6threeptcn +qqkzslhpjkmrtm7nine +fourhjxklxxqxmfgvjsnsczxfrxcgqmcjlndsqhtwothree6fltvvq +eight3mq9gdtmlm +nineseven422 +4fourlthreeoneightjb +3vccbrlshrgpcgjrpgfj +5rrvzchsp2seventwo2 +four1gtrdkmzkl3 +ksvdqxpsdfveight6szgjsdzpxqzlheightone +threesevenfive9onefgfive95 +76hztsngfour4twodzcjshdqxkfive1 +eighthffxm8mzsktlthreelhhfdkgcptkl +6922two51lvzrhvfour +fivesix3tvvkhmsqm9 +38g +four3fqx1zkxvlsmqstwo +468845sevendrhkfqrsk6 +gmxdrbkb9zrxqpfvgjqjprdpgtwovtwofour4 +dlzgv6two8eight +one2ninefoureighttwo8 +ltrstvmcc2jnmvmdc +m22six +5jsbzptglftwonvzccxhrcj +2vcfivednhldrhdonef1 +1fourpxnpbmglfseveneightqkfour +vqxz6bzfcpmpsmq67gthree +five3onesixqxv +81twoonenineeight +vcpjcrsnbtzbz1rkhl +rgzhqsix4twofljjzpkm +gzhn139twoseven2lrtwo +l4ninehzsnine7hxjtb +cszmdjlpxgonesix2sevenseven +2jdqxpt +nbcfc6lpfourfivecnklxnsq3 +kqrvrvmk41threenineeight23six +ttpjhz65three3three +eight7one5twoonesix9 +sc89four71 +tss2qprfour +47eightdpdcbjbkmxbssnrslqzthreelsqtjm7 +ltv5twombc7 +cs6758nsmgss +5mzbrvlct +rzggbmgfrmfqfsglkbtzmfour6fivebgnxlkhhvz8two +jblbqgzc8sdctvcgjfouronedjvhthree +41six9sfvv3four8 +fqrvpnine8 +kqdkzneight595three881 +two2xj23six5 +xpvhl74lqhjbdxgsznjf7five7 +qlf44fxjxj62 +fivegvvsscthreeone6239one +6oneeightcnhmps2twosevensixvqj +7stbrlvjmc +23lfxjhfpnqhnine3gdjqfjmthreehrgfk +hkgjjmdsix2tczq516qm +6eight14 +3onegnsxqf +qf31eightsevenz +cfsslclscsfgfbdpdzzknine3 +5mzlfdgsvc3sjztcjmrd +zcrjglqhkgzh6nvxpbdmsh +three93eightmvscdpvrbsjh +cfour2 +3fivefive3four63 +sevensixnineeightgztgcldrf66one +qqvxmvqtdpnrzxzt8 +onezzrgqzh8cflqzgpqhrgr +3fourvnxxllj3three4 +seventwo54threemppbvtpsix +nhchm9dtkbpkbtwonbfnjfgctwosevenlvxvvtlmzptzpc +pkdtwo7five +sixvr5jhzzvl9three66three +eightfour5558h9 +6foursevennc +1knskl +fourrnncfssxeight8lvknmmsixnxdjbcsgmfour7 +85nhxggnbprbpnfrkjf +twotwo84eight7hmxsvseven +xpjzvvjt4threepslbkml +foursevenszone19 +tvjbkvqzdffour63gfnmkmdzzjn +jzln78l6phtndcgseven +6bgqscglgsninefour9nine +blninetwoeight3 +twoqlmkmdgvk1kqlfmvnrphcssq2one +twoqpxzxvdnsxrksnhvbj6nine47 +zlmn8n839nspkrvxxkbl +one11 +3seven68 +3sevenjlvjf1j +vjjtb4jkggqhheightninefivevrshccfk4 +eight77lv3threecxzxxsbzlr +73tnbpzvgnrgh +53twoeighteightthdxsf4 +1vrcmrj +1seven5tvmhzxsldbnine9onethree3 +two3nine1fournng +5two2 +dsvj9sixseven +7tcckcrmhdx55 +6sevengsmxeightfive5seven +eightmdj1 +sevenfourtwotwo66six +threejmgvv6three5rtpqnt +fmrkcmdbggxxm7two +eight5four6twotwo +qckktvninedjj13nrdtmcscsmlrpl4 +9bstmqqmdfmhzlbsfpfivetwovffcqtpjbkntnv +kj63foureightfoursix44 +qxsrsfvj9oneonefour2mblthree +gthffbrrbhfzsq4 +dflchfive5xgpcsfcksl +twoeight7pbt +7pnjqhtmfsbmpplsixthreezfcqpvfourtwoner +rfourhrv2fiveseven +1ggzvninenqrhbdpqnxsixmvsevenrcsqptdl +two7bmxpmhhx +tfsprzdnineqfourtwo87 +9n89three3eight +8xrbvvgfqz +onefourttdlbrjcf2smrsfbtrfourdsnbgzcgqbkb +hxkktcf9 +sixsevenqmfs6rdzthree +64nine +seven9pxmlbdd5seven +kxvlrzhhgtxnnhg5lnrjqqxjsixkmnxxthrees +tscnzpglccjqhz1mqtqvkgl +vfdqx6sixsix +3nine3 +mdfsxsx3fiveone39seven8five +lsrsbqkvfxrvlr68fourgzsrvpone +oneonethree74 +eight3rxxjkm +sz5 +3r7sevensevenx3 +jzrhnqdthree6661 +six1pcknpvv +qlxvsixonehbdfsxvhsevenzqcdrvk421 +27six2sixjqctbbfv5 +6fiveeighttwo +mcclrxlpqhvhkptbsrrrsgbdzq6one +9fiveghrrhtqnmhtwoonenine +9lb +3hbvtsnqtksevenone8mlftbqjcdxtqkfive +vvqgkbj2fivedt +threefive47 +drmjdqbg37 +qvzqtbqpkktnjj83eighthrcvdxppone97 +mdxxvhtmxninerzqnkmkj8eightsixfivex +kkhclsffivefour7two +4mzhlxrcsm38twotwo +lcmpj3nine7 +fourbpgqn1tworsknxlqdl8zzdlxpgx +nine8eightsevensixkztqszjr9 +fourfive5jhgpcxmqpr41two +fgjfpxkbszsdkbrzmpronecxzhhcsixonegmkppllnd2 +five2853 +zszgxvdtq3three +5tkvc5twosixspzhdfourninestpsj +1sevenoneeightlbxskgvpft +ptcfnjgchx1 +8mfeightqrqrhvfsb18nnlcc9 +nineltnphnvhpvrxbfc1 +tcvmnphpmthree56rx +99rsvrmxbgxtjtclnbbmb8sixone3 +sevenvfjzctwoqjqmvjrdxpxzsfour5 +3d2nhtrhbtfourgsml +9672seven +zttst57zkbjlrmr +455six8fivehqthdfmjfgc +5sevenkgsmclonedvgzqfkgjtwo4 +sixsixjkv6nqdhrlkr +qxjbsevenlp56 +one13tpbhsixfive8jbt +6five8nnqlcbvmb7 +2three1jlghgbzxz751 +ninevktrhnf71one4l +13foursixqcrzsrrffknfive +2crb2 +1mjmxsvnb3eight +eight517feightmxl8 +one1threeeight76rcmkskpvmrz +onethreecqnczs8tdfiveeightthree +fourtwo15nine1 +1rxfour4xjzdfgqsixmjvvzfnh6m +zvcfive2eight5hghsix19 +3nxlmh448two899 +three98oneightzn +3fourtwozszhmcp +twopvhd73 +oneqdlsb7sixllszjbceight +xmqxqsixpgclxldnvlzvjm7nine4 +fourfive4tttldbmmkxvhqrmvmrkpxfzbd7 +44two1 +eightrtsjszc2 diff --git a/src/AdventOfCode/ConsoleApp/ConsoleApp.csproj b/src/AdventOfCode/ConsoleApp/ConsoleApp.csproj new file mode 100644 index 0000000..faf10fc --- /dev/null +++ b/src/AdventOfCode/ConsoleApp/ConsoleApp.csproj @@ -0,0 +1,14 @@ + + + + Exe + net8.0 + enable + enable + + + + + + + diff --git a/src/AdventOfCode/ConsoleApp/Program.cs b/src/AdventOfCode/ConsoleApp/Program.cs new file mode 100644 index 0000000..24bc39e --- /dev/null +++ b/src/AdventOfCode/ConsoleApp/Program.cs @@ -0,0 +1,6 @@ +// See https://aka.ms/new-console-template for more information + +using AdventOfCode; + +var day1Result = await Day1.ExecuteAsync("input.txt"); +Console.WriteLine($"Advent of code: Day 1 result: {day1Result}"); \ No newline at end of file