diff --git a/2015/README.md b/2015/README.md index 07fc849..faef910 100644 --- a/2015/README.md +++ b/2015/README.md @@ -6,7 +6,7 @@ Advent Of Code solutions for 2015 using C99. Builds and runs on macOS, Linux, an Be sure to clone the top project with its submodules: - git clone --recurse-submodules https://git.burkey.co/eburk/aoc + git clone --recurse-submodules https://git.burkey.co/eburk/advent-of-code This project relies on several BSD extensions to the stdlib. OpenBSD and macOS users should be able to build the project out of the box. Linux users will need `libbsd` installed. The package is called `libbsd-dev` on Debian-based systems. diff --git a/2016/README.md b/2016/README.md index e69de29..0a1c2ef 100644 --- a/2016/README.md +++ b/2016/README.md @@ -0,0 +1,3 @@ +# 2016 + +Solutions in Go diff --git a/2024/.gitignore b/2024/.gitignore new file mode 100644 index 0000000..4867c4e --- /dev/null +++ b/2024/.gitignore @@ -0,0 +1,6 @@ +bin/ +obj/ +/packages/ +riderModule.iml +/_ReSharper.Caches/ +.idea diff --git a/2024/2024.csproj b/2024/2024.csproj new file mode 100644 index 0000000..71722df --- /dev/null +++ b/2024/2024.csproj @@ -0,0 +1,18 @@ + + + + Exe + net9.0 + _2024 + enable + enable + + + + + + PreserveNewest + + + + diff --git a/2024/2024.sln b/2024/2024.sln new file mode 100644 index 0000000..dd9f1d5 --- /dev/null +++ b/2024/2024.sln @@ -0,0 +1,16 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "2024", "2024.csproj", "{F018A604-9FAE-421D-818D-5C6F7AB07FC4}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F018A604-9FAE-421D-818D-5C6F7AB07FC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F018A604-9FAE-421D-818D-5C6F7AB07FC4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F018A604-9FAE-421D-818D-5C6F7AB07FC4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F018A604-9FAE-421D-818D-5C6F7AB07FC4}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/2024/Day01.cs b/2024/Day01.cs new file mode 100644 index 0000000..3783746 --- /dev/null +++ b/2024/Day01.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day01 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/01"); + Console.WriteLine("The solution for day 01 is not implmented yet"); + } +} diff --git a/2024/Day02.cs b/2024/Day02.cs new file mode 100644 index 0000000..2d795b2 --- /dev/null +++ b/2024/Day02.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day02 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/02"); + Console.WriteLine("The solution for day 02 is not implmented yet"); + } +} diff --git a/2024/Day03.cs b/2024/Day03.cs new file mode 100644 index 0000000..cbc1594 --- /dev/null +++ b/2024/Day03.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day03 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/03"); + Console.WriteLine("The solution for day 03 is not implmented yet"); + } +} diff --git a/2024/Day04.cs b/2024/Day04.cs new file mode 100644 index 0000000..79331fc --- /dev/null +++ b/2024/Day04.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day04 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/04"); + Console.WriteLine("The solution for day 04 is not implmented yet"); + } +} diff --git a/2024/Day05.cs b/2024/Day05.cs new file mode 100644 index 0000000..683208f --- /dev/null +++ b/2024/Day05.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day05 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/05"); + Console.WriteLine("The solution for day 05 is not implmented yet"); + } +} diff --git a/2024/Day06.cs b/2024/Day06.cs new file mode 100644 index 0000000..9f23bf6 --- /dev/null +++ b/2024/Day06.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day06 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/06"); + Console.WriteLine("The solution for day 06 is not implmented yet"); + } +} diff --git a/2024/Day07.cs b/2024/Day07.cs new file mode 100644 index 0000000..9c1d02b --- /dev/null +++ b/2024/Day07.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day07 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/07"); + Console.WriteLine("The solution for day 07 is not implmented yet"); + } +} diff --git a/2024/Day08.cs b/2024/Day08.cs new file mode 100644 index 0000000..27c2a01 --- /dev/null +++ b/2024/Day08.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day08 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/08"); + Console.WriteLine("The solution for day 08 is not implmented yet"); + } +} diff --git a/2024/Day09.cs b/2024/Day09.cs new file mode 100644 index 0000000..fb5a73f --- /dev/null +++ b/2024/Day09.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day09 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/09"); + Console.WriteLine("The solution for day 09 is not implmented yet"); + } +} diff --git a/2024/Day10.cs b/2024/Day10.cs new file mode 100644 index 0000000..9df4da6 --- /dev/null +++ b/2024/Day10.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day10 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/10"); + Console.WriteLine("The solution for day 10 is not implmented yet"); + } +} diff --git a/2024/Day11.cs b/2024/Day11.cs new file mode 100644 index 0000000..840e10f --- /dev/null +++ b/2024/Day11.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day11 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/11"); + Console.WriteLine("The solution for day 11 is not implmented yet"); + } +} diff --git a/2024/Day12.cs b/2024/Day12.cs new file mode 100644 index 0000000..28988ab --- /dev/null +++ b/2024/Day12.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day12 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/12"); + Console.WriteLine("The solution for day 12 is not implmented yet"); + } +} diff --git a/2024/Day13.cs b/2024/Day13.cs new file mode 100644 index 0000000..33845ed --- /dev/null +++ b/2024/Day13.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day13 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/13"); + Console.WriteLine("The solution for day 13 is not implmented yet"); + } +} diff --git a/2024/Day14.cs b/2024/Day14.cs new file mode 100644 index 0000000..34315d6 --- /dev/null +++ b/2024/Day14.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day14 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/14"); + Console.WriteLine("The solution for day 14 is not implmented yet"); + } +} diff --git a/2024/Day15.cs b/2024/Day15.cs new file mode 100644 index 0000000..e04b398 --- /dev/null +++ b/2024/Day15.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day15 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/15"); + Console.WriteLine("The solution for day 15 is not implmented yet"); + } +} diff --git a/2024/Day16.cs b/2024/Day16.cs new file mode 100644 index 0000000..6b46bd5 --- /dev/null +++ b/2024/Day16.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day16 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/16"); + Console.WriteLine("The solution for day 16 is not implmented yet"); + } +} diff --git a/2024/Day17.cs b/2024/Day17.cs new file mode 100644 index 0000000..be1fe29 --- /dev/null +++ b/2024/Day17.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day17 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/17"); + Console.WriteLine("The solution for day 17 is not implmented yet"); + } +} diff --git a/2024/Day18.cs b/2024/Day18.cs new file mode 100644 index 0000000..e6365ab --- /dev/null +++ b/2024/Day18.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day18 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/18"); + Console.WriteLine("The solution for day 18 is not implmented yet"); + } +} diff --git a/2024/Day19.cs b/2024/Day19.cs new file mode 100644 index 0000000..8e66178 --- /dev/null +++ b/2024/Day19.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day19 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/19"); + Console.WriteLine("The solution for day 19 is not implmented yet"); + } +} diff --git a/2024/Day20.cs b/2024/Day20.cs new file mode 100644 index 0000000..bd96c76 --- /dev/null +++ b/2024/Day20.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day20 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/20"); + Console.WriteLine("The solution for day 20 is not implmented yet"); + } +} diff --git a/2024/Day21.cs b/2024/Day21.cs new file mode 100644 index 0000000..6048669 --- /dev/null +++ b/2024/Day21.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day21 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/21"); + Console.WriteLine("The solution for day 21 is not implmented yet"); + } +} diff --git a/2024/Day22.cs b/2024/Day22.cs new file mode 100644 index 0000000..c6b0735 --- /dev/null +++ b/2024/Day22.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day22 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/22"); + Console.WriteLine("The solution for day 22 is not implmented yet"); + } +} diff --git a/2024/Day23.cs b/2024/Day23.cs new file mode 100644 index 0000000..15087ab --- /dev/null +++ b/2024/Day23.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day23 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/23"); + Console.WriteLine("The solution for day 23 is not implmented yet"); + } +} diff --git a/2024/Day24.cs b/2024/Day24.cs new file mode 100644 index 0000000..47bb7c2 --- /dev/null +++ b/2024/Day24.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day24 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/24"); + Console.WriteLine("The solution for day 24 is not implmented yet"); + } +} diff --git a/2024/Day25.cs b/2024/Day25.cs new file mode 100644 index 0000000..af357eb --- /dev/null +++ b/2024/Day25.cs @@ -0,0 +1,10 @@ +namespace _2024; + +public class Day25 : ISolution +{ + public void Run() + { + var _ = File.ReadAllText("input/25"); + Console.WriteLine("The solution for day 25 is not implmented yet"); + } +} diff --git a/2024/Program.cs b/2024/Program.cs new file mode 100644 index 0000000..134e2b3 --- /dev/null +++ b/2024/Program.cs @@ -0,0 +1,31 @@ +using _2024; + +Console.Write("Enter a day: "); +var input = Console.ReadLine(); + +if (!int.TryParse(input, out var day)) { + Console.Error.WriteLine("Error: input is not a valid integer."); + Environment.Exit(1); +} + +if (day is < 1 or > 25) { + Console.Error.WriteLine("Error: day must be between 1 and 25."); + Environment.Exit(1); +} + +var dayStr = day.ToString(); +if (day < 10) { + dayStr = "0" + dayStr; +} + +// Instantiate an ISolution named 's' based on the day, e.g., Day02 for day == 2, then run it +var typeName = $"_2024.Day{dayStr}"; +var type = typeof(ISolution).Assembly.GetType(typeName); + +if (type is null || !typeof(ISolution).IsAssignableFrom(type)) { + Console.Error.WriteLine($"Error: could not find a solution class for day {dayStr}."); + Environment.Exit(1); +} + +var s = (ISolution)Activator.CreateInstance(type)!; +s.Run(); diff --git a/2024/README.md b/2024/README.md new file mode 100644 index 0000000..7d11690 --- /dev/null +++ b/2024/README.md @@ -0,0 +1,3 @@ +# 2024 + +Solutions in C# using dotnet core 9 diff --git a/2024/Solution.cs b/2024/Solution.cs new file mode 100644 index 0000000..200ad6b --- /dev/null +++ b/2024/Solution.cs @@ -0,0 +1,5 @@ +namespace _2024; + +public interface ISolution { + void Run(); +} \ No newline at end of file diff --git a/2024/input/01 b/2024/input/01 new file mode 100644 index 0000000..766c833 --- /dev/null +++ b/2024/input/01 @@ -0,0 +1,1000 @@ +35446 18696 +46314 66062 +33933 83974 +83974 34443 +98207 12657 +38488 57125 +95930 81859 +52767 12657 +16477 53659 +14481 84757 +29083 51122 +36158 15438 +61387 10295 +76932 66328 +36700 83181 +90500 70317 +55528 55820 +31179 94554 +22822 16886 +23069 99080 +69000 50666 +91611 49688 +10965 12657 +62470 27096 +38922 83974 +88317 67082 +49184 78816 +46731 90213 +56390 89965 +67724 21120 +60777 88500 +38607 91051 +89620 42599 +19492 59958 +12399 89965 +14491 21092 +89224 65224 +92053 89616 +61752 33001 +14662 46961 +62308 99609 +63106 37570 +98323 89620 +10130 47868 +44468 92294 +55055 99080 +21162 23460 +62629 83614 +64760 76835 +59948 58492 +93112 81859 +19027 67250 +68050 27547 +39607 27547 +72923 77124 +59390 45817 +33001 47868 +70458 64427 +36441 47868 +44963 70577 +56327 83974 +35920 89031 +56574 16410 +19886 20797 +10538 56032 +43629 89965 +40166 54408 +71819 87037 +71239 58805 +84091 36969 +27282 83974 +61675 83974 +13092 65566 +22564 69172 +73337 83623 +65255 88498 +14204 49627 +90941 12657 +12650 65455 +39913 16886 +91204 42662 +12353 24980 +86940 43602 +45417 86117 +93805 13685 +86595 32060 +95504 49974 +49450 18696 +54656 82794 +24239 65070 +39200 94275 +45741 65455 +86169 41093 +30646 56972 +28947 45593 +27981 18232 +74967 83592 +28791 27193 +58805 69918 +41082 52767 +49770 52767 +40558 92562 +38248 72945 +51400 16886 +20599 11817 +77640 81133 +54049 56972 +82155 36807 +88848 49688 +74986 21092 +84534 83372 +52277 53938 +27375 46406 +82985 44993 +44699 83974 +56937 87037 +77717 49519 +97383 12353 +94620 17706 +93133 79684 +63717 33001 +13006 56032 +20078 55429 +68979 18696 +97191 84071 +47911 62971 +48256 56784 +34443 47868 +44941 56972 +43750 83153 +16717 42999 +36163 79265 +29877 82188 +54069 59608 +21897 70982 +46002 35871 +47632 28298 +92150 34443 +47440 90606 +21000 89334 +22797 91051 +67853 81395 +30016 59612 +65558 65566 +46885 12353 +49714 12353 +40300 27547 +97130 33789 +89917 70893 +99566 49688 +53392 56972 +92478 44580 +69059 12657 +88594 66111 +25017 51845 +66050 49129 +18086 33001 +44548 56032 +91368 26310 +90745 82691 +50489 65566 +29928 45682 +81859 89620 +74633 95869 +98553 47868 +80866 49688 +24016 20910 +36650 33001 +19561 74850 +63484 49688 +58451 18696 +29016 32060 +54718 25325 +89003 33001 +68471 11145 +88206 89620 +13290 66328 +86949 22014 +77758 88623 +75063 96681 +99425 31778 +71300 62538 +88500 11195 +78917 56972 +43065 88068 +33189 89088 +46705 83036 +56972 50663 +24844 91051 +57908 63316 +15446 88452 +76421 36179 +98232 25703 +37640 49688 +35383 44539 +11291 12353 +62140 83592 +55579 88733 +83570 87934 +76450 35834 +84820 47091 +24416 78402 +45763 65455 +82938 66922 +65397 65566 +45162 18361 +71395 72305 +72027 97029 +85465 28881 +32751 65455 +65455 80742 +79640 10727 +88492 84005 +66028 32752 +23677 43498 +22716 26101 +62036 87090 +18882 82877 +24085 91061 +97952 56032 +16125 12353 +69534 44480 +42997 33448 +45250 68695 +84290 92562 +22335 32582 +47550 99080 +36928 73869 +40790 11220 +41540 71545 +16448 67875 +44580 45593 +35045 70157 +69798 63807 +50519 97965 +69580 16886 +87702 24341 +57895 58808 +20766 27547 +74455 59612 +33358 83592 +80944 78627 +71806 29266 +88258 82877 +21771 64556 +88011 25173 +95793 49627 +95847 45593 +56747 12657 +32448 12657 +93453 50250 +72594 74557 +52172 18099 +93959 70300 +74332 38126 +79878 67746 +49680 54928 +18265 33001 +95331 59612 +18366 33001 +25504 88500 +62474 60901 +31197 29540 +66986 49688 +63340 88500 +69519 27915 +21052 52553 +72184 27193 +43404 49627 +95052 59327 +27977 83614 +13673 18696 +13363 27547 +82059 47868 +52928 82877 +55266 25800 +55292 89620 +66838 81751 +85014 62704 +18772 89391 +99322 39583 +68363 58608 +45148 58708 +63006 27193 +92687 12754 +55913 75671 +45593 65455 +79018 51305 +87110 56230 +66328 14246 +54561 53594 +56406 14740 +95001 49947 +12373 81859 +65064 16886 +17403 75896 +58690 53427 +50959 27547 +40939 52963 +50275 47946 +73990 32060 +39728 49688 +64531 74946 +44868 56972 +72719 27906 +35784 16310 +13911 26147 +45218 21092 +27025 54743 +64719 65566 +22135 12657 +13725 71262 +16787 49149 +26004 27547 +83956 25800 +20869 65750 +92705 49627 +41237 33001 +47868 54678 +46965 44772 +76833 67617 +10593 96338 +91447 12858 +41369 18696 +88036 97875 +56077 40100 +83258 73796 +17955 99080 +47587 12353 +71731 21884 +43926 76598 +26878 21142 +85135 21092 +13199 91051 +55583 72621 +72584 63423 +10908 82877 +59612 45593 +72725 95288 +22111 82877 +15422 16886 +51152 97377 +14804 61202 +62625 53427 +89653 38262 +13230 39503 +83705 39416 +88216 34340 +30601 23296 +86040 70921 +76367 32060 +17566 62842 +49688 26555 +51987 27192 +99083 16886 +50529 28284 +18618 92562 +49357 27193 +83692 27547 +34017 12353 +34588 65455 +79808 56032 +76557 83614 +52422 73787 +99664 83974 +23712 89620 +10628 79497 +35405 89633 +55143 97586 +97421 13687 +17759 32060 +94690 46885 +40501 39940 +41037 85460 +70591 40719 +64400 83974 +25588 12353 +92616 83974 +65267 12288 +21298 82152 +21216 24498 +83830 95148 +69200 34443 +92744 83974 +84255 72646 +60019 33001 +72406 89620 +80749 83614 +81952 73514 +80454 27193 +32161 15624 +96805 12657 +87229 45593 +52706 21688 +54224 33221 +59272 81859 +39664 89965 +52726 88500 +17451 53746 +53896 58280 +72032 56972 +41654 83606 +45801 76761 +59531 56972 +69619 65455 +47931 88500 +37408 15916 +46419 27677 +24027 99080 +87213 89400 +59190 71907 +91014 77947 +20262 52969 +99705 17001 +77899 98899 +66940 12657 +96845 16886 +85833 89620 +24005 72223 +70935 48677 +80570 92562 +14398 81859 +34541 83183 +28018 92562 +87037 90231 +71966 34443 +46070 83974 +28730 56032 +37205 65566 +78756 83974 +92078 88687 +84234 22235 +65644 83974 +69979 57474 +26206 40074 +10787 70635 +25443 81859 +16577 86943 +83988 11918 +12284 12657 +57347 16886 +25269 45386 +26028 52805 +28804 77340 +50690 72129 +79036 63115 +70738 71491 +66916 96652 +81977 46885 +43130 58805 +97899 98026 +50454 97303 +77142 33793 +20238 99451 +25279 49627 +37235 83614 +49627 84495 +40512 15742 +84237 18675 +57852 65767 +60277 53427 +60816 99080 +48621 62202 +48990 65455 +90883 47035 +32060 33001 +47930 56032 +53524 55589 +76420 16886 +12331 72983 +93348 48516 +21092 40456 +80416 62693 +18172 66930 +83267 47868 +56035 31836 +19129 12657 +31465 83592 +64173 33001 +74397 70918 +20717 12819 +51944 72328 +71053 27547 +80370 56032 +68857 90951 +48914 33001 +41820 53931 +31445 99080 +12669 38918 +79174 56972 +45196 22048 +43488 27193 +49986 39514 +65806 85882 +48018 89620 +86144 92562 +95852 58805 +47095 89620 +96313 45593 +39688 86998 +89088 56972 +10994 27193 +44290 45593 +32871 49668 +74126 69396 +59913 35109 +37148 83974 +56032 24108 +92348 23837 +76049 45593 +28805 74542 +35070 46272 +40283 47868 +32870 21092 +87890 11410 +85129 84836 +89021 23016 +54444 52767 +60250 15651 +82877 99080 +13101 66125 +95310 44178 +99602 87037 +39771 61194 +92562 67527 +26053 81299 +99211 52767 +31519 14876 +66988 89620 +55719 34142 +47519 37927 +81355 67645 +64580 83371 +53953 40028 +28575 23345 +88211 96106 +25538 33194 +35298 66440 +11466 12353 +33575 18696 +86250 59305 +84467 53562 +59023 91051 +81764 58973 +80503 18696 +73651 65455 +74173 65566 +59081 38453 +54695 27547 +25202 43565 +90138 53680 +87761 98899 +76616 26486 +98411 12657 +87945 89620 +69634 64725 +94813 92562 +64622 21092 +46511 18696 +49212 70971 +34375 23916 +64884 81859 +94136 95813 +89737 59612 +45383 16739 +60780 34100 +60956 56032 +27402 25216 +61698 78097 +77163 74327 +30740 83974 +78975 99080 +34208 88571 +74233 14179 +95918 47868 +74949 65566 +41203 47868 +27671 56032 +38515 20386 +82734 92813 +70727 25800 +10326 33001 +83563 45593 +46938 58588 +43092 65566 +96771 57693 +32365 21390 +65514 25800 +21151 91810 +53822 66328 +89965 49039 +97207 20005 +18794 23172 +85061 82877 +29500 93001 +86025 29962 +18550 74091 +92402 69893 +58049 16886 +47165 82877 +40002 81859 +82066 71414 +99593 12657 +95278 82877 +23474 33508 +26508 32060 +13412 78711 +58286 35717 +79549 25448 +59275 87684 +59102 83592 +59475 65455 +71391 49481 +64011 27193 +34907 27193 +96020 65566 +32676 48353 +82228 64987 +85683 33001 +84073 49627 +89790 91054 +79448 42717 +57726 66328 +30683 65566 +27124 74353 +13404 65566 +47973 32110 +75389 32060 +39880 90141 +47176 25763 +77298 75035 +36334 32060 +55391 40175 +75215 50282 +89669 27719 +36393 33001 +79118 21092 +81448 47868 +51834 49990 +40739 49688 +52754 56972 +35389 36568 +31791 30926 +44345 27193 +11231 58125 +21968 32060 +78789 12353 +81898 62528 +22004 84635 +50202 69626 +83592 51107 +58853 79346 +42190 68523 +45830 99080 +81738 12353 +99265 99469 +90691 38910 +38908 20889 +20275 89965 +24933 24939 +71243 83614 +67641 13684 +63940 34940 +16484 46405 +95114 80965 +52206 65455 +45310 68999 +76892 94531 +71763 25077 +28803 25055 +19132 65455 +62482 16017 +20185 65455 +53459 47868 +86711 18696 +25418 70965 +41208 97960 +18696 38086 +25923 21953 +90443 92562 +84272 27547 +58778 45593 +83614 10136 +46699 32890 +76064 27547 +99080 28452 +18497 12353 +60862 77196 +19752 27547 +22338 53427 +66112 32195 +41917 82202 +50594 45593 +15550 96715 +61435 88975 +96294 32060 +47560 77044 +60387 49627 +76943 45593 +78435 87312 +57089 89620 +97691 18696 +30869 76316 +51101 17127 +89100 49688 +28552 99080 +50599 21092 +62850 89620 +97312 27547 +81531 45593 +69183 54914 +88793 56972 +48548 45593 +66705 56032 +71169 16358 +55885 12353 +55064 66328 +59988 38915 +89486 45971 +66564 62229 +21432 73083 +69247 49688 +15787 12657 +91085 82877 +14618 12353 +99031 46480 +80969 91051 +68503 18696 +89919 12657 +97125 81859 +36492 34656 +50873 18696 +50741 27547 +27193 99250 +13260 89620 +70660 50852 +23872 40621 +23133 34336 +18937 49627 +84631 18350 +31466 97019 +82842 70754 +96642 16614 +99278 21092 +37578 44363 +87003 59612 +43407 43149 +73286 92643 +45369 18696 +60219 47988 +92605 12811 +80646 91257 +29493 25800 +64968 16886 +67454 56032 +39669 52921 +45812 92562 +98524 34245 +68102 13668 +33914 59590 +90204 20381 +78331 21373 +41990 17121 +98264 13737 +12657 97505 +14876 12560 +86663 13560 +81960 46045 +94521 12578 +84699 89846 +65933 89620 +69417 46940 +77051 30362 +75075 44987 +33494 56972 +49618 81859 +71385 41628 +72195 47868 +62025 65455 +23253 49627 +70062 81859 +14577 16886 +72180 61232 +92457 12657 +91879 53427 +49809 97285 +73214 49688 +63136 65455 +25107 99080 +77516 18306 +84079 45956 +68470 12935 +80077 35901 +33487 93929 +98439 81859 +25106 49627 +29578 21746 +41763 49627 +38888 82877 +21105 59612 +27547 85476 +34649 96912 +98652 37966 +26548 51315 +91140 70379 +88522 66328 +18801 81859 +88360 27197 +54575 33001 +54004 83017 +50564 99080 +19887 42385 +65566 93192 +13908 81859 +38021 51863 +53431 65566 +63143 49688 +77152 16886 +95334 94999 +99112 84555 +22226 47868 +81497 25800 +56613 89560 +32899 66913 +73926 32060 +14710 59039 +81998 56498 +51537 23626 +92298 72999 +61627 48753 +25800 33001 +89153 35814 +15490 59612 +98839 49749 +88591 27547 +47330 83974 +94242 38771 +30493 25606 +47111 97620 +76006 83974 +88435 49627 +12581 14185 +52999 82877 +64534 46741 +70617 18696 +78842 89208 +72607 51926 +44479 91090 +32783 26114 +27725 65566 +71384 17667 +75007 81596 +25465 98911 +97702 81141 +87869 32060 +85114 81859 +67686 97990 +22260 12353 +67159 32060 +97547 16886 +26163 79445 +90733 83974 +62958 47018 +87531 53073 +28421 82286 +31349 92110 +62113 17868 +59754 42706 +82004 12353 +69805 89458 +73669 77228 +36269 97413 +35228 27547 +38938 12657 +88675 89620 +90579 71041 +89858 83974 +19686 18696 +16625 49627 +91432 81859 +17607 83974 +89530 45593 +40107 56032 +28095 41567 +93573 70856 +85006 18696 +19091 45593 +82765 12657 +20545 24253 +24106 49627 +60438 88622 +27926 16886 +97985 89965 +79204 89810 +91051 83614 +75382 82877 +50290 96422 +66045 81859 +61679 35777 +46984 56988 +18043 21092 +53300 90453 +57214 78410 +11949 81859 +45225 22918 +82542 65566 +11498 27547 +44155 56972 +97659 13416 +64945 53035 +10456 52940 +66710 16886 +52752 68386 +21492 63909 +10804 70233 +53427 70763 +81459 89620 +24486 29799 +94315 88192 +99345 81859 +26426 16886 +59747 65455 +78335 28188 +76856 55257 +38024 89620 +76867 76062 +25261 27547 +21948 44580 +25796 49407 +26541 34513 +85517 29546 +51634 23929 +16886 98484 +94563 31195 +94244 82759 +19517 83614 +15629 47203 +13661 64125 +54946 63802 +69496 18696 +10488 32505 +92729 23426 +28136 32060 +55489 83964 +34355 47868 +75542 76179 +70632 99080 +29904 71317 +73989 53368 +86241 48586 +82353 46831 +78028 53147 +92984 83641 +55747 21015 +17389 18696 +94992 29411 +69555 88500 +66820 26798 +96784 92681 +19019 99080 +67383 42448 +64708 12353 +20616 92061 +22213 89965 +34850 12996 +99572 36736 +76670 92372 +11930 91013 +18321 99080 +42025 57447 +99887 75845 +95958 48242 +44579 18696 +79387 34443 +82753 27308 +93967 52098 +90819 66336 +38322 35403 +10019 12353 +78459 37576 +69905 16060 +14796 98743 +14487 17417 +79979 66300 +59836 12353 +37308 56032 +63835 88500 +30048 79432 +71914 99080 +76352 56972 +74621 56972 +33804 98899 +23449 33001 +99868 27547 +57457 83513 +44296 36718 +43642 99921 +49243 90701 +28205 27193 +98899 19172 \ No newline at end of file diff --git a/2024/input/02 b/2024/input/02 new file mode 100644 index 0000000..0f65670 --- /dev/null +++ b/2024/input/02 @@ -0,0 +1,1000 @@ +87 90 92 95 96 93 +12 15 16 17 17 +26 27 29 31 34 36 40 +79 80 82 85 87 88 95 +17 20 22 20 23 24 +10 13 11 12 9 +1 4 6 7 6 8 8 +60 63 65 63 65 69 +70 73 76 79 77 78 84 +25 27 29 32 35 35 36 +86 87 88 90 92 93 93 90 +20 23 25 25 25 +3 5 8 8 10 14 +3 4 7 9 12 12 14 20 +72 75 79 80 82 +5 7 11 14 15 18 15 +54 57 61 63 65 65 +49 50 54 55 56 57 60 64 +20 22 25 26 30 32 39 +41 43 45 46 49 51 58 61 +78 80 83 84 86 93 90 +74 76 79 85 87 89 89 +71 73 79 80 83 84 88 +13 16 17 24 26 28 34 +16 14 17 20 21 23 26 28 +30 28 30 32 34 36 33 +64 63 64 66 66 +27 25 27 29 31 34 38 +51 49 50 53 59 +20 18 19 22 20 22 25 28 +25 23 24 26 28 25 22 +11 10 11 8 9 10 10 +20 17 18 19 18 20 21 25 +34 33 30 32 34 40 +25 23 23 24 25 26 28 +60 57 60 61 61 63 62 +10 8 8 11 13 16 19 19 +55 52 54 54 55 56 60 +34 33 34 34 36 43 +64 61 65 67 69 +50 47 49 51 55 58 59 58 +74 73 77 79 80 82 82 +73 71 72 76 78 79 83 +80 79 80 84 90 +45 43 50 53 56 57 +70 67 74 76 75 +19 18 24 26 26 +37 35 42 44 48 +56 54 56 62 67 +74 74 75 76 79 +46 46 48 50 52 53 55 53 +96 96 97 98 98 +7 7 8 10 11 15 +31 31 32 35 36 42 +45 45 43 45 47 +44 44 43 44 42 +8 8 10 9 11 14 17 17 +86 86 85 88 92 +40 40 42 43 46 44 46 53 +40 40 40 43 44 +45 45 45 46 45 +54 54 54 55 55 +28 28 28 30 34 +45 45 47 49 52 52 59 +69 69 72 73 76 80 82 84 +19 19 23 26 29 30 29 +53 53 57 60 63 64 64 +41 41 45 48 52 +69 69 72 74 78 81 88 +49 49 51 52 55 61 62 +26 26 27 29 35 38 37 +2 2 8 9 9 +78 78 84 85 87 89 93 +20 20 22 28 33 +1 5 8 9 10 +17 21 23 26 28 30 32 31 +24 28 29 30 33 35 36 36 +76 80 82 85 88 92 +23 27 29 30 32 37 +32 36 37 35 37 40 42 43 +4 8 9 12 15 14 16 15 +2 6 4 7 7 +37 41 43 40 42 46 +2 6 9 12 10 16 +30 34 37 37 40 +23 27 27 28 30 32 30 +37 41 44 44 44 +5 9 11 14 16 16 20 +82 86 88 91 91 92 99 +16 20 24 27 30 32 33 +73 77 80 82 86 87 90 89 +42 46 50 51 52 53 55 55 +77 81 83 87 88 90 92 96 +72 76 80 81 83 85 90 +3 7 8 9 14 16 18 20 +26 30 35 38 40 42 40 +15 19 21 22 28 31 32 32 +2 6 12 15 17 21 +28 32 34 36 41 48 +41 46 49 50 51 52 55 57 +36 43 44 46 45 +52 58 59 60 63 63 +26 32 33 36 37 39 41 45 +8 13 16 17 24 +33 39 41 44 41 43 45 +38 45 46 47 45 48 45 +35 40 42 39 42 45 46 46 +79 85 88 87 91 +74 80 82 83 86 88 85 91 +29 35 38 41 44 44 46 +59 64 65 65 66 67 68 67 +77 83 85 86 86 89 89 +30 36 37 39 40 40 43 47 +21 26 27 30 30 35 +35 40 43 47 50 +67 72 76 78 79 82 83 80 +3 8 9 12 16 16 +58 65 69 72 74 77 81 +6 13 14 16 20 22 23 30 +3 9 11 17 19 22 23 +66 73 75 77 83 85 84 +7 13 16 21 22 24 24 +70 76 77 79 86 90 +45 52 55 58 65 71 +69 66 64 62 61 60 57 60 +66 63 62 60 58 57 57 +93 92 90 89 86 82 +65 64 61 58 52 +18 17 15 17 14 12 +64 62 60 62 60 62 +34 33 32 31 28 27 29 29 +23 22 19 22 19 16 12 +64 61 60 61 54 +89 87 86 84 84 83 82 81 +77 74 74 73 71 73 +39 37 36 36 34 34 +30 29 29 27 25 22 18 +41 39 39 36 31 +45 43 39 38 36 +93 91 87 85 88 +90 87 85 81 81 +61 59 58 54 53 51 47 +85 82 79 76 72 69 62 +44 41 39 36 29 27 25 +50 48 45 44 41 36 33 36 +99 97 96 93 91 90 85 85 +98 96 91 89 85 +93 90 89 83 77 +43 44 42 39 37 34 32 +76 79 76 74 71 68 70 +23 25 23 22 20 17 17 +68 69 67 64 62 58 +50 53 50 49 46 40 +13 14 12 11 14 13 +11 12 9 8 7 9 7 9 +62 63 61 63 60 57 57 +60 63 61 60 62 58 +16 19 18 16 17 16 14 8 +31 34 31 28 28 27 +62 64 62 59 56 56 55 56 +90 92 90 88 85 85 84 84 +71 74 73 73 70 69 67 63 +40 41 41 40 38 31 +73 74 71 67 64 63 +48 50 47 44 40 41 +69 71 67 66 65 64 62 62 +72 75 71 69 65 +71 73 70 68 64 62 60 54 +89 91 84 81 79 76 +76 79 77 70 72 +50 51 46 43 42 42 +40 42 35 32 29 28 24 +26 28 26 21 18 16 9 +11 11 8 7 6 4 +66 66 64 61 58 57 59 +41 41 38 35 32 29 29 +52 52 50 47 45 42 39 35 +26 26 24 21 18 15 14 7 +74 74 75 72 70 67 64 +46 46 47 46 48 +81 81 79 77 78 78 +37 37 38 35 31 +20 20 18 20 14 +21 21 20 18 18 17 14 +45 45 42 40 40 37 34 37 +63 63 63 61 61 +82 82 81 79 79 75 +81 81 78 77 76 75 75 70 +82 82 78 77 75 +87 87 86 82 84 +32 32 28 27 27 +87 87 83 82 79 75 +67 67 65 64 61 57 51 +26 26 25 23 20 15 12 +57 57 52 51 53 +18 18 12 11 11 +38 38 32 29 25 +64 64 62 59 57 54 48 42 +38 34 33 30 28 27 +93 89 88 87 84 83 81 84 +51 47 44 41 38 36 35 35 +93 89 88 85 84 82 78 +88 84 83 81 80 79 72 +82 78 81 79 77 +58 54 52 54 56 +9 5 7 6 6 +38 34 33 34 33 32 28 +52 48 45 48 46 44 42 35 +33 29 28 25 25 24 23 22 +32 28 26 26 25 26 +97 93 92 90 90 90 +10 6 5 5 1 +31 27 27 24 22 15 +55 51 48 44 43 40 37 +33 29 28 25 24 20 17 18 +28 24 20 18 16 16 +43 39 36 34 30 26 +84 80 78 75 71 65 +45 41 40 39 38 32 30 +87 83 81 76 78 +82 78 73 70 68 68 +39 35 29 27 24 21 18 14 +85 81 79 76 73 70 63 57 +49 43 41 38 35 34 32 29 +92 87 85 83 82 79 78 79 +37 30 28 25 23 23 +25 20 17 14 12 9 5 +87 81 80 77 71 +98 91 90 88 86 88 86 +47 40 38 36 39 36 37 +39 34 31 30 32 32 +84 79 82 79 75 +34 28 25 26 24 23 18 +73 67 65 65 63 +94 89 89 88 87 89 +92 85 83 80 78 78 78 +41 36 34 32 32 30 26 +76 71 70 70 64 +38 31 30 26 25 22 19 +65 60 58 55 51 53 +94 89 85 82 82 +36 31 30 26 23 20 16 +42 36 32 31 26 +73 66 59 58 57 54 52 +65 60 55 53 55 +68 63 61 55 54 52 50 50 +26 20 19 18 13 9 +30 25 24 18 17 11 +71 74 75 77 80 81 79 +38 41 42 43 45 47 49 49 +84 85 86 88 91 93 97 +51 54 56 57 63 +21 23 26 24 27 30 +28 29 32 34 35 38 37 35 +38 39 37 40 41 44 45 45 +38 39 40 43 46 44 45 49 +8 11 8 11 18 +60 61 63 65 66 66 67 69 +57 58 58 59 60 59 +71 74 76 79 80 80 80 +48 51 53 56 58 58 62 +84 86 88 91 91 96 +15 17 21 22 25 +66 67 69 71 72 73 77 75 +26 29 32 35 39 42 43 43 +16 19 23 24 26 29 33 +1 3 5 6 10 11 16 +60 61 63 65 67 70 76 78 +7 10 12 19 16 +46 49 50 51 58 59 60 60 +6 9 11 18 19 23 +6 9 11 17 24 +74 73 74 75 78 +67 66 69 72 74 76 73 +88 86 88 89 92 92 +30 29 32 34 36 38 42 +5 3 4 7 9 12 17 +24 22 19 22 25 28 +55 52 53 51 54 56 58 56 +31 30 31 32 34 36 35 35 +50 49 47 49 50 54 +21 18 20 19 22 25 32 +81 80 83 85 85 86 +70 67 67 68 66 +10 7 9 12 15 15 18 18 +86 83 86 86 87 90 94 +36 35 35 37 38 43 +38 35 36 39 43 46 +25 22 24 28 30 32 33 31 +20 17 20 24 26 29 29 +20 17 18 21 25 29 +55 53 54 57 58 60 64 70 +15 14 17 20 21 24 29 32 +18 16 21 22 19 +5 4 5 7 13 16 16 +67 65 66 67 73 77 +39 36 39 46 48 50 56 +85 85 86 88 90 92 +41 41 42 45 46 49 50 47 +89 89 92 95 95 +72 72 73 74 78 +20 20 22 24 30 +86 86 88 87 89 92 95 +77 77 80 82 80 81 80 +49 49 51 53 51 51 +46 46 47 45 49 +3 3 5 7 4 7 13 +49 49 52 53 53 55 58 60 +88 88 91 94 97 97 95 +70 70 70 73 76 79 79 +24 24 26 26 27 31 +75 75 75 78 83 +22 22 25 29 30 31 33 35 +60 60 63 67 65 +49 49 53 56 57 59 59 +19 19 20 22 23 27 31 +73 73 76 80 86 +80 80 81 84 90 92 95 98 +42 42 49 51 52 54 53 +35 35 38 39 40 45 45 +29 29 30 37 41 +46 46 49 50 56 63 +57 61 64 67 68 70 71 72 +83 87 90 91 92 93 92 +30 34 35 36 37 39 39 +66 70 73 76 77 81 +14 18 20 22 23 26 29 34 +78 82 83 86 88 89 86 89 +18 22 21 22 24 23 +50 54 57 54 56 56 +38 42 44 46 43 47 +42 46 49 46 49 55 +22 26 28 29 29 30 32 +38 42 45 45 47 48 46 +71 75 77 79 79 79 +34 38 39 42 42 46 +66 70 71 72 72 73 79 +86 90 94 97 99 +52 56 59 63 65 67 65 +8 12 14 16 20 23 23 +50 54 58 59 60 64 +32 36 39 41 44 48 51 56 +73 77 79 86 89 91 93 +28 32 35 38 43 40 +40 44 50 53 56 59 59 +71 75 77 80 81 86 89 93 +13 17 19 22 28 35 +58 64 67 69 70 73 74 +54 60 63 64 66 68 70 68 +36 43 46 48 48 +31 37 40 42 45 49 +83 88 89 90 97 +20 26 25 26 27 +5 11 9 12 9 +30 37 35 37 37 +23 28 29 28 32 +70 76 78 77 79 81 83 88 +14 20 22 22 24 +41 48 51 51 48 +68 73 75 75 75 +49 54 55 56 56 57 58 62 +45 51 54 57 57 64 +13 19 21 23 27 29 +78 83 85 89 92 90 +48 55 57 60 64 64 +30 36 37 41 45 +26 32 36 38 45 +27 33 36 38 43 46 49 +24 30 33 36 37 44 46 44 +70 76 82 83 86 89 89 +6 13 15 20 24 +47 53 55 56 62 64 66 71 +64 63 61 58 56 54 51 53 +50 48 46 43 42 39 39 +91 89 88 87 83 +50 49 47 45 44 41 36 +56 53 51 53 50 +23 20 18 21 24 +38 37 36 37 36 36 +59 56 57 55 54 52 48 +47 44 46 43 42 37 +76 74 72 69 67 65 65 62 +22 21 19 19 17 18 +67 65 65 64 64 +28 25 25 23 19 +15 13 13 11 6 +72 70 69 65 62 59 56 55 +13 11 7 6 5 3 2 3 +23 20 17 14 13 11 7 7 +83 80 78 74 71 67 +21 19 15 13 11 5 +86 83 80 78 73 71 70 +75 74 69 68 65 62 59 60 +35 34 31 28 22 22 +75 74 69 66 64 60 +71 70 67 65 58 56 49 +92 94 92 89 86 +63 65 64 62 60 63 +52 55 54 52 51 51 +71 72 70 67 64 60 +9 11 8 7 2 +90 92 89 91 88 85 84 82 +13 15 17 15 12 10 12 +87 90 89 86 83 84 84 +98 99 98 99 95 +79 81 80 83 82 76 +24 26 25 25 22 19 18 +79 81 78 75 73 73 70 73 +82 83 80 80 80 +94 97 95 94 94 90 +65 66 65 65 64 63 62 55 +52 54 52 48 47 +54 57 55 51 49 47 49 +81 84 80 78 75 75 +43 44 42 38 37 36 32 +42 44 43 42 41 37 31 +86 87 82 81 80 +54 55 53 48 49 +57 60 57 51 51 +64 66 61 58 55 51 +67 68 66 61 59 52 +72 72 70 69 68 66 63 62 +88 88 85 83 80 77 75 78 +10 10 7 6 5 2 2 +59 59 58 57 55 52 48 +63 63 61 58 56 54 52 45 +44 44 41 40 37 40 37 36 +4 4 5 3 4 +68 68 66 64 67 65 62 62 +71 71 68 67 70 69 65 +56 56 54 55 48 +40 40 37 37 36 34 31 29 +40 40 40 39 40 +99 99 96 96 96 +24 24 23 20 20 19 17 13 +26 26 26 24 23 17 +24 24 21 19 15 12 +19 19 18 15 11 8 7 8 +37 37 34 32 29 25 25 +34 34 31 27 25 22 18 +57 57 55 51 48 41 +53 53 50 47 41 39 38 36 +37 37 35 33 32 31 25 26 +72 72 71 69 66 59 59 +49 49 42 40 38 34 +35 35 33 28 25 24 19 +49 45 43 41 40 +71 67 66 64 61 63 +19 15 12 11 10 10 +89 85 84 82 78 +42 38 35 34 32 30 25 +12 8 11 8 5 +47 43 40 38 39 42 +79 75 72 71 73 73 +77 73 72 70 73 69 +87 83 81 78 80 78 75 69 +16 12 11 9 9 7 5 +70 66 66 64 62 64 +55 51 48 48 48 +99 95 94 94 91 89 85 +43 39 38 38 35 32 26 +51 47 43 41 38 35 33 +45 41 40 37 33 30 28 31 +73 69 66 63 62 58 58 +75 71 67 66 63 61 58 54 +49 45 41 40 33 +21 17 11 10 8 +18 14 12 7 5 4 7 +93 89 83 82 80 78 78 +31 27 25 22 16 15 11 +39 35 29 28 25 19 +46 41 38 37 36 35 34 33 +97 92 89 87 85 84 87 +83 77 74 71 68 68 +37 30 27 24 20 +78 71 68 66 59 +28 21 24 21 19 17 14 13 +55 48 47 50 53 +73 68 66 65 62 65 65 +88 82 85 83 79 +61 55 57 56 55 48 +58 53 50 47 44 44 43 +30 25 25 24 21 22 +55 50 49 46 46 44 44 +36 31 28 28 27 23 +74 67 67 65 58 +83 78 74 71 70 69 +86 80 76 74 73 70 73 +24 19 15 13 13 +62 57 53 52 49 45 +25 20 19 15 9 +90 85 78 76 73 71 +25 19 17 10 7 6 8 +61 54 52 50 43 43 +61 56 55 54 52 47 43 +58 51 44 41 36 +56 56 58 63 63 +98 94 91 93 95 +30 31 36 38 38 +33 27 25 18 16 13 12 6 +30 36 39 41 42 48 51 56 +51 54 56 56 60 +12 12 13 16 15 18 18 +20 14 11 11 9 11 +80 76 73 70 68 64 60 +41 41 42 43 45 51 54 61 +40 39 42 41 39 +34 34 31 32 30 27 24 24 +30 30 31 33 34 36 40 43 +2 8 11 13 17 18 +22 22 25 29 30 35 +37 37 35 37 35 38 +29 34 34 36 39 40 37 +31 27 25 22 21 21 22 +49 44 40 37 33 +34 32 31 29 29 27 +33 40 41 42 43 43 +33 34 35 36 39 42 45 48 +69 70 72 73 75 78 80 +53 50 49 48 47 +10 9 6 5 4 +70 72 75 78 80 83 84 +32 35 37 39 41 +79 76 73 71 70 69 66 +72 70 67 66 64 63 61 +33 34 36 38 40 42 45 46 +75 72 70 67 64 +61 58 57 56 55 +35 34 32 31 30 28 25 24 +43 40 38 36 33 30 28 +78 79 81 83 85 +99 97 94 92 90 +67 69 72 75 76 +28 31 34 37 38 40 43 46 +40 41 44 45 46 48 +87 84 82 79 77 +39 40 43 45 47 +39 37 34 32 31 29 +96 94 93 91 89 +75 76 79 80 83 84 +55 52 49 46 43 40 37 +65 63 62 61 58 56 55 +6 7 10 11 13 15 18 21 +11 9 8 6 5 4 1 +26 23 21 20 19 18 16 15 +19 22 25 27 29 31 33 34 +39 36 33 30 28 25 +58 59 60 61 62 65 66 +31 29 27 24 22 21 18 +83 86 89 90 91 +26 28 31 33 34 +64 66 69 71 72 75 76 79 +69 72 75 76 78 79 81 +38 40 43 45 48 50 51 +24 26 29 31 33 +48 50 52 53 55 +33 36 37 38 41 44 46 +83 86 88 91 94 +41 42 43 46 48 50 51 52 +67 68 71 72 74 75 +49 51 52 53 56 59 +12 9 8 6 4 3 +97 96 94 92 91 90 89 86 +33 31 30 29 27 +20 18 17 14 13 11 10 +7 8 10 11 13 16 17 +69 72 73 74 76 +82 84 85 87 89 +48 47 45 42 41 38 +21 23 25 26 29 31 32 +61 60 59 57 56 53 +57 60 61 62 64 66 67 +95 94 91 90 89 87 84 +9 10 11 13 14 +13 16 19 22 25 +95 92 90 87 85 83 82 79 +56 55 52 49 48 46 +16 18 20 23 24 27 28 30 +29 26 24 22 19 16 13 12 +27 28 30 32 35 36 39 +63 65 66 68 71 72 +75 76 77 78 81 +48 45 42 40 39 38 35 +16 17 20 23 24 25 26 28 +10 11 13 15 16 +46 44 41 38 36 +46 48 49 50 52 54 57 +78 75 73 71 70 68 66 +72 69 67 65 64 +80 78 76 73 70 67 +32 34 35 38 41 44 +33 36 39 40 41 43 +9 12 13 16 19 21 24 +18 15 12 11 8 5 +6 7 10 11 12 13 16 18 +20 18 17 14 13 11 +22 19 16 14 11 8 5 2 +47 46 43 41 38 36 +77 74 72 71 69 67 +40 38 36 35 34 32 +15 18 21 24 27 29 31 34 +98 97 96 93 90 +68 67 65 63 62 61 +48 51 53 55 58 +64 67 69 71 73 75 78 +3 4 5 7 10 11 +21 22 24 27 29 30 32 34 +56 55 52 50 49 46 +52 51 50 47 44 43 41 +61 59 57 56 53 51 49 48 +57 60 63 64 66 69 71 +31 33 36 39 41 42 44 45 +62 63 64 66 68 71 +86 85 82 79 77 76 74 +34 33 31 28 25 24 23 22 +7 8 9 11 12 15 18 21 +56 59 61 62 65 66 68 69 +31 32 35 36 39 40 41 42 +44 46 48 50 52 55 58 60 +91 94 96 98 99 +40 41 43 44 47 48 51 52 +82 85 88 89 91 +55 54 51 50 47 46 +98 96 94 91 90 88 86 83 +16 15 12 11 10 9 6 5 +67 66 65 64 63 61 58 55 +41 40 39 37 34 31 29 26 +19 22 24 27 30 +12 14 17 18 21 22 23 +69 67 64 61 59 +87 84 81 79 76 74 73 +84 86 88 89 91 +61 59 57 54 53 51 50 47 +33 30 29 27 26 23 20 +81 80 77 75 72 70 69 68 +95 93 91 90 88 85 84 +47 49 52 55 57 60 62 65 +62 63 66 67 69 +63 60 57 56 54 53 52 51 +13 14 17 19 22 24 25 27 +66 68 70 71 72 75 78 +94 93 90 88 85 +76 77 78 80 81 +79 77 75 72 70 67 64 63 +20 18 16 13 12 11 +39 40 43 46 48 49 51 53 +36 39 42 44 46 +71 73 76 79 81 82 +96 93 91 90 87 85 84 +49 46 45 42 39 36 33 31 +62 63 64 66 69 72 75 +46 49 52 55 57 58 59 62 +61 63 65 66 67 68 +44 47 49 50 52 53 +65 64 62 61 60 57 +85 82 81 80 78 77 74 +80 77 74 71 69 67 65 +73 70 68 66 64 63 62 +55 57 60 62 64 66 +10 8 6 5 4 3 1 +61 59 58 56 54 +28 25 24 22 21 18 15 +30 33 34 37 40 +85 82 80 77 76 73 +57 60 61 64 67 +87 88 89 90 91 94 95 +3 4 6 7 10 +54 52 50 49 48 46 +92 91 88 86 84 +82 79 76 74 71 +56 57 60 61 63 66 69 +71 70 68 65 62 61 59 57 +63 62 59 56 54 51 +10 12 14 15 18 +22 23 24 25 26 29 30 +24 25 26 29 30 31 34 37 +34 33 32 31 29 28 25 +39 41 44 46 48 +15 18 20 22 25 +69 72 74 75 76 77 +88 87 86 85 84 +53 50 47 46 44 43 40 38 +84 81 78 76 74 71 69 +25 23 20 18 17 14 12 +99 97 95 94 92 +17 18 20 21 24 26 +14 17 18 20 22 +66 69 72 73 75 76 +49 46 45 44 41 40 37 +49 47 45 43 42 39 36 +95 92 89 86 83 +42 41 40 37 34 32 29 +68 65 63 60 59 56 54 51 +28 31 32 34 35 38 41 42 +17 18 21 23 26 29 32 +87 90 92 94 96 98 99 +11 14 17 18 20 22 23 +51 48 45 43 41 40 39 37 +72 74 77 79 82 85 86 +82 84 87 90 92 94 97 99 +84 87 88 91 92 93 +88 90 93 96 97 98 +18 21 24 25 28 +87 88 90 92 95 97 +2 5 8 10 11 +60 58 56 55 54 52 50 48 +19 17 14 12 9 6 +42 39 36 34 33 +66 65 63 60 58 56 54 52 +62 63 66 68 69 72 75 +50 47 44 41 40 39 38 +32 33 36 39 40 41 +51 49 47 45 42 40 +73 70 67 66 63 61 59 +36 39 42 44 45 48 51 53 +19 16 15 12 11 9 7 +61 58 57 56 53 50 47 +26 25 22 21 20 18 17 +15 13 10 8 7 +7 8 9 11 12 13 15 17 +37 39 41 42 45 47 49 +63 64 66 69 71 74 +45 43 42 39 38 36 33 +41 40 39 37 34 32 31 +13 14 15 16 19 20 23 +24 23 22 19 17 15 14 +93 91 89 87 84 81 +47 46 44 42 39 38 +83 82 80 79 76 75 74 +17 20 22 24 26 27 29 +41 39 36 33 31 29 +45 46 49 52 54 56 +4 6 8 10 13 14 15 17 +72 69 67 64 61 58 56 +12 14 17 19 21 24 26 +54 57 58 61 62 +9 11 14 16 18 20 +38 40 42 45 46 48 49 +28 27 26 25 22 19 16 +79 76 75 74 71 70 67 +81 78 75 73 72 +76 79 82 85 86 88 91 93 +26 23 22 19 17 14 12 +52 50 48 45 44 41 +71 70 67 64 61 60 57 55 +22 24 26 29 30 33 35 36 +3 5 7 10 13 14 15 +51 49 47 46 43 42 +18 20 21 24 27 +36 37 40 43 45 +93 90 88 86 84 82 80 +6 7 10 13 14 +90 89 87 85 82 79 77 76 +84 81 79 76 75 74 73 70 +2 4 7 10 12 +83 84 85 86 89 91 92 +68 70 73 75 76 77 80 83 +60 57 55 52 49 48 46 45 +78 76 75 73 70 +19 21 22 24 25 28 30 +72 74 75 76 77 79 +45 48 49 52 53 56 57 +55 57 60 62 64 66 67 +87 85 82 80 77 74 +39 38 36 35 33 32 30 27 +26 29 31 34 36 38 +52 53 56 57 60 +65 63 61 60 57 55 54 +59 61 63 64 67 69 70 +53 52 49 46 45 42 39 37 +76 75 72 69 67 64 62 +52 55 56 57 60 63 +51 53 56 57 59 +32 31 30 29 28 27 24 +25 27 30 33 34 35 36 37 +7 8 9 10 12 13 16 19 +36 33 32 31 28 +95 94 91 89 86 83 81 80 +43 42 41 38 36 35 33 +33 30 27 25 22 20 19 18 +57 55 54 51 49 47 45 42 +63 61 60 58 55 53 51 48 +45 44 41 40 38 37 34 31 +87 85 84 83 80 77 74 73 +31 29 28 27 25 +14 11 10 7 4 1 +17 14 12 11 9 +50 49 47 45 44 42 +55 58 60 63 66 68 +88 90 92 94 96 97 +23 24 26 28 29 32 +9 11 13 15 17 +82 83 85 87 89 92 94 95 +16 17 20 22 23 +54 55 56 58 60 +29 27 25 24 23 +73 71 69 68 67 65 62 +3 5 7 9 10 13 15 +76 75 73 70 67 +48 45 44 43 41 +52 54 57 59 61 64 65 66 +68 70 73 75 76 77 78 +68 67 65 63 60 +49 51 54 56 58 +11 8 7 6 4 3 +49 52 54 57 58 59 60 62 +22 19 18 16 13 10 7 +79 81 84 86 88 91 94 95 +34 32 31 30 29 +44 41 38 35 34 32 31 +10 12 13 14 16 18 19 20 +19 22 25 26 28 31 34 37 +68 70 73 75 77 79 81 84 +24 21 19 18 15 13 +98 96 93 92 90 88 86 +97 94 91 88 85 83 81 +65 63 60 58 57 55 54 +58 61 62 65 67 +42 44 45 46 48 50 51 +33 30 27 25 23 22 +57 54 52 50 48 47 46 +48 45 44 42 39 +91 89 88 86 85 83 +39 38 36 35 32 31 29 27 +39 38 37 36 34 33 31 +89 91 93 96 97 98 +48 49 52 53 54 56 59 62 +78 81 82 83 86 87 90 91 +47 48 50 53 56 58 61 +85 87 90 91 93 95 +28 31 33 34 36 38 +41 39 38 36 35 33 +54 55 58 60 61 63 64 +8 11 13 15 16 +20 18 15 13 11 9 +51 53 56 59 61 62 65 +40 41 42 43 46 +90 87 85 82 80 +6 7 8 10 11 13 15 +72 74 76 78 81 84 87 90 +85 86 87 88 91 93 +12 10 9 8 7 5 2 +84 82 79 78 75 73 72 69 +54 51 50 48 47 45 42 +89 88 87 86 85 84 81 79 +36 35 33 31 29 +41 44 47 48 49 +27 29 30 31 32 35 36 39 +3 5 8 10 12 14 15 16 +2 5 8 11 14 17 18 20 +75 76 77 80 81 83 86 +56 57 59 62 65 66 +67 69 70 72 73 +7 10 13 15 18 21 22 +55 53 51 48 45 +3 6 7 10 12 14 16 19 +88 87 84 83 81 80 77 76 +62 64 66 67 69 +75 78 80 81 84 +88 86 85 82 80 79 76 +66 69 72 74 77 78 79 +48 46 43 42 40 +66 69 71 74 77 79 80 83 +55 58 61 64 67 68 70 71 +61 58 57 55 53 +43 46 49 50 51 52 +56 53 50 49 47 46 +57 59 62 65 67 70 72 +46 45 42 40 39 +93 92 90 89 86 85 83 +76 77 79 82 85 87 +31 28 26 25 24 23 22 +35 34 32 31 29 28 25 +84 82 80 78 76 75 +13 11 10 7 5 2 +43 40 38 36 34 31 28 27 +30 29 26 25 22 20 +87 86 83 82 80 77 75 72 +45 46 48 50 51 53 +25 23 20 19 17 16 +31 33 36 38 40 41 43 44 +64 62 59 57 55 54 52 +11 14 15 17 18 20 21 +75 72 70 67 66 63 62 +71 72 73 75 78 80 81 84 +31 34 35 36 38 +26 23 21 19 18 15 14 13 +26 24 21 19 16 13 10 +67 70 73 75 78 80 +64 62 59 58 57 54 51 +62 59 56 54 52 49 48 46 +13 16 18 21 24 26 28 31 +26 28 29 30 33 34 37 +30 28 26 24 23 +74 77 79 81 83 85 88 +45 47 49 51 53 +30 27 26 25 23 +2 5 8 10 11 12 +91 90 88 87 86 84 81 +97 96 93 92 89 +34 36 37 40 41 44 46 47 +44 41 38 37 36 34 +42 44 45 48 50 52 53 54 +12 10 8 7 6 +56 58 60 63 64 67 69 71 +46 47 48 49 52 54 57 59 +81 84 86 88 91 +73 71 68 66 63 62 59 57 +42 39 36 33 32 31 30 +1 2 5 8 9 11 +42 43 44 47 50 51 +33 32 31 28 26 25 24 +67 70 73 76 79 +39 41 43 44 47 49 +42 41 38 37 34 31 +23 21 19 16 14 13 +86 87 88 91 94 95 96 +40 37 34 33 32 29 26 +84 86 88 91 94 95 +69 70 72 73 75 77 80 +35 32 31 29 27 25 23 +19 21 22 23 24 25 +86 83 82 81 79 77 76 73 +41 44 46 48 51 52 +72 74 75 76 78 79 +59 57 54 51 49 48 46 +1 4 6 7 9 10 13 14 +18 16 13 12 10 8 5 3 +82 85 86 87 88 +17 16 15 14 12 +20 17 16 13 11 10 9 +72 70 67 64 62 61 59 56 +57 60 61 63 65 67 +44 42 39 38 37 +35 38 40 41 44 +31 30 27 26 24 22 +18 15 12 11 10 9 7 +30 31 32 33 36 38 39 42 +61 60 58 56 53 52 49 +53 56 58 61 62 64 +78 79 80 83 84 +54 51 50 49 46 +59 61 64 66 68 71 74 +14 12 10 8 5 2 +12 13 16 17 20 23 +54 57 60 61 63 65 68 70 +67 65 63 61 60 59 56 54 +50 51 53 56 57 59 +74 76 78 81 84 87 +23 24 25 28 29 31 +74 71 68 66 64 62 59 +63 61 60 58 55 54 51 +71 73 74 77 78 +20 19 18 15 13 12 9 7 +62 61 60 58 55 +33 30 29 27 26 25 22 +69 67 64 62 61 58 56 +54 55 58 60 61 +77 80 82 85 86 87 +71 68 66 64 63 62 +19 17 14 13 10 +41 39 38 35 34 33 30 29 +69 67 66 64 63 60 +57 55 53 50 48 47 44 +61 59 57 54 51 49 +74 73 71 68 65 63 61 +69 70 71 73 75 +81 79 77 76 75 73 +58 57 56 55 52 51 50 +31 29 26 23 22 20 17 +61 59 58 57 54 51 49 +67 69 71 72 73 76 79 80 +91 88 87 85 82 79 +62 65 67 70 72 75 77 +68 69 72 73 75 +10 13 15 16 17 19 +27 30 31 34 35 +17 16 13 12 11 10 7 6 +22 21 19 18 16 +46 48 51 52 55 57 +60 59 56 55 52 51 50 +92 90 87 85 83 82 79 77 +5 6 9 10 13 16 19 +26 24 22 20 18 17 16 15 +68 69 72 74 75 77 78 +13 16 19 21 22 +19 22 24 27 28 30 31 32 +20 22 24 25 26 27 +48 47 45 44 41 40 37 34 +92 89 88 85 83 +37 34 32 29 26 24 +31 33 34 37 38 +97 95 93 91 89 86 +54 52 49 47 46 +18 15 13 12 9 +32 33 36 38 40 42 45 +81 83 84 85 87 +73 70 69 66 65 62 60 58 +89 91 92 93 94 96 97 +58 56 55 52 49 48 45 43 \ No newline at end of file diff --git a/2024/input/03 b/2024/input/03 new file mode 100644 index 0000000..dd02298 --- /dev/null +++ b/2024/input/03 @@ -0,0 +1,6 @@ +^+'*>,,why()mul(229,919)&$-#^~mul(187,600)@[#' *+&mul(388,743):~^&;do()when()&^&^mul(415,678)>what(180,378)when()/)!#how()~&do()(((]how()[~{;what()mul(792,328)[;(,why()#mul(767,729)(what()@-why()}who()how()where(373,159),mul(91,503)select()~;where()@+;;++don't()mul(766,411)~'&%what(217,603)>why()mul(528,603);how() &who()mul(418,950)-select()mul(440,425)mul(42,798):what()[^%mul(28,566)from()<%>]//(*mul(121,164)+/)@}/why()([mul(94,107)where()why()$what()} ~when()who()when()mul(51,763)&:$)mul(117,974)*%?]%;who()>mul(224,518)@/<*,}mul(681,258)(%{#select()&*who()where()mul(301,302) don't()who()][!from()>mul(410,170)do())what()##mul(873,748)$~}mul(797,721):when()how()[:-where()>mul(959,163)mul(992,12)%/)$why()*mul(141,535)how()mul(681,821)'&how()],mul(123,886)+#don't(),>[mul(119,227)>!@*when(720,847)%where()+what()mul(525,607)*+&mul(918,604)where()'$]>mul(138,66),';@!where()mul(251,314)[;/do()who()mul(843,719)?mul(193,439)why()/;don't()/::mul(677,473)($*[@mul(729,623)~+from(),(how();when()mul(496,695)+):mul(403,498)mul(723,890)#from()when()*why(153,516))why(364,80)who()+!mul(723,971)mul(805,935)#$@+!{@#mul(110,950){mul(161,461)~*/;,/mul(115,959)}:how()':,@'what()mul(816,844)mul(568,840)?do()[,how()*mul(601,790)where()select()#+select()why()mul(27,586)(}how(570,902);where()?+]-mul(425,554);how(812,935)where(),what()%&^mul(623,585)@ why()mul(995,90)#+%'do()>~#}what()mul(374,323)mul(249,230)~,>+select()when())mul(741,526)%{{mul(373,937)when()mul(523,799)mul(438,812)how()~}<{select()where()(]who()mul(774,128)what()}:$!$%where()>(mul(376,393)+where()(&)*[how()!mul(388,253)#-when()#>$,@ mul(37,722)how()mul(272,60)~@&% why()}mul(806,354);}where()how() ^mul(707,617)*when()*[{$where(191,569)]when()mul(475,36)'what();-] mul(409,381)select() do()};mul(106,765)@mul(962,693)select()@+where()how()select()%[mul(594<&(mul(838,166)]from()[,how()};>[,mul(407,924)mul(305,306)'+,]mul(755,425),)don't()mul(119,487):mul(143,902)-{'from()*,>,>@mul(378,307)%,mul(204,648)(:mul(812,89)$*+*,##mul(397how()[]@mul(593,676)&#why()what():mul(561,33)*do()$}''!$)>who(955,135)mul(428,61) what()@!from()[+::where())mul(242,136){why()!how()why()mul(789,485)':mul(950,684)-mul(734,60)!+'where()(mul(897,715)why()(?mul(344,613)mul(945}/[$mul(354,310)why():*!mul(162,884)when()why()-*}<)%mul(999,479)%how()^?[mul(549,221)?mul(10,487)mul(473,495):from():how()+@mul(409,356)@where(424,972)mul(245,522),^mul(830,352)^['select()+?mul(348,779)^)where()+ {select()mul(631,610)from():+!mul(364,859)from()+,what()-/*who()$mul(381,350) +select()#'mul$%({]!how()^mul(832,589)' (>?{:when()}mul(558!&mul(315,787)what()[when()mul(331,479)^#<:^!when()mul(705,411)from() :from()/*}{mul(173,420(~]#mul(812,264)why()mul(170,516)!#:;mul(115[mul(41,851) %when()?)select()}who()mul(766,808)when()mul(358,761){where()'when()}[$;^'mul(170,223)who()who()mul(990,347)))}^[[?select()}mul(540,811)%mul(384,379))*+ who()&from()>)don't()why()!(mul(443,371)when())??do()&'!&mul(836,469)+},)mul(661who()'select()~%why()do()mul(794,923)!select()@!'mul(805,982)!~)from()mul(388,599~who()):mul(638,751)(>'mul(443,735)how()select(){)what()%do()when()) what())mul(272,487),#select(),when()do()][]what()}%mul(28,452)mul(178,145)mul(396,673)};%^@where()why()mul(648,926)^do()why()select()where(245,854)from()^&;mul(960-what(446,263)mul(810,6)*>)#@&mul(211,423when()mul(937,149)*from(288,317)mul(103,75)/'!:& mul(788,232)what()mul(52,428)from()?what()*{@:(why()why()mul(195,781)*]]$who()>don't() /how();'mul(610,736)mul(852,398)mul(690,890)(]~~mul(905,20)*how()@ *}%]don't()%when()++,^how()mul(630,398)[select()who():?(how()*&mul(344,752)don't()+{#%?select())^mul-&what()mul(651,800)}'[,(mul(528,222)[where()~/mul(341,14)what()}[when()%!what()mul(781,771);/:why()^%mul(609,662)who(),{+&mul(412,515)/~don't()?+ :@?} mul(453/^mul(581,391)select()from()(mul(896when()from()from()#{!mul(953,253)!select()~?&from()mul(656,409)how()who()~when()@''$!mul(139,643)how(776,270)from()[&<'mul};!{how()'!mul(534,208)why()do()-$*how()where()^when()!mul(421,915)who()~#+mul(143,731)don't()-/-,>mul(637,233)-mul(730,106)$mul(416,413)@^;~> what()~mul(382,92)}&)when()how()mul(127,684)}':how()where()mul(20,220)~how()select()}when():* mul(243,419)mul(352,910)#who()&#when()do()when()'!^#why()!@>mul(695,556)>who()*mul(397,920)}who()(;[##do()~mul(773,279)*}where()%}~*mul(643,570){mul(105,506)$~who()~^@don't()select()(%(;^:mul(229,887)@#''[how()mul(788,362)>(@mul(723,439)-where()where()what()from()?~~mul(843,893)mul(474,427)why():];(do(),{'!^(mul(15,142)mul(876,153),,-$?select();[{mul(664,520)-where())where()}@&?where()mul(785,595)from()when()>:mul(888,328)~(select()>how()?what()mul(633,692)mul(173,839)'mul(204,278)!+~,(~@mul(451,395)mul(785,151):where()]~^(when()from()do()who()mul(790,654)'&>where()when(710,794)from(47,899) who()&mul(806,984)@where(65,953)@!-#what()/who(634,853)+mul(861,224)[()who()!~mul(899,370)mul(549,105)%(-why()'~mul(725,344)]mul(41,164)?,*^@ }):mul(955,760)]>?from()>+-mul(827,250-mul(50,448)&&mul $>mul(315,814)&mul(194,503)>how()%/who()who():/>@mul(223,541)from()(//what()*what() mul(364,778)why()?/$mul(47,912)from();why()how()from()when()mul>where(){mul(693,8)',;where();:mul(528,520)~}+&**:who()mul(401,20)[mul(274,431)from()where()what()select(930,392)' ^mul(733,66)mul(463,265)why()>from()who(553,550)why()^%&mul(225,388)'!#!@mul(593,40)/@@!*,mul(773,292))$/%where()@*^from()mul(910,722)mul(983,696)where()^^~why()-what()where()don't()!{;what():mul(216,52))}#mul(105,130) ~when()>+#, ~mul(26,766)([?+!mul(178,420)**mul(317,607)where()how()[mul(654,90),mul(931,884)#why()/when(){mul>^?!mul(298,763)%mul(355,538)]mul(43,357)mul(810,34)from()why()}select()'mul(33,953){mul(459,607)what()~]$why(30,320)mul(266,245)[why()-@who()$}{mul(322,346)$!)/mul(418,539)mul(678,561)mul(800,662)from()-];?where()when()^mul(648,356)->@}(mul(891,938)mul'&#(*from(265,14)mul(707,267)#&mul%+>#~%mul(50,976) ^%(where()!why(315,655)'from()mul(33,958]<{'mul(927,525),>when(597,620)#mul(365,283)>{# !,who()what(730,791)don't()')mul(2,790):how()~/*;who()mulwho()^&]%+{/%/mul(884,224)where() &who(837,688)?where(),['&don't()^>{?)/,]!&mul' select() (:*mul(113,260)what()*%;where()mul(614,724)%mul(718,620)>-~{}why()]mul(416,163):/{ what()where(913,318) !mul(205,361)mul(412,549)[[who()('}why()why()[how(530,659)mul(721,436)]what() @**mul(573,713)&}%@mul(201,630);;do()#select(),what()mul(448,64) %who()^@$mul(679,387)where()]>)!-mul(486,701)who(996,660)?mul(559,794)mul(627,726)what(){;how(){mul(550,422)select()why()#^]mul(339,807)!]why() %<+$mul(662,33){^~what()^?$> ,mul(148,900))*~mul(60,504)-/(/who()+/mul(44,663)#!&$'}]how():%mul(285,731)]}]when()select(525,368)mul(268,251){;^select()mul(478,141%>}who()how()<<-+})mul(653,304)[#$)#!/usr/bin/perl~mul(445,156)?,what()'mul(57,772) +mul(155,845)<@-<),#!&mul(408+#/+select()select(589,946)why()select()when()$^mul(126,507):^mul(59,335)*}why()?>+'when()!mul(448,637)(+;from()mul(100,753)why(274,266)mul(383,541)!-mul(858,418)*mul(632,981)what()]?when()~/'why()!when()mul(964,498),/mul(763,71)why(391,517)(where()what()}mul(465,534)select():'[';/^^/mul(440when()*]( 'why() &^)mul(532,924)((-,&why();)where()-mul(123,757)#}!)'mul(263,796){&;:when()),: }mul(530,962)( '/+mul(353,976)!>-~}*where()%mul(579,525)>mul(623,336)^']~:~$don't()when();where()%when()(')}mul(731,106)when()from(),from()how()/}(#when()mul(73,364(when()$/-mul(74,496)from()mul(411,383)+])%from(803,142)/][(mul(500,546),)-@mul(981'do()where()mul(756,84)!]what()what()@>]select(374,28)!+mul(767,508)don't()&;:where()mul(587,258)&mul(254,192)!mul(80,230)* :+$?/what(){;mul(187,528)from();-;$[>when()&mul(816,345)?(&why();{mul(497^select(912,851)((}%!mul(39,99)/<#;[*{~/&mul(678,429(*#@&mul(769,236)%~mul(23,229)$>&&from()$-#mul(619,573)%}[where()+mul(981,353)@why()what()when()what(),mul(482,105)from()who()from(){from(590,820)mul(269,29)+}<@why()where()?how()mul(123,830)} mul(589,571)what()from(),where()) mul(971,260)?why()when()<+from()( >mul(663,513)*how()%where(){:{who()why()mul(691,983)'#mul(465,961)mul(231,307)}*>:-*mul(511,596)what(){$$,(why()$%(mul(694,486)-[!;-]**mul(606*{select()+ {)';-mul(769,112)how();{?mul(281,824)-(}%from()!mul(557,222),@&>who()#mul(965,925){when(),}: mul(72,17),mul(366,881)$who()~(why(),-@select()mul(816,410)?how(191,3) $what(){/~what()who()mul(392,824) / @mul(744,684)}who()'{mul(808,581)where()mul(580,161)!*mul(517,629):@$what()what()when()select()mul(252,204)~] !who()-from()(mul)>[)mul(915,708)~{from(),mul(244,280)}@[^/@mul(127,150)]^mul(189,40)from()^?mul(631,283)' !-what(),#select()mul(242,34)how():+how()mul(625,833)~~mul(570,337)'how()!mul(827,377)>select():}'(&+mul(175,219)select()<{+{{$mul(96,718) >,;{from()^mul*#/]@from()'>]}%mul(602,848)/~)where();#mul(844,941)$:<]!mul(192,246)^!&what()mul(876,655)*select()&who() -mul(711-$when()>where()from()*@how())from()mul(202,362)what(){,@]/!%mul(812,546)!how())do()&^-~mul(937,389):';'~what()mul(7,641)from(825,618)what() ')~mul(604,895)when()#$~mul(762,876)~+!@+mul(953,72)@}mul(771,143)from()/+,')do()why():mul(127,841)~+why()mul(324,780)*what()~from()()%+select(19,530)where(567,447)don't()mul(330,681)^ what()#how()when()$!mul(624,186) mul(57,174)~mul(825,181)-'mul(560,884)-]mul(524,985)[:select(962,509)mul(781,265)+;!&#&/select()mul(533,308)#@where(472,118),/what()>,what()mul(327,56);where()+what()}what(),mul(422,317)mul(777,506)from()what(649,57)mul#?)['()/from()don't()$from()?(who()mul(64,560)who()mul(329,383)!where()?mul(859,391)/-}from()%#!where()'mul(144,512)*from()how()mul(875,781)^>{how()from()where()@who()+]mul(669,466)%;$where()select()mul(941,765)mul(421,766)mul(728,922)>mul(387,851)#~;? {: mul^??^/why()why() mul(870,458):,who()?mul(335,421)when(730,409)select()+)+mul(186,867)?$&''who()%#^mul(907,175)][don't()]what()@select()!'why()[where()?mul(475,57)mul(107,393)who()*[>>$why()~mul(620,425)]>mul(818,900)do()when() }:$*where()mul(790,845)why()why()'^~who()/~@/mul(181,583)what(182,109)}how()^{#;mul(532,225),/&)mul(510,91)+how()[}#&]&)mul(193,421);$[/~mul(421,747)why()%;mul(542,99)-from()where()from()from(){+mul(200,487):'^*,&$from()>mul(689,957)$]${*}where()mul(12,272)*{from(275,255)~who()*-%how()mul(501,743) +[^what()-select()mul(455,700),mul(39,833)?+mul(804,222) from()who()mul(45,702)[when()#don't()}}where()(#}#from()]mul(584--'-^#mul(858,680):)>&$}^what()mul(645,272){where():}&mul(313,324)what()who():!who()select()?mul(401,708),mul(656,174)why()?~)mul(679,594) where()#*,:from()!mul(45,422)~+ >~mul<:-/$$from(630,159)+<#do()])%how()^:?@]]mul(342,700)[[from()select()mul(333,963)!%$<:-^mulwhat()mul(947,945)!select(726,266)when()why()}&mul(494,61)<'why()mul(605,463^who()when(){?why(520,809)^where()>)^mul(842,681)how()how()[/^$&mul(535,168)@what()from()where()from()+[mul(926,493)/'/mul(175,156)mul(884,607)};#mul(998,216)mul(279,631@($(';++what()&don't():^:why()+when(391,664)/[{-mul(693,809)@)~/^>,#what()mul(942,229))/*{/^why()from()-}mul(653,168)do()who()+ mul(849,72)?,@when()!what()]~when()when()how()%mul(449,449)#^;{$(where()mul(24,301)~]]!!#mul(753,855)'#$don't()~where()who()mul(26,763)'!#where(430,52)what()where()]!*/;mul(20,683)~mul(471,401) $+](who()^;mul&*} )>mul(120,505)where()when()^~mul(586,106)/#<}+'}mul(56,277)%mul(944,864)>#^^!,select():!mul(5,629)(&{*;^@select())mul(544,161)how()/from()> ,~mul(531,531$^mul(693,695)where()#, +[mul(201,445) <:[$select()why()-mul(65,416)#-&(/mul(632,729)&#^+mul(18,292)mul(87,905)[do()from()<^why()what()(mul(292,732){}how(),why(302,606)]($%mul(577,286)--who()'from()^#,-where()do(),?>from()@@ %what()>mul(62,435)^:!^where(530,516)*(mul(605,627^&mul(638,58)@*,when()]*mul],;]-:*?mul(605,171)?>/select(449,616),-#[[+mul(178,672)*)#select(),mul'*+when(608,345)mul(671,276) '#where()*don't()]where()<;%select()select()[;/mul(653,417)>where();-}${->mul(3,376)!how()what(204,543)why() }:mul(531,438)?$!#select()from()*select()mul(482,192):* ^$mul(521,492) &mul(376,921);what() '*who()mul(631,117) who()select()#>select()]mul(665,901)when()*mul(787,27)/:where(356,180)from()mul(942,346)who()(mul(946,745)what()%who(){from()mul(166,509){:$who(58,738)]$&~when()select()mul(233,332)[]<;mul(831,96)how()[/((%mul(996,261)]?)):mul(581,265:!-why(796,972)^mul(921,535)why(),;[why()$mul(202,157when()!from()what(607,94)%from()from()what()+~$mul(578,993)@@ ,how()mul(224,265)mul(818,106)$:]&,>who(156,132)mul(828,230)+>from()<)who()^who()*:mul(633,389)who();from():&$mul(337why()*&)mul(148,542)(who()who()?mul(58,849)')***mul(138,264)mul(656,693)mul(292,571)#from()!mul(854,593)*!mul(93,255)/from():;:,?mul(938,2)$mul(882,42)who()mul(535^[mul(662,987)(^mul(86,164)*/$/mul(218,726)+-[where(119,390)^$mul(388,958)<#from()why()+select()#>%mul(24,167),mul(759,582)&$why()%mul(45,313)}-~&]how()when()from()mul(396,35)why()@+@where()mul(854,611):[mul(43,673)*what()@why()mul(914,638)--why()*mul(428,597)mul(478,658)(%mul(515,571)from()$select(),why(905,38)do()mul(892,588) + (mul(4,214)?}{},%don't():mul(6,78)% )from()mul(682,475)^;~%:mul(87,597)(mul(944,631)mul(976,495)[(%#mul(221,797)]from())mul(871,394),^don't()mul(808,119)why()& mul)mul(459,746)from():(~what(),mul(961,433)/{when()^ ?*{[mul(687,148)where()#mul(793,57)mul(791,305>where()~(/mul(416,515)what(562,107)$%~mul(578,152)select()'*{select()~from(778,947)mul(456,779)mul(610,422)$(:%~select(632,803)mul(652,488)]what()why()/select()@don't()mul(812,692){<[&why()don't()mul(339,986),what()-'>,mul(356,656)':$what()%{&when()from()mul(385,923){]>@(~&why()-mul(201,731)]mul(599,610)?why()@,&how()#mul(204,373){'from()}!#{%select()%^?}where(6,733)mul(118,396),)#:-when()'select()mul(788,521)'&#&($do()from()$,~!mul+mul(245,72)?;when()!')!who(450,16)how()#mul(341,203)[>how()who()'mul(116,924)@+#mul(536,362)when()select()why(),!, >+?mul(674,414)/%*mul(499,509)&)})+*{/mul(125,544)[who())+}]why()'mul(694,107)#-mul(589,269)<:,*what()what(),from())mul(779,394)?{+)[from()what()/&^mul(418,402)^from()]mul(771,556)mul(48,471)^mul(5,471) %,[who()mul(584,991)$$select()when()%,when()mul(662,976)&mul(378,372)-how(),select()-mul(693,943)^ mul(71,492)^{;(,from()*}$mul(325,434)'from()mul(39,981)% why();~mul(962,307)who()*what()select()when()mul(442,854)who()~select()from()why(848,680)where()/&mul(138,127)- +?when()where()select()!-mul(74,742)]who(449,197)-mul(58,606) <%mul(563,278)where()when()mul(167,344)do()-where()what(196,552)]why()%,((%mul(508,557)what()from():^what()mul(858,144)what()from(),mul(332,118)mul(805,968)how()@!- mul(31,7)(from():select()who()*}^+mul(790,338)?mul(876,269)what()$?>who()mul(705,526)*%;mul(284,73)/%!mul(336,280)&select()why()mul(841,593)##?:mul(611,712)%&:who()/[ who();do(),?)# }mul(10,584),where()^@,from()what()%;(mul(776,536):*!mul(440,957)where()# ^when()#*mul(282,762)]<~;#who()#*when()?mul(945,443)>*);why()[:mul(174,224)&~ who()how();when()@^mul(301,546)mul(180,572)select()<%#:&mul(642,14)why()~from()'where()#-:mul(711,95)what()^,<-!what()/#mul(787,954)from()/mul(449,665);why()-)mul(465,877)+#/what()who()$'<&mul(908,857)[@>!mul(190,564)from()who()&,mul(539,109)-why()/&{;,how()!>mul(381,931)>>]select()+mul(451,520)don't()from()when(),<^-+mul(198,363)mul(469,259)?@where()}~{select()-(^v^><<^>>^^^<^vv^v>v^>v>v^<^^v^>v<^><^>^<>>><<<>v^>^^^<<<>^<^<^v<^<>^>v><^v>^v<>v^v^^>>vv<^^^><^>>^^>v^^^v^>^v>>^<v>>v^<><^><^^<>>^>v^^<<^>v<>^vvv^v<>>vvv^^v^^^v><>v><^^v<<><^^v>>>><^>^^>vv<>>>v^>>^^>><>^>>>v>>><>vv>>v>^vvv>v<^v^^<^^>^<^v>>^>>^<>^vv^v<^v<^>^<>v>^^vv>^>vv<><^>><^^>><<^v><>>^><^<^^v><^^^^v^^v<>v<>>^>^^^<^v>>>^v>>>><<><<><><><>vvv<>^^^v<^^><>>^>^<>^v><>v>vv^v<<^v<>^v<<>vv^<^^^<<>^vv><^>^^v^^^vv><v<<>^>^v>v^^>v<^^v^>^^^v^vv<>^vvvv<^<^vv<<<>v^v^<<^^^<^<>>>>v<^>v>>v>^>v<>^>^^<^^^^^vv>^>v<<^^vv^>><<>vv>v^^v<>^^>vv<>vv<>><<^<<>>>vv><^^<^<<>>vv<><><^><^>v>>^>v<^^<>vv<>^<<^vv^v<^>>^^v><<<><><>><<>^>^>v^>^^<^vv><>>v<<^<^^v<>^>v><^v<<^v^v<>^^>^>v>>^v<<^v^v><<<^v>><>v^<^v^<>^v +^^<^^<>>^><<>><>v^>^v<>>^>>^<>^^v>^<><^v>>^><>>v^^^^vvv>^vv^vv><<<^vv^v<^v<>v^vv^^><>>v>vv>v>>^^>v<<>^>^^^^vvv>vv>^<>><v<>v<<>^><^><>^^^v<^v<^>>v>^v^><>^<>>v>>vv^>v>>>>v<<^<^v<^v><>^^>>><>^v<<<<^^>v^v>v<^v<>v>^^^^v>^^<^^>v^^>>v^<><><>v<^vvv^<<<>^^^^^v>>v^v>>^><^v>^vv>^<>v^>>>>v>v<><>>v<^<>><vvv>>^>>v><<<^^^>vv<>vvvv^v^vv><><>v^<><>^>>v><>>>v>v>v>vv^>^>vv<<<^^vv^>>>>^<^<^<^>>vv>^>>v><<^>v>^>v<>><>^<^>>v>v<<>^>^<>>vvv>>>^^><^^>^<^^>^>^^<>^<><><^<>^<>>^<><>^^<<<>>v<>v^^^^^vvv><<^^><>v^vv>vv>>^v<<>vv^>^vv^>^v<><<^>^>>>v>^>>vv<^^^v>^^^^v<<<<<<^<^v>^vv><^>><^>>^^^^^<<><<^^^>v^^^v^>>>><<<><<^^<><>>^^<>v>>v>>>>vv<^>>v^^^<^vv>>>vv<<>>v^^v^^v>v><<^v^>v^>>v><^^<<>v>v<^^^>vvvvv^>>>>vv^^v>>v>^<<^v<<>>v<>^>vv>vv<v<><>><>v^<><^<<^vv>^<<<<v^>v<>^<>^v>vv>^^vv^^<<^<>^<<>v<<^<^vv^< +>^^>v^>>vv^^v<<v<^>>^v>^^><^v^^^>vv<>>^><^v><<^><^v>>v>v><^v^>^v<^><<<>vv<>v<><<<^>>v^<^>^v<><^<^<<>vv^^^v<>^<<>>vvv<<<<^<<^vv>v>><^vv^<>>^v^^^v>v<<<>v^^>>v^<>>^<><>>^^^^^vvvvv>^vv<><><>vvv<^v>>vv<^vvv><^^^>>^>>^<>^>^^>>^^<>^^vvvv><<^><^><>v^><^^v^^<^v>vvv^>>><<<v^<^<>^v<<>v<><>v^^^v>^v^^^>v>^^^v<><>^^>v<^^^^v>>v><^v>>^vv>^v<<<^^<<^<<>v>>vv<<><^v^^<><><^<><^^^^v^<<^>>><>^^<><^>>v^^>^vv^v^<>v>v<<>v<>v^>>^>>^<^^<<^v^v^^^vv>v>^v><^>vv^<<^v>>^^v>^^v>^>>^>v^^>vv>^<<>v>^<<>><<<>^^<^^v>^><>^>><>>^<><>^<^^<^>>v<^>><<<<<^v>^^>^vvvv^>>^^v^^^^^vvv<^^<<<^<^v<<^<<<<^>>^^>vv^>^^<<>v>><<>vv>^>v<^^^^<^><>>><^vv<<^vv^>>>v^>><^v^>vvvv><^<>><>>v>><<<^^>>^^<^^>vv<>v^v^v^<>>v^<<><><<<>^v>v<><>v>>>^>>^<^^v>><>v>^>^v^^^^>>v^^^v^^^v>>v> +^>v>>^>>>^>^<>^v^^<^<>^vv^<<>v>vvv>>v><>^>v>^>>>^<>><>>><<^<>^^<>><^<^<^<<^><^><^>^<^>vv^>v>^vv>v<^>vv><^>v>v>^^>vvv<>^^^^>>v>>v>><>>v^vvv>^^vv>^><<<^^^vvv>><^^v^v^>><^v^^>>v>>><<^^>v^vv>^^v>^<^v^v<<^vv>vv^<>^<<>^^^^v<^v>v^<^^<^<<^^^^vvv<>^^<>^><<^>>^^<^^^v>><^>>^v>^^><>>^v>>^v>^>><^><>^^v>>^<<>v>^v<^>>>^><^><>v>^v<<<>^>^v>v<^vv<><><^^^v<^<^<<<>^v><>>>^vv>^<<^^^v<>^^v>><>^v>^^>^<><><<<>>>^<<v>v^<><<>>>>v^^<>v<>v^<<><<><><<>^vv^>v<<<^vvvv<<>><<<>v>>^v<^v<^<^>vv^<^^^<<<^vv>>^vv^<v>^v<>^v^v^<<^>^^^^v<<^v>>>^^>^><<^<^>>>vvv<>><>v<>^^<>^<^<^<^^><>v<><>^v<<>>v<^>v^>v^<^>>>vv^^v<><>^^<>v^<<^>v>^<<<>v><<^v>>>>v<>v<^v><^v^v^v>v<>vv^<>^>v>v<><><>v<^vv>v^^^vvv<>><^<>>>vvvv<>v<^^<^vv<^v^>^v^v^><>>>^<>><>>>v^^<^<^<^<^<^><><^<> +^>^>v>^<<^><^^<^>^<>><>>^^<<<<<^^^>>vvv^^^<<>>^^<^^>vv>^>^^>vv^^>^<^<^>v<<>>v^>v<>^^>v^>^v^>v>>>^><^>^>v<<^<>vv^^^^<^^^^^<>^<<^>^>v<>^<^v^<><><>^<^<^^v>>^^><>v<^v<^>>>v>><><><<^>v<<^^><^^<>v^>v^^>>>v>^<<<^vvvv<>^^>v^v>^<>^>^v<<><>^<>^>>v^v>^v>^>vv<<>v>^>^>vv<v<^<<^<><><^vv>>>v<<^<^<><<^v^^^v>v><^v<<>>>v^^vv^><<^>>v^>v>v^<>>v^<^<^<^^vvv<^^v>v><^v<>^v>v>^<<<^vv^^vv^>vv^^>v><<<>v^<^<>>v^<v^<>>v^>v^>^v><^<^v<^<<^v^v^v<>^<>vv>^>v<^^^^v<<^<><<^^<>>v>^>^>>>^<^v>>^<^<><^^>v>>^>><><>>>v<^^v>v^>v<^v>>^<<><>^<>><^^v<>^>v<<^>><^v^<<^>vv><>>^><<><>>^<<^v>^^>v>^><^<>v^v^^v<<<<>vvv^<^v><^>^>^v>v<<vv^v>v^v><^^v<>><<>>>^>>^v^>>^<<<>>>^^v^>>v<<^v^v>v^^v<>^^>v>><^^<<>^>vvv>v^v^^v>>^v<><<>v^^><<^^><>^vv^v>>>^v>><<>< +<<>v><>>^^v<^^vvvvv<>v>^><>v>^v^v^v^>><>v^>v<^^<^<>^<<>vv>v<v<<^^><>^^v<v^<^>^v>>v>>vv^>v<^><^^^v>v>v<>^vv><<^v><>v^v>^><^<^>v^^>^>^^v^^<>>vvv^^>^>>v^<^v<<<>^><<>^v><^<<>v>^<>v>>^v<<^>^^^<><>^>><>>>vv<^>>^>>>v>>v<<<>v<>^v<<>><^v^vvv^>^<><><^v><^v<^^vvv>vv^<<^^<^>v^^<^v><v>v<><<>v<^<<<>vvv^^>^>v^^^^>v><^<<^>v^v<>^>>><>^^<>^^<^v^<^vv>^<>><>^<^^<>v^>v><^v>^>^^vv^^^<<^>><^<^>v><>>>v><^<><>v<><<<^>^>^>><<<^^><>vv<^v<<^^>^<>v^vvv^><>vv^<^<^<<^>v^v<^<>>^^^>>v>^v<<<^>>^v><<<<^<>^v^>vv>v>v<^v><^vvv>v<^^^^><>>>><^^><<^^^<>>><<<<<<<<^>^>^^^^<>^<><^^>>^v^^^>v>v>^<^<>>^<^<<>>v>><>>^^vv<<^v>^vv^v^>>v<<^v<<<<^^<^^<<>>^^v<<<>>v<^vvvv^>^^v^^v^>^<>>vvv><^v>v^>^v<<>>>^vv><>><>vv^vv>><^>^<>^^^><^^<<><^ +><v>>^>vv^>^><^>^^^v<<^^^^^v^v^^<^v<><<v^vvv>v>v^<<^^>>^^^v>v^>>^<<^^<<<^^<>>>>^v<>><>>>>>>>^^>v<^<>vv>>vv>v<>vv>^^v<<>^>vvv^v<<^<^>><^^>>vv>>vv^>>>v^v>^^>v>v<><><<^<<^>v^><>^v>><>>^v^v^>v>^<^^>>v^>v<^^^>v><<v<>>^^v>vv>vv^^><>^<^^v<>>^^v>^v^v>vvv<^v^><<^^v^v>>>^^^<^^^^<^^^<>vv^^^^^>><><>>v<>>vvvv<>>vvv<^>^v<<<^>^>>>>>><<<>>^^>>v><^>v<^vv>v^>^v><<>>vvv<^<^>v>vv<>^>^^>>v<>>v^><<>^v><<>>vv>^v>v>^^<>>^<^^<<>v>^vvv<>^>>vv^>><><>^^<^^v<<>>^<^<^^>>>v<>v^>v<>^v^^<^^><^v^v<^><^^>v><<<^<<<<^^v<>v>v<>v<^<^v^>>v>^>>vv^<^vv<>v>v^^vvv><^^vv^<><^>^v^^v>^<^v^v>^^v>>>^vv^v^>^v><>>v<^>vv^>^vvv<>v>>^>v>>>><>^v>^^^<>v><><>^><^v^v>>vv^>>v<^<^^v>^^v<^vv>v^vv<^>v<<^<^v<<^>^^<>v^^><>^^^v^vv^<^>><<^^<^>^^v>>>v^<^<<>vv<^v>>vv>^^v<>><>>^>^^v^>v<>^vvv>^ +>v^<v>><^^<>v>>^v^><><<>^<^<^<^>v^^>>>>><>>^^vv>><<^<^>>^>>^^<><>^^<<><^vv>>v^^v^<<>^v>v^^v^>^v>vv><^vvv<>v^v^^^v<<^>>><<<>>>v^v>>^>v^<<^^<^v^<>v^<>>v<^^vv<<^vv<v^<^<^v>v>><^>^<>>^v^v<^>^^><>^>>^<<^v^>v>^^v^>>>v^><>>v<^><^^<>v^v<>vv>><^<>v<><>>^>^^v^>^v^^vvvvvvvv<<^>v<^><<<>v>v><>>^>>^<<<<<>^v^<<<^^^v<>><<>^^>^>>v^^><><>vvv>>vv<><^^v^<>v<^v>v><><^^v^v<><^^^vv^>^v<<><<>^v>^<>>v>>v^>v<<>>>>><^><>^>^>v>>><^^v>^v>v>v^<<^><>v<<><^^^^vv^<<>^<v^^><<<><<^vv<>v<v><<^<>>>^^>vv<>v^<^^^><>>>v<^><<>^<><>v>>>>^>^^^><>><^><>vvv>>v^v<<<^<<<^^v^>v>^vvvv>^>v^<>>>^>v^>^<>>^>vv<<<^<^v^>><<^<><>v^<^<<^v<^vv>v><<^^vv><^v^<<><<^>>^<<^v<<>^><<><>>v<^>>^>>v>>^><<<^vv>>v^>^^<^v>^^^vv>>^<><<^><><<>^^v>^^<^>^<^v<^^^^>^v^<^>>v>vv>^<^>vv>v>^>>^ +vv>v^^v^<<>>>^v^vv>>^^v>^><^v><^vv^^^<>>vv<<<^^vv<^vv>>^v^>^^vv^^<^>^<^>v^^<<<<^<>>v><><^><>>v<>v><>^<^<^^^v<<><>^<^<>>><^^<^<><^<>v^^^^^^vvv>^vv<>>>>^^>>>>><<>^<^>^<>>><^><^^^vv<^>v^v>^^vvv<>^><<>>v^v<>^^>v^>v^v<>>^v^<>v^v^v>vvv^>^<>^>^>v^><>^<^^vvv>>v^^v^>><^vv>^v<^>v><^v^v<^>^>vv^^vvv>vv^>v>^^<^^^v^>^^^^<<<^^>^>>vv<<<>v^^>^vv<^vvv^vv>>^^v>v^v>>><>^^>>>^^^>>><v^v^v>vvv>>v>>vv<^^<^^<<>>vvv^^^><>>>^>^<>^v<^^v<<^>>vvv>>>^^><>v^<^<^>^v>><<<<^vvv<>^vvv>>^>v<^><<^>><^v>>^>>>^^>v^>vvv>>v<>>v><^^>^<^><>^^vv^v^>vv<^>^v<<<^^><<><<<^^^<^^>v>vvv^<>^^v^v<^>^><<><^^^>>v^>v>^>^v><>v^v^^vv^<<vv>v<>>^^vv^v^v><>^^><>><>v>>>v^^<><<<<^>>^>^vvvv^<><<<^<^<^^>>^v>>v<>^^<^v>>>vv<<^<<^vv^^>^>^vv><^v>v><>>^^^>>v^^^><>^<><<^><>v^v<>vv^^^^>v>>^>v><^<>>>vv<>^>^<>^>>^><^^v>>^vv^<^<>v>v>v>^<>^>v<<><><<^v^<^^v<<^<^v<^v<><^^>^>>^v<<<^><>v^<<^><>>>>v>>>>^v>><>>v>><<^^^<^><>^^>^v<^>v^<>vv<^^^^<>>v^><^v^^vv^v^^^^v>>^vv>v<>>v^^>^<^>vv^v<><^vv^v^v^<^>^<^>^>v^v>v>^v>>^><^>>vv^^vv<<^vv<^><^>vv<<>v^^<^^<<><^^v^^v^v><^^<^v>>^^>v>><^^v^<<^<>^<>v^<<^^^>>>^>>>v>vv^v^^<<^^>>><><>vvv<<^vvv>>v<><>>vv^^<^^vv^^^v^^^v^v>><<>^><^v<^<><<>vv^<^vv<^<^v>>v>vv^<v<>^>^<>>v<>v<^>>><^^<><^v<><^^^vv<<>>>>v><<^<<>^^>^>vv>>vv>^v^><>v>^>^>>v^<<>>v<^^^vv^^^<>v<<>^>v^>vv^^>^v>v<^v>v>^>^vv^>>v>vv^^^vvvvv^v<^^^<<>><^vv>>v>v^^^v^<^vv>>^>>>>^><^>>^^v^^^^>><^vv<>v^v^^>^<<>>v<><^v>v>>>^<<^<<^<v^^>>>>v>><^vv<<><^^v^<<>>v>^v^vvv^v^>>^v^^<>v^<><^>>>v>> +>><<><<^^>^><<^<>>><^v<<^^<>^v>v<^^<^<^<>^vv><<>^>>>v<>^v>^<>>v<^>>><>^v>^v^^>^v^<^<>^v>^>^^v^v>^v^<<<<<<>^^^^^^>v><<>^v>^>v>vv><^v<^>v^<<^^v^>^>>v<^^>^v^vv>>>^<^<^^^>^^<>^^>>>>v>>>v^>>^^^>^v<>v>>>><^v^>vv>^v<<<^<>v>^>vv>vv^^<><>vv<^^^>^^>>v>><<<^v><^><>v<^^<^<>>v^<^vv^>>>vvv^v>v^v>^<^<<<^^>>v^vvvvv><^^^>^v^v>>^>><^^^<<^^<>v>v<>v<>^vv^>^^<^><>^^>v^<<<>^>><v>v<^^^v^>>>^v^>>v>^^v>^v>^^>v^v^<<<^vv>v<>>v^^^v>v^^<<^><<^^>v^^^>>^<^<><^<^>>^^^vv^>><<<^<<^^<<<><<>>^vv>>>^^<^><<>^^v><<>^^vv^vvvv^>><>v^v>^><>vvv>^>^v^v^<^^v^<<>^^<^><^vv>>>>v>^>^>>^<^v^^v^>^v><>v><><<^>v<>v>><^vvv^v>v^>>^<<^>^^v><>^vv<>^^><>v>^<>v^<<<^^^^v><<>><>>>^^><^^v^v<><^<^vv^^v^^v^>v><>vvv^vv>>><>^>^^^< +><>^^>v<<>v><^<^>>>^>>vvv>^><>>^v^^<^<>>v>>>^>^v>>v<^vvv<<<^v>><<<^>^v^vvv<^v^>v>>^vv<>><>>>^^^>>>>>>v<>^vv>>^^^<>^^^vvvv<<<>>><>v><>>^><v^<^^>v><>>v>v<^^>>^^>v<^<^^><>^<>^v>^v>v>>vvv<^v<^^^>^<<><^^v>v>v>>v^>>v>^v^<>^v><^v<^v^^>^>vv>vv<^>v<>^v^v>^<>v^>^^v>>^^<<^v^<>>^<^<^<>><>v>v><^>^^>>><<^<^<^><v^^>>>vv^v><^^<^vvv^<<<^^<^v<><^<^<<><^<^vv^^v^^^v<>^>><^vv<^<>^v><^^v>^^<^>v<<<^><><<><^<^<>vvvv><^vv>v^>v>>^<<<^v^vv<>v^^>vv^^^<><>^<<^vvv>>^>v^<^vv>^>vv>>v<>v^^^vv^v^<>v^^<>v^v^>><^>v><<<>^^^>>^v<>>^^v<>>>vv^>>vv^^v>v><^v^^v^v^vv><<<>>^^<<<<><>vv>^^^^>^v^>^^><^vv>v>>^^<^^^v<<<^>^vv<<>>>>><^^<^^^>><^v^v>>>><^<><^><^<<^^v><^v>^<^<^>v<vv><>>vv>^^<^><><^v^>vvv^<^vv>^<><<^<^^vv^>vv>>v^vv><<<>^v^v< +>>v^><^^>vv^^>v>>v<><^v<^<>v>>v<>^>v^vv^^<>^>^>^v<^<^^^^^>vvvv>vv>>>^v>v^^^^><<>><^^<^^^><<^>^<^>>>>^^^><<>>vv^>><^^<<^>^^^<>^>>>v<^^^v<<^>><><^>^>v^^vvv^<><>><<<<^^v<>^vv>v<>^><^<^v>^><<^>>^<>v<^^v>^>>v^^vvvv^>^>>v^>^<>v><^<>v^^<<>><>><^<<<^><<v>v^v<<>^^><<^^v>^<>^^^v^>><>><>v^>>^v^<^v<>v<><^v>v<>v<><^v^<^<^<>v>v>v<<<^^<^^vvv<<<^>v<<^>><><>v<<<<>^^^>^>^<^v>^vv^>vv^<>>v>^v^vv><<>v^>>><><>^>^>v^>^^v>>^v<^>>v<^v^vvv>^^>>v><^v^>v>>v<^v>>v<^^^v>^vv>v>^>>vv>>^^<<^^>^><<^vv>^v>^^^^<^>v^vv>v><^>v^<^^><>vv<><>v^v>>^<<>v<v<<^><><<><>>vv<^vv^^>>vv<^^^v^vv^>vv>vv^<^>^v^^<v^>^<>>^<>v>^>^>v>v>vv^<<>vv>^^v^^v<^^vv<<^>>^>^><>>>>v<<<<><>^>vv>^^>>v>>>^>><<>v<^^v^v^^vv>v<<><> +^^v^vv>>vv<^>^<<^v^<>v^<><><>^>v>^^<>v^v^^^v>^>vv^^>vv<^<>><><<>><>vvv<^>^^<^<><>^>^><>v>>>v>v<^>^>^vv>>v^^<>>^v<<>vv^^<<>^v>><>^<^v<><^v>v^<^^v<^v<^<<<><<^>^<<>><>v<^^<>vv>vv^<^>^<<<<><v<>>v>^<^>v^<^<>>vv>>^vvv<^><^>>^>v>>^><^>v<^^^<^^>^vvvvv^<>^^v>^^<^v>^^^>v<>>vv^v<><<^vvv^vv>^v^<<>^<^^^><><^^^v>^>>^>^v>v<>>^^><<<^v^v><^>vvv<>vv><^<>>v^>v^>><^>v^<>>v>>><^>^>>^v>>vv<^>><^^>><<^>>><>^>^vv^><^<^><>v<>>^vv>^^v>>>><^v^vv><^vv<>>v>>v<^^^v^v^v<^>^^<<>^v<^v>vv>>>v^v<<>v^v>^<^^<<><>v><^vv<>vvv<<^vv^<^v^>>vv^<>v><><<<^>^<<^^<>>v<^v><<^vv<^v>v^v<^>v^>><>>^<><>^>>v^<^^<^vvvv>^^>^^<<<>v><<^v<^><>v<^>^^^<^><^>vv<>v>>^^v>^^<^<>^^>vvv><<<<>^>^>^v<^v<^<>v<^<>^>^^<^<>>^v^>v<^v^^>>^^>^v^^<>>^< +>^vv^^<^^>v^<<<>v<>>><^><^^v><<<<^^vvv<^>>>>^^>^v>^^v<>^v><^>>vv^^<<><><^<^^<><>v>^v<^^v^^v>vv><<<>^^>^v^>>^^>^v>^^>^vv^>^>vv><><^>^v><>>>v^>>>v>^v^^<<<<^v>v><>^v>v^>^<>v^^vv<^v><>>>v<>^v^^>>v^v^^^^^v>^>v>vv<^<^><<^v^v^>v><^v><<>>vv<^vvv^>^<^v<^^>>v<><<^<>>^v<^>>v>^>^^<^^^vv^vvv>vv<>^^v<><<>>>>v^vv>v^<<<^v>^<>v<<^^>>>v>^v^<^<>^^^^<>^v<>^>^^v^vv>^<^^>>>v^^<<<>v^>>>>v<^^^v><>vv>v>^>>>v^<>v>^<<^v^>v>^vvv>>>v^^<^>>>v<>^^>v>v^^v><<<v^vv^>v<<^>>v<<<^<<<>v^>>>v^^^^^v<>v>>v^><>v>>v>>v^>>v>v^^^^vvv^>^>^>^^^<^v<<^^v>v<^^^^<<<<>><>>v<vv<<v>vv>><>^<>v<>>^<v>^>^>^>^^>>^v>^<<<^<<>>^><^<^^v<>^<<><>v><^^<<^<^>>>v>vv^v>vv>^^<^>^>>v^>v^<><<^>^v<>><^<<v^>v<^>v^v +^^<>v^>^v<>^><>>><<^v><^><<>^<><^<>v>^>>^v>vv^>v^^>vv^^v^<>>><<>v^^v<>^^^v>>>^><^^<<>v^^>v>^^><>>v<>^vv<<^<^>^^v<>vv<<^v^<^<>>>v<<>vv^^v^<<^^>^^^>>>><<>^^vvvvv^><vv<>><vvv>^<<>^^><^^^^v<>>>^^>v<<<^<><<<^v^<>>><><>^v^vvvv>>vv^^>^>v^^v<>v>^v<><<<^^v<^<^^v^vvv>^vvv<>vvv<^>>^>^><<^>vv<>vv^v>v^<>^v^^>>>>>^>>v>v>v>>^vv><>^><<^<^^>^v<^v<<>>^<>vv><>^<>^<^><^<<>><^v>vvvvv^<>v<<^<^^<>>>><>^^v<<^vv<^v^<<^vv^v<^<<<<<^v^>><<>vv>vv<^v<^^><<^>v>>>vv>><^>^^v^^^<>vv<^<<>>>>^vvv^>^vv<><>^^<^^<<<>v<^><<>^>v>><^>>>>^v^>>^v<>>^v^>v>v>vv^>^v^>>vv>v<<^v>>><<^<^<><>>v^>>^v<^^>^v<>^^<><>^^^<^^vv<^<>^^>><^<<><<^^v<^vvv><>>vv<^<<<<^<>^>^vv>> +<>^^v^<^vv<^<<^<<^^<^vvv>^vvv>v^<>v^v^>><<<<<^^^^<<^<^vv<>>v^>v^>^vv>>^>^vv>vv^<<>><^>v<<^<>>^<^>^v^>>>>^>v^<>v^^><<><<^v^>>v^<^^<^<>v>^<^>><<^v<^v>^>>v>><>vv<<<>^v^>>v<<>>><>v<>^^^<>>v<^vv><>>^^v>v><<>>^^^v<>>v<^>v^vv>vv<<>vvvv^vv><^>^v^vv<>^>^vv<^v<>vv^v><<<>><^<<<>v<^>vvv<>v<^v^>v^^<v><>^>^^<<^<><>v^^>>>>>v<<>><v<>>v>v^^^v>>>^^>v<vvv>>v<>>><<>^<>>>^<^^>^>^^^vv^<^>v>^v<^<^v<>v^v>v<^<<>^>^>^>v^>^v^^^>^^><<>>>^^>^<><^v^v^>^vv><>>>^>^vvvv<><>>v^v>><<^^<^^>vvv><>^><<^vvvvv<<>^v>v^v>vvvv^^^^>^>vvv^>^^v>^v<>>>v>><>^^>v<>>>vvv^^><^>>>^^>v>^>>>v^<v^vvv><^vv>^^>>><<>>vv^>v<><<>vv>v^<>>vv^v<>v>>v<^>v^v<><^>>>^^v^^^v>^><<<^>>^v>^<>><^><^v<>v^v^<^v^<^ +v>^^v^v^vvvvvvv^^vv^<>^v^vvv>^>v<^>vv><^<>v>^>^v^^<^^>^>vvv^^>><>v<^>>v^>v>v^><>>v^>^<>>><>^<>>^^<^vv^<^vv^^><<^^^v>^<>v^^>vv<^v<^v<<>v^v^vv>>v>v^<>vvv^>^v<<<<^v^>vvv<<>>v^^vv>>v^>v<^>>^>vv>>>^^v^^vv<^<^^^<^v><^>>^<<^<><>><<<^>>^v^v^v<^vvv^vv<>vvv^^^<<>^v<^^>vv<><>^<<<>>v<>^vv>^^^v^>v>>^v>>^>vvv<<<^<^<<v>>^^v^>vvv^<<^>^v<<<><^^>^><<^<><^v>^^<>v><^>>v<^^<>^<>><>><^<^>>>v>^^<>^v^<^^<^v^>^v<^>>^v^^<^^<>>>><<^v>v^^<>^^<<>^<>v>v^v>^>v^<<^>v>><^v^><^>^>>^<>>^>>^v^v^<v<^>v^v<<>^>v^v^<<<^v>^^>><>^v>^>^v><^>^<><>^^^v<>^<>^^v^>v^^<^v>>>^><<<^v^<<<v<^v><^vv^<>v><>^v>v><>>v<^^vv^>>^>>><>v><>^^v>v>>>vvv>>>>^^<^^^^^v<>^^v><^><><>v>^v^>^<^v>vvvv<^><>>>v^<>v<^^<>^>^^<<<^>vv^vv<^v^>v>v^>v^v>v^<<^^^>><<^^<>^>v>^>^<^><> +>^>^^>v<^<^^<>>>^<^<><<>^<^v^>vv>>>>><><><^<>^v^v<<<>v<<>^vv>>^<><^<>>^<>vv^<<><<>^^>>>>>^vv^v>^^>>v>vv<<^<^<>>^v^^^>^^<>v^^>^>v<^<>^<^v^>v<<<^>^><>><<>^>>v<<>><><<^v<>^^^<^>vv>>^<^><<>v^^v>v>><<^>v>vvv>v<^v^<<^^<<>>vv<^v>^<<>v>v^^>><^v>>>>>^<<<^>v^v<^>v>v><^<>^v>>^<>^^v^^<>v>v^vvvv<^><<>v>^^^^^<>>><<<>>vv<^v>^v^>^^v><>v^>>><><>><>>>^v^<vv<><<<<>>v^>>v>><<>>^<>>>>v^>^^<<><^>vv<<>>^>>^^^>>v^>>v>^^^>v^<<>v>^v^<^<^>v^v^>vvvv^^<<>^v>v>><>^^>v>>v^v<^>^<<^vv^<^<<^>^><<>^>>>^v^<^><>>^<^>><^^>^^vv>^><^v<>>vvv^>vv<<><>^>^^^<^^<^v^^^^vv<^<<^>^<^>vv^^<^^>^v^v^<^^v>>v>^<>>>>^^<^<^v<^^v^v<^v^<>^^>v<^vvv><<>vvv^v<<^<<<^>>v>>v><^>>v>v<<>>^<>>>vv<><^v^v^^^<^^vv>^v<<>v>v<^v^v>><<>vv<<>^>^^ +v>^>^>^>vv<>^^v>^>>vvv^<^v<>>>vv><^vv<^^vv^><>>>v<<^>^vv<<>v^v>>>^^>v^>^<<^vv^<<^><^>vvv^^><>v^^v><<<^>v<<<<><^^^^<v^v<<^^v>^^^^v^vv^<<^<>v^^>^>>v>v>vv<<^^>^vvvv<<<<>v>>><><>v<<<>vv><>v<^>vv<<^><>^<^^^vvv>vv<><>vv<>^>^vv<><^v>^^<^<^vvv^<>^<>^vv^<>^^v><>^>v^><>v<>^^>^^^v^>^<><>^^<>>>v^<>v^>^v^<><^^><<^<^><<<^<>^vv>v<><<>^^<<>vvv^v<<^v>>^<^^^v^v^>^v<>><^vv>>>v><<>>vv^v<<<><<<<><>^><<<>>v^<<<^^<>>^<^<^>vv>><><><<>^vv>v^<<>v<<^v>^v>>^v^<<<^v>v^><<^v^<>^v<><^><^>vv><^><>>v>^v^>>>v<>><>^vvvvv<>^<^v<^v>><>v><^^v^vv>v^>^v^<^^^<^>>>v^v<^vv><>^v>>>v<<^vvv^<>vv<><^>v<>^vv^^><>v^>^><^>^^vv<^><^vv<^v>>v<<<^vv>>v^>v^v>vvv>v^^^^^<>vv>^<^>^^<>v>>^>vv<<><>><^vv<>^>vvv>>>v>v>^<^v<>v>^^^^^v^^^v^>^^^^v<>v^>>^>v<^^^>v>v>v>^>>^<<<^ \ No newline at end of file diff --git a/2024/input/16 b/2024/input/16 new file mode 100644 index 0000000..a12d45b --- /dev/null +++ b/2024/input/16 @@ -0,0 +1,141 @@ +############################################################################################################################################# +#.....#.......#.............#.........#.......................#.......#...#...............#.....#.#.................................#.#....E# +#.#####.###.###.#######.###.#.#.#######.#.###.#####.###.#######.#.###.###.#.#####.#####.###.#.#.#.#.#####.###.#.###.#######.###.#.#.#.#.#.#.# +#.......#...#...#.....#.#.#.#.#.#...#...#.....#...#.#...#.......#...#.#...#...#...#.#...#...............#...#...#.#.......#.#...#.#.#...#.#.# +#########.#.#.###.#####.#.#.#.#.#.#.#.#########.#.#.###.#.#########.#.#.#.#.###.#.#.#.###.###.#####.###.###.#.#.#.###.###.#.#.###.#.#.###.#.# +#.......#.#.#.#...#...#.#.#.#.#...#.....#.......#.#...#.#.#...#...#.#...#.#.#...#.....#...#.#...#...#.....#.#.....#.....#.#...#...#.#.#...#.# +#.#####.#.###.#.#.#.#.#.#.#.###########.#######.#.###.#.#.###.#.#.#.#.#####.#.###.###.#.###.###.#.###.#.###.#.#.#.#.#.#.#.#.#.#.###.###.##### +#...#...#.......#.#.#...#.#...........................#.#.#...#.#...#.#.....#.#.....#.#...#...#.....................#.#.#...................# +#.#.#.#######.#####.#####.###########.#######.#####.#.###.#.###.#######.#####.###.#.#.###.#.#.#.#.#######.###.#.#####.#.#.#.#.###.###.#.###.# +#.#...#.....#.#...#...#.......#.......#.....#...#...#.....#.#...#.....#...#...#.....#...#...#.#...#.......#...#.#...#.#.#.#.#...#.#...#...#.# +#.#.###.###.###.#.#.#.###.###.#.#.#####.###.###.#.#########.#.###.###.###.#.###.#.###.#######.#####.#######.#.#.#.#.#.###.###.#.#.#.#######.# +#.#.....#.......#.#.#...#.#...#.#...#...#.#.#.#.#.......#...#...#...#.......................#...#.#.#.....#.#.....#.#.........#...#.#.....#.# +#.###.###########.#####.#.#####.#.#.#.#.#.#.#.#.###.###.#.#.###.###.#########.###.#.#.#.###.#.#.#.#.#####.#.#.#.#####.#######.#####.#.###.#.# +#...#...................#.....#.#.#.#.#.#.....#.....#.#...#.#.#...#.....#...#.....#.#.#.#.#.....#.#.....#.#...#.#.........#...........#.....# +#.#.#.#.###.#.###############.#.#.#.#.#.#############.#####.#.###.#####.#.#.#####.#.#.#.#.#######.#####.#.###.#.#.###.###.#.#.###.########### +#.#.#.#.#.#.#.#.....#.......#.#...#...#...............#...#...#.#...#...#.#.......#.#.#.#.......#...#...#.....#.#.#.......#.#...#.#.........# +#.#.###.#.#.###.###.###.#.#.#.###.#.#####.###.###.###.#.#.###.#.#.###.###.###.###.#.#.#.###.###.###.#.###.#####.#.#.#.###.#.#.#.###.#######.# +#.#.....#.#...#.#.#...#.#.#.#...#.#.#...#...#...#...#...#...#...#.....#...#...#.......#.....#.#.....#...#.......#...#.#...#...#...#.#.#.....# +#.#######.###.#.#.###.#.#.#.#.#.#.###.#.#####.#.#.#.#########.#.#######.#.#.#.#.#############.#####.###.#########.#####.###.#####.#.#.#.#.### +#.#.......#.#.....#...#.#.#...#.#.#...#.....#.#.#.#.........#.#.........#.#.#.#.#.................#.#.#...#.......#.........#...#...#.#.....# +#.#.#####.#.#######.#####.#######.#.#####.#.###.#.#########.#.#.#########.#.#.#.###.#######.#.#####.#.###.#.#######.#.###.###.#.#####.###.#.# +#.#.....#.......#...#...#...#.....#.#...........#.#.......#...#.#...#.....#.#.#...#.#.......#.#...#...#...#.....#...#...#.#.................# +#.#####.#######.#.###.#.###.#.#####.#######.#####.#.#.###.#####.#.#.###.###.#.###.###.#####.###.#.###.#.#######.#.#####.#.#####.#.#.###.#.#.# +#.#...#.#.....#...#...#...#.#.......#.....#.#.....#.#...#.#...#.#.#...#.#...#.#.#...#.#...#.#...#...#.#.........#.....#.#.......#...#...#.#.# +#.#.#.#.#.###.#.###.#####.#.#.#####.#.###.###.#########.###.#.#.#.###.#.#.###.#.###.#.#.#.###.###.###.###############.#.###########.#.###.#.# +#.#.#.#.#.#.....#...#...#...#.....#...#.#...#.#...#...#.#...#.#...#...#.#.#.#.#.........#.#...#.#.....#.......#.......#.........#...#.#.....# +#.#.#.#.#.#######.###.#.#.#.#####.###.#.###.#.#.#.#.#.#.#.###.#####.#####.#.#.#########.#.#.###.#######.#######.###############.#.###.#.#.### +#.#.#...#.........#...#.#.#.....#...#...#.#.....#...#...#.#.#...#...#.....#.#.....#.....#...#.....#.....#.....#...#...#...#.....#...#.#.#...# +#.#.#########.#######.#.#.#.###.###.###.#.###########.###.#.###.#.###.#.###.#####.#.#########.#.#.###.#.#.###.#.#.#.#.#.#.#.#######.#.#.#.#.# +#...#...#...#.......#.#.#.#.#.....#.......#...#.....#.#...#...#.#...#...#.......#...#.....#...#.#.....#.#...#...#...#...#...#...............# +###.#.#.#.#.#######.#.#.#.#.#.#######.#####.#.#.###.###.###.###.#.#.###.#.#.#.#.#####.#.###.###.###.#######.#####.###########.#.###.#.####### +#...#.#...#...#...#...#.#.#.#.......#.....#.#.....#.....#...#...#.#...#...#.#...#.....#...#...#.#.........#.....#.........#...#.....#...#...# +#.#.#.#######.###.#####.#.#.#######.#####.#.#####.#######.#.#.#######.#.###.#.###.#.###.#.###.#.#.#######.#####.#.#######.#.#####.#####.#.#.# +#.#...#.....#...#.....#...#...#...#.....#...#...#.#...#...#...........#.....#.#...#...#.#.....#...#.#...#.#...#...#.....#.#.#.....#...#...#.# +#.#.###.###.###.#.###.#.#.###.#.###.#########.#.#.#.#.#.#####.#.#########.#.#.###.###.###########.#.#.#.#.#.#.###.###.#.#.#.#.###.#.#.#####.# +#.#.#...#.#...#.....#...#.#.#...#...#.........#.#...#.#...#...#.....#...#...#...#...#...........#...#.#.#...#...#...#.#...#.......#.#.......# +#.#.#.###.###.#####.#.###.#.###.#.###.#####.###.###.#.###.#.#.###.#.#.#.#######.#.#.###########.#####.#.#####.#.###.#.###########.#.######### +#.#.#.#.....#.#...#.#...#.#.#...#.....#...#.#...#.....#...#.#.....#...#...#...#.#.#.....#...#...#.....#.........#...#.......#.....#.........# +#.#.#.#####.#.###.#.#####.#.#.#########.###.#.#.#.###.#.###.###########.#.#.###.#.#####.#.#.#.###.#########.#####.#########.#####.#########.# +#.#.#.#.....#...#.#.....#.............#...#.#...#.#...#...#.......#.#...#.#.#...#.....#.#...#.#...#.........#.....#.............#...#.......# +###.#.#.#######.#.#####.#.#.#####.###.###.#.#.###.#.#####.#######.#.#.###.#.#.#########.###.#.#.###.#####.#.#.#####.#.#########.#.###.#.###.# +#...#.#.......#...#.....#.#.#.......#.....#.#.....#.#.......#.......#.#.#...#.........#...#.#.#.....#.....#.#...#...#.........#.#.#...#...#.# +#.#.#.#.#####.###.#.#####.###.###.#.###.###.#######.#.#####.#.#####.#.#.###.#########.###.#.#.#.#####.#####.###.#####.#######.#.#.#.###.#.#.# +#.#...#.....#...#.#.#.........#...#.#...#...#.....#.#.#.....#...#...#.#.....#.......#.....#.#.#.....#...#...#.#.....#.#.#.........#.#.....#.# +#.#.#.###.#####.#.#.###.#######.###.#.###.#.#.###.###.###.#####.#.###.#.#####.###.#.#######.#.#####.#.#.#.###.#####.#.#.#.#####.#.#.#.#.#.#.# +#.#.#.#...#...#...#...........#.#.....#...#.#...#.....#...#.....#...#.#.....#.#.#.#.#.......#.......#.#.#...#...#...#...#...#...#...#...#.#.# +#.###.###.#.#.#.#.###.#######.#.#######.###.###.#######.###.#######.#.#####.#.#.#.###.###.#############.###.#.#.#.#####.###.#.###.###.#.###.# +#...#...#.#.#...#.....#...#.....#.......#.....#...#.....#...#.....#.#...#...#...#.......#...#...........#.#...#.#.....#...#.#...#.#...#.....# +#.#.#.#.###.###.#.#####.#.#######.###############.###.#.#.###.#.#.#.###.#.#####.###.###.###.#.#######.#.#.#####.#####.#.###.###.#.#####.###.# +#.#.#.#.....#...#.#.....#...#...#.#.............#.....#.#...#.#.#.....#.#.#...#...#.......#...#.......#.....#...#...#...#...#...#...........# +###.#########.#.#.#.#######.#.#.#.#.#########.#########.###.###.###.###.###.#.###.###.#.#######.###########.#.###.#.#####.###.###.#.#.#.#.### +#...#.....#...#.#.........#...#.#...#...#.#...#...........#...#.......#.....#...#...#.#...#.......#.....#...#...#.#.....#.#.#.#.....#...#...# +#.###.###.#.#####.#######.#####.#.###.#.#.#.###.#############.#####.#.#########.###.#####.#.#.###.#####.#.#####.#.#######.#.#.#########.###.# +#.#...#.....#.....#...#...#...#.#.#...#...#.....#.............#...#.#...#.....#...#...#...#.....#.....#.......#.#.#.......#.#.#...........#.# +#.#.#######.#.#####.#.#.###.#.#.#.#.#.###########.#############.#.###.#.#.###.###.###.#.#.#.###.#####.#########.#.#.#######.#.#.#######.#.#.# +#.........#.#...#.#.#.#.#.#.#...#...#.............#.....#.......#.#...#.#.#.#...#.....#.#.#...#.......#.......#...#.#.......#.#.......#.#...# +#.#######.#.###.#.#.#.#.#.#.###.#####.#############.#.###.#.#####.#.###.#.#.###.#######.#####.#######.#.###.#.#.###.#.#####.#.#.#####.#.#.### +#...#.....#.#...#.#.#...#.#...#.#...#.#.......#.....#.....#...#...#.#...#.#...#.#...............#.....#...#.#...#...#.....#.#.#...#...#.....# +#.#.#.#######.###.#.#####.###.###.#.#.#.#.#.#.#.#############.#.###.#.###.###.#.#.#####.#.#.#.#.###.#####.#.#####.###.###.###.###.#.###.#.### +#.#.#.......#...#.#.#.......#.#...#...#...#.#.#...#.....#.....#.#...#...#...#.....#.#...#.#.#.#.......#...#.#.....#.#.#...#...#...#.#.......# +###.#.#####.###.#.#.#.#.#####.#.#########.#.#.###.#.#.###.#####.#.#####.###.#.#####.#.###.#.#####.#.#.#.###.#.#####.#.#.#.#.#######.#.#.#.#.# +#...#.....#...#...#.#.#...#...#.#.......#.#.#...#.....#...#...#.#...#.#.....#.#...#.....#.#.#.....#...#.....#...#...#.#.#.#.#.......#...#.#.# +#.#.#########.###.#.#.###.#.#.#.#.###.###.#.###.#####.#.#####.#.#.#.#.###.#####.#.#######.#.#.#####.#######.###.###.#.#.#.#.#.#########.#.#.# +#.#.........#...#.#.#...#.#.....#...#.....#...#.....#.#.#.....#.#.#.#.....#.....#...#.....#...#...#.#.......#.......#.#.....#.....#.......#.# +#.#.#######.###.#.#.#####.#######.#.#########.#####.###.###.###.#.#.###.###.#######.#.#.#######.#.#.#.#.#.###.###.###.#######.###.###.#.#.#.# +#.#...#...#...#...#.......#.......#.....#.........#...#...#...#.#.#...#.#.#...#...#...#.......#.#.#...#.#.#.#.#.....#.#.......#.............# +#.###.#.#.###.###########.#.###########.#.#.#####.###.#.#.#.#.#.#.###.#.#.###.#.#.#.###.#.###.###.#.###.#.#.#.#####.#.###.#####.###.#.#.##### +#...#...#.#.#.#...#.....#.#...#...........#.......#...#.#.#.#...#...#.#...#...#.#...#.....#.....#.......#...#...........#.#.......#.#...#...# +#.#.#####.#.#.#.#.#.###.#.###.#####.#######.#.#####.###.#.###.#####.#.#####.#########.#####.###.#######.###.###.#.#.###.#.#.#####.#.#.###.#.# +#.#.#.......#.#.#...#...#...#...#...#.....#.#.......#...#...#...#...#.#...#...#...#...#.......#...#.....#...#...#.#...#.#...#...#.#.#.....#.# +#.#.#.#######.#.#####.#####.###.#.#.#.###.#.#############.#.###.#.###.#.#.#.#.#.#.#.#####.###.###.#######.###.###.#####.#####.#.#.#.#.#####.# +#.#.#.#.#.....#.#...#.....#...#.#...#...#.#...#...........#.#...#...#.#.#.#.#...#...#...#.#.#...#...........#...#...#...#.....#.#.#.#.#...#.# +#.#.#.#.#.#####.#.#.#####.###.#.#.#.###.#.###.#.#.#####.###.#.#######.###.#.#####.#.#.#.#.#.###.###########.###.###.#.###.#####.#.#.#.###.#.# +#.#.....#...#...#.#...#...#...#.#.#...#.#.....#...#...#.#...#.........#...#.#.#...#...#.#.#.......#.......#...#...#.#.#.#.#...#...#.#.....#.# +###########.#.###.#.###.#.#.###.#.###.#.#######.#.###.#.#.###.#########.#.#.#.#.#######.#.#.#.#####.#####.###.###.#.#.#.#.#.#.#####.#######.# +#.........#.......#.#...#.#.....#...#.#...#...#.#.#...#.#.#...#.......#.#...#.#.#.........#.....#...#.....#.....#.#...#...#.#.#.....#.......# +#.#######.###########.#.#.#######.###.###.#.#.###.#.###.#.###.#.#####.#.###.#.#.#.#########.#.###.###.#########.#.###.#####.#.#.#####.#.##### +#.................#...#.#...#.....#...#...#.#.....#.#...#...#.#.#.....#...#...#...#...#.#.....#...#...#.......#.#...#.......#...#.#...#.#...# +#.#.#.#.###.###.#.#.###.#.###.#####.#.#.###.#######.#.#####.###.#.###.###.###.#####.#.#.#.#####.###.#.#.#.###.###.#.#############.#.#.###.#.# +#...#.#...#...#.#...#...............#.#.#.....#.....#.....#.#...#...#.#.#.#...#...#.#.#...#.....#.....#.#.#.#...#.#.#.....#.......#.#.....#.# +#.###.###.###.#.#.#.###.###.#####.#.#.#.###.#.#.#.#.#####.#.#.#####.#.#.#.#####.#.#.#.#####.#####.#######.#.###.###.#.#####.###.#.#.###.#.#.# +#...#.#.#.#...#...#...#...#.#.....#.#.#...#.#.#.#.#.....#.#...#...#.#...#.......#...#...#...#...#.#.......#...#...#.#.#...#...#.#.#.#...#.#.# +###.#.#.#.#.#.#####.#.#.###.#.###.#.#####.###.###.#######.#.###.#.#.###############.###.#.###.###.#####.###.#####.#.#.#.#.#.#.#.###.#.#.#.#.# +#...#.#.#...#.....#.#.#.#...#.#...#.....#.....#...#.......#.#...#...#.........#.......#...#.......#.....#.........#.#...#...#.#.....#.#...#.# +#.###.#.###.###.#.#.#.###.###.#######.#########.#.#.#######.#.#######.#######.#.###.#######.#######.#####.#########.#.#####.#.#######.#.###.# +#.#...#.....#...#...#.#...#.#.......#...........#.#.#.......#.#.......#...#...#...#.....#.#...#.#.....#...#.........#.......#.#.......#.#...# +###.#.#######.#######.#.###.#.#####.#.###.#.#####.#.#######.#.#.#####.###.#.#####.###.#.#.###.#.#.###.#.#######.#.###.#.###.#.#.#######.#.### +#...#.#.....#...#...#...#...#.#.#.....#.#.#.#...#.#...#...#.#.#.#.......#.#.....#...#.#.....#.#...#...#.......#.#.#...#.#...#...#.....#.#...# +#.#.###.###.###.#.#.#####.#.#.#.#.###.#.#.###.#.#####.#.#.#.#.#.#.#####.#.#####.###.#.#.#####.#.###.#########.###.#.###.#########.#####.###.# +#.#.#...#.....#.#.#.#...#.#.#...#.#.....#.....#.....#...#.#.#.#...#.#...#...#...#...#.#.#.....#.#...#...#.......#.#...#...........#.....#...# +#.###.###.###.#.#.#.#.#.###.###.#.#########.#####.#####.#.#.#.#####.#.#####.#.#.#.###.###.#######.###.###.#.###.#.#########.#######.#####.### +#.......#...#.#...#...#.#.....#.#.........#.....#.......#.#.#.......#.#.....#.#.#...#...#.#.......#...#...#...#.#.#...#.....#...........#...# +#.#####.###.###########.#.#####.#####.#.#.#.#.#.###.#####.###.#.###.#.#.#####.#####.###.#.#.#.#####.#.#.#.#.###.#.#.#.#.#####.#########.#.#.# +#.#...#...#.......#.....#...#.......#...#...#.#...#.#.........#.......#.....#.......#.#.....#.#.....#.....#.#...#.....#.#.......#.....#.#...# +###.#.###.#.###.###.#######.#.#############.#.#####.#.###############.#.###.#########.#.###.#.#############.#.#######.#.#.###.###.###.###.#.# +#...#...#.#.#...#...#.....#.#.#...........#.#.....#...#.#...#.......#.#...#.............#...#.......#.....#.#.........#.#...#.....#.....#.#.# +#.#####.#.#.#.###.###.###.#.#.#.#########.###.###.#####.#.#.#.#####.#.###.#######.#######.#########.#.###.#.###########.###.#.#.#######.#.#.# +#.....#.#.#.#...#.#.#...#.#...#.....#...#...#.#.........#.#...#...#.#.#.#.....................#.....#...#...#.....#.........#.#.#...#.....#.# +#.###.#.#.#.###.#.#.#.#.#.#########.#.#.###.###.#####.###.#####.#.#.#.#.#.#####.#############.#.###.#.#.###.#.#####.#########.###.#.#####.#.# +#.#...#.#...#...#.#...#.#...........#.#.........#.....#...#.....#.#.#.#.......#.#.......#...#...#.....#...#.#.#.........#...#.#...#...#...#.# +#.#.###.###.#.###.#.###.#############.###########.#.###.#####.###.#.#.#####.#.#.#.###.###.#.#.###.#####.#.#.#.#.#######.#.#.#.#.#####.###.#.# +#.#...#.......#...#...#.#.......#.....#.....#.....#.....#.....#...#...#...#.#.#.#.#...#...#.#.#...#...#.#...#...#...#...#.#.#.#.....#...#...# +#.###.#####.#.#.#######.#######.#.#####.###.#.#############.###.#######.#.###.#.#.###.#.###.#.#.###.#.#.#.#######.#.#.#####.#.#.#######.#.### +#...#...#...#.#.#.......#.......#...#.....#.#...#.........#.#...#.......#...#.....#.....#.#...#.#...#...#.......#.#.#.......#...#.......#...# +#######.###.#.#.###.#####.#####.###.#####.#####.#####.###.#.###.###.#.#####.#######.#####.#######.#############.#.#.#####.#.#####.#######.#.# +#.......#...#.#...#...........#.#...#.....#.....#...#.#...#...#...#.#...#...........#.....#.....#.#.....#.....#.#.#.#.......#.....#.....#...# +#.#######.#.#.###.#.#.#######.###.###.#####.#.###.#.#.#.#####.###.#####.#.###.#########.#.###.#.#.#.#####.#.###.#.#.#########.#####.###.#.### +#.....#.#.......#...#...#...#.....#...#.....#.....#...#.....#...#.......#.....#.........#.....#...#.......#...#.#.#.........#...#.....#.#.#.# +#.###.#.#.#.#########.#.#.#.#######.###.#######.###########.#.#.#################.#################.#########.#.#.#.#######.###.#.###.###.#.# +#.#.#.#.....#.........#.#.#.....#...#...#.............#...#...#.#.#.......#...............#.......#...#.#...#...#.#.#...#.#.#...#...#...#.#.# +#.#.#.###.###.###.#.#.#.#.###.#.#.#.#.#####.#######.#.#.#.###.#.#.#.###.#.#.#.#######.###.#.###.#####.#.#.#.#####.###.#.#.#.#.#######.#.#.#.# +#...#...#.#...#.#...#.#.#...#.....#.#.#.....#.....#.#...#...#.#.#.....#.#.#.#.#.......#.....#.#.....#.#...#.......#.....#...#.#.....#.#.#.#.# +#.#.###.#.#.###.#####.#.###########.#.#.#####.#.#.#.###.#.###.#.#####.#.#.###.#.###.#########.#.#.#.#.#.#######.#.#.###.#.###.#.#.#.###.#.#.# +#.#.....#.#.#.......#.......#.......#...#.....#.#...#.....#...#...#...#.#...#.#...#.#.......#...#.#.......#...#.#.#.#...#.#...#.#.......#...# +#.#.#.#####.#.#.#####.#####.#.#####.###.###.###.#####.#####.#####.#.###.###.#.#####.#.#####.#####.###.###.#.#.#.#.#.#.###.#.###.###########.# +#.#...#...#.#.#...#.......#...#...#.#.....#.#...#.....#...#.....#.#...#.#.#.#.....#.....#...#.....#...#.....#.#.#.#.#...#...#...#...#.....#.# +###.#.#.#.#.#####.#.###.#########.#.###.#.###.#.#######.#.###.#.#.#.###.#.#.#.###.#######.#.#.#####.#.#######.#.#.#.###.#######.#.#.#.###.#.# +#.....#.#...#...#.#...#.#.........#.....#...#.#.#.....#.#.....#...#...#.#.#.#.#.#.......#.#.........#.....#...#.......#.#.....#...#...#...#.# +#.#.###.#####.#.#.###.###.#####.#.#########.#.###.###.#.###.#.#####.#.#.#.#.#.#.#######.#.#.###.###.#####.###.#########.#.###.###.#####.###.# +#.#...#.#.....#...#.#...#...#...#.#.......#.#.#...#...#...#.#.....#.#...#.#.#...#.......#.#...#...#.#...#...#.#.......#...#.#.....#.....#...# +#.#.#.#.#.#######.#.###.###.#.###.###.#.###.#.#.###.###.###.#####.#.#####.#.###.#.#.#.###.###.###.#.#.#####.###.#####.#.###.#####.#.#####.### +#...#...#.....#.#.....#...#.#.#.#...#.#...#.#...#.#.....#...#...#...#.....#.#.....#.#.......#...#...#.....#.....#.....#...#.....#.#.........# +#.#.#####.###.#.#####.###.#.#.#.###.#####.#.#.#.#.#######.#####.#####.#.#.#.#.###.#.#.#####.###.#########.#######.#######.#.###.#.########### +#.#.....#...#.#.#.....#...#.#.#...........#.#...#.#.......#...........#.#.#.#...#...#.....#...#.#.......#...........#...#...#...#...........# +#.#.###.###.#.#.#.#####.###.#.#####.#######.#.###.#.#######.#########.###.#.#.###.#######.###.#.#.#.#.#.###.###.###.#.#######.###.#########.# +#...#...#.#.#.#.#.....#...#.#.#...#.#.....#.#.....#...#.............#.....#.#.....#.....#...#.#.#.#.#.........#.#...#.#.....#.#.....#.....#.# +###.#.###.#.#.#.#.#.#.###.#.#.#.#.#.#.###.#.#####.#.#.#.#####.#.###.###.###.#.#.###.#.#####.#.#.###.#########.#.#.#.#.#.#.#.#.###.#.#.#.###.# +#...#.#.................#.#.#...#.#.#...#.#.#.....#...#.#...#.#...#...#.#...#.#.#...#.....#.#.#...#.....#...#.#.......................#...#.# +#.#.#.#.#####.#.#.#.###.#.#.#.###.###.#.#.#.#.#####.###.###.#.#.#.###.###.#####.#.#.#.###.#.#.###.#####.#.#.#.#.#.#.#####.#.#####.#.#.#.#.#.# +#.#...#.#.....#...#.....#.#.#...#...#...#...#.#...#...#.....#.....#.......................#.#...#.....#.#.#...#.#.#.....#.#.#...#.....#.#.#.# +#.#######.#####.#.#####.#.#.#.#.###.#.#######.#.#.#.#.#########.###.###.#####.###.###.#.###.###.#####.#.#.#####.#.#.###.#.#.#.###.#####.#.#.# +#.......#.#.............#.#...#...#.#.#.#...#...#...#.........#...#.#...#.....#.#.#.#...#...............#.....#.....................#.......# +#######.#.#.#####.#######.###.###.#.#.#.#.#.#####.#.###.#####.#.###.#.#####.###.#.#.#.###.###.#####.#########.#.#####.###.#####.#.#.#.#.##### +#.#...#...#.#.......#.......#.#...#.#.#...#.......................#.#.......#.#...#.#...#...#.....#...#.........#.....#.......#.#...#.......# +#.#.#.#####.#.#.#####.#####.#.#.#.#.#.#####.#.#####.#.###.#.###.#.#.#########.#.###.#.#.###.#.###.###.#########.#.#########.#.#.#.#.###.###.# +#...#.....#.#.#...#...#.....#...#.#.#.#...#...#.....#.#.#...#...#.#.#.........#.......#...#.#...#...#.......#...#.#.......#.#.........#...#.# +#.#######.#.#.###.#.#.#######.###.#.#.#.#.#####.###.#.#.###.#.###.#.#.#######.#######.###.#.#######.#######.#####.#.#####.#######.###.#.#.#.# +#.#.....#...#...#.#.#.#...........#...#.#.........................#.#.....#.#.#.....#.#...#.......#...#.....#...#.....#.#...#.....#.......#.# +#.###.#.#########.#.###.#############.#.#####.###.#.#.#########.###.#####.#.#.#.#.###.#.#########.###.#.#####.#.#.###.#.###.#.###.#####.###.# +#S....#...........#.....................#.........#.............#...........#...#.....#...............#.......#.......#.......#.............# +############################################################################################################################################# \ No newline at end of file diff --git a/2024/input/17 b/2024/input/17 new file mode 100644 index 0000000..f375f58 --- /dev/null +++ b/2024/input/17 @@ -0,0 +1,5 @@ +Register A: 47792830 +Register B: 0 +Register C: 0 + +Program: 2,4,1,5,7,5,1,6,4,3,5,5,0,3,3,0 \ No newline at end of file diff --git a/2024/input/18 b/2024/input/18 new file mode 100644 index 0000000..06947b2 --- /dev/null +++ b/2024/input/18 @@ -0,0 +1,3450 @@ +11,57 +16,7 +21,58 +69,43 +69,39 +15,69 +15,61 +64,35 +49,49 +17,61 +65,35 +5,5 +43,50 +7,11 +12,1 +31,53 +9,4 +15,58 +68,41 +24,69 +47,64 +27,19 +57,56 +55,49 +61,57 +57,42 +55,62 +41,43 +51,40 +68,51 +49,59 +58,33 +67,59 +23,13 +45,61 +62,69 +39,66 +27,7 +15,7 +28,21 +64,37 +66,69 +63,64 +9,9 +21,1 +29,15 +11,11 +20,59 +35,1 +53,3 +7,17 +35,4 +69,55 +67,33 +17,23 +56,41 +59,57 +37,2 +21,15 +25,1 +18,11 +63,47 +63,48 +33,59 +61,49 +54,57 +47,34 +41,0 +49,4 +59,44 +60,45 +49,29 +47,51 +11,21 +44,51 +61,53 +41,8 +23,67 +51,65 +70,45 +29,64 +49,7 +63,66 +25,62 +35,66 +57,38 +56,1 +6,15 +45,37 +54,39 +63,32 +27,16 +69,33 +46,9 +63,49 +3,5 +29,17 +47,70 +13,6 +31,67 +17,15 +17,8 +11,6 +21,13 +17,13 +23,59 +43,68 +51,69 +35,8 +61,29 +41,64 +18,65 +31,58 +60,41 +23,17 +31,63 +13,7 +53,67 +14,1 +2,17 +68,55 +46,7 +31,3 +67,31 +41,5 +61,36 +45,54 +37,55 +40,3 +53,65 +58,45 +51,53 +49,68 +54,55 +19,18 +22,11 +67,67 +47,63 +64,69 +49,64 +17,1 +33,3 +55,47 +25,13 +13,57 +53,64 +44,47 +43,3 +66,47 +33,14 +5,3 +23,4 +67,35 +49,61 +49,41 +19,4 +27,67 +49,69 +59,47 +51,3 +37,69 +68,61 +10,15 +15,14 +59,8 +26,1 +65,49 +49,63 +41,48 +53,52 +38,61 +39,68 +47,1 +14,63 +13,25 +59,69 +69,60 +58,51 +25,61 +22,59 +45,49 +21,65 +19,1 +55,55 +40,59 +65,37 +64,31 +55,51 +57,41 +13,61 +9,15 +11,9 +21,9 +32,59 +61,33 +44,9 +56,51 +64,29 +44,7 +24,57 +49,47 +41,56 +18,61 +53,60 +1,3 +54,45 +25,63 +57,53 +69,57 +18,3 +53,50 +33,61 +33,67 +63,69 +67,57 +42,1 +68,45 +69,42 +21,22 +63,37 +3,1 +37,3 +25,5 +43,5 +17,9 +11,12 +31,4 +53,7 +25,8 +59,61 +24,19 +27,10 +26,61 +66,53 +43,7 +25,4 +69,67 +69,66 +25,70 +25,19 +53,39 +32,55 +1,5 +21,5 +68,31 +47,39 +53,43 +23,19 +7,18 +33,65 +12,61 +67,34 +5,13 +60,69 +57,67 +31,59 +61,44 +53,32 +63,39 +11,8 +20,13 +25,65 +17,21 +11,3 +1,19 +69,68 +59,60 +4,1 +42,5 +63,43 +23,57 +42,65 +36,5 +37,1 +4,3 +61,58 +17,12 +60,47 +61,35 +70,47 +47,3 +17,69 +59,55 +45,64 +42,67 +43,8 +45,65 +29,65 +29,6 +18,57 +23,7 +67,41 +31,9 +65,50 +43,47 +60,65 +59,29 +61,41 +14,17 +11,20 +38,3 +9,13 +59,43 +56,53 +7,3 +61,31 +29,3 +34,1 +8,1 +6,11 +65,56 +69,69 +13,22 +33,2 +41,63 +19,62 +30,3 +11,13 +67,53 +69,61 +49,48 +27,9 +27,5 +55,4 +49,52 +3,14 +55,43 +26,65 +17,67 +46,3 +41,57 +53,44 +47,52 +61,59 +1,7 +47,47 +7,21 +15,10 +47,68 +40,7 +2,3 +61,67 +27,4 +40,43 +15,25 +17,20 +55,48 +35,63 +46,57 +65,43 +55,39 +29,63 +63,53 +69,38 +45,3 +9,5 +43,1 +57,45 +39,52 +51,43 +46,61 +61,39 +65,39 +51,39 +28,67 +28,13 +49,5 +65,41 +53,47 +48,49 +11,7 +67,43 +10,3 +43,62 +26,7 +39,64 +65,40 +51,6 +28,59 +56,69 +29,69 +55,50 +11,62 +9,25 +69,35 +59,65 +68,27 +50,55 +67,45 +25,14 +59,31 +28,69 +25,17 +46,47 +49,53 +41,38 +17,63 +56,65 +60,53 +61,37 +67,51 +42,61 +29,67 +35,3 +62,39 +20,1 +17,7 +46,63 +20,9 +9,3 +13,68 +56,35 +44,69 +37,4 +17,16 +69,58 +49,65 +69,31 +19,9 +51,61 +28,9 +41,4 +51,45 +25,57 +31,17 +24,67 +66,51 +57,47 +11,15 +29,66 +64,57 +69,59 +42,3 +23,10 +30,63 +65,53 +41,65 +37,58 +23,6 +3,7 +25,67 +45,47 +45,7 +4,13 +57,65 +68,39 +63,65 +32,63 +43,45 +43,65 +12,17 +4,9 +30,61 +11,58 +53,49 +69,50 +57,51 +23,66 +13,60 +37,68 +1,11 +9,10 +40,67 +65,61 +4,15 +30,15 +19,5 +31,8 +24,13 +19,60 +52,41 +16,9 +59,59 +33,64 +1,1 +59,68 +10,19 +35,65 +33,5 +21,68 +9,16 +13,69 +47,61 +19,11 +70,55 +55,69 +45,69 +23,69 +17,2 +63,29 +47,54 +45,45 +44,65 +11,61 +51,51 +66,59 +55,58 +26,59 +59,67 +25,69 +3,19 +7,7 +34,5 +54,67 +47,69 +58,53 +13,66 +13,14 +13,17 +27,61 +43,51 +49,42 +67,46 +32,13 +19,3 +45,4 +55,32 +31,66 +45,67 +58,57 +67,49 +35,68 +13,15 +29,61 +50,51 +2,13 +27,12 +69,29 +45,2 +50,7 +25,23 +35,11 +67,39 +27,69 +66,43 +65,51 +31,6 +57,39 +13,65 +56,37 +61,27 +47,66 +65,47 +29,59 +56,55 +59,45 +52,57 +65,29 +29,68 +17,11 +50,45 +41,61 +3,3 +35,70 +51,55 +69,63 +2,7 +49,46 +24,17 +24,59 +9,7 +43,48 +15,12 +48,47 +62,41 +35,5 +61,64 +65,55 +8,11 +29,9 +33,7 +69,36 +7,25 +49,51 +8,19 +58,63 +11,1 +52,69 +41,46 +15,19 +66,67 +33,11 +31,5 +1,9 +52,55 +51,67 +27,11 +9,1 +15,17 +39,47 +13,8 +67,64 +22,67 +15,18 +14,61 +21,2 +31,7 +50,61 +23,8 +32,1 +47,65 +57,64 +29,1 +45,56 +27,15 +51,50 +60,63 +6,7 +20,11 +43,49 +48,61 +21,11 +61,60 +46,49 +5,12 +37,65 +41,69 +45,1 +61,38 +32,61 +51,47 +23,2 +39,61 +5,1 +9,21 +67,56 +54,41 +15,1 +50,35 +1,8 +19,20 +62,51 +7,5 +68,33 +53,63 +7,15 +33,63 +5,7 +25,11 +32,5 +68,53 +19,8 +16,61 +70,63 +43,6 +15,20 +44,61 +67,38 +62,61 +0,13 +47,49 +17,65 +60,49 +55,33 +31,0 +63,59 +13,19 +57,49 +0,1 +47,67 +59,51 +29,14 +51,66 +43,67 +5,9 +51,62 +57,69 +46,59 +9,19 +62,49 +39,67 +36,7 +53,51 +52,47 +6,9 +15,65 +30,57 +41,7 +61,56 +17,3 +53,55 +3,18 +13,64 +55,61 +19,25 +58,47 +1,4 +13,70 +21,3 +15,9 +63,34 +43,55 +62,31 +27,65 +42,43 +53,29 +13,11 +68,69 +27,1 +45,13 +14,9 +11,5 +57,48 +63,33 +36,65 +53,62 +3,10 +26,17 +13,3 +66,41 +55,67 +28,63 +63,35 +70,33 +61,45 +19,61 +18,5 +22,13 +54,47 +45,57 +3,6 +21,4 +69,51 +56,45 +15,67 +57,63 +39,62 +0,11 +19,19 +19,23 +35,67 +34,63 +44,43 +11,59 +18,69 +55,41 +63,57 +41,47 +7,2 +7,14 +69,45 +19,16 +34,67 +12,23 +20,69 +69,37 +27,63 +47,44 +55,53 +57,40 +35,60 +66,29 +45,5 +17,14 +5,15 +50,1 +52,67 +51,49 +25,9 +22,1 +58,37 +51,41 +68,43 +17,29 +55,57 +61,69 +11,55 +39,58 +14,3 +57,35 +23,5 +65,69 +13,13 +61,43 +61,51 +59,53 +67,63 +15,13 +17,17 +38,69 +59,40 +31,61 +1,15 +63,55 +10,17 +45,66 +41,67 +65,31 +40,61 +63,52 +23,16 +56,43 +37,67 +15,59 +52,1 +13,12 +65,67 +7,13 +15,4 +50,41 +49,57 +45,59 +35,69 +7,19 +52,45 +25,15 +47,55 +27,17 +3,11 +28,61 +65,44 +34,59 +16,69 +49,60 +49,55 +22,65 +51,48 +25,12 +29,19 +55,63 +67,54 +36,63 +34,7 +7,1 +19,21 +39,1 +50,69 +20,7 +39,6 +19,67 +65,38 +19,15 +55,59 +11,19 +13,67 +15,3 +30,9 +20,67 +6,5 +13,59 +15,15 +63,31 +21,69 +46,45 +21,6 +15,68 +39,3 +24,1 +60,67 +29,2 +49,43 +43,63 +61,61 +3,13 +61,47 +19,17 +30,17 +38,1 +69,49 +69,41 +1,16 +64,45 +37,63 +31,12 +8,15 +55,45 +51,54 +9,17 +41,1 +13,9 +16,65 +65,63 +31,65 +17,64 +24,63 +59,58 +15,5 +39,63 +19,14 +69,65 +63,36 +49,66 +45,42 +52,59 +54,53 +60,55 +48,7 +29,7 +19,69 +8,7 +8,5 +33,16 +31,1 +13,1 +2,27 +25,64 +9,8 +68,49 +50,37 +53,41 +15,11 +51,64 +65,33 +17,5 +64,41 +47,5 +46,51 +11,17 +59,42 +47,59 +53,34 +37,62 +48,3 +28,5 +65,45 +19,63 +2,9 +20,23 +67,62 +63,45 +57,37 +17,6 +63,41 +45,63 +19,7 +44,13 +62,67 +67,69 +23,9 +29,5 +47,6 +23,61 +49,3 +41,70 +2,1 +35,15 +61,63 +15,66 +45,51 +50,57 +51,63 +6,27 +12,19 +23,15 +53,68 +63,54 +4,5 +23,20 +53,59 +34,11 +27,3 +62,55 +12,11 +67,36 +18,67 +57,57 +26,67 +48,55 +59,49 +30,11 +57,55 +11,2 +61,65 +52,53 +65,48 +23,21 +44,1 +67,55 +60,51 +27,2 +25,20 +16,17 +64,51 +13,16 +23,1 +68,65 +43,69 +31,21 +49,67 +69,47 +66,33 +53,45 +62,43 +45,55 +59,35 +7,9 +25,6 +11,4 +17,0 +9,0 +32,67 +39,65 +27,13 +25,10 +39,69 +58,69 +55,37 +6,3 +22,15 +11,10 +28,15 +47,53 +67,47 +23,56 +9,11 +37,45 +66,31 +51,7 +63,46 +29,13 +9,12 +55,66 +59,62 +59,37 +35,9 +5,11 +23,3 +31,13 +57,66 +68,59 +25,7 +65,58 +1,13 +15,63 +59,21 +43,54 +57,61 +31,51 +13,21 +5,61 +5,62 +5,50 +21,63 +19,33 +21,46 +8,55 +49,31 +25,59 +59,3 +12,43 +46,35 +67,29 +55,12 +5,35 +49,17 +47,27 +35,43 +23,11 +59,18 +33,38 +69,13 +41,35 +61,1 +63,63 +40,37 +65,64 +57,59 +2,43 +4,33 +54,25 +7,22 +11,27 +3,26 +26,51 +25,53 +10,43 +53,33 +1,55 +35,55 +55,1 +48,11 +65,1 +45,27 +34,39 +67,11 +11,67 +25,33 +16,45 +2,39 +6,55 +11,36 +27,59 +50,11 +10,49 +42,41 +29,11 +10,45 +43,33 +35,40 +23,62 +3,44 +26,49 +57,25 +69,15 +68,19 +45,53 +31,33 +33,21 +9,49 +13,33 +59,36 +43,36 +39,31 +59,24 +41,23 +35,7 +17,33 +65,15 +7,59 +53,57 +43,39 +9,32 +15,49 +37,5 +62,59 +32,11 +2,31 +59,26 +57,14 +5,57 +31,27 +64,1 +5,18 +5,16 +42,29 +64,17 +53,2 +62,19 +17,59 +58,21 +54,15 +28,33 +69,27 +67,37 +5,27 +28,25 +6,35 +31,11 +18,33 +52,13 +5,54 +17,40 +47,31 +51,57 +40,29 +14,47 +36,35 +35,19 +23,50 +22,29 +55,65 +3,61 +31,28 +29,33 +9,37 +57,19 +7,37 +63,16 +3,65 +50,31 +59,14 +18,19 +64,9 +7,63 +23,34 +45,17 +17,44 +52,9 +39,49 +29,54 +17,27 +41,29 +25,30 +63,5 +33,13 +59,22 +5,53 +13,41 +19,57 +25,28 +61,23 +27,36 +41,30 +43,21 +41,45 +31,24 +55,14 +45,28 +22,43 +41,37 +21,26 +61,9 +39,42 +51,18 +27,26 +1,31 +41,15 +36,31 +39,55 +31,47 +2,33 +53,21 +21,39 +37,53 +67,15 +66,63 +43,61 +55,11 +8,45 +7,40 +32,31 +66,7 +69,17 +68,23 +9,31 +51,33 +37,17 +57,60 +17,39 +13,49 +63,11 +41,26 +5,39 +65,23 +11,43 +37,33 +4,27 +39,26 +3,69 +17,46 +23,65 +47,10 +14,43 +7,35 +13,63 +65,26 +45,12 +35,25 +33,45 +27,48 +47,33 +43,16 +63,51 +21,34 +37,51 +27,32 +45,11 +41,13 +47,32 +1,17 +8,67 +63,6 +25,54 +49,14 +32,33 +54,63 +23,32 +47,29 +10,41 +39,57 +9,50 +48,27 +11,54 +57,29 +9,24 +57,6 +59,13 +33,26 +1,21 +44,23 +14,21 +29,23 +51,16 +69,12 +62,25 +41,41 +47,22 +19,49 +21,7 +2,63 +21,19 +61,10 +67,14 +33,70 +21,35 +58,11 +37,47 +30,19 +61,0 +43,41 +34,31 +21,55 +25,27 +27,43 +45,21 +11,65 +27,27 +68,1 +37,18 +20,51 +23,26 +32,9 +41,17 +21,64 +35,21 +65,19 +4,31 +47,24 +55,8 +41,53 +35,10 +42,57 +17,57 +35,35 +69,6 +64,13 +57,3 +37,7 +3,56 +55,19 +39,51 +57,10 +63,18 +28,45 +41,21 +2,49 +33,20 +67,5 +37,57 +55,21 +49,25 +67,26 +27,41 +53,9 +50,27 +28,35 +25,3 +41,28 +41,19 +69,25 +70,3 +12,35 +37,49 +3,53 +46,13 +32,37 +53,38 +15,38 +35,33 +63,8 +29,44 +67,13 +21,59 +57,27 +9,47 +14,57 +11,33 +35,53 +19,31 +5,67 +37,31 +32,47 +47,38 +53,20 +44,21 +23,39 +37,37 +63,4 +3,15 +15,35 +49,26 +33,35 +29,29 +31,39 +65,7 +45,43 +1,22 +1,60 +67,19 +3,63 +51,15 +39,13 +11,56 +69,9 +40,55 +26,35 +3,41 +5,36 +12,27 +47,43 +7,58 +44,19 +55,31 +33,19 +35,47 +3,45 +29,41 +69,3 +43,9 +0,47 +13,37 +63,27 +5,42 +25,31 +35,23 +29,21 +49,33 +49,15 +7,23 +21,41 +26,53 +63,25 +50,33 +9,23 +55,15 +32,53 +21,24 +3,57 +47,0 +53,37 +63,62 +51,4 +46,19 +15,53 +45,19 +59,19 +19,59 +55,6 +33,33 +15,51 +6,65 +7,33 +47,15 +15,52 +9,53 +23,53 +49,13 +52,37 +29,32 +12,45 +9,59 +59,41 +57,16 +1,20 +10,59 +3,43 +23,22 +31,31 +19,37 +17,19 +39,43 +50,21 +61,4 +16,41 +57,33 +39,40 +39,27 +37,15 +7,32 +35,61 +3,39 +12,57 +56,27 +21,30 +45,33 +41,55 +53,35 +62,11 +61,7 +5,23 +31,29 +55,5 +3,24 +44,27 +21,45 +58,29 +9,52 +49,35 +39,35 +42,59 +13,47 +35,59 +63,67 +59,39 +34,19 +3,28 +1,57 +61,16 +7,60 +39,20 +53,61 +8,47 +11,37 +0,43 +49,18 +45,25 +61,21 +55,23 +6,45 +69,1 +67,23 +40,17 +61,34 +47,19 +5,58 +19,46 +69,21 +65,25 +65,21 +67,21 +21,51 +44,25 +35,52 +20,27 +29,53 +61,6 +27,49 +33,25 +67,65 +3,50 +27,22 +25,24 +41,12 +47,14 +1,29 +18,37 +45,15 +5,25 +23,38 +24,53 +38,47 +51,35 +25,35 +3,55 +33,56 +43,43 +46,39 +25,29 +55,16 +1,39 +41,32 +8,65 +21,18 +9,26 +28,41 +37,35 +51,17 +37,16 +35,31 +27,21 +53,31 +69,22 +51,9 +48,39 +59,9 +13,4 +33,17 +45,18 +47,41 +29,24 +27,18 +23,63 +1,49 +21,17 +43,53 +57,9 +38,35 +53,6 +21,23 +39,11 +33,1 +5,20 +11,68 +39,8 +43,57 +39,22 +36,51 +16,37 +31,35 +43,35 +20,39 +7,39 +13,53 +45,36 +27,33 +41,11 +54,17 +19,51 +7,29 +36,23 +25,45 +14,55 +35,24 +37,10 +42,13 +31,55 +33,49 +11,41 +20,33 +11,48 +35,49 +43,13 +52,29 +3,9 +39,21 +15,47 +49,11 +11,32 +11,31 +70,25 +49,37 +23,51 +58,7 +9,69 +11,47 +51,14 +16,55 +57,21 +58,31 +24,43 +17,50 +9,39 +17,37 +1,27 +29,37 +1,18 +27,57 +35,45 +53,10 +4,59 +55,34 +31,43 +7,51 +25,56 +47,9 +37,61 +9,20 +54,35 +13,55 +52,23 +25,55 +57,5 +4,49 +2,37 +47,23 +53,1 +39,50 +26,45 +51,24 +65,11 +17,32 +48,31 +43,26 +35,44 +9,61 +5,22 +31,15 +23,29 +29,25 +3,51 +51,37 +9,57 +30,39 +38,33 +24,49 +25,43 +37,39 +35,48 +13,27 +5,21 +31,42 +24,41 +44,59 +3,66 +37,19 +13,23 +6,67 +31,22 +32,49 +43,11 +15,57 +13,51 +25,39 +51,25 +69,30 +9,28 +5,40 +36,41 +3,64 +21,62 +53,53 +25,26 +29,55 +10,57 +5,63 +39,33 +6,25 +17,34 +13,42 +33,29 +56,23 +17,22 +15,48 +65,9 +33,69 +63,9 +19,13 +15,41 +45,31 +17,58 +13,43 +55,18 +35,29 +14,49 +33,55 +29,38 +11,35 +21,21 +1,40 +49,27 +67,7 +61,55 +47,21 +33,47 +34,35 +36,29 +69,20 +18,29 +22,55 +29,27 +64,61 +21,33 +5,31 +1,63 +2,47 +9,22 +61,11 +3,62 +9,29 +41,22 +64,25 +11,24 +37,60 +32,17 +9,65 +38,31 +31,49 +14,29 +34,51 +22,51 +51,21 +18,25 +33,30 +44,31 +1,41 +27,30 +49,2 +69,7 +27,56 +65,4 +59,1 +59,27 +35,57 +16,35 +65,17 +53,13 +47,57 +23,33 +42,23 +37,21 +65,59 +5,51 +1,25 +14,33 +4,47 +48,35 +53,5 +1,32 +39,41 +5,24 +17,25 +47,25 +37,11 +57,31 +30,53 +11,39 +21,47 +37,44 +40,47 +69,53 +44,41 +34,17 +37,38 +30,51 +51,29 +43,15 +29,39 +12,53 +17,31 +35,17 +49,16 +37,46 +29,43 +37,59 +55,26 +38,39 +13,40 +16,29 +63,3 +3,21 +59,4 +29,51 +57,13 +39,18 +59,15 +44,37 +65,27 +57,23 +55,29 +67,24 +4,69 +3,37 +23,49 +63,26 +9,67 +1,45 +39,5 +47,58 +18,27 +21,28 +47,13 +53,25 +5,17 +9,27 +5,55 +35,13 +53,11 +48,25 +29,22 +39,29 +52,33 +47,16 +11,63 +27,37 +11,25 +3,49 +49,12 +54,11 +3,23 +69,28 +37,29 +46,33 +23,43 +18,31 +67,8 +7,41 +32,45 +43,20 +20,55 +38,7 +30,49 +34,55 +38,11 +67,2 +5,60 +15,27 +12,47 +54,3 +7,57 +13,45 +39,14 +5,38 +63,13 +9,51 +45,23 +17,41 +23,47 +36,37 +59,34 +21,60 +25,46 +28,51 +7,43 +57,15 +27,58 +39,39 +19,65 +37,13 +56,59 +1,66 +36,15 +7,48 +53,15 +1,67 +3,54 +55,2 +67,12 +65,28 +5,43 +48,37 +5,52 +43,19 +3,68 +18,53 +60,29 +9,33 +15,21 +23,48 +59,23 +58,27 +35,37 +53,23 +45,41 +21,49 +51,27 +29,28 +2,23 +61,14 +65,66 +30,47 +13,50 +57,11 +43,25 +31,36 +19,36 +59,17 +43,23 +7,55 +55,27 +5,49 +23,23 +8,27 +52,5 +49,10 +30,33 +17,55 +33,43 +60,27 +39,45 +3,25 +19,41 +57,4 +35,26 +51,42 +41,9 +9,46 +22,47 +1,46 +29,31 +67,9 +57,17 +6,29 +63,2 +33,53 +37,28 +67,3 +46,21 +31,34 +51,13 +17,51 +26,39 +11,66 +37,56 +19,47 +1,61 +58,17 +26,33 +41,59 +19,45 +10,37 +45,39 +3,58 +68,9 +59,7 +57,28 +51,19 +39,9 +30,29 +53,69 +29,56 +54,29 +67,27 +15,29 +15,55 +31,41 +60,15 +33,28 +5,47 +3,52 +14,45 +3,17 +28,19 +65,18 +25,51 +51,31 +17,45 +56,9 +3,33 +48,29 +23,41 +7,65 +7,45 +42,51 +6,69 +32,19 +38,37 +11,28 +67,10 +69,19 +33,9 +29,30 +16,49 +65,20 +59,25 +63,19 +63,23 +7,30 +38,23 +9,36 +57,24 +45,35 +14,53 +40,49 +27,39 +34,61 +39,25 +53,27 +63,15 +44,33 +65,5 +21,25 +5,65 +36,13 +33,27 +28,53 +20,37 +5,44 +56,31 +31,45 +65,13 +1,56 +17,24 +42,33 +62,29 +47,11 +36,19 +27,47 +4,39 +7,50 +11,52 +11,45 +69,5 +51,23 +40,35 +0,57 +47,17 +27,53 +18,41 +53,24 +16,59 +33,31 +23,44 +19,53 +13,29 +41,27 +9,70 +59,11 +49,39 +1,53 +35,27 +34,43 +63,1 +26,21 +5,29 +7,61 +33,41 +9,43 +21,20 +21,31 +35,14 +61,19 +35,46 +51,5 +65,12 +41,31 +31,40 +47,37 +3,29 +70,15 +32,51 +59,2 +55,35 +23,24 +44,45 +11,30 +8,63 +47,7 +41,49 +61,22 +45,30 +53,30 +43,31 +21,57 +0,63 +9,63 +29,49 +39,23 +35,51 +55,25 +19,27 +67,4 +29,45 +55,17 +27,35 +19,44 +58,49 +37,23 +19,35 +39,12 +35,22 +47,45 +11,64 +61,13 +10,27 +17,43 +17,35 +60,33 +28,39 +5,19 +11,29 +39,15 +59,5 +0,25 +37,20 +21,61 +1,47 +7,52 +23,45 +17,54 +7,67 +58,1 +61,12 +49,9 +37,25 +1,33 +65,57 +61,5 +41,24 +12,39 +5,41 +41,18 +15,33 +55,7 +39,59 +4,65 +9,60 +7,49 +21,40 +33,22 +5,45 +36,55 +22,37 +29,42 +39,54 +46,29 +69,23 +32,23 +38,27 +25,25 +37,41 +65,10 +15,45 +61,17 +41,39 +34,25 +41,3 +11,51 +53,22 +18,51 +43,27 +31,69 +55,9 +45,16 +4,21 +5,33 +33,57 +26,43 +3,47 +39,19 +67,61 +19,48 +31,37 +1,69 +39,44 +46,41 +13,35 +63,14 +43,17 +1,43 +39,53 +21,27 +3,36 +14,35 +26,27 +23,37 +7,31 +15,39 +31,57 +64,21 +37,9 +19,43 +43,10 +9,40 +19,29 +69,11 +15,24 +1,70 +49,45 +25,37 +42,45 +63,22 +21,52 +34,45 +59,33 +66,15 +20,49 +25,21 +37,27 +5,59 +15,31 +17,26 +61,3 +20,43 +1,65 +61,15 +23,55 +0,35 +44,57 +7,42 +53,36 +46,25 +19,56 +21,42 +24,35 +33,37 +1,37 +17,47 +31,23 +48,19 +1,35 +2,41 +9,41 +11,23 +41,52 +13,30 +51,11 +37,54 +33,23 +9,38 +1,30 +19,39 +65,3 +68,5 +23,40 +59,63 +7,24 +65,6 +66,23 +67,16 +1,54 +26,41 +33,42 +7,38 +67,17 +43,59 +66,21 +13,31 +7,53 +2,59 +55,22 +47,35 +9,34 +51,59 +24,45 +43,37 +23,36 +15,37 +53,8 +37,42 +15,28 +35,36 +7,56 +35,39 +17,53 +41,51 +15,42 +27,29 +9,55 +63,24 +14,23 +60,21 +25,41 +13,32 +25,49 +21,43 +43,14 +41,33 +63,61 +28,47 +17,49 +37,30 +3,27 +53,17 +3,35 +57,7 +3,67 +59,20 +27,55 +15,23 +50,23 +56,61 +29,35 +5,37 +61,25 +55,13 +21,29 +45,9 +35,41 +15,32 +21,67 +3,31 +23,27 +37,43 +37,12 +63,17 +27,31 +67,1 +15,26 +5,69 +32,39 +41,25 +7,34 +57,43 +29,57 +9,62 +13,26 +31,68 +1,52 +42,35 +67,25 +23,31 +67,18 +49,23 +49,1 +49,21 +39,37 +44,39 +49,19 +61,2 +57,1 +63,7 +53,19 +11,69 +20,53 +7,69 +31,26 +39,7 +34,33 +24,31 +19,55 +36,33 +63,21 +11,53 +7,47 +2,35 +52,17 +42,17 +43,29 +31,25 +56,19 +10,65 +23,25 +21,53 +61,8 +13,39 +23,35 +9,35 +66,1 +27,23 +57,12 +42,39 +41,10 +69,10 +11,49 +1,68 +27,25 +7,27 +60,9 +51,20 +27,45 +14,37 +37,50 +3,59 +65,65 +21,37 +69,16 +34,57 +51,1 +22,17 +25,47 +21,32 +33,15 +34,53 +18,47 +48,57 +13,5 +6,47 +30,45 +27,51 +55,20 +29,47 +60,31 +6,63 +25,38 +1,59 +39,17 +8,41 +55,3 +5,30 +9,30 +9,54 +13,38 +15,43 +41,20 +45,29 +48,43 +38,51 +9,45 +40,15 +33,48 +33,51 +50,29 +42,53 +52,27 +31,19 +1,23 +9,68 +33,39 +38,25 +1,51 +24,55 +33,44 +58,10 +67,42 +27,6 +44,11 +29,18 +17,70 +52,62 +65,0 +4,38 +10,70 +24,14 +42,34 +7,8 +50,20 +7,12 +22,70 +42,42 +8,24 +35,34 +36,12 +4,64 +37,40 +36,64 +23,60 +12,22 +0,59 +46,66 +54,36 +0,26 +54,40 +52,12 +22,30 +26,3 +44,60 +30,23 +65,62 +35,0 +15,6 +64,0 +33,60 +40,36 +5,46 +5,8 +2,70 +14,42 +11,38 +28,49 +42,37 +42,44 +12,59 +47,28 +32,40 +18,39 +49,0 +52,36 +22,19 +0,28 +18,63 +18,66 +18,55 +20,28 +50,60 +64,63 +22,4 +36,44 +60,11 +14,20 +18,35 +6,40 +13,48 +65,60 +60,35 +48,1 +66,48 +60,16 +41,62 +29,10 +50,12 +38,12 +2,12 +70,62 +33,24 +46,14 +18,32 +64,58 +14,19 +26,25 +48,65 +20,21 +70,65 +46,54 +48,14 +26,36 +12,63 +53,28 +28,23 +34,16 +61,24 +65,54 +19,24 +42,14 +54,38 +32,68 +30,46 +24,20 +44,52 +44,34 +62,32 +28,29 +38,19 +19,66 +0,46 +45,26 +33,50 +32,14 +61,42 +6,34 +52,6 +11,50 +0,36 +26,18 +34,15 +64,19 +48,48 +25,44 +26,58 +67,52 +40,39 +42,31 +58,4 +16,22 +39,32 +70,67 +34,34 +34,29 +6,6 +16,32 +6,66 +7,20 +47,62 +33,54 +12,21 +16,47 +57,2 +62,18 +17,52 +8,6 +50,63 +12,44 +44,38 +55,60 +34,70 +64,18 +28,60 +52,40 +63,28 +3,48 +62,8 +54,13 +10,33 +33,18 +58,61 +46,16 +59,28 +9,6 +36,6 +48,30 +19,32 +4,46 +42,30 +16,21 +14,67 +1,24 +30,18 +8,44 +40,27 +34,6 +44,26 +42,68 +30,58 +19,54 +12,51 +30,54 +51,60 +0,7 +60,23 +11,60 +0,65 +24,61 +49,70 +68,54 +60,24 +16,6 +40,51 +4,30 +39,16 +0,9 +62,4 +22,62 +62,7 +60,7 +16,68 +4,36 +30,25 +6,13 +15,40 +64,28 +40,24 +6,68 +8,56 +25,50 +0,55 +14,38 +38,18 +35,38 +34,37 +46,23 +14,44 +70,53 +60,25 +70,6 +4,68 +26,13 +22,68 +58,3 +58,42 +20,16 +20,65 +30,37 +24,42 +16,39 +44,48 +38,44 +34,49 +46,32 +66,58 +4,20 +69,34 +45,52 +24,10 +52,15 +2,38 +28,10 +30,67 +70,4 +51,30 +44,58 +16,25 +40,45 +48,66 +58,40 +38,10 +11,44 +26,62 +7,46 +20,46 +28,7 +10,56 +14,28 +7,10 +24,36 +45,32 +23,28 +20,25 +54,12 +2,15 +12,48 +32,56 +36,40 +62,14 +42,27 +22,57 +33,0 +52,39 +28,17 +18,58 +40,30 +61,20 +40,53 +8,21 +68,4 +54,14 +24,26 +40,19 +14,4 +41,66 +0,29 +42,11 +10,39 +4,54 +21,56 +66,50 +52,60 +48,46 +6,48 +50,62 +30,62 +46,27 +21,16 +20,40 +24,64 +16,56 +0,42 +13,34 +8,48 +27,42 +31,14 +0,45 +32,15 +26,4 +14,65 +58,35 +4,51 +15,34 +30,41 +21,50 +13,46 +38,24 +68,0 +70,17 +46,20 +20,12 +8,66 +18,14 +51,10 +24,62 +69,48 +23,12 +36,27 +2,11 +0,38 +61,40 +61,46 +50,15 +37,52 +28,58 +60,18 +40,32 +52,63 +36,8 +6,8 +36,49 +55,40 +20,60 +43,46 +28,16 +10,62 +19,50 +56,57 +9,66 +10,26 +62,47 +34,69 +54,42 +34,46 +13,62 +34,12 +26,15 +63,10 +39,70 +38,4 +4,6 +16,20 +10,63 +40,60 +13,28 +2,36 +18,46 +52,11 +42,48 +60,39 +56,66 +40,28 +10,42 +48,36 +10,10 +20,61 +10,30 +52,31 +51,44 +10,61 +2,32 +62,10 +51,58 +22,40 +38,15 +20,32 +0,56 +19,40 +35,20 +39,10 +52,28 +36,52 +7,64 +8,35 +34,41 +46,65 +8,50 +23,68 +50,10 +10,4 +40,52 +36,16 +30,65 +12,20 +0,12 +8,10 +22,10 +36,11 +29,58 +42,62 +11,42 +20,14 +46,24 +62,60 +22,50 +27,24 +6,19 +50,8 +33,52 +62,34 +51,68 +42,28 +29,20 +36,57 +64,60 +46,44 +46,11 +8,70 +46,58 +25,52 +36,39 +38,46 +10,18 +37,6 +20,70 +30,43 +60,10 +38,58 +29,36 +43,38 +20,64 +29,48 +65,42 +58,13 +10,44 +63,20 +64,43 +48,26 +8,9 +56,42 +49,36 +50,68 +43,52 +30,13 +13,58 +20,63 +70,38 +24,6 +26,40 +69,4 +52,34 +43,30 +54,0 +2,52 +46,60 +34,58 +58,38 +5,28 +22,44 +64,44 +22,39 +53,12 +14,39 +27,62 +48,20 +16,70 +12,55 +60,20 +16,67 +19,10 +46,53 +46,2 +40,63 +43,40 +8,69 +16,46 +34,52 +46,69 +32,57 +40,12 +50,65 +20,41 +26,55 +0,20 +57,36 +58,14 +45,40 +58,46 +4,43 +62,22 +31,64 +58,64 +11,70 +51,38 +6,43 +16,4 +16,34 +24,22 +63,40 +68,11 +40,64 +12,40 +42,18 +19,58 +12,69 +70,69 +48,64 +40,38 +14,36 +32,22 +30,64 +33,32 +18,17 +66,0 +14,5 +62,9 +0,62 +30,16 +15,56 +16,66 +7,68 +12,62 +26,56 +60,34 +14,66 +2,48 +54,30 +22,49 +33,6 +40,22 +56,29 +12,41 +42,58 +42,6 +8,57 +59,70 +69,62 +20,47 +70,28 +22,46 +34,47 +10,60 +26,44 +26,38 +42,36 +54,37 +54,54 +4,25 +4,4 +21,36 +56,5 +5,32 +13,0 +10,34 +14,15 +56,20 +48,6 +0,3 +70,48 +60,52 +3,22 +16,57 +34,4 +6,58 +35,42 +4,19 +38,65 +7,54 +22,25 +8,53 +15,36 +42,55 +50,46 +59,10 +62,68 +40,69 +66,61 +32,58 +4,55 +44,66 +25,36 +12,50 +28,28 +62,16 +28,44 +41,2 +10,36 +5,26 +36,24 +56,62 +42,2 +31,48 +14,52 +44,32 +55,42 +47,18 +40,20 +70,51 +1,14 +50,43 +60,2 +30,12 +35,16 +29,0 +43,24 +18,26 +32,34 +42,56 +32,32 +54,70 +26,57 +66,62 +36,59 +13,2 +11,26 +44,68 +66,28 +61,68 +18,12 +34,9 +44,53 +25,42 +46,34 +18,68 +6,21 +62,13 +44,16 +6,52 +63,60 +34,21 +12,68 +38,30 +46,30 +17,62 +13,10 +69,70 +30,40 +42,52 +5,64 +64,4 +24,32 +70,20 +53,14 +58,15 +43,34 +21,38 +20,38 +40,46 +24,40 +52,26 +16,63 +20,42 +55,52 +57,44 +38,56 +70,10 +26,54 +52,4 +36,30 +52,3 +6,10 +70,19 +54,27 +48,59 +27,64 +24,50 +25,16 +34,36 +22,32 +44,3 +36,21 +19,26 +1,12 +26,0 +16,16 +6,49 +10,12 +56,12 +66,8 +41,34 +30,42 +56,4 +70,39 +50,26 +49,20 +45,68 +70,46 +24,28 +30,26 +20,5 +20,50 +54,4 +40,56 +14,8 +59,66 +4,56 +47,40 +0,32 +55,70 +70,43 +65,24 +46,1 +3,32 +24,21 +0,69 +23,42 +62,62 +50,38 +49,56 +16,64 +28,8 +18,49 +66,40 +70,41 +65,16 +53,18 +0,48 +26,16 +0,34 +30,36 +27,0 +64,33 +27,8 +30,60 +12,31 +29,12 +16,50 +16,11 +68,46 +25,66 +42,70 +10,50 +56,48 +61,30 +68,12 +40,50 +10,31 +35,56 +6,60 +4,2 +16,5 +40,25 +14,0 +14,2 +60,66 +22,63 +22,38 +34,18 +30,28 +58,70 +59,6 +40,68 +15,30 +4,34 +65,46 +21,8 +25,22 +45,0 +8,8 +22,9 +4,40 +2,69 +70,49 +36,28 +56,14 +70,68 +54,34 +6,64 +65,22 +33,36 +50,50 +43,28 +19,52 +46,22 +14,50 +27,52 +0,37 +62,66 +50,6 +57,62 +44,67 +70,42 +27,66 +10,29 +64,8 +2,19 +68,7 +4,62 +49,38 +67,6 +9,48 +10,55 +4,50 +59,12 +7,62 +12,25 +64,14 +68,8 +48,56 +60,68 +1,6 +27,14 +50,66 +30,30 +26,34 +64,53 +56,8 +66,26 +31,18 +62,21 +68,24 +30,56 +46,64 +38,40 +65,52 +25,32 +9,14 +0,17 +57,68 +57,18 +36,45 +30,1 +20,19 +52,24 +39,0 +8,62 +56,16 +34,13 +33,46 +47,50 +36,42 +28,3 +9,2 +22,56 +32,12 +14,46 +33,62 +53,42 +59,30 +68,70 +26,31 +67,70 +37,32 +18,36 +10,67 +41,42 +6,39 +20,17 +30,44 +0,27 +62,20 +14,64 +38,66 +48,51 +38,54 +66,60 +34,14 +63,12 +29,34 +52,64 +58,68 +36,62 +7,4 +6,32 +61,28 +4,37 +23,14 +8,22 +64,15 +27,46 +54,23 +14,58 +16,8 +56,50 +64,23 +56,56 +63,44 +42,46 +36,46 +60,14 +33,8 +45,14 +8,4 +16,18 +52,42 +60,58 +60,42 +62,15 +24,12 +68,56 +66,5 +11,34 +16,28 +0,4 +42,69 +36,38 +31,52 +62,64 +18,23 +28,34 +17,68 +31,2 +44,44 +36,69 +4,12 +36,4 +18,13 +8,16 +38,55 +12,70 +61,48 +60,64 +60,40 +64,10 +68,15 +24,38 +18,62 +8,13 +38,5 +46,28 +41,14 +12,49 +49,8 +51,28 +12,29 +66,46 +62,28 +25,48 +51,34 +52,44 +13,44 +38,14 +64,47 +48,40 +35,2 +26,26 +15,60 +4,7 +18,1 +52,51 +6,38 +68,52 +18,52 +46,46 +24,37 +68,38 +56,3 +15,22 +58,30 +64,27 +38,2 +51,12 +38,13 +8,40 +28,64 +38,0 +68,28 +37,36 +14,54 +54,43 +18,4 +46,17 +26,29 +4,70 +10,52 +22,66 +59,64 +45,62 +14,51 +62,5 +67,32 +14,13 +30,6 +24,66 +40,48 +50,53 +52,70 +56,60 +55,28 +39,30 +46,0 +42,38 +54,51 +9,44 +25,60 +38,48 +8,54 \ No newline at end of file diff --git a/2024/input/19 b/2024/input/19 new file mode 100644 index 0000000..b75fa50 --- /dev/null +++ b/2024/input/19 @@ -0,0 +1,402 @@ +gur, uub, wgwu, rggu, urguur, uugbrw, rwu, ruw, wubgrb, wugu, rrg, uguurg, gwrwb, www, gggwb, bbw, gbrwgwg, rub, grwwur, rwrb, ubb, gbgbg, gwugw, bgw, guwr, guw, rrgbrw, uru, wurwg, wuw, rgbu, rguw, grwur, gwwg, grg, gwbw, wuu, brubbrw, wwuwr, rg, b, buwwug, wruwgrg, wwwwwrrg, wwww, rwbubr, uggr, gbrb, bbwbu, bwrrguw, bwu, wu, wru, gbbw, wwbbw, wwwuu, uwg, gub, ru, ugurwu, burgwbu, uwrg, wgubwrru, bwwgww, uwgugww, rrggu, uugwb, wrru, rrwr, bu, ugb, ugbg, bbgbr, ubr, rwruwur, uwuuguw, rgb, bbur, rbrwr, gwb, ggggbbg, ruugbr, ubbbgr, wrrrgg, bbwww, rgg, urggrrgb, gbwr, brgb, rgbwr, wbuw, rur, rwr, ggrgw, buruu, gug, wuwg, gg, uwrbuug, ubbwbrg, w, wuguuw, wrww, bbb, rw, rgr, brggrgw, gwrrub, rwgbu, gwrrgu, rgug, buu, bbbguggg, wwwugub, grrbuw, rrugu, wgw, rgugrbwu, uuwbwwr, gwuuwuu, wrrwwr, buw, rbr, uurw, wbug, rggwr, bbubgu, rgrwwu, rbggr, gbrbuu, ggwuguw, ruu, gwr, bru, wbg, wuwgbrr, wrrg, ub, ugu, urg, wwbw, gbw, ugg, wrubr, gubu, bwwg, rubbwu, ggurr, rwww, uurg, wwb, rbrgu, rburu, rrw, bwggwr, rwgggr, rwubg, wuug, gr, grwwbw, wub, uurr, wrrr, wugg, ug, brrr, wwbur, bwbgg, bruw, uguw, bbuurgw, rwugu, wuwrgr, uuw, grr, rrrg, gru, rbwb, ggbbw, urubrbb, rrgggr, bbg, wurwrw, bwubb, urr, rbg, brbrbb, rgu, bwgrbgb, rrbbg, wbgw, wuggub, bg, uwbr, rbb, wruw, bbwwwb, brbg, ggrgubwg, ubg, rrurb, bwbub, wrugrw, gbrr, ururg, rrwu, uburwggw, gwrg, bubu, bbugg, brbwwubb, wrgb, rgur, ururb, u, bgu, guu, rbu, urrbwb, rrbu, grurwwgg, wgr, wbbg, bgr, gruw, bbr, rbbbwr, uu, ggg, rru, wwuwu, wbww, rbwu, wruuu, urug, rrbgbuw, wrrbg, gww, wg, wgrg, wur, wwrwg, bb, uugg, uwur, wwugr, bbgwbww, uugw, wubwr, gbg, brwb, rgw, wrrrw, rbgu, ugr, gbbbbw, wgu, wbr, ubbu, wwrw, bugur, rrrur, wuubr, rgwb, bwbbbuu, wurwbrbg, ugw, uug, wrub, ggubb, uwuww, bubbb, gbr, brw, bwgu, gw, grwg, wwr, bwrrw, wwg, gwub, wgbwgrg, ggr, rwburubu, bgg, gbb, ggw, brwrrbw, gbuwb, wug, gwg, wbgwg, br, ruwuw, gwgrrw, bwgg, wbbb, gurwg, wwwbguur, ggrgbb, rgwuuu, rgugb, uugubu, bgrrg, gwbr, ugbw, uburwb, rwbwgbb, gwu, gbbu, bwb, rb, brgr, rbbur, gwurrb, wwu, bbu, gurg, bug, wrw, bbuwu, bbwu, gwuwbw, ggrrr, wruugg, grwrr, bggwgr, gbrbr, uur, gbgr, brbwwubu, bwggrbb, rwbr, rr, ubbwr, rwrrwgwr, uwgrwgr, grwugbrg, ggu, bwwub, rggbb, rwb, ggubru, wwrwuww, wrb, urb, grwbuw, bw, bbgbb, rgbrrr, wbu, rbw, wrubg, bugr, rbbrr, wgww, rug, burwuwb, wbubrw, brwrbwb, rbwr, bgb, gwbuwwbu, rwggr, wrr, urw, uurb, wrgrrrr, wubg, gwrb, wb, burgg, rgbugrw, rgrgru, urrw, bugbg, wbwb, gurwruuw, rubrrb, wbw, brbrgb, r, wrwbru, grw, urgw, wrg, wugug, rruwbbg, rwggurw, bbwr, uggggw, wgb, ugbbr, rwrgr, uwr, buwuwwrb, ubggrg, bur, uwrgg, uubrw, brrgwwg, ugbgb, burburb, ggwwbbgr, uwb, wbb, rwuw, brg, ugru, ur, rwggrr, wggw, gwwuu, ggb, bgwrbwu, grww, ruwu, uuu, wwgrug, urub, rubwbwbr, rrrbrbb, uww, ggwr, uruuru, bww, rwg, uw, rww, ubw, gu, wugrw, gbru, uwu, ruwbrb, ww, gggugw, uuwbbr, bwr, brb, rrr, grb, bubb, bub, gbug, bgrgubw, ubu + +uubgggbgugrbrrggrggrrrgurbuwwwurwrwgbbgurgwwbwguu +bgrwugbrgbrgrguuububrurwggrbrbgwgurwwugwuu +wwbguuburbwgurguurbwubggwbwrrbwgwbgwruwrwwgwbgbbbbubwgrurg +wbgugguwuggbwrwgbwubwuwubgugwubwbbruguuubgbwbbwug +gbubrwgrrrbubwggrwrgrbgguwgggwgbubwgggrwugbrggguubbgrr +uurbwrugbbugbbwurgguwrugwgbbuguurwbbwgbbubbubwgrbwwgww +gburugwrurgwwwubrubwbwbrbbgbgubruwbwgbwgbugugrrru +ugwggbwrrgwgrwgbrgbwuuwgggwrgrwrgwwugbgrwuwgggwuurrr +gbbgburuwbwwwwgwrwbgbwgwbwruuggbuuuubrbrrwgb +brwgbbwbwubgwgwbrgrwwwgwguwuuuuwggbgggrwguggbgurrrruruwrbb +gurwwurgbruubgrrugwubgrwguurwbbrugbgubwrubbbwuwguwgrwuw +rwbwgwwuwurbbggrwgguruwwgrrrggbrrwrwwruguwwwrgwubbg +bugrrbruugbwuwgrbgrgwubwwugggrbwwburrrurgugrrwgbu +bbgrrwbgwgrbbbbggugwrgrrgrugwrwrrrgwgrrggrruuwwb +bgbubrwuwwubbwguuwggwubbbubgurrwwguwugrgrruubuwgbrugwwb +urrwgubwuugwrwwurguubwwbrwwgrgbuubbguggbgg +uuruurgrugrbubuguwruwbwuwwrrgruwubrwubuurwruubr +rwwbuuggbgbrwggwbuuuurubrrbbruuwbwruurwbbwgrubrugubg +bwubuwuwwrbgwwrgrbwrgwwggwuuggwguuwgububgrrbbrur +rwrugwuwbrwrubwgbbuwurwgrggwruruugrwurrgwbugr +bggggbubuuurrbrgwuguurbbgugrgurgugrrgruuuubuwgbgubuwrg +wwugguuugwgubbrwrwwbuuruguububuwwgbgubbrugrruwgugrbbrb +bubruuwwgubwwbwwuuuugrbgrbbbguwwuuruwuwurbwggbuwgbwu +wwgrurugrgurubburrwgbrwwwbwrbwubuubbrrbuwuwgwbgbubugruu +gbrwwrggwuwurrgwrrggrrugwwrrguwwrwwubwuwuurrbruru +ggrwrrbggurgwrgrwwbuwwuburgrbggbggruggguuwwurbgrbbg +gbuurgbrugggrrrugwbubrbbbwurgrrwgubuwubgwbgbbgurwgggwwrrwbbg +wrgbguubbbguwuugrgwbbrwubbggbrwwwrwwubrbgwwrggrr +rrbwwrururgbrwuwgrbgbbbgbbwbrbwuwuurwbgbuur +rrwgguwwrbbgrrubbuurwgugurrugrwrwruwgbgurggggrgubgwr +gbuuwbbwggguruuubgubrbuuuubgbwubwrrrgrgubbruurrgwuruguwug +rrbuurbbwugugwggbrrwgrwbbwubrrbwgggbrgugur +rruubgwwbrwbgbgbugurgurugwurrrbrruwbrrbgrbrrugwbwbbrbrr +gwrwbrurugrubwgbrurbbgwggbggwbrgbwwbrwgugbbu +wbgurbgbwgrbgwgrbbguwrrwbuuwrrgrgwrbwbrbbrrgbrbuubb +ggbrbwuwuubbuubuwwrrgburrbrrugwugburwgrrrwrrrubwwubgwrrubb +wwubwwuwwwrbwgrbgwwbuwgbbgugwuuuugrwgbwwrbr +bwbrwgugwugubgbrbururbwggbrrgbgbuuuwuwwuurguu +wuurwuugurugrwubwrgrbrugwburbubgubbrrruwgwurrwbbggrg +rururrwrwugwugrbwbguwrrbrbwwrrrwwugguggwubrurubbgrrwgwurbg +ugwubrwbbwubbrubbbrgugguubwbbuwrrbgbwruggbbrrbwggwrwb +buuwwubgwwguwrururrrbbwbuggwbwgurrggwruruwbrubru +rbbrubuubugwbwurrwwugbbbbrwrrwbbuuburrwrwwwgurrbb +bbwrubbrbgggburuwwgwgwbuwwbuwwrruwuruwwrugwububg +wwwuurburuwruuurrwrgwbbwgbbrrbguwwrbggwbrrgrubwbwuwgubu +rgguubbbrugwubbwuwugbbgwbrbbgwbgubububguugurubbrgbwuwb +uguuubbwwguwuguguwbrwbbrbbwwuggwbwwuurwrbuwgb +wgwrbwbrwuuwbuwbbuwbwwguggruwguggrgubuuwuurrww +ubbuwggurwgwgurwgwrgbbgrrrggrbwgwgurgwgwurrrbrrbub +ugrbuurbrbbwrrggrbbbrgbburbuurbgbwururbrgbbu +brbrrgwrbwuwwbgwurbrrwbgbbbuguwbwrrbwwbwguwrrugbb +uwbwbgurgbwugrgugrrgwubrugbrruwggruwggubgwuggubwbuw +gbguwurbwbbgbrggrwuuubwrubrbgrbubwuwuwrwru +gbuwubbbrrgguruggbubwbwuwugbbwwbrbwgwugbbrbwgubwrruwbbw +uguburwbguurugwrwugurwrrgguguburwuwrbgbbwbbwuwbubu +ubbggrwbrwrugugwubbgurbwugbrbrgbrgbgguggwrubuu +urwubbbgrgwggrrggguuwruguguwrrbrgwwwuwrgrrbb +bgggbrwuburguubbubgwuugubrbwbwgrubguwubuuuubgw +gbwbwubuwrwwbubbuwggrbrgbuubrrbgbbrbrbwurwuwgguurw +gurugugwwwbuubwgrgrugrwwgggurwwuwwubgwwgwbbrbrbuuurwburw +gbubwwwbrubbubrwurgggurubrgbwruuwrrubwug +gbgburbbwuwwguurgwugwbgubuugbbrbbbrubrgrbuurgwrwwrwgugwuw +bwrbuwguuubwbgggrbwgugwrgrbbbrrbwwbuburwgbwbubbrbg +uwgbwwggubwgwuuububgbwuugrubuwgububuwrbwgbbgbrbg +ruwwbbbburwuurgubuugwrbgurgrrgugwbrrguwwgur +rbgubgrbbuwgubwgbugggbgbuwggugggrrugbruurgrwrbruw +uubgwuggrwburbbubwwwwgbwrgwubwrrrwbrbguwggrwwgrugruwgr +gugbgubuuuwwrwwbuubgubgggrbguguugbrbwrrgguwubwbwrwuuu +gbuburbrbuurwrbrggwwbuwburwrgugugbwubggwuwwwgw +urrrgbgbbgwuwwubruwbguuwggbwuwgugurgwbwurwubrrwbgggwwuggb +brbwwuburwgwwrrrgrubrrgbgrrgubwbuwuggwrugbgwbwu +bwwbugbwwubwwwrwbwrbuuurgbwurrgugwuuurubrbubbrwbuuwurww +wuubuubbbubuggruubgrwguuurbgurwbgubgwgugrrrwwgrgbbguuuugwb +bggwwwwuuwrbrugruruurrwrwbwrrbrwbgbwbwgbgur +gburbggwwbbgrbugbrwugrrrgwrrgwwrrrrurwwwuwrbbuw +grgbbbuwugrruugbbbgrrgwwrgbgrwrrwrgurgrwwubwuuuwbbwwb +gbuurwrgbrrwbwbbrwwuwwwbbgbggrwbrgwgrgwrgugrrrgbgugr +gbuwwuruwbwgrgwwgbgubwbuwwgrrrggrrgugwrrwwwbbbrwrb +rrgbwuwrbwrgwwbrwbrbugrbgwrbwuwrubgubgwubgguwuurggwubbrrbr +gurbgbbgbugwgrwbggugruwwbwbruururrwbwbrgubwwrgrbrbrugb +bubrgbwgbgubbwbrgbugbbwbrwgggrrgubbwgbggwur +buubwuwwbuguburggrrgbwbrwurwubruwgbubwwgub +urrurbgrrgbgbrbbbrwwrurrurbwrwburuurbugrugrubuwburwugubbg +gburwwrbuugguubwgbwwugwuuugbrbbgwwuruburgugwbgbbg +gbubburrwwgrbugugrwrwurwwrugguugurwgbrwgrbubrwbburrwugbu +wgururbugbwugggggwuwuguurbgrgrbgbubbubrbgbugw +brgrbwugwgbubbrwruwbrugruwbugbbuwrrubwuuwbbrrubwgggubbuu +gbuurrbburwgrbuwwrrbbrugbgbwwwbugurguugwrbgbrbwrwuwuburwggw +rbbwbgugwgwrgrgbbwrrgwguwgruwrubbgbgwwgguuwugrrurrwggb +buuuuruguguuwubbggbbrbwugbrbrwuuugwgrgggwbbbgwbrugrr +gruwwbgwwgrrbbrrrwbgurrrrugbbbbgubrrubwurwgrrurgbr +bbwwwwbgwwgubrbgbrwgruruubgrgugrruuwggrrgwgruggggurwrrrgg +rggruuggrwwrwwrgggbggbbwgugrrwbwuwuurgggurbbrbwwrgugwbrbg +gbubwbrbrurwrrwwrrbubgubgbbbrwbuugrwuwrbr +gburwggwrrrbrgwrbbrbwbrwrrwgwrgrgwburbugguguubrg +wugbwwuwugbgrbbwubbuwwgbrubgguwwruuwgbbgbwgbu +gbuuwgugugwggubrguruwwrwwuwwwuuwbggrgubwguguwrgwrwgbrwubwu +grguwwbgwwbbgwbwrrrbuurrbwggrrwbggguwuuwbwbuuguuwugbrrwgg +wguguwbgwwruubwggwugwrbwgbwwgugbwrwurrguuw +wgububuuurbbbuwubwbuwuggwgurubwwurbbgguugubrbuuwwrrwrgwrug +wwbrrrbwugwwwrbrrgrgruggrubrubrgrugwbgurwurb +urwrgwrwrrbgurwrbwbwwuwururwubrbrruugguwrbwwugbggurwwuwbbg +rwbrgwwrugbwuguuuwwrgwrbwwuwwugbwbbgwbwruuwrbwwubgrrwwgw +bbbgburwwurwwrrgruuugggwbwrugwguwrgbrwubbrbguwrbwr +uwwrgrbrbrgugrwbrgrwgwwbwgrubbuwurbuwgwwubwgbbrrr +gbubggubwbbgggbgurwwgbggrgwuwwubrwrugbuuruuwuwbrwgbbbbgbrgb +wgwbubwrwuwugbbrugbuubbwwbgguwuuwgrbbbuwbubrgwgub +uwwrrbgwubrrbbgggwgugwurbwwguubbwuwbwwgbrbugguw +buguugwwgwrbbbrwgurgrwgwwggwrurbguuuwwuwgb +uwwrrbgrbwuguurgrwrrgbwuwwburbuwbruuuruburrw +grwbuurgbgrrgrwubwrgurwburrbwwbwgwwgwwbgbrburrrbgrgbg +rwgbugrrbbgburgrbwwugrwggwbrbgrrrwwbrbuwgrbrbggbbwuurr +gwbwugbgrwbbbrbggrbrwbrrbrubggurwgrurbgggugrrbubwugwg +brrrwgrurugbbrubwbbbuugwgrgwrwwurubbrwbwgr +uruuwwurgrgwwbbuwwbwwgbrugwgwwwuguubuuuwgbruru +wrwruggggbwggwbuguwgrgbbrggurwbgbbguwubgururuwru +guggbwwuuwubwwrbrurwrguuuugwurrrbwbuurrgrbu +buwgurwruuwbuuurububwrrwuuuubwwuwuugrwwgggwuuuubbuur +wrubrguugwgggbuwgbgrbuwwbrwruubgrguwgrrwgwrrrruwbuwrr +urrwwrubbbgbwbwbbuuwuugrgrruwuuubgbwbgbrwrgwguwbbbgrugw +wgurbrwurgbbbuwggbwuwurwrwbuurgbruwguuwwbbruurwrbr +gburgwrgbubbbbgruubgguwgggrgrrbgbwbgwwgrwrguwrgwwbr +wrwbwrbwbwwwbbubuwgguruggbuggbgwububrurbwbgb +bbbggbwbwrwuwrrruwrugrggbbwrwrrbrbrbbggurgburgbuuugr +rbrugwwbrwbrubuwuuwwrbrwuwrgbubrwwwugbuububwgwggguwrbwwrgr +rwrbwwbbguwrrgurubburruwgwurwgrbbbwrrubbuwuubrbwgwrubrg +uuwwbrbugrgrurbwwubuuwwwwguugurwwwgguwuurrgwgbubgwr +wwurguwwbrbrguwbruburbgrubuuguugruurrwbgrbubbgrwurbbrgwwuu +gbuuwgbruugbwwbwwgrbwrguwrbwrgggbuwguwbguuubw +rbgugrbbrwbggugrggwbgwbgugruwbrwgwgbgwurbrurrbrgbrwwubrgr +uuurubwgwurugbuurrwbrgwbbwruwbrgwgrgrwwwrrbbwr +bbuurggbrwwbgbuugwwuuuwwbbrubrbbwurgwuubgwwwugggwuwbuu +wrrrgbrrgwuuurwbrwwrubububwrgbbbbruuurgwurubrgrgbrgrrru +bugrbbrugbbubugrrrgugubggbgrgwuwwwrwrwwrgwrrbrggbwgbbuubww +uubugwugubgbwgwrbwgubwgggwggrrgwbwwrwbwgrugrrb +gwugwwuwwgguwgbrwrbwgrwrgburbbruwwbubwwwrug +rugbwbrugwwgbwbgrwrwruuuguguwbwrgwguguubrrrrrrw +grbbbgbwuwubwwwwwwrrgbgbwwgrwgbbgruwurgrwubrwruuwrbruwwg +ugbwrwbwrrburuwurubuubbrubrurbgrubbgbgggbuubgrwrbggugwuwgg +gbuwrwuurwubwubrggrgurgubuwrbwwbgggwubwggrrgrurwwbwggr +rrgbgguurguggrgrwrgbuurgbbbbrgggwgugbggugrb +gbbggbbgwwbbrgbbwbwugbwrbgbrbwwrrgwgwwurrg +bwubgbrrrguugbwbruubrrbuwwurgugrrurwwwwrgg +uurrrbgurrugwrburwwgwuubwgbrwwguwurguuruwwbgrwguwrguwg +gburbrwgrgrrugurrrrgbuuwuguwbgggbgwuurgbgrbg +bggwwgbgwgurrgwwugbugrrgrbugrrbbuwwugwgbrr +wbuwrgwgwbugwgburwubrbgwgrbbgwgurubgggwubrrgrwwrwwg +brwrgbbwubggwugwubgbbbugubggrgwwggururbruw +gwbwrbwbgbrrrgrgrurwubbrrrgbbbwbubrgbwwuwuwgg +gbuurwbgbwbbgrurruwuwrrbgugugggbgrwubbwuuururwbgwwugb +uggbrbwwwggguurugwuwrbwgrwgbgbrwbrwbrrgbubgurwrwgrrgrugwg +gwbrbbbbgbrgguwrwwrrbrurrrugwgugbrwrgwurwrwbbwwrrb +rwbrwgggrurgwgbgbwwgrrwuwgbwgwgugrurwwggbwgwwrugbbwbwurubg +ugwwwrrrrbwrgwbgwbwuuubrggwwuggwgbgbuggbrggbrugwgbbgrrbwrb +grrgrgrgwuguwbbrwbbuugrruruburbwwbrrbwguwwb +bugwrwugbrugrubbrruuubuwwrwwuwrwgurwuugbgbgbugrwgbub +wwrguwwggrwgbwgrgbrrbubbgrgbbrruuwugwwwgbgbbgbgrwuubw +ubrwbbwrruggwrurwwburugbbrrgrubwbgguruuwgrgbwrbrwruuuwb +wgwbrurwurbuubbwwuwugbwbrruwgbrgbgwwggurgub +rggrbuwurwgurugurrurgrrrgwwbuwbbugbgbbbwguu +rrbbwwwurbrbwrggbbgggggrbgbwbrguwgrwbbgubrwwwurrrgrww +wwuwwwubwbrggwuwwwwwuburgubwubuwgrubugbugbugrwwwugbrguwu +urrruuwgbgwugubbgurwwuubbugbwggbrbwbgbgwurrwrwuuwruwr +wrurgrggbwurwrwwrwwrbrwggbugrwbrurgwgbwwruwuuwrbw +ggrbubuuwuwuwgwbbgbbbubwuuuurguuwwrrgbwrgbgburbbbub +bgbbbwgbubuwbwguwbgwuwrwwbugwbwwugbrbrwrbbwrrububwgbu +grrurgbrbbbrwggwbuwggwbugrrbbwgwgurgbgguwrrbuwwurrurrbwur +rbugurwwururbwrwrbgwgrurwrwwbwuuwubrwbbbbg +guuwggbwbbubrwgrgrurwwrgggggrwubbwgbuwggwrr +wurbbuurwgubrbrggwubrbrrwwbruubburruburwuugrbrbrrgbwbrubug +urwbbrgwubgrbwurgbwwruubwuwbgbuggubbbwgrubwugwrurgugbb +wrrwuggbrrgbuwbuwugrruuwgwrurbbwbuwrgwuwrbgguguwugu +bruwgwurwgrrrurguwugwubbrgrurggrbwwuwrubwwgwubbbbggwbburb +wwwuburwwggbwrwbbwggubrbwwurrbbrbugbrbwgbwrrrgwwurbbbwrr +brurbwgwggbgwruubgbugrgurrrgbrwggguwwguggbrwuubgrruugwrg +gbuwwuwwggbuurgurwrrubbggrwuurbggbbgwrgruurbwgwg +uwugwrubwgrguwurrwwwururguugwggguwbubwurwbuwrrbrrubg +gbuurwurwbrbgbwrguwbrubrubrggubbrgrwbbggbwrwg +rbuububbururugubbuubwwbwgrbrggugubbgrbggguggrwurgbguwbu +wbggbwggbwbwuwwuubwwwgurwuwwgwrwbrggwrwbrruguwuwr +rgbgubrbwgbwgwurwuwuwrwwrguubgwwwwrwbwrbubbubuubwrggbbg +brbwruggugrwwrgrwruuwwrwbgrwrbwwggrgggbbbw +wwurbrubgwrubrgbuurgrburwrwgwbuuugurgrwggwwwwrggu +uuwrgwugurgrwbgwbuwwwguwrgguururrrrwwbgugggbrubwrgbbrugr +rbruugwwbgrbbwwwbrgggbbrrwbbwrwuubuwwbwrwwgubgubr +uwbwuwrubbggwwbbgruwburwwbwbwrwwruwbrgrggrubbrwbgguugwb +bgbwugbuwwwgrwurggwwuguwuuuuwuurubbrbrwwbr +wgwrbgbbrwwwwwbrgwbubbubgrururruwbwubwugruwggubbrbgguuwwwb +gurubrbwbubrbuuuuwgggggrgbgruwuwuwrwrwgrbrbrbwwubbrgwbubrr +grwwrrgwrgbwgbbbguburbgwggggbgugwrbgrurgbuwurgw +wwuuguwgwgwggbbbrgruwgbbuuwgwbbuurbrwwwgwrbgbgbwbgu +wwbgbuubwbuwwgwgrbgwwgwbwbgwrwrrwuugwrwgubrrgwuuwrgbbwg +gbuwwwuwrrgurwwwbgruwbugwrbrugrgwbuwwbubuuruwguruwwbuwurrubg +uguwgbwwbggggubbrgugrbubrugrwurgrgwwggwbgwb +bwrrguguuurggwuwrwwrggbgrubbwwrrwgwwugbguwrwbgwwuggg +urgugrbwuuwwrggrwubugrwwuubwwgrwubbwurubggwuwrbbubgg +wbbbwbwurrgubugubgggguuubwgrwrbbbrwrbbubugrbbwwbg +gbubrbguggurrrugbwwbwrubwgbrwwbrburbuubbbgugggrbrr +burburrrgwubrbwbwurwgbuububrgguwgrgbggggugwbburgbgwrbrgw +rwggwrbwwurubrwugbbbbwrruurburuguwbrgurguu +bugbgugwrrubrwrrwurugwwrwrgwbgbuburbwburwrgwbbrubbwrbb +rrbbgburbwwwuugwuwwwubgbubuwuwgruuwrbgwwbbu +rrwwgruubguuggbuurbgrrwwbwuuwguwrwrgrbugbbbrwgbb +uwgbuurgbrrrgburbwuuwgbwwwgbugbgbbbgwrgbru +ubwwburwbuguwbugwuwugurbggugrwrbubrrrwbgwgrwbrwubgwrbbrggb +wgwurubbrbwuuggbgruwugggrrubgbuggruwuugwwwggrbgwbrb +wbrubrubwurgrruruwgbbwwrugwubwuuuggguuwrgugrwbgu +guuggbrrbwbburbgrruwwbuugwbgwgwuggwrgburbgr +wbbwbbrgbwugwgggrrbgwrrbuubwwbrwbrgruwgubgbbuuruww +urubwwuwgwwurrgggwuurgrwbuwbbwbwwwwugrrwuugrguwrbgrwgwwr +wubwwuubbbbrwbwruburwggwrrwuurggrrburbwbuuwurbg +wggrrrrgrbgubwbuggrugugwwuwrbrwbgwbrwwrubrbubbg +ubgurwrbgrgrwbrgrbrggrrruwgguurwbubbbruwbugrwurgrruuwggrbu +gbubguwgwuuuubbubruruwwwwwwrrggwbrruwrgwgwbbbbrrbubgbgrgbb +rwwgububrurwurrgugrbugrbrbugbuwbgbbbgggbuwg +rgguwruwrruwuubbwrgrwburrgggwwrgrrgggrbuuguwgggbrwr +rburrbggggggwbugwwubrbubrggwgbubuwggrbrrrgggrurr +bbgugururbrgwwbgubbgwbbuwbbwwbwgrrgwrwwguugwwubwbuwrugg +bwurbwrwugguggwuwbrugbgrrwrgwbbuwguggwwubrr +gbwbbwgurgrurwuwwgrbrurrubrbrwbgubrgwurgbrwu +bggwwgbbggwgbgwbbbrgruuggwgrrwwgbgurruuubgbrbuu +uwbgrbwrwurrugurrwburubugrguuwbuwbbggggbgwuwgwg +wrbbwwrbbbwwrrubgrbbbbgugggurrgbrrwgggrgwbgrgwwwwuwg +rbwgrrwugrgrggwuugrrguwrwgwbwbubbwgbubwwugbbguwggwbru +gbuwgrubwubwuggggwuurrgubwurwbrbggwbuwuubgwgrrwugg +wbburwubuguugguwgrwbwrwrbrrrwgwwuwbbgbuwbugbuurrbbugbw +wbwwwwugbgbruwrwurrruggrbwbrwurrrrrbwwbuwrr +wbrrgwrbugwuuwguwwrubrbwgwrbgrbggubbrbrgubwbgr +gubuwgbwubuwgggurwgugurgbgrgwrrubruubgwggggbwbugr +wbrgugwwbrrgwbrwruuwrruurwwrbbuuruubwbgbrruubrwwbbbbb +ubwuburrgrgwruwbwrwuuwbgwwbwrgbuuuwurbwbbugbr +gwuruwbgbwwubbrggrgbubbbuguggwbwggwwwurbuuwwbu +rrbwbgwggrrbwuburbrbbburwurbgubwubuwguurguruuurrbbwub +uwuwgubuurrrugwwbguuwurbuuwgbbruuuwgbwurwgubwrbrbgbrgw +bgbrgbrbwrgguwwwbgbugwbrgwrrbwugrgwuwuubwrrgbbuu +guwrggwuubwuuugwugburwwrubbubbugwuruwggurbbbr +bubbbrgbrwbbubbbbguwubgburwgubwwggwgrrwbrwuwurubuguubwb +brgubbrrbgwrurgbrwubrgrgbbwbwbwwwgbgbbggwr +gburuurwubuuuwugrggwbwuwrgbuwrrbuwggrrgu +wwwrwguwwbrgrruubrwrurugrguwruwwbrbwwwgruguggrbbwuwbb +gburbrbbwuwwbwwbuwrgruwgubuwurwuggbrwbuwbbbrburbgrwrgrrgg +grubgburbbgrwwbgurgwggbrubrbbbwgrwuwwbrgwwbburbw +buwwwbwbwwwurrrwrubuwbrbuwwrrgburwgwgwrrrrwbgurrg +rggbgrgwururubbwbwwwbruguugwbuwwuguuwbugguguwwrwwgrw +gburbrggrgbbrwubwgwgrgubuubuwruwgwwwwbguurbubgug +gburrwubwurrubrgrurwwgggbbbwurrubugwuurbgbwguwwubg +bbggbgrrurbrugbuugbgwuruubbbwuuuguwgwwguuubgrbbggb +rwgwbgrrgwurubguuuwgwbgbwbugbwurubuwrbuurugurrgggg +rrwwwrgburwrgbbrguurugbgbwwgwrbrbuuwbubwrurbrbguwgu +uuuwgrrruwbwgwwuwwbuwbwgbrguuggwuwrrwwurbwuwbwgugwguwgrrg +ugrgrwgbwbuurbwuwrbuwgrwwrrgrwubwgurgwwrgubbur +gbuwuwwrbrrrrruugubbruugrgwubwwggwwrwrbbwwbwggbwrrrrggwgubbr +gbuubwrbruuguubggwrwburubuwwrgwwbgwwbbbur +rugbuwgwbbuurgwbggubwrwrgggbgwwwgwruwwbbwbrwwgbwbguuggwu +urruwugbugguwuwbbwbruuwggugwgwrwbwrubggrgubwgbbgbgr +bggwwgbgubggwuguugugrwbrrbuuwwrbbwbwuugwubburr +gbubuwbrggurgrbbgruubwrbrbuburgwggrbbbwburru +wbwguwbguwuguwwruwrggbuwuggwbrurrwgbuggururrwggbbgrgrg +wrgubbrgubgrrrbwgugwwbwwbbuuuguuwuwgrrguburrgbugwuu +gbuwwrrrruubruurubbbgbruwbuwubggbwugwbbgwwbbgrgu +gbuwwgugrwuuwwwbubugrbuggbrrrbbuwuwwguurwbuugr +uburrgrbwwrubwbuubrwurwbrbgbbgbrugwggbggru +gbuubuubwgurwruuwuwgwwwbwrwrwrrwugbgrrrrgrbww +wrrrguguwgrbrugwuugurwrbgruurugbgrrubuwbbuuwwurrggr +rgguuwwgbgwwrururguuwwggrrguwgwrgrbrgwburburbw +bbbbwuruwrwuuwbbggwbwguuwgggbwbbrbrwgrwurbbgbwgbwwu +gburwbbbuurrwuggwgguwgrrwwuwubbwrubrrgugrbwubbbb +gwwwrbwrgbuwwrrrrwbbrwuwbbbrggrrbbwwrwugwgu +bwwgwrrwugwrbbgbburbgbrbrwwrbrwbbruggguuwrr +gurgwugwwguwbgurrrgrgrubgurgwrgbrgugrubgrubrggbu +rrugugwbbwrbgbwubwuguwrrurwuubwgubwugguurrwr +ggruwrgbruwbgbrruggwgrbgugbbbbbuwrgrrgburbbubrb +grwbuuuurgrwuggbgwrrwbuwwrwrwgrbbwbugwbwbrg +rwrwuuurugubugggbwgrurrubgurbbuwwgwguwwuurrbgr +bgwbgruuggbuuugrurrgrbwrrrbguwbbwbgwbrgugwgu +buuguwwrrrwrgwwgguruwwbbubuuwrgrbbwruuggubr +gwbuguwugrwrrbgwbwugguwugbuwwwwuwrwbbgwbrggb +wggrwrwgwruwwrbrgwggrgubbbgbwbbugrbwbugrgu +gbwgrrwggrwwgbbgurbwuugwuwrrubuwrbuurguugwrw +gwugbbrgrrguwgwgubwwugwurwrrrggwwugbwwbrwgwrbgwbbugubgrgg +rbrwurwgbbburbgggwbuuwrgbgurrrgbrgbwbguwbrbwuuwuwgrurruurw +wgwrwuwuubwguuuwbrruwbggruwgrbbwguwwuwrwuwwwwbr +rwbggwurgbbbwwbgbggbbuwrwbuggburrbburwggruwguuub +gwugwwugguwwgrwubruwurruwrbrwbbggugrwuwrubbgwgbruwgr +wbgrwrgwgrwgbrrbrwuwrbbwgubuwbggbbuwbgggrrguurrwbr +ruugbgrruwbbubrugruwgguruwgbuwbwggbrwruruuw +ubggwgruuwwwgubrwwggrrgrrrwbbbbbbbrwuwbgwb +uwrwwbbrubbgbgrrguwbrguubwguwbgbrggrwuwuwwrguwwbguwwbbrbr +gburbuwuuggguwwrbrwrgurguwbrwgwuwrwwbbrg +urwuwuguuruuwrbbgrbbrwruuuurrurbgwgrbbrwgbwggrrruwwubrw +burgwruburuwwubuwbggwuwwuwrrrrgwwrubgbrrbbuggrgrw +wbgwrrugrwrwrrwuwbgbuwbggrrggwbuggwurbggggwwugbbuuguu +gbuuubrbrrwruwbggbgburwurgwwruruwurrbwurwuggrwrw +gbubbbgrguguubwugrwrwuggrbuwwuguuwruugbuwwwgbuwurbgwwgwurwrb +urwguuwubrbuuggrwruubggubwbuubbwbubbwgburgw +gbuurbrrbgbguuuwwgbgbuuubgwrwbbrbuuwrbbubwgwurgubgrrgwrugrb +brrwbubbwruugugubgrbgrgugbgugbbrbrbbgruurgggbwu +gbubgubwrwgbbrwrgbgubbgwwrgrbuggwbburgwubgburgrggwuggw +wrrrbwrrwbwuwbwrwbguurwuurggwwwwuwrwbbwruuuugbwur +grbwgrwbrurguruuururwbbbwggguwwuuwrwwugurwbwur +gurwbwwbuugwrruggggrrwgwbgbrwgwrbwrwggwgugbbwuggwubgbwubu +gbuwrwrrrgrwbrgbrgrrbrrubbbrbwuuwbwbrrbrrwwrgr +rwbrbgurgwwgwbgwrrwggbgwurbubbuguwgwbwrbuwuwuwrgurrww +gbubbgububgbrgbgwrrgrrbgwrwburwgugggwgguwggbugubbuw +bgrwgrrwwuwgggrbuwwbggrgwwguwguggwuwrbwwrguwugrurbggrgwwur +rgrggwwruwrwubruggwrbuwrrrbbrbrbuugugrgrgwugwrwrgwg +wbugrurburbrgbgurrrguurbwwurguwwbrwgguugwbrub +ugbbrbwuuuuuggurrbgwrwburwrgwuwwgbuggrgbrwurbgrr +bggwrrbgwwugbggguuggwruwggwwbbwwbuwbrrgubuwwrbbguwbbrgwgbg +bwwbrggrurrrrwwbwbwwwwbrggrubrbbwrwbbbugwwbr +uwuugwgbuurwgwrwwrrgbubbwuwwgbrrgrrrbrbwbrurwwrrwg +ubbburgbrwruubrwrgggwgubrbgbrgwgbwuuwubwbgwrrbwbr +rbgguuwgbbbgwbwgrguruwgbwwrrrwugurggrrguwuruuu +rrbgrggbururwwbguwrgubgurrggugwuubgurrwwbgubrurwbwubrbb +wrwuubgwuggrgrubrbwubbwwgrgugwuubgrguwgubwwur +rugbgwggugugbbwbbugruwuwgwrbbwuwrbruburwgbbggbrrubwurg +rbwbubwbbggrwgrurwuuwwrwbbwgbwwrwrrwgwrgbgrb +wruruuguuurugruubwggbubggrbburbbwbrwgbwrubwbguruurwgrubuu +wrrbbbrruwburbwgwggbgururbgrbbubrrwugrbwwuwwbbgwwgwwubgbr +bbbuggwrubwbbbwrgbgbugguwrbwgubrgbwgugbguggrbbr +gbbwwwbgbwruwwbrwuwbgwgwrugrgururbbrguurggrbwwrggrugu +wggrgwurbguwuuurwgwggbwurbuwuwwrwwurwugrgbrbrbbrrrwbwwu +gbuubwbbrugubrrbwwrbugrrbuwrgbbuubwwgwrrbur +guwrwwwrubwbrubwwguugbwuwwbwrgrwbuwbwubgwbrbg +wruurubgbrurrbbgbwbugrgwrbbubbbbrrwbbrgwubwwwrurbrubw +brbggwwwgrwrggrgrbuurbggbrgwubrbwgwgrrwwgbgw +wwwrrbwwwbbwugrgrburgbwggbwbuurbgruurbubggwgbuugugggbgbw +brrbwurwwwuuburgwubwrwbrwgbrgubwwrbrrwubgb +wbgggburgurruubwuurbuugwbwuwgwrrruwrbbbugwurgggbgwgr +wugrruugrbbubgbrwwwrburbgrrwgwrrwrgrgubwrwwuwwuw +wbgrbbburruubbgbwgbwugwgwbwwbrbwugrgwgwbgggbubbrrugb +bbbburrugwrrwubwwrwbuguwbubwubwgbrbwbwgruurbrgwwwwguugurbw +gburbrubggruwbwwwwugwuwbrwgguwubuubguggrbbbrwguubwwuwbgrggr +gbuugwbbwbrbwwubbruwwwbugbrububgwbwgbwrrggub +wwwbrbrwurbbgwwwgwgrrbbggrbgrrgwgrggugrggbuwwrrgw +gbuwgbwguwbrrbgwwbuwbubgbwwuggurwwbuubgww +rbbggbrurgbuwburbwurguwbrurbgwwgrbgrgbgwgrggugrwgrbr +bbbbwrbwurrguuwrurgwwwwrrbbggwrbgrgbwwrbbguurgbubwgwg +gubrguwwrwruuuwwrrrgbrwbggrwwwurgbwugwurbgrururugbgg +bwwbgbrbuuurwuggwwwwgwrgwbwgwbwgbbrruwrgurwgrrwgrr +gubwgbggbggrgwwwgrwggwrguuugbgugwwrrbwgwuu +guwuguwruugrwrgrggrgwbuuwuggwrbbwbrrwbbwgrgr +bwrbbburuwgrbubgrgrwguururgwugbrwubububgbwwrwuu +bbggbwbburwrruuwbrrbrrrrubgwrwbggrurugurgbgguwruuw +uwwwbgrwbwgrubggubgrgburwbrwggwrrwrrrbwuubbbuuubbrbrr +uggurwgbggwurbgwwbbgwuuwuububgrbrwggggurbwrrbbbruwubwrrg +gburwbgugwgrbwrgrrbrbwrbuubwburbwbgrrrugw +ugrgrrwrwwbburbgbrgwrggbwwurbrbuguuruuurwbgurbwrrrwugr +wbrwgguwuubrgruwwgrrurwbgbgggwwbbubrrrrgbuwgwbwgbru +ubbubwruuugggbrwgrwrurbuuubgrwubbubbwgruwrwrgugwwgrwwbgg +wgubgwrugwubgrwubwugwrubwurguuwwrwrrgrugrgwrbwgggw +ggggwgwbgrwgrwrggbuugrbuwubbrbrwgwbbgwgwbrbubggwuuburuwb +wbbgbbrbrrbgrbbwwgbwwrggbuburrruugubrgwrwruruuwr +wurgrgrbwwrbuwwbrbgwwrruwgwrgwrgrgugbrrrbbbrrbgggwgurwbu +wubggwurwururbgurbwbwgwggwrwubwuugwuubgwbrbbbwguwrgwb +gwgruwgbbguubbburwruwwwrbbuugwwwuwgrwuwgbbrbuguuuwgubg +bbubugbguwgwuwgbgrgrrgbwgrugbuurgruurbrrbwwwgburuugw +gbuwgwgruwbgrbwrrrurguwugrbrubgbuwgwugww +rbbgrrwwbggguruwwgwbuurruuugurggrbbgbgguurbuwubbbrw +gguuwrburgwgwruwruburwbrrrwugwgwbrwgbugurgwbugwuuwrbwurr +wwrbbgrbubrguwrwuuuruurbrwururbgbrgubwgggbrbbubwwbbgb +ugugbwbwwrgrbugbbwbubgruugbgurgbbgwurugbgruruwgugwbgguuugb +wuwbwgwbwrwgwgrruwurgrwuwwgrrgwruguwgrbbbbwgurrurwbwuw +ggbwgbuwuugwrwuwwwwrwruugbugbgrrwbwrbwrbrbbgbbgbwu +wruwbrguwuwurbuubbggrwggubwgwbggurwugrwwuuubrugrwgr +ubbgurgwubrbrubrwubrgurwwbrbrgwwwubrgbgwruuguwurru +uurrwbubgwbwwrbbbgguwbgbwubgubuwrwbuwgbguwbwbwgubwgbbub +ubwugubugwbwwuwguwrwrrggrrbrrbwbwwwrwggwgbbb +bbgbwbwubwwbuwruuuurbwrwgwbbwbwgugbuwrwbuurwwgwgur +urgwbbburbbbwugbruuwwgugburuwrrbgrwgrrrugrgwrwrgruuwb +bwgubwwbwurguwbgruwbgggrwrwbgwguguubbrrwbgguuwwrwbww +guububuurbrgbbuwubwubbbwbrbbbggubuwrrugurwwwubgbgrgwuuw +gbubbruwgrrrrgwggwurrrwggbrbrgrgrwurguwu +guurbbwgrubwbwbrwwugrbwugrwrgrgurbgruwburrbwwwg +gugubugwuubwbuwugwuwwrwrgwgwggrurugrubwuggruwugg +wurggbgggwburbbgrgbbbgwrggrgbuuuwwbrwbwgbw +ubwrbrrrgrbbwrbguuwrbuwbugrrrbwrwrugwbbbruwrruuu +wwbuurwgrubwwugggbubbrggwwwbguuruguuuuubrbwrur +gbubrwwwwwbruugbbuwwwwrrggrwgguugwurbgbugwrrbrgrbg +gbuggwubwrbbbuuwrrwggurrubwrbbwgrugrgbggurbugb +gbbbubwguruwwugrrbrgwwrruwrwgrrwggbwwgwguwbugrwgguwuwbwu +wbgruguwgwwguwguuugrgrgbubwuubbrburrwggbggwbrrburwrgr +wurgwrgwuwbwbwwrrrwuwurrwgurgwuuguuwuuubwwgggubwugwu +bugbubburggrwwbwgggwgrbugrubwbgwwrrwrwggurwubwbu +rbggwubrurwbgggwwbuguwwbbrwugbuuuurbrwuwubub +uruuruwwububrbuwgwbruggbwgrggubrwbgwuruubburwgwbbrwbgwbu +rrurggbrbrruggrgbbwwrruwuuwwwuwrggrbuwrwurwggbrguu +grwrubwburwrbubgwrwrrbrruwbbburwburrwrrbggugrbwgrgbb +gbuubgwuwbwbuubbwwurggrrgbburgwgrrwrubgrbwur +grbuwgurrbbugbruwgbbwwrugubwwubbbubwbgbwbgrrr +gburbuwburbgrurgurwwwubgurggwrrwrbubbrrgbubrbwwubuubb +rwrbrgwbbbguururbgbrgguggbgrwrurbguwgbrwwbrurrrruubbwgwur +bbuuwugbggbgbbuwrbbbuwrwrbwwrwgubwrrugbbgugu +brbrgggbrgwbrgwuurwuubrgrbubwwrbwrgwgbugrbwgbwwwgrg +ugrguwggrwwubrubwwggbbrugbrwbruguwgggwwgrru +rggrbruguwrbbuwbggbbguuwbugwwbubuuwbbgrggwwbwru +rrgwguurbuwwbgbgrrgrubuuuuguburrbrggwbubuggbrg +gburrwwwgrbrwwwwbwwburbrgrbubbwbugbbubbrwwurbwrbrwbwwrwburrw +wbguurguwwgwggurbgugwwuwuurwguuguurrgruurruruurggbuurgr +ugwrrrrwwrgwgwgggwgwggubbwubwwwuugbrgbbgwwgrbrbgguurgww \ No newline at end of file diff --git a/2024/input/20 b/2024/input/20 new file mode 100644 index 0000000..d75d199 --- /dev/null +++ b/2024/input/20 @@ -0,0 +1,141 @@ +############################################################################################################################################# +#.........................#...###...#...#...#.............#...#...#...#.......###...#...#...###...#.....###...#...........#...#.........#...# +#.#######################.#.#.###.#.#.#.#.#.#.###########.#.#.#.#.#.#.#.#####.###.#.#.#.#.#.###.#.#.###.###.#.#.#########.#.#.#.#######.#.#.# +#...#...#...............#.#.#.....#.#.#...#.#.....#.......#.#.#.#...#.#.....#.#...#.#.#...#...#.#.#...#.#...#...#.........#.#...#...#...#.#.# +###.#.#.#.#############.#.#.#######.#.#####.#####.#.#######.#.#.#####.#####.#.#.###.#.#######.#.#.###.#.#.#######.#########.#####.#.#.###.#.# +###...#.#.#.............#.#.......#.#.....#...#...#.....#...#...#.....#...#.#.#...#...#.......#.#...#.#.#.#.......#.........#...#.#...###.#.# +#######.#.#.#############.#######.#.#####.###.#.#######.#.#######.#####.#.#.#.###.#####.#######.###.#.#.#.#.#######.#########.#.#.#######.#.# +#...###...#...#...#.....#.#.......#.#...#.#...#.#.....#.#...#...#.....#.#...#...#.#...#...#...#.#...#.#.#.#.#.......#...#.....#...###...#.#.# +#.#.#########.#.#.#.###.#.#.#######.#.#.#.#.###.#.###.#.###.#.#.#####.#.#######.#.#.#.###.#.#.#.#.###.#.#.#.#.#######.#.#.###########.#.#.#.# +#.#.#...#.....#.#.#.#...#.#.......#.#.#.#.#.#...#...#...###...#...#...#.....#...#...#.#...#.#.#.#...#.#.#.#.#.#.......#.#.....#...#...#.#.#.# +#.#.#.#.#.#####.#.#.#.###.#######.#.#.#.#.#.#.#####.#############.#.#######.#.#######.#.###.#.#.###.#.#.#.#.#.#.#######.#####.#.#.#.###.#.#.# +#.#.#.#.#.......#...#...#...#.....#...#.#.#.#...#...#...#...#.....#...#.....#.#...#...#.#...#.#.#...#.#.#.#...#.......#...#...#.#.#...#...#.# +#.#.#.#.###############.###.#.#########.#.#.###.#.###.#.#.#.#.#######.#.#####.#.#.#.###.#.###.#.#.###.#.#.###########.###.#.###.#.###.#####.# +#.#.#.#.###...#...#.....#...#.........#.#.#.###.#.###.#.#.#.#.....#...#.....#.#.#.#...#.#...#...#...#.#.#.#...........###...###.#...#.#.....# +#.#.#.#.###.#.#.#.#.#####.###########.#.#.#.###.#.###.#.#.#.#####.#.#######.#.#.#.###.#.###.#######.#.#.#.#.###################.###.#.#.##### +#.#...#.#...#.#.#.#.....#.......#...#.#.#.#.#...#.#...#...#...###.#...###...#...#...#.#.#...#.......#.#...#...........#...###...#...#.#.#...# +#.#####.#.###.#.#.#####.#######.#.#.#.#.#.#.#.###.#.#########.###.###.###.#########.#.#.#.###.#######.###############.#.#.###.###.###.#.#.#.# +#.....#...#...#.#.....#.......#.#.#...#...#...#...#...#.....#...#...#...#.......#...#.#.#...#.....#...#...............#.#...#...#.#...#.#.#.# +#####.#####.###.#####.#######.#.#.#############.#####.#.###.###.###.###.#######.#.###.#.###.#####.#.###.###############.###.###.#.#.###.#.#.# +#...#.#...#...#.....#.........#.#.........#.....#.....#...#...#.###...#.#...#...#...#.#.###.#.....#...#.#.........#...#.#...#...#.#.#...#.#.# +#.#.#.#.#.###.#####.###########.#########.#.#####.#######.###.#.#####.#.#.#.#.#####.#.#.###.#.#######.#.#.#######.#.#.#.#.###.###.#.#.###.#.# +#.#.#...#...#.......#.........#.###...###.#.....#.....#...###...#...#.#.#.#.#.....#.#.#...#.#.#...#...#...#.......#.#.#.#.###...#.#.#.....#.# +#.#.#######.#########.#######.#.###.#.###.#####.#####.#.#########.#.#.#.#.#.#####.#.#.###.#.#.#.#.#.#######.#######.#.#.#.#####.#.#.#######.# +#.#...#...#...#...#...###.....#.....#.....#.....#...#.#.......###.#.#.#.#.#...###.#...#...#.#.#.#.#.#.......###...#.#.#.#.#...#.#...#...#...# +#.###.#.#.###.#.#.#.#####.#################.#####.#.#.#######.###.#.#.#.#.###.###.#####.###.#.#.#.#.#.#########.#.#.#.#.#.#.#.#.#####.#.#.### +#...#.#.#...#...#...###...#.........#.....#.#...#.#.#.#.......#...#.#.#.#...#...#.#.....###.#...#...#.....#...#.#.#.#.#.#.#.#.#...#...#...### +###.#.#.###.###########.###.#######.#.###.#.#.#.#.#.#.#.#######.###.#.#.###.###.#.#.#######.#############.#.#.#.#.#.#.#.#.#.#.###.#.######### +#...#.#.#...###.......#.....#...###...#...#...#.#.#.#.#...#...#...#.#.#.#...#...#.#...#...#.#...#...#.....#.#...#.#.#.#.#.#.#...#.#.#...#...# +#.###.#.#.#####.#####.#######.#.#######.#######.#.#.#.###.#.#.###.#.#.#.#.###.###.###.#.#.#.#.#.#.#.#.#####.#####.#.#.#.#.#.###.#.#.#.#.#.#.# +#...#.#.#.#...#.....#.#.......#.......#.#.......#.#...#...#.#...#.#.#.#.#...#.#...#...#.#.#...#...#.#.#...#.#.....#.#...#...#...#.#...#...#.# +###.#.#.#.#.#.#####.#.#.#############.#.#.#######.#####.###.###.#.#.#.#.###.#.#.###.###.#.#########.#.#.#.#.#.#####.#########.###.#########.# +#...#...#.#.#...#...#.#...........#...#.#.#...#...#.....###...#.#.#.#.#...#.#.#...#.#...#...#...#...#...#...#...#...#...#.....#...#.........# +#.#######.#.###.#.###.###########.#.###.#.#.#.#.###.#########.#.#.#.#.###.#.#.###.#.#.#####.#.#.#.#############.#.###.#.#.#####.###.######### +#...#...#...#...#...#.#.......#...#...#.#.#.#.#.#...#...#...#.#.#.#.#...#.#.#.###.#.#...#...#.#.#.....#.........#.#...#...#...#...#.#.......# +###.#.#.#####.#####.#.#.#####.#.#####.#.#.#.#.#.#.###.#.#.#.#.#.#.#.###.#.#.#.###.#.###.#.###.#.#####.#.#########.#.#######.#.###.#.#.#####.# +###...#.....#.#...#.#.#.....#.#.....#.#.#.#.#...#...#.#.#.#.#.#.#.#...#.#.#.#...#.#...#.#...#.#.#...#.#...........#...###...#.###.#.#.#.....# +###########.#.#.#.#.#.#####.#.#####.#.#.#.#.#######.#.#.#.#.#.#.#.###.#.#.#.###.#.###.#.###.#.#.#.#.#.###############.###.###.###.#.#.#.##### +#...........#...#...#.......#.....#.#.#.#.#...#.....#.#.#.#.#.#...#...#.#.#.#...#.###.#...#.#.#...#.#.#.............#...#...#.....#...#...### +#.###############################.#.#.#.#.###.#.#####.#.#.#.#.#####.###.#.#.#.###.###.###.#.#.#####.#.#.###########.###.###.#############.### +#.......#.....#...#.......#.....#.#.#...#...#.#.#...#.#.#.#.#...###...#.#.#.#...#...#.#...#.#.#.....#.#...#...#...#.....###.#...........#...# +#######.#.###.#.#.#.#####.#.###.#.#.#######.#.#.#.#.#.#.#.#.###.#####.#.#.#.###.###.#.#.###.#.#.#####.###.#.#.#.#.#########.#.#########.###.# +#.......#.###...#...###...#.#...#...###...#...#.#.#.#.#.#.#.#...#.....#.#.#...#...#.#.#...#...#...#...###...#...#...###...#.#.........#...#.# +#.#######.#############.###.#.#########.#.#####.#.#.#.#.#.#.#.###.#####.#.###.###.#.#.###.#######.#.###############.###.#.#.#########.###.#.# +#.........#...#...#...#.....#...........#.....#.#.#.#.#.#.#.#.###...#...#...#.###.#.#.#...#.......#.#...............#...#...#.......#...#.#.# +###########.#.#.#.#.#.#######################.#.#.#.#.#.#.#.#.#####.#.#####.#.###.#.#.#.###.#######.#.###############.#######.#####.###.#.#.# +###...#.....#...#...#.....#...................#.#.#.#.#.#.#...#.....#.....#.#.#...#.#...###...#.....#...............#.#.......#.....#...#.#.# +###.#.#.#################.#.###################.#.#.#.#.#.#####.#########.#.#.#.###.#########.#.###################.#.#.#######.#####.###.#.# +#...#.#.#...#...#.......#...#.......#.......#...#.#.#.#.#.....#...#...#...#.#.#...#.........#.#.#...........#.....#...#.......#.....#.###...# +#.###.#.#.#.#.#.#.#####.#####.#####.#.#####.#.###.#.#.#.#####.###.#.#.#.###.#.###.#########.#.#.#.#########.#.###.###########.#####.#.####### +#.#...#...#...#...#...#.......#...#...#.....#.....#.#.#.#...#.#...#.#.#...#...###...#.....#.#.#.#...#.....#.#.###.....#.....#...###.#...#...# +#.#.###############.#.#########.#.#####.###########.#.#.#.#.#.#.###.#.###.#########.#.###.#.#.#.###.#.###.#.#.#######.#.###.###.###.###.#.#.# +#.#...###...###...#.#.#.........#.......###...#...#...#...#...#.#...#...#.....#.....#.###...#...###...#...#...#...###...###...#...#...#...#.# +#.###.###.#.###.#.#.#.#.###################.#.#.#.#############.#.#####.#####.#.#####.#################.#######.#.###########.###.###.#####.# +#...#.....#.....#...#.#.............###...#.#...#...#...#.......#.....#...#...#.....#...#...###.......#.........#...........#...#...#.......# +###.#################.#############.###.#.#.#######.#.#.#.###########.###.#.#######.###.#.#.###.#####.#####################.###.###.######### +###.................#.............#...#.#...#...#...#.#.#...#...#...#.###.#.###...#...#...#...#.....#.#.................#...###...#...#.....# +###################.#############.###.#.#####.#.#.###.#.###.#.#.#.#.#.###.#.###.#.###.#######.#####.#.#.###############.#.#######.###.#.###.# +#...#...............#...........#.#...#.#.....#.#.....#...#...#...#...#...#.#...#.#...#.....#.#.....#.#...#...........#...###...#.....#.#...# +#.#.#.###############.#########.#.#.###.#.#####.#########.#############.###.#.###.#.###.###.#.#.#####.###.#.#########.#######.#.#######.#.### +#.#.#...#...#.......#.###.......#.#.....#.....#.....#...#.....###.......#...#...#.#...#...#...#.....#...#...#.....#...#.......#.........#...# +#.#.###.#.#.#.#####.#.###.#######.###########.#####.#.#.#####.###.#######.#####.#.###.###.#########.###.#####.###.#.###.###################.# +#.#.....#.#.#.#...#...#...#.....#.#.....#...#.#...#...#.......#...#.....#...###.#.###.....###...###...#.....#...#...###.#...............#...# +#.#######.#.#.#.#.#####.###.###.#.#.###.#.#.#.#.#.#############.###.###.###.###.#.###########.#.#####.#####.###.#######.#.#############.#.### +#.....#...#...#.#.#...#...#.#...#...###...#.#...#...#...#...###.....###.....#...#.....#...#...#.#...#.....#...#...#...#.#.............#...### +#####.#.#######.#.#.#.###.#.#.#############.#######.#.#.#.#.#################.#######.#.#.#.###.#.#.#####.###.###.#.#.#.#############.####### +#...#.#.#.......#...#.#...#.#.............#.........#.#.#.#.....#...#####...#.......#.#.#.#...#...#.......###.#...#.#...#.............#.....# +#.#.#.#.#.###########.#.###.#############.###########.#.#.#####.#.#.#####.#.#######.#.#.#.###.###############.#.###.#####.#############.###.# +#.#.#...#...........#.#.....###...........#.........#.#.#.#.....#.#...#...#.#.......#...#.....#...#.........#.#.....#...#.........###...#...# +#.#.###############.#.#########.###########.#######.#.#.#.#.#####.###.#.###.#.#################.#.#.#######.#.#######.#.#########.###.###.### +#.#.#.............#.#.#.......#...........#.#######...#...#.....#.#...#...#...#...#.....#.....#.#.#.#...#...#.....#...#.....#...#...#.#...### +#.#.#.###########.#.#.#.#####.###########.#.###################.#.#.#####.#####.#.#.###.#.###.#.#.#.#.#.#.#######.#.#######.#.#.###.#.#.##### +#.#.#...........#.#.#.#.....#.#...#######...#################E#...#.#...#.....#.#.#.#...#.#...#.#...#.#.#.......#.#.......#...#...#...#.....# +#.#.###########.#.#.#.#####.#.#.#.###########################.#####.#.#.#####.#.#.#.#.###.#.###.#####.#.#######.#.#######.#######.#########.# +#.#.........#...#...#.......#...#..S###############.....#####.#...#...#.#.....#.#...#.#...#.....###...#.....#...#.#...#...#.....#.........#.# +#.#########.#.#####################################.###.#####.#.#.#####.#.#####.#####.#.###########.#######.#.###.#.#.#.###.###.#########.#.# +#.........#...#.......#.....#...#...#...#####.......#...#####.#.#.....#.#.......#...#...#.....#...#.......#...###.#.#.#.....#...###...###...# +#########.#####.#####.#.###.#.#.#.#.#.#.#####.#######.#######.#.#####.#.#########.#.#####.###.#.#.#######.#######.#.#.#######.#####.#.####### +###...#...#...#.#.....#.#...#.#...#...#.....#.....#...###...#.#.#...#...#.....#...#...###...#...#...#...#...#...#...#.........#.....#.......# +###.#.#.###.#.#.#.#####.#.###.#############.#####.#.#####.#.#.#.#.#.#####.###.#.#####.#####.#######.#.#.###.#.#.###############.###########.# +#...#...#...#.#.#...#...#.#...#...........#...#...#.......#.#...#.#.#...#...#.#...#...#...#.......#.#.#.....#.#.#...###.......#.....#.......# +#.#######.###.#.###.#.###.#.###.#########.###.#.###########.#####.#.#.#.###.#.###.#.###.#.#######.#.#.#######.#.#.#.###.#####.#####.#.####### +#.........###...###...###...###.........#.....#.#...........#...#.#.#.#.....#.....#...#.#.......#.#.#.........#...#.....#.....#.....#...#...# +#######################################.#######.#.###########.#.#.#.#.###############.#.#######.#.#.#####################.#####.#######.#.#.# +#.............###...........###.........###...#.#.......###...#.#.#.#.............#...#.......#...#.#...................#.......#.....#...#.# +#.###########.###.#########.###.###########.#.#.#######.###.###.#.#.#############.#.#########.#####.#.#################.#########.###.#####.# +#.......#...#...#.#...#...#.....#...###.....#...#.....#...#.#...#.#.#.....###...#.#.....#...#.....#.#.................#.....#...#...#.......# +#######.#.#.###.#.#.#.#.#.#######.#.###.#########.###.###.#.#.###.#.#.###.###.#.#.#####.#.#.#####.#.#################.#####.#.#.###.######### +###...#...#.#...#...#...#.........#.....#.........###...#.#.#.....#.#...#.....#.#.#...#...#.......#.....#...........#...#...#.#...#.........# +###.#.#####.#.###########################.#############.#.#.#######.###.#######.#.#.#.#################.#.#########.###.#.###.###.#########.# +#...#.....#.#.#...#.....#...............#.........#...#...#...#.....###.#.....#.#.#.#.........#.......#...#...#...#.....#.....###...........# +#.#######.#.#.#.#.#.###.#.#############.#########.#.#.#######.#.#######.#.###.#.#.#.#########.#.#####.#####.#.#.#.########################### +#.#.....#.#.#.#.#.#...#.#.............#.#.........#.#...###...#.......#...###.#.#...#...#.....#.###...#.....#...#.......###.................# +#.#.###.#.#.#.#.#.###.#.#############.#.#.#########.###.###.#########.#######.#.#####.#.#.#####.###.###.###############.###.###############.# +#...#...#...#...#.....#.###...#...#...#.#.#.......#...#...#.....#.....###...#.#.#...#.#.#...#...#...#...#...............#...#...#...#...#...# +#####.#################.###.#.#.#.#.###.#.#.#####.###.###.#####.#.#######.#.#.#.#.#.#.#.###.#.###.###.###.###############.###.#.#.#.#.#.#.### +#.....#.....#...#.....#.....#...#...###...#.#.....###...#.###...#...#...#.#.#.#.#.#.#.#.###...###...#.###.........#...###.#...#...#.#.#.#...# +#.#####.###.#.#.#.###.#####################.#.#########.#.###.#####.#.#.#.#.#.#.#.#.#.#.###########.#.###########.#.#.###.#.#######.#.#.###.# +#...#...###.#.#.#.#...#...................#.#.....#.....#.....#.....#.#...#.#.#.#.#.#.#.....#.....#.#.#.........#.#.#.....#.......#...#...#.# +###.#.#####.#.#.#.#.###.#################.#.#####.#.###########.#####.#####.#.#.#.#.#.#####.#.###.#.#.#.#######.#.#.#############.#######.#.# +###...#.....#.#.#.#...#.#.................#.....#.#...........#.#...#...#...#.#.#.#...#.....#...#.#...#.......#...#.#.............#...###.#.# +#######.#####.#.#.###.#.#.#####################.#.###########.#.#.#.###.#.###.#.#.#####.#######.#.###########.#####.#.#############.#.###.#.# +#.......#...#.#...#...#.#.#.....#.......#...#...#...#...#.....#.#.#...#.#...#.#.#.....#...#...#.#.#...........#...#.#.........#.....#...#.#.# +#.#######.#.#.#####.###.#.#.###.#.#####.#.#.#.#####.#.#.#.#####.#.###.#.###.#.#.#####.###.#.#.#.#.#.###########.#.#.#########.#.#######.#.#.# +#...#...#.#...#.....#...#.#...#.#.#.....#.#.#.....#.#.#.#...#...#.#...#...#.#.#.#...#.#...#.#.#.#.#.............#...#.......#...#...#...#.#.# +###.#.#.#.#####.#####.###.###.#.#.#.#####.#.#####.#.#.#.###.#.###.#.#####.#.#.#.#.#.#.#.###.#.#.#.###################.#####.#####.#.#.###.#.# +###...#.#.....#.....#...#...#.#...#.#...#.#...#...#.#.#...#.#.#...#.....#.#...#.#.#...#...#.#.#.#.#...#.....#.......#.....#.#.....#.#.#...#.# +#######.#####.#####.###.###.#.#####.#.#.#.###.#.###.#.###.#.#.#.#######.#.#####.#.#######.#.#.#.#.#.#.#.###.#.#####.#####.#.#.#####.#.#.###.# +#.....#.......###...#...#...#.#.....#.#...#...#...#.#.#...#.#.#.....#...#...###.#.....#...#.#.#.#.#.#.#...#.#.....#...#...#.#.#...#...#.#...# +#.###.###########.###.###.###.#.#####.#####.#####.#.#.#.###.#.#####.#.#####.###.#####.#.###.#.#.#.#.#.###.#.#####.###.#.###.#.#.#.#####.#.### +#...#.###...#...#.#...###.....#.....#...###.....#.#...#...#.#.#...#.#...#...#...#.....#...#.#...#...#.#...#.#...#.#...#...#.#...#...#...#...# +###.#.###.#.#.#.#.#.###############.###.#######.#.#######.#.#.#.#.#.###.#.###.###.#######.#.#########.#.###.#.#.#.#.#####.#.#######.#.#####.# +#...#.....#...#...#...#.........###.#...#.......#...#.....#.#.#.#...#...#...#...#.#...#...#.......###...###.#.#...#.#.....#.....#...#...#...# +#.###################.#.#######.###.#.###.#########.#.#####.#.#.#####.#####.###.#.#.#.#.#########.#########.#.#####.#.#########.#.#####.#.### +#...#.....#.......#...#...#...#.....#.#...#...#.....#.#.....#.#...#...#.....#...#.#.#...#...#...#.......#...#.....#.#.#...#...#...#.....#...# +###.#.###.#.#####.#.#####.#.#.#######.#.###.#.#.#####.#.#####.###.#.###.#####.###.#.#####.#.#.#.#######.#.#######.#.#.#.#.#.#.#####.#######.# +#...#...#.#.#.....#...###...#.......#.#...#.#.#.....#...#.....#...#...#.....#...#.#.#...#.#.#.#...#...#.#.....#...#.#...#...#.....#.#.......# +#.#####.#.#.#.#######.#############.#.###.#.#.#####.#####.#####.#####.#####.###.#.#.#.#.#.#.#.###.#.#.#.#####.#.###.#############.#.#.####### +#...#...#...#...#.....#.......#...#.#.###.#.#.#...#.....#.#...#.#.....#...#.#...#.#.#.#...#.#...#.#.#.#...#...#...#...#.....#.....#...#...### +###.#.#########.#.#####.#####.#.#.#.#.###.#.#.#.#.#####.#.#.#.#.#.#####.#.#.#.###.#.#.#####.###.#.#.#.###.#.#####.###.#.###.#.#########.#.### +#...#...#.......#.....#.#...#...#.#.#.#...#.#.#.#.#.....#...#.#.#...#...#.#.#.#...#.#.....#.#...#...#.#...#.#.....#...#...#.#...#...#...#...# +#.#####.#.###########.#.#.#.#####.#.#.#.###.#.#.#.#.#########.#.###.#.###.#.#.#.###.#####.#.#.#######.#.###.#.#####.#####.#.###.#.#.#.#####.# +#...#...#.......#.....#...#.....#...#.#...#.#.#.#.#.......#...#...#...###...#.#...#.#.....#.#.......#.#.#...#.....#.....#.#...#...#...#...#.# +###.#.#########.#.#############.#####.###.#.#.#.#.#######.#.#####.###########.###.#.#.#####.#######.#.#.#.#######.#####.#.###.#########.#.#.# +#...#.#.........#...#...#.......#...#...#.#.#.#.#.#...#...#...#...#...........#...#.#.#...#.........#...#...#.....#.....#...#.#.......#.#.#.# +#.###.#.###########.#.#.#.#######.#.###.#.#.#.#.#.#.#.#.#####.#.###.###########.###.#.#.#.#################.#.#####.#######.#.#.#####.#.#.#.# +#.#...#.......#...#.#.#...#.......#.#...#.#.#.#.#...#.#...#...#...#.....#.....#.###.#...#.................#.#.....#.#...#...#.#.....#...#.#.# +#.#.#########.#.#.#.#.#####.#######.#.###.#.#.#.#####.###.#.#####.#####.#.###.#.###.#####################.#.#####.#.#.#.#.###.#####.#####.#.# +#.#.#...###...#.#.#.#...#...#.......#.###.#.#.#.#.....#...#.#...#.#.....#.#...#...#.....#.....#...#.....#.#.#.....#...#...#...#.....#...#.#.# +#.#.#.#.###.###.#.#.###.#.###.#######.###.#.#.#.#.#####.###.#.#.#.#.#####.#.#####.#####.#.###.#.#.#.###.#.#.#.#############.###.#####.#.#.#.# +#.#.#.#.....#...#...###...###.....#...#...#.#...#...#...###...#...#.#.....#.#.....#.....#...#.#.#.#.###...#.#.............#...#.......#.#...# +#.#.#.#######.###################.#.###.###.#######.#.#############.#.#####.#.#####.#######.#.#.#.#.#######.#############.###.#########.##### +#...#.....#...#...#...#...#.......#...#...#...#.....#...........#...#.#.....#.....#...#...#.#...#.#.....###.#...#...#.....###...........#...# +#########.#.###.#.#.#.#.#.#.#########.###.###.#.###############.#.###.#.#########.###.#.#.#.#####.#####.###.#.#.#.#.#.###################.#.# +#...#.....#.###.#...#...#...#...#...#.###.....#...#...#.....#...#.....#...#.......#...#.#.#...###.....#...#...#...#.#.....................#.# +#.#.#.#####.###.#############.#.#.#.#.###########.#.#.#.###.#.###########.#.#######.###.#.###.#######.###.#########.#######################.# +#.#.#.....#...#.#...#...#...#.#.#.#.#.........#...#.#.#...#.#.#...#...#...#.......#...#.#...#.......#...#.........#.#.......#...#.....#...#.# +#.#.#####.###.#.#.#.#.#.#.#.#.#.#.#.#########.#.###.#.###.#.#.#.#.#.#.#.#########.###.#.###.#######.###.#########.#.#.#####.#.#.#.###.#.#.#.# +#.#.......#...#.#.#.#.#.#.#.#.#.#.#...#...#...#...#.#.#...#.#.#.#...#...#...#...#.#...#...#...#...#...#.#.....#...#.#...#...#.#.#...#.#.#.#.# +#.#########.###.#.#.#.#.#.#.#.#.#.###.#.#.#.#####.#.#.#.###.#.#.#########.#.#.#.#.#.#####.###.#.#.###.#.#.###.#.###.###.#.###.#.###.#.#.#.#.# +#...........###...#...#...#...#...###...#...#####...#...###...#...........#...#...#.......###...#.....#...###...###.....#.....#.....#...#...# +############################################################################################################################################# \ No newline at end of file diff --git a/2024/input/21 b/2024/input/21 new file mode 100644 index 0000000..df35dad --- /dev/null +++ b/2024/input/21 @@ -0,0 +1,5 @@ +805A +170A +129A +283A +540A \ No newline at end of file diff --git a/2024/input/22 b/2024/input/22 new file mode 100644 index 0000000..2b1f711 --- /dev/null +++ b/2024/input/22 @@ -0,0 +1,1683 @@ +16373349 +15186552 +1622193 +11783676 +6308445 +7167439 +13211695 +16575287 +10006062 +14564917 +1410644 +16226718 +4865544 +15658564 +3144783 +696348 +13617752 +4962735 +13587455 +3893435 +13268580 +9985093 +6930066 +8069196 +2212379 +7511818 +9495832 +1815382 +6654430 +16175030 +484196 +13026535 +3914064 +1317355 +2890997 +9190625 +11163581 +14978106 +6133480 +5997085 +12188758 +2713255 +10454072 +5561825 +13604475 +3878629 +12830415 +10434576 +3879278 +10682564 +2605846 +15762134 +4936490 +15225214 +12595436 +7163822 +12559020 +14525345 +10155776 +2458408 +3371733 +14930168 +4141237 +960273 +2550548 +4393428 +14849462 +7962748 +6950442 +3309146 +11936130 +5191277 +5015819 +13695237 +5002034 +1588253 +9088844 +7289529 +566954 +551958 +360360 +5405133 +7680885 +2637286 +7739695 +5597297 +12293718 +11142064 +6309898 +7281786 +13866147 +14009693 +15290196 +406862 +5840686 +2429464 +13032275 +6741280 +9933179 +12602207 +15995973 +7506633 +6032561 +5645567 +8295770 +13933300 +2006930 +3463201 +3474596 +13986569 +8800607 +15182560 +9770933 +12265538 +1294438 +3776204 +13358137 +15608542 +2288007 +2317632 +16657467 +2472456 +12255151 +13217169 +11600332 +12145224 +16524513 +10231002 +8973712 +11792265 +14896373 +16387689 +6657584 +7206616 +15970494 +6919351 +10761189 +15715283 +7274980 +684648 +9384532 +13507702 +780291 +6295233 +9530227 +6343838 +8231521 +8941271 +14864317 +4920019 +2890155 +10430942 +4166120 +6474612 +12863180 +14250227 +11347523 +15916832 +15872532 +6657826 +5906253 +3770247 +11211900 +3201676 +15247722 +1936192 +1162951 +8562967 +6624901 +15505449 +7826409 +2570087 +4751151 +4500768 +1050619 +8541627 +6447372 +8984910 +15636349 +13969554 +10596795 +434781 +10790557 +11096367 +8843520 +10265854 +8907153 +15630481 +6171827 +16373222 +16619771 +8461484 +11791395 +3939896 +6679433 +661663 +644778 +13692618 +13067250 +8604358 +15555045 +5927698 +4375441 +12920024 +15287916 +6357203 +2443706 +14798729 +14317074 +16502174 +8499700 +15284879 +11219866 +3064110 +2951970 +1439874 +6807886 +12233845 +9972361 +13031843 +4837731 +11360943 +16057205 +16424504 +487395 +15338833 +3580470 +9770788 +5882303 +8177404 +11582133 +280098 +11161368 +3159462 +9022461 +8127750 +6635258 +16550709 +14108026 +10174896 +8691867 +4634277 +5731484 +1613876 +8354052 +417868 +390443 +11557987 +12550936 +10619801 +8785703 +3042265 +8123204 +12626108 +9500360 +11034766 +16369325 +14131973 +4872371 +2518553 +2486117 +9346760 +11831814 +8626116 +16007998 +14828649 +16481397 +10289176 +10658018 +5234671 +9205242 +6340994 +323162 +431661 +5264738 +1167497 +12977345 +10511293 +412680 +10182687 +2319803 +7211149 +8916423 +2856357 +5621837 +8062377 +7464283 +2584977 +2272016 +12557299 +159945 +12400832 +8497447 +16094004 +3691170 +8789780 +5260568 +6675127 +7103844 +13943645 +11479200 +5359837 +13644091 +1279028 +2548159 +13496231 +12975561 +9503488 +5458839 +14996018 +2032811 +12505943 +16510023 +13960256 +5204390 +10991240 +2781142 +6994587 +14929527 +10851145 +8278565 +2032403 +6352211 +9905518 +5766970 +12371463 +1944127 +724687 +10152106 +9468975 +6669147 +7814812 +15726721 +7004724 +11251515 +5940450 +822547 +1358605 +13926755 +6146626 +5301534 +6638262 +16368610 +15625610 +16592921 +4267738 +8469732 +579423 +3269367 +10359655 +14314492 +15965419 +7308713 +1144736 +4865978 +4086613 +14411863 +12490359 +2352336 +15545238 +13437139 +8293406 +11509765 +16643930 +15685629 +13810869 +6626989 +12968098 +15952783 +10485205 +10781262 +1705214 +2579110 +9551955 +3755666 +2981791 +4284792 +361003 +6303864 +3500203 +4932321 +13984706 +10415652 +5329388 +8322076 +448776 +16745329 +12334674 +16482198 +16752595 +1772477 +11925625 +11372267 +5376749 +3694887 +4977193 +3494165 +3507668 +4310974 +15681672 +3012734 +1853918 +4539313 +7283890 +9081867 +13925320 +12240884 +9460595 +11773493 +5460495 +1434162 +10688227 +1017147 +3347050 +12469562 +8367880 +9367257 +12146897 +7743345 +6543543 +3498063 +2260527 +7414558 +3789190 +854110 +15104396 +14656924 +799222 +11414445 +603622 +12467400 +2419129 +10421335 +1974868 +9153079 +1100407 +4448917 +16671530 +9747921 +5796194 +4617791 +5456612 +2816183 +13219003 +11632253 +14723669 +11598167 +10923343 +15199799 +16577163 +14550454 +10457881 +6365170 +7166226 +10271995 +11457613 +16560713 +16179934 +12537934 +14536016 +3393257 +3228748 +12818707 +1141621 +8243157 +5064356 +8465035 +506318 +2009554 +9865115 +852669 +10101722 +5273159 +15128046 +11068793 +9386867 +3951182 +4714972 +11898912 +7306033 +11269026 +13584828 +1108153 +6955544 +16115171 +406558 +14277252 +11044471 +10019605 +2427685 +4440374 +11442617 +9097354 +5497248 +5033359 +16163616 +9942299 +910182 +13608405 +14688622 +9610869 +8517869 +3692116 +2052317 +12767318 +10763207 +6575285 +2744608 +9114079 +2557924 +6979713 +15215499 +2273719 +3993030 +2653935 +13156914 +3547480 +11339203 +12983120 +6939209 +11725333 +7390574 +12336215 +12283119 +9361992 +7190497 +719761 +15146578 +13174472 +3582277 +12792883 +2898442 +10277677 +9494354 +11852663 +14258584 +9833068 +7199947 +15158128 +16073980 +11350088 +4228881 +10138728 +11918003 +7086687 +9372635 +16497729 +15407495 +12803379 +11572194 +5323416 +2658612 +2014493 +11169533 +14188215 +14349369 +14175535 +2437278 +8641937 +7971553 +986393 +6081010 +4906299 +12991269 +4320135 +6413065 +16145540 +9646052 +15883038 +4622209 +9958259 +13087150 +505055 +16166632 +13342850 +16402817 +1725167 +5265123 +14068109 +5502891 +4272608 +6755968 +8837744 +11557985 +15051814 +4165817 +8421727 +7479731 +8600316 +5652771 +2833888 +9413870 +11745535 +2415368 +8732271 +9217496 +4689092 +2271752 +11361686 +2609626 +11041836 +13190412 +7411013 +2520473 +13190045 +7246599 +16497142 +9563745 +1797697 +9227626 +15966748 +9956207 +4478256 +13738095 +12098825 +15848252 +1512161 +16295578 +10316372 +10170266 +7998838 +6536356 +15104873 +10466030 +3138882 +2203391 +6168512 +13493661 +10548411 +11473832 +12975298 +16112477 +5896994 +14013329 +16072745 +16666920 +4412274 +10375236 +2159138 +359511 +9766095 +15746444 +5308195 +4107951 +5294132 +14634491 +7834600 +15411199 +7604316 +3476752 +5286805 +932246 +14488526 +12266602 +10689646 +16570298 +1301912 +12825620 +10876422 +2508580 +679600 +9640530 +8888397 +16221604 +15599602 +14599848 +13082649 +5962517 +7457444 +15812581 +13836376 +13230099 +1807057 +2741988 +3944766 +2385947 +3679003 +12663189 +15191331 +8274497 +12913813 +15864948 +544791 +2911243 +16117239 +2108927 +4812606 +11268763 +10724291 +14100790 +4346751 +1787155 +4980275 +5993258 +4354797 +15510727 +13222290 +7359942 +6521281 +7518909 +7731501 +14115011 +13267351 +5092088 +12534874 +1342065 +3622890 +16761606 +7143180 +14956161 +16230049 +10946433 +1356829 +6961778 +358077 +13814110 +3790343 +2512729 +12335352 +3409233 +9532075 +391411 +14042695 +2173659 +12687354 +13583294 +1945094 +4084558 +3866772 +5939369 +8881279 +13310054 +4976914 +13913724 +7747146 +3220521 +9631601 +4200584 +10086146 +8248625 +13270531 +610686 +14733135 +10410415 +7229874 +7702901 +13106011 +5866826 +14272397 +8036615 +5272129 +16414756 +5177214 +15231586 +9020631 +6688129 +8632510 +8922540 +8106465 +16178102 +11444166 +1249731 +13204057 +12428172 +5848261 +9559707 +6374914 +6248342 +16153646 +3669182 +8694332 +6228631 +4911278 +15472502 +9244257 +5917629 +11509209 +8003090 +15224237 +4126241 +7832816 +6116956 +3019269 +11293679 +9042119 +3692561 +4212864 +16325223 +12683800 +5861460 +8055787 +7731205 +3097293 +11978409 +13497854 +15978287 +5108603 +6835142 +13300018 +6175494 +6099671 +1683413 +9696932 +4419383 +2660936 +2466346 +5187725 +15731749 +12999803 +3527286 +13530707 +1776674 +5012174 +14125980 +3991088 +1405483 +4866957 +6839535 +15480296 +13057055 +14173531 +2345090 +559858 +2707281 +9280192 +4855418 +11175617 +6349854 +13708174 +15177451 +16351470 +6541606 +14362621 +16332709 +15022616 +8023780 +16487028 +8350427 +7805768 +7210364 +16318596 +16256978 +14502351 +3718848 +8094034 +3873320 +16677481 +1090298 +2553455 +7464761 +6927238 +14947631 +9389169 +8123927 +1048927 +448846 +15018178 +9277011 +15835794 +2296130 +8899283 +14739047 +12666018 +11793042 +3296917 +10206477 +14784709 +7336719 +4703513 +9495287 +4236798 +8238327 +11619706 +13944261 +8702336 +7020526 +15235987 +4858536 +15338706 +16238902 +2560705 +1388905 +5262873 +11948259 +635065 +11927482 +4740466 +1961944 +13532837 +1809329 +15416830 +15098348 +14464251 +6482747 +13053395 +12813540 +10254357 +15177688 +5179552 +2655888 +15077442 +14209736 +9642322 +8828670 +4323101 +3114952 +11973280 +9782635 +2413810 +11736379 +11768002 +1895547 +12385187 +3023131 +6671150 +7096854 +15126493 +12946560 +1326976 +13637249 +14155134 +1694948 +7279145 +4014623 +3102701 +3820588 +16775639 +10233789 +1796753 +12501169 +2808552 +5588856 +360436 +491034 +2597978 +10783153 +3292928 +4313246 +5258043 +6805522 +14670963 +3948447 +1752957 +11616561 +6925092 +10161151 +788882 +4982783 +2223798 +8424348 +16258605 +3438621 +12849734 +2824060 +15306953 +5798108 +12162593 +7411452 +15002005 +612307 +8877270 +9349385 +13808538 +8433368 +15706128 +13799150 +7763928 +689528 +9080872 +1141691 +14417202 +13670688 +8781338 +2613599 +10958585 +14231199 +7513431 +2908869 +3592148 +5738750 +191009 +12263941 +3836073 +989773 +258164 +185517 +1476132 +13807729 +14946045 +4732812 +14616379 +395259 +1990793 +3832070 +16051957 +13184655 +7281704 +378401 +1234807 +4393872 +10557605 +4588722 +5443375 +11038084 +4971078 +6538750 +15509137 +2235118 +4958582 +1720835 +7637183 +12882790 +14833120 +13098537 +16590572 +313098 +15583896 +2597828 +13134093 +14542017 +5358897 +2749708 +7469569 +16101432 +14000701 +13284206 +12678383 +11969816 +16057698 +356890 +13107467 +14871189 +14901553 +7920801 +2902953 +589609 +6699791 +15426852 +11930053 +632124 +1253623 +9759017 +7794134 +13395016 +1196403 +13316499 +10074097 +6466613 +4950269 +6750860 +8345818 +6811539 +4596500 +2127142 +9922529 +2347717 +2934676 +7683986 +15465143 +10463056 +6084176 +9808757 +2789830 +1571084 +2745034 +6923680 +7128537 +14480452 +13100961 +15435979 +11727095 +1193379 +11816111 +14358374 +10919888 +4936772 +6593268 +7549084 +7167474 +1356063 +8584763 +7465921 +182633 +11872988 +14834942 +4539693 +14542163 +15791904 +12395354 +6215996 +16298539 +2728010 +8068302 +2840496 +14758267 +9561589 +16554573 +10585126 +1469628 +3390622 +15881623 +1997159 +2218022 +13564747 +3289063 +5983898 +4500757 +11950672 +536567 +8820754 +14321831 +3506708 +2660827 +2558837 +12246291 +16263437 +11481509 +11462981 +12088073 +7346970 +5355424 +12379803 +5007195 +5687059 +3961308 +5501400 +7179219 +7225167 +7707157 +603771 +7986188 +11007202 +5650522 +14921750 +15109032 +8499310 +8272255 +6356027 +9111097 +15733894 +15813728 +14162153 +14333311 +13717998 +3381490 +629119 +3566768 +5473116 +15599738 +6123920 +8882607 +10066398 +12213720 +12366892 +8588287 +11725445 +10323833 +13441328 +10917777 +6860461 +16554390 +14508579 +154425 +10706917 +12643960 +11013836 +11508457 +11230315 +9153282 +14190667 +6611062 +6561520 +9762626 +1239523 +10681818 +4739480 +8828088 +6805993 +4242828 +13549075 +5139970 +10163548 +14594976 +15239424 +2174194 +11736746 +10334453 +922382 +2577541 +11331044 +11348934 +420793 +11305719 +11142983 +13830764 +12023289 +7064838 +15310458 +7854374 +3738575 +15515084 +10046008 +2098735 +16367700 +3395006 +14262078 +15233868 +13229474 +3297067 +11420505 +4056424 +13845211 +6221365 +6935628 +8762535 +11111304 +2301303 +2192119 +6876606 +4586110 +4742807 +2491313 +10740500 +1696968 +9961136 +9574949 +15351165 +12421682 +280823 +9950016 +1633318 +10452578 +10520092 +11953106 +11539810 +7138560 +7306201 +14567520 +4278738 +9396678 +15801765 +6572926 +1891444 +8810760 +6573274 +6102406 +10895290 +9444096 +6482854 +16591881 +11711992 +12016083 +3416538 +7115408 +13192419 +3513697 +10878246 +10371705 +1180915 +2459060 +5635707 +1791640 +4843773 +9489200 +7640118 +7045682 +16690221 +6201237 +9032540 +3593090 +1036305 +2093689 +8016251 +5626237 +7880011 +10863588 +15735777 +8158433 +12794551 +1656444 +15546255 +14186199 +13540575 +11799814 +10589931 +4115813 +7040163 +8078024 +6635077 +7192811 +4515067 +16005380 +366169 +10770301 +10419905 +10680985 +9655165 +558247 +12157764 +13993941 +13533359 +10401630 +9975187 +4824183 +16137881 +7364187 +6599407 +5902077 +14004160 +10374668 +14454812 +2680746 +451376 +3904580 +14255807 +9506003 +644788 +8025769 +2983687 +5633680 +6280991 +13793912 +506476 +803659 +13470028 +3956894 +16461640 +9082460 +11413394 +7408034 +3110512 +8916846 +11951540 +2024150 +11017984 +4155978 +5668894 +13013866 +6165701 +7655534 +14840270 +12547516 +5410504 +7753180 +13282961 +14512393 +5097596 +13450892 +12835913 +6294295 +3095869 +9621282 +7714183 +14887395 +1428922 +429994 +14926177 +16692356 +16717288 +5386145 +4736873 +11329954 +11893516 +7648451 +3498662 +7926441 +5310556 +5447643 +13409013 +4578999 +15085715 +11442478 +16027809 +14229723 +16373683 +3628819 +4919773 +3189670 +5813509 +13507038 +11429056 +14989911 +8910381 +6852170 +11739561 +15644443 +529400 +6776962 +14096718 +3026881 +15580203 +1694471 +10442350 +16410657 +1999995 +6142911 +12203249 +830741 +4355396 +14396413 +2367095 +9330033 +5128824 +5475163 +14356075 +11766192 +16439725 +9252623 +6903172 +10485835 +8689877 +11216031 +11201811 +11543980 +10327480 +14126530 +2899374 +15053998 +5938642 +7413952 +9419220 +6402334 +9338005 +14262958 +12630936 +16237181 +10704557 +9385114 +6968337 +8307593 +4124456 +12668920 +3883776 +9081947 +1710828 +14741127 +8924495 +3457806 +13753112 +4394070 +3336272 +4004544 +2237291 +9651358 +10538487 +2548892 +13599212 +16572866 +5276497 +11338542 +6501514 +3101484 +14112020 +9701314 +8581975 +11660871 +3323534 +5506282 +15943314 +8411305 +16245869 +14015057 +2412935 +2522387 +5965456 +2213428 +10482360 +2677248 +1391047 +11176316 +1741222 +4260676 +521094 +1756763 +16269002 +4646760 +6780347 +1888161 +194120 +12431753 +5193597 +14457504 +11019505 +3782575 +16400371 +5662561 +10222864 +3072284 +12595900 +9125205 +11856029 +12795176 +12851251 +6477374 +1172525 +12216358 +12306279 +10350627 +4844791 +5174560 +1487608 +10230375 +8931345 +5429011 +3026178 +766945 +13587698 +2359324 +2277411 +10752210 +7972084 +6145511 +15469547 +7436777 +2766952 +11374248 +15755632 +13001320 +10666887 +2076188 +16013424 +3957848 +1682748 +13753351 +10040883 +618584 +2147181 +3953441 +13982878 +4746278 +16008972 +5852570 +12833042 +8851783 +10981852 +11170029 +4384591 +2239867 +2818912 +4905776 +9464899 +7862927 +10069501 +8015309 +6571707 +14662715 +711639 +14328366 +10301443 +13265450 +1890408 +7397867 +10673148 +7877669 +16214870 +2716343 +10960572 +7081859 +4134494 +8948888 +15314115 +10369402 +997029 +10372032 +7367082 +2640594 +12881164 +11322608 +745415 +8442011 +14498948 +5687361 +13348957 +8168494 +15971475 +15456472 +12617747 +2479228 +2716845 +2284900 +10294518 +16504072 +8674818 +8954600 +1837768 +11527532 +16308422 +3749620 +2895482 +7596081 +10195734 +15213905 +5685880 +13167372 +12940720 +11832534 +13251097 +12045858 +10007014 +8269122 +2509484 +16266733 +15324993 +2726364 +16247740 +15223974 +3586625 +821211 +4396472 +3272374 +2155481 +9140672 +2772420 +14379681 +8863229 +10872640 +8361592 +10801741 +4059351 +11624850 +4644687 +11297291 +3199208 +15883217 +2187023 +11746271 +16153692 +5393242 +8282068 +11451365 +2830504 +14105368 +2334023 +15806272 +1936489 +5045070 +6649487 +8749886 +6924336 +13988717 +3822765 +5273475 +3028679 +9749083 +8860534 +12154364 +11300379 +13213939 +12000769 +15204162 +1394879 +10325832 +8881965 +574364 +14543005 +10010085 +4918050 +5392765 +3500306 +10501455 +10004171 +7881607 +7003462 +10681794 +7706115 +2253684 +16212535 +7117934 +10325959 +8984114 +1482330 +8538228 +15349964 +15911287 +8619614 +11496761 +9015290 +14704054 +148213 +10674150 +8746184 +7113228 +4280863 \ No newline at end of file diff --git a/2024/input/23 b/2024/input/23 new file mode 100644 index 0000000..4a78942 --- /dev/null +++ b/2024/input/23 @@ -0,0 +1,3380 @@ +ij-ln +ww-kk +oh-ss +ys-cp +cl-nw +ve-rv +hh-kw +yw-js +qk-ct +vc-tc +ge-hw +sp-xj +jj-iv +pq-zy +xm-qg +ku-tv +pn-oh +lf-kz +wy-vm +ln-fx +gm-zm +te-bu +es-bw +st-ab +ky-so +aq-cj +fk-sk +rn-ax +il-nj +ko-bb +gd-qp +jk-tb +ul-bx +gb-rt +ni-ey +gq-kb +wu-vz +sg-ts +ni-ib +we-ct +bw-cr +nu-ff +bn-ne +xo-hn +hs-mk +vh-bk +ra-mj +oy-gq +ly-oa +fn-tl +hi-qd +op-nr +hr-ke +bw-df +uv-te +yc-lo +le-eu +kb-sv +dz-qd +jq-gs +bk-dt +xj-em +mr-db +gy-eh +nc-ki +pk-dy +xw-yi +gb-tk +or-cm +qb-qy +up-xy +tp-qm +zy-au +jl-po +po-cb +eg-hu +bg-be +zf-dn +to-uv +dd-ev +rb-xg +mf-fn +td-ba +bm-ge +yu-wn +pw-cm +sh-cj +zf-jw +xx-nj +ml-kk +xt-na +ps-dv +am-bf +be-kc +oz-ol +bu-pj +lw-sf +wn-xp +fg-ll +iz-gj +gg-nj +nq-fk +ix-hs +xl-wk +hu-on +mf-ds +yw-bz +bf-td +ul-jb +yk-kp +bf-uf +dp-tq +lo-jr +fw-vg +vt-ci +wm-yb +dn-js +ye-ga +wp-fa +st-su +po-hm +qt-pv +zh-lj +dt-kh +yd-wm +mt-jl +lp-tv +ag-eg +dn-qn +ln-wk +gr-ki +hg-cm +cq-jq +rc-gc +jt-eq +iv-uv +vl-ix +ro-mc +bs-gd +gm-yb +kp-tj +gv-sn +vr-xl +zx-xv +sp-ya +gx-db +ba-uf +jf-jm +hr-hx +xf-yn +ez-cm +eh-xb +rh-qz +ts-wu +qz-bd +cq-hc +vi-lk +yq-zm +js-ls +dd-ld +tz-wn +bb-lu +lj-yi +es-ir +vh-wy +cz-xy +uw-fh +ey-lv +uo-sw +qg-nc +li-as +ly-hk +bf-dz +kc-lt +dp-gr +sk-ed +og-jl +fp-bp +sw-ff +kz-ml +hf-aa +qh-fm +ks-rd +nh-go +gn-tu +fk-wo +hu-wo +zy-no +yo-nm +jr-xs +ky-gy +bb-ur +hi-bc +lk-wy +id-fn +ic-vf +jh-ym +mg-wj +st-qj +ab-pe +oz-at +rg-fm +wl-lx +fu-zq +uk-db +wa-mr +gv-hg +cn-zx +ij-xl +ya-kt +na-yy +ez-or +yq-yb +us-ib +zy-je +fd-mk +lu-ko +ku-wc +jh-xy +qh-yg +ms-ne +vw-nw +rb-tz +uu-yf +ra-lx +lt-nx +na-cn +lj-xw +qx-je +pl-fy +vz-dy +fs-my +si-jm +tr-jb +gz-yf +ag-oa +fg-lo +uc-cm +iy-wq +wk-kj +ia-dy +wx-qd +vy-qg +kp-tf +wx-fb +bd-ni +si-zs +qh-ws +no-au +ec-uu +qa-xv +oz-hc +dt-ui +so-eh +si-ci +yx-vu +yk-ps +yk-wb +lr-ws +we-bw +pm-qm +ub-xg +bz-mw +us-zp +vh-ui +uc-dp +nl-ow +vt-jm +tf-pw +xl-kj +xp-oo +hx-fk +hv-re +tu-re +yz-vw +ja-ft +yz-do +il-ic +it-pn +fj-ps +cb-jl +am-uf +fw-pn +yb-if +ds-fv +ln-ex +ij-li +av-as +fw-it +cc-mt +dg-bq +sx-ur +uz-bo +cj-dg +uo-sk +vs-oz +wk-fx +nx-kx +ci-qt +jt-bx +hy-ts +hi-un +sm-go +ne-lr +tv-pl +nx-fh +vl-lv +lx-hf +rg-yg +in-bm +qx-wj +lp-ku +ol-tx +kh-wy +xn-yx +lv-ye +mb-qc +ic-jb +cv-xc +tt-cz +hr-jp +kb-tk +la-vn +qp-rx +vl-fd +fi-hm +nh-sm +fa-rl +ep-ls +si-qt +vv-ia +op-bo +st-ix +ui-eq +nf-di +fn-xk +oy-bv +jk-pq +ts-te +nc-la +va-pq +an-zo +rf-qs +jp-pg +zx-yi +nk-io +kd-ll +pq-gv +tv-wc +nb-ej +ki-vy +od-xy +kz-kk +vg-mb +cn-zh +au-pq +vs-hc +oj-xn +ul-bt +yu-tz +yf-ec +qf-sl +uz-op +yf-nz +ks-ln +eh-tm +em-nk +ss-vg +pj-nm +pv-cn +df-qk +cv-jg +ia-to +su-qj +eg-oa +tc-im +eq-nj +hk-hu +zq-kb +wu-dy +jm-ce +wh-hk +xi-tc +fx-rd +tx-at +mi-wm +xf-fn +yc-gm +sn-iy +my-zr +ue-tc +po-mw +ts-to +xu-re +fu-hq +kp-jg +vv-to +hi-fx +dj-qh +ev-uq +vv-te +wk-uz +ob-sp +br-so +yv-vv +nr-xj +vr-jh +xi-fw +hv-pj +lp-fy +hu-wr +hw-pp +oz-nd +ey-rh +in-cz +fi-mc +je-pq +xo-di +ax-wn +op-ij +pp-qc +cb-cc +nx-sl +lf-ir +mb-es +ea-fh +oz-jq +gx-mr +we-es +yq-kd +ji-sq +fx-ks +ev-rl +bm-cz +cv-ps +xi-jz +xm-jn +bk-vm +al-yk +ll-ko +kw-mf +ed-fk +kw-xf +ke-om +ip-ew +vr-cz +gc-gd +ku-gp +kn-cn +xh-an +lj-zx +tm-sh +wf-ja +ls-yw +nz-fv +yy-pv +fg-kd +bd-gj +ze-mf +kw-dc +fa-by +un-bc +zo-gc +gt-sl +dg-sh +sl-wa +ev-hp +an-gd +xx-fq +gj-ni +nu-qf +cv-wb +xt-cg +eb-xq +pr-oh +zd-cr +kl-pq +ez-qu +qy-zi +ds-xf +ks-bo +nj-bt +vp-gg +tc-fb +hl-ia +ob-qv +li-wh +wj-pq +kw-fn +bs-qp +vs-sz +fi-ro +ia-sg +hp-fa +kj-uz +zx-bg +qn-vy +vu-us +dy-cf +hc-an +vp-ul +ax-yu +nn-tt +ym-bm +ry-tz +yx-ja +mr-nu +nd-gs +li-ly +cc-uh +mn-xt +hu-ag +pm-wl +ja-xk +ba-un +nf-cl +rv-ej +lw-qe +em-ou +ld-vh +gs-vs +kt-yr +ij-wk +an-cp +or-iy +zr-eu +we-qk +om-ed +ij-bg +qp-il +ww-bo +cj-ur +yg-dj +au-je +tf-ps +tp-wl +qe-xc +zw-xx +eq-ic +cb-xr +fr-yg +hx-ke +wr-wo +po-xr +di-do +jk-kl +sw-fo +fr-cf +qu-ey +wh-az +co-ut +jf-qt +at-ol +jx-bn +de-sn +qs-qf +tj-dv +lx-aa +ys-wn +jz-np +nn-vr +xx-jz +cl-hb +js-zf +rn-xb +qg-dp +de-uc +uq-ec +vh-kh +sm-va +yz-nf +cm-iy +gm-qm +ky-pk +nu-gx +mw-jl +nz-dc +wd-sv +yy-rf +cn-xw +su-ft +mv-yg +it-mb +em-ya +jm-vc +nq-jp +lt-kx +yn-fv +lc-pj +tz-xg +tx-zg +bs-cp +je-wj +zr-sf +nr-ou +ft-og +on-ly +fh-ji +uo-fk +kv-xu +zi-lf +rh-ib +my-fe +js-nh +fa-dd +yd-fs +od-ym +yt-tz +mr-sl +ku-zo +tx-pg +gz-ev +bl-gm +ea-cz +fo-ml +jq-zg +oz-tx +de-iy +un-dz +rf-gx +kk-pl +fr-lr +nh-yw +fi-no +nw-yz +mn-cn +bm-up +qv-mb +kz-mb +yk-fj +wy-al +ly-eg +cy-yw +fd-ix +lx-pm +dv-wb +nk-eb +zt-oz +tu-iq +il-bt +fe-xk +xd-ec +fk-pg +mi-md +lt-uw +vi-bk +yy-cg +wo-li +hl-qi +jt-il +wa-nu +gq-gb +cy-ls +rr-gd +sx-lu +wm-xz +vx-pe +oy-sv +qf-dh +fn-dc +hc-zt +mb-hw +gx-uk +oj-sa +wq-or +xd-dd +pq-mg +op-zb +rp-do +gb-kb +tc-fq +ds-tl +cb-fi +mg-tb +mv-fm +aa-wl +ui-lk +eg-on +eu-md +tm-aq +iv-qd +jt-ra +fg-gm +uk-he +lp-gp +xx-kf +vg-pr +ur-qi +tr-bt +jx-ws +ou-eb +ui-co +jx-fr +ej-br +su-hs +vs-tx +qj-jk +lw-my +un-wx +dn-ig +bv-hq +hp-rl +ss-qv +rp-hn +jp-ff +bz-mc +na-lj +mg-je +ro-uh +ul-gg +nm-re +ne-dj +ld-co +pe-vl +nn-cx +zs-ce +xq-ob +db-sl +st-mk +pv-na +zb-wk +mr-rf +pp-fw +kw-qx +qd-uf +jf-qi +uu-rl +av-oy +wf-fe +zt-at +pj-xu +mc-xr +tv-fo +lw-md +mj-qm +tc-kf +gq-tk +cb-hm +yn-kw +hc-tx +eu-lw +fk-hr +rs-gv +or-gv +fh-be +mt-fi +he-gx +xu-yo +hk-ag +pn-pr +ks-ex +yc-kd +am-tv +ui-vi +yy-zx +hw-it +id-kw +aa-wu +wp-hp +vq-be +zo-qp +ab-hs +ja-vu +wf-xk +go-ig +dn-go +be-ji +cv-tf +ge-ss +xi-im +va-mg +dz-td +vg-qv +ve-xb +sk-ff +rx-bs +oj-uq +cz-od +xm-la +ip-qi +mf-yn +jb-gg +xt-zx +vz-to +vl-qj +eq-tr +wu-ia +ja-mp +sq-da +zw-jz +fu-bv +op-wk +ms-ya +pj-tu +ko-bq +ul-eq +ba-bf +rj-bg +al-jg +mb-pp +dy-to +wn-rb +vq-uw +rl-nc +bn-yg +md-fs +hv-kv +tp-of +yx-us +pg-sw +qp-nn +my-sf +oo-ax +nq-ff +dg-lu +qd-bc +rs-ez +ic-tr +vz-te +cp-qp +my-mi +sk-hx +ph-ld +ky-br +na-gb +uk-mr +rr-cp +xm-dp +td-kd +wu-vv +jm-zs +pp-ss +nk-ya +vx-mk +fe-xn +vn-yn +ya-ou +kc-nx +ji-kx +ro-mw +uq-hp +uv-cf +io-kt +nd-at +it-xb +rj-kx +ex-wp +fp-fb +kb-av +kz-tv +an-qa +qb-zd +mk-og +rb-oo +mp-vu +ro-mt +xv-na +dz-bc +fm-bn +rf-wa +an-gc +xc-ps +nm-lc +hk-as +yr-nr +ye-gj +uw-ji +nb-gy +sq-nx +rx-gd +yk-dv +tl-xf +am-jj +hf-sb +nv-fp +if-yq +ra-tp +oz-gs +pp-pn +ln-uz +ab-mk +ro-hm +bx-nj +qa-zk +ea-bm +dw-kz +bx-il +jw-yw +so-ej +bf-jj +tv-dw +fv-ze +pj-kv +ry-oo +qb-ir +zw-nv +mj-lx +io-yr +fe-ja +gn-bu +la-gr +jw-js +wj-kl +tz-ce +fi-cc +hf-ra +eb-io +aq-bb +jv-xg +hp-by +zb-bo +sp-nb +hx-ff +sq-rj +cg-xv +yr-eb +jr-kd +ex-ij +lc-re +es-bl +gr-tk +rp-di +mn-xw +gb-bv +qs-wa +an-qp +ev-yf +lu-aq +ms-dj +ut-vh +wb-ha +xz-zr +ga-iz +kx-dw +dz-uf +tl-nz +kn-sh +pj-hw +yi-cn +he-qs +sa-us +hx-bq +ky-rn +zt-sz +ph-ui +dv-al +lu-tm +pw-uc +zb-pp +az-li +lc-gn +he-dh +sm-jw +kf-nv +yf-by +hn-do +cr-df +st-og +hh-tl +hm-cc +fb-kf +cp-zk +im-jz +cy-hn +kg-aq +bz-cc +qq-ja +wc-gp +jv-xp +id-tl +ne-qh +jg-iz +ll-gm +ne-fm +uo-om +ft-ix +gr-vn +im-fq +ly-wo +oj-ja +vi-wy +qx-mg +bb-wn +ed-pg +hq-rd +ur-sh +fg-yb +gn-hz +hv-gn +ax-yt +kj-fx +hn-yz +od-in +tr-vf +no-mg +cz-up +qz-ey +wd-fu +fs-qe +ry-xg +hw-vg +yv-ts +go-ls +yc-if +ix-og +jl-ro +qz-ka +it-ge +ve-so +yn-dc +ye-qz +gd-sx +bu-hz +ci-hl +ha-vx +io-zq +wq-pw +gr-tq +cx-ea +uo-hx +uo-yq +hl-zs +ga-gj +as-hu +qc-jx +ko-kn +xp-ub +iq-nm +yg-jx +xk-us +tk-wd +ou-yr +av-gb +yy-xw +od-iq +ub-oo +kg-dg +vp-nj +ax-fp +xl-ln +ke-fk +zf-ls +gc-ji +if-at +rp-hh +gv-pw +jf-vc +sh-lu +xh-zo +jn-qg +xp-rb +do-cl +sz-in +nf-ow +rc-zk +cp-zo +pk-gy +sk-nq +dt-lk +hx-ed +rv-eh +eq-bx +wq-cm +lr-bn +vr-ea +dh-xy +ia-ts +ym-ea +kv-lc +nf-nw +zw-qy +cp-rx +kn-cj +xd-hp +mr-gt +rh-iz +dh-sl +jm-qi +nu-dh +xu-bu +zk-gd +jq-nd +xy-vr +bt-vp +qv-ge +gl-ve +bv-wd +xj-yr +if-lo +yn-tl +gb-zq +xi-ue +qs-sl +eg-wh +fo-ku +hg-qu +fs-mi +yd-xz +us-np +wp-gz +mn-zx +xu-mv +ir-zd +lp-fo +fh-kc +xy-in +nl-xo +tp-lx +vr-od +og-pe +mi-qe +qy-lf +om-hr +pe-qj +yr-ob +ph-dt +kf-br +uz-zb +kg-jq +jl-fi +ge-oh +co-vs +cf-te +xz-sf +gs-tx +my-eu +ou-kt +lr-yg +vu-sa +jb-vf +mj-wl +ch-je +mk-qj +yz-di +eb-nr +wm-my +ne-mv +rg-fr +ks-op +uk-ew +cj-oy +rn-gl +nn-od +jn-tq +sn-uc +yr-nk +lk-vw +la-qg +iz-ib +wu-hy +kt-nk +cz-jh +fx-op +hx-om +ym-lj +cb-uh +nu-gt +qe-le +xx-fb +to-hy +ky-ve +ct-zd +tj-jg +fo-fy +lv-ib +id-xf +kz-fo +fj-al +zt-jq +jz-fq +iy-rs +tm-cj +uu-ev +zf-go +ko-dg +gn-pj +dj-lr +hu-az +tq-qq +fd-og +mg-jk +oa-as +ww-gp +dj-bn +pm-of +ga-rh +sq-gn +vx-ix +rt-wd +mn-cg +kg-sx +mk-su +bo-rd +bd-rh +bg-kc +bl-if +as-wh +kv-gn +by-uq +jw-nh +tm-kn +qe-sf +ps-kp +ce-qi +ge-pn +tc-fp +ko-sh +de-ez +nr-em +dd-wp +iz-ka +yu-jv +iq-hz +hc-nd +zf-ig +nw-xo +xc-fj +av-tk +vv-uv +uz-ij +zt-bt +pw-de +bl-xs +ou-ob +wp-by +pn-kc +be-jl +hn-nf +xt-zg +iy-ez +qz-ga +yw-ep +wf-xn +yq-ll +gl-ky +kl-au +hz-hv +nm-xu +xm-nc +gp-jh +av-hq +zd-lf +qq-vy +as-az +nr-io +nw-np +dm-qz +nw-hg +qm-aa +qs-gx +aq-ur +bl-lo +vm-co +kp-xc +aa-sb +ry-yu +rl-ec +mp-sa +ms-ws +ys-xp +zp-vu +xw-zx +tt-vr +wb-jg +xk-oj +hh-id +xb-so +yr-jj +na-zx +dw-kk +hq-rt +dw-wc +no-kl +lp-wc +zp-sa +io-ya +vl-hs +wp-uq +nm-kv +ip-qt +ix-ab +kn-lu +zh-cg +gy-rv +up-nn +gd-qa +mc-mw +gx-wa +uv-ia +bq-sx +hb-di +qc-ss +ln-kj +rt-gq +rv-rn +do-nl +hg-ez +vn-ki +yx-sa +gn-nm +kl-je +nq-hr +mc-po +dn-cm +yq-fg +lf-ct +tb-pq +lc-bu +hr-sk +pl-wc +rl-dd +vz-vv +bc-uf +bc-iv +eu-wm +yv-uv +ps-al +dy-ts +xk-vu +yc-ll +wd-hq +by-ec +lp-zh +nv-ue +uq-gz +do-xo +gv-cm +dg-bb +sg-vv +xq-nk +nb-br +cc-po +gs-ve +yx-oj +bg-da +nd-tx +gj-vm +ib-uh +fe-sa +cy-ig +uq-uu +zm-kd +zm-fg +yo-bu +ew-qi +dn-ls +vf-bx +bz-ro +ig-qn +pv-zx +wm-fs +rv-gl +yf-wp +cr-rg +xx-nv +bs-xh +bb-tm +cv-yk +hy-sg +fm-ms +xj-ya +zr-yd +nv-bp +ry-ub +wq-hg +rp-vw +by-ni +xv-gz +mw-uh +tj-go +jj-uf +ps-jg +hn-nw +uo-ke +fw-hw +bb-sh +ll-jr +ew-jm +la-mt +nw-rp +tp-hj +mc-mt +vi-ld +lw-ka +ab-vx +fh-bg +br-gy +bf-wx +ny-hb +rx-rr +as-wr +cy-dn +mt-bz +qk-qy +da-uw +cn-lj +zw-tc +by-xd +xp-ax +ab-ig +mv-lr +bx-vp +kc-uw +ld-kh +dh-uk +wu-to +wj-zy +ft-ab +ly-ag +ra-of +uw-be +jv-rb +ys-xg +hs-mi +tc-nv +ch-no +dv-fj +sm-ls +wq-rs +mv-ms +xw-xt +kx-bg +wb-al +nl-di +ol-zt +fu-kb +tp-mj +wj-va +gt-qs +yi-pv +ne-jx +fy-gp +ij-zb +zk-ly +nl-hp +hj-pm +ba-bc +md-sf +zp-fe +ch-kl +sp-nr +xr-uh +ji-lt +xl-ex +my-mc +or-de +ob-io +li-hk +ji-bg +tm-kg +le-md +bf-iv +rp-cl +gc-xh +zp-cv +hh-dc +rr-qa +dn-jw +fk-ff +tk-hq +go-ut +vz-ia +su-sn +gz-xd +ou-nk +wy-dt +tb-je +ni-iz +eu-qe +ou-io +ny-gr +pl-dw +yk-ha +bw-ct +wc-ww +hl-jf +gq-wd +mn-lj +gm-jr +ir-bw +rd-ln +kh-lk +cv-kp +mv-qh +sx-bb +at-hc +yk-ds +we-lf +ub-yu +gc-qp +fx-zb +ff-ed +bt-ic +rv-fg +uh-mc +vh-dt +zg-oz +qb-zi +bt-yt +rg-ms +kh-bk +qy-ct +rs-hg +cy-sm +ks-wk +vp-jb +zd-qy +kj-op +xn-ja +fq-xj +gb-oy +uh-mt +po-bz +zk-qp +fv-xr +mf-nh +rc-mr +dm-xo +tt-sk +ww-ml +fw-qc +if-xs +su-fd +nf-vw +uf-iv +cx-tt +ag-on +vv-cf +si-vf +do-nf +sz-cq +pw-rs +bp-tc +fm-yg +yf-dd +ye-ni +vq-lt +ej-gy +vw-xo +uh-jl +cc-mc +fq-fp +fq-ue +tx-jq +da-kc +nf-nl +ue-bp +vi-vh +ua-bp +ej-eh +pr-it +pg-hr +nc-dp +wf-us +rr-kw +cn-cg +uw-bg +iy-pw +rf-qf +gt-db +ub-tz +pg-ke +mw-xr +pm-bc +qt-vt +di-cz +jq-ol +hv-nm +hc-gs +ny-la +vw-cl +ph-ut +wp-uu +df-lf +fh-sq +sv-re +xs-kd +eg-as +zf-qn +st-vh +fs-le +vh-lk +us-ja +uo-pg +ut-ui +od-cx +gs-sz +fj-cc +cm-de +le-sf +rl-mw +kl-cv +iz-dm +ew-jf +dc-tl +xx-fp +mw-mt +go-cy +ou-wr +we-cr +wk-nv +iz-ye +vw-di +mn-xv +eh-nb +ep-qz +oo-yu +ds-hh +mv-fr +au-va +xm-qq +zg-sz +eu-fs +ze-kw +uq-yf +wj-ch +ph-vm +qq-vn +lt-da +mc-hm +ro-po +ls-jw +rr-bs +bx-ic +ha-ps +au-wj +gc-rr +vs-jq +jk-vi +tt-in +cx-jh +ua-tp +bt-eq +ft-qj +kf-fq +nv-fb +xq-qb +rc-rr +ix-pe +vx-vl +xk-zp +it-ss +mp-co +ki-tq +qm-wl +am-hi +wf-oj +xo-ow +rl-uq +oa-hk +va-jk +ij-rd +co-vh +rd-kj +sh-aq +wx-uf +gt-uk +tv-gp +iz-bd +ln-xw +lx-sb +nc-vn +zd-zi +si-ce +lx-oh +ro-cc +lx-hj +ly-hu +so-pk +wm-md +xl-ks +sf-eu +op-ex +dp-qq +un-qd +fx-bo +hv-iq +ez-ec +xm-gr +ib-ga +dp-ny +tr-vp +ow-do +td-ir +xj-eb +aq-fq +on-hk +zg-gs +ag-li +he-nu +wh-oa +uc-hg +oh-fw +jz-fb +ry-xp +np-sa +qf-uk +rl-yf +lt-be +xv-pv +kf-xi +qs-nu +hz-xu +fi-po +qf-eg +td-qd +yr-ya +tp-ws +rf-dh +we-qy +jj-td +ol-hc +ld-ui +ze-yn +lw-zr +vv-ts +fn-fv +ig-ls +gs-at +ew-vt +zf-pl +im-zw +si-hl +gt-rf +xg-ax +ax-ys +oj-us +bo-kj +wu-kj +dh-db +tl-fv +wd-zq +em-xq +ip-ci +fj-cv +fa-xd +xb-rv +op-xl +xz-le +tq-nc +jz-ue +al-kp +hq-oy +ze-nz +gj-qz +pm-hf +un-lr +ys-yt +bz-jl +vy-dp +ab-qj +fi-uh +tu-hv +bf-jw +kn-sx +nl-hb +fe-np +ky-ej +cf-sg +gt-he +ew-si +xr-mt +nv-im +ec-hp +ki-ny +es-qb +ui-vm +fj-wb +vs-nd +zy-va +eg-hk +uv-ts +bl-yc +zs-ga +lo-ll +ba-qd +md-zr +ev-dv +uh-hm +xq-yr +hf-mj +lv-qz +ob-ya +cq-nd +sn-qu +vi-ut +pk-gl +rl-xd +wn-jv +mp-fe +ua-hj +iy-gv +nn-in +lv-ni +am-ba +nq-hx +nj-tr +qe-dt +ax-ub +te-sg +ej-xb +yw-ig +zp-yx +ds-id +jj-bc +jf-zs +ko-ur +tb-qg +hh-nz +il-jb +so-gl +fm-ws +dh-qs +yx-wf +sb-oz +ve-nb +ye-ib +np-xn +wx-bc +eu-no +jx-qh +jr-yc +yt-wn +yf-hp +kf-ue +so-gy +wr-az +yd-xd +xh-zk +ea-nn +df-we +yz-nl +qi-qt +vn-tq +cq-at +yd-my +pg-hx +dz-iv +vl-og +kg-kn +ml-ku +tp-aa +fe-us +jb-bt +eq-vp +ds-vi +gy-bx +ds-nz +ro-ky +xy-ym +da-fh +rx-gc +xq-ou +le-de +la-ki +vc-zs +bs-zo +rs-bk +rn-so +kc-rj +sm-ig +ej-rn +xq-sp +kg-sh +bq-lu +lc-tu +bz-xr +ou-sp +ze-dc +uu-xd +jl-hm +ua-hf +jn-dp +cx-xy +hi-td +he-mr +zy-tb +sk-ke +ld-lk +az-on +ir-we +rh-ni +gt-wa +as-ly +kb-bv +fd-yz +ra-aa +rj-vq +fp-kf +hv-lc +rd-ex +ze-fn +oo-tz +qk-es +ea-in +fm-dj +mb-pn +ui-bk +yf-xd +qq-la +qc-it +dy-vv +kl-mg +sx-ko +zp-xn +kl-tb +no-tb +il-eq +st-pe +iz-lv +am-iv +zb-ks +yn-ds +dm-ye +nf-rp +jt-vf +tv-ml +bu-kv +es-lf +xx-im +qj-ix +hy-cf +fm-so +sz-tx +gv-qu +ka-ni +wr-ly +og-hs +wh-wo +gz-dd +le-yd +lf-bw +va-ch +pr-qc +fp-ue +zs-rx +fu-da +in-up +kt-eb +lj-cg +au-tb +mj-hj +dz-am +qn-sm +su-xf +fw-qv +rf-sl +dy-te +qs-ub +tu-xu +jt-tr +dp-ph +ag-as +jx-lr +yi-xt +cx-in +zi-cr +dw-fy +re-kv +zs-ip +fb-fq +sk-om +ec-gz +qx-ch +ue-xx +bs-rt +uh-bz +lv-bd +hl-ce +zm-if +rt-av +ag-wr +em-eb +vu-xn +cx-vr +kz-gp +rc-qp +by-uu +re-pj +qv-pr +ld-vm +mv-jx +cy-ep +oo-nl +ex-uz +ob-xj +dw-lp +ki-sf +mv-dj +fa-mg +ir-zi +qa-rx +bp-jz +ew-hl +gq-zq +fa-uu +nd-zg +vc-ew +yz-xo +dt-ut +mi-eu +sb-zy +jp-sw +tf-fj +gd-cp +kg-bq +fb-zw +xq-xj +yc-yq +jg-xc +lr-ms +pm-mj +po-kh +on-oa +li-on +xm-ny +zp-wf +nf-hb +da-kx +ut-lk +yi-xv +jh-in +gl-eh +sz-at +ts-cf +eq-jb +ep-ig +tz-ax +ki-kn +lo-yb +ea-xy +db-nu +hj-sb +ni-ga +pk-br +yq-jr +qj-og +hh-yn +fo-ww +zi-mk +cm-rs +xb-br +sl-he +qa-xh +fy-nk +sq-vq +bq-sh +ws-fr +lc-iq +go-js +wa-he +dv-jg +qv-pn +zf-ep +gg-eq +ha-cv +up-jh +tb-qx +zr-mi +vw-nl +no-va +vx-su +dc-fv +au-jk +ne-fr +zx-cg +bq-cj +lw-yd +ys-ub +fu-gb +ib-bd +jw-cy +zr-fs +di-cl +ex-zb +jn-la +lr-rg +cx-cz +ww-pj +bu-re +gr-vy +hl-vt +mt-cb +hz-nm +ss-pn +va-qx +hy-ue +gl-br +ev-wp +bo-ex +av-gq +cv-dv +dv-ha +cr-lf +rj-be +am-wx +hm-nf +cb-wq +kk-fo +dm-ka +hi-uf +yw-dn +qd-bf +cy-js +nq-ke +oo-wn +sm-js +vz-ts +hk-wo +qs-db +al-tf +pl-kz +wr-li +uo-nq +ye-au +wx-dz +rx-xh +pr-ss +wf-mp +gz-by +of-mj +cr-es +su-ix +hl-vc +bd-ey +og-ab +md-qe +wq-ez +xw-pv +ep-go +qg-tq +nu-uk +iq-yo +sz-jq +gl-qk +nx-bg +zk-rr +pq-ch +wy-ut +or-hg +nd-sz +sb-qm +qm-ua +yt-jv +eh-pk +jt-jb +un-am +tk-fu +il-vf +mj-mr +qy-es +od-up +qg-vn +om-nq +an-rr +kh-ui +qi-zs +qm-hf +of-wl +cn-xt +xz-mi +xb-pk +nr-nk +ml-gp +mf-fv +im-ne +zg-vs +qq-jn +qk-cr +sb-wl +ko-tm +sl-gx +xg-wn +dv-kp +cq-zg +dp-la +sn-rs +hs-qj +xs-gm +jp-uo +xu-gn +ip-jf +xy-bm +js-ig +sn-pw +vm-kh +ea-jh +nq-pg +vr-up +zk-bs +aa-of +re-yo +jp-hx +xl-bo +pe-su +ln-zb +uo-ed +eb-sp +zq-ke +em-kt +bp-fb +ir-qk +hh-xf +by-rl +fu-rt +bw-qk +ub-jv +fm-fr +bw-zi +gs-cq +dp-vn +nh-cy +oh-pp +lw-fs +bo-wk +ue-zw +ft-pe +kh-co +pv-zh +pp-ge +bx-tr +vh-vm +uv-hy +ft-fd +xo-cl +ve-ej +kg-bb +da-vq +bu-iq +fo-wc +ve-pk +xy-nn +ra-pm +ye-bd +wl-ra +rg-ws +bk-ld +up-ea +jh-nn +jx-ms +sn-wq +iz-ey +zi-qk +bt-vf +hr-dc +hx-sw +bp-xx +gx-gt +dv-xc +dc-xf +uz-fx +jn-tj +ja-sa +hf-hj +nx-vq +ch-cl +yv-sg +jp-sk +so-rv +yy-lj +kc-kx +if-gm +gj-dm +td-am +wx-ba +dh-gx +ga-ka +kt-nr +kx-uw +db-kb +yw-qn +ua-aa +bk-co +jj-qd +wn-ry +cx-bm +vq-fh +dh-wa +ps-wb +xo-nf +rc-gd +rj-nx +bv-tk +xi-fp +sb-pm +ct-cr +fy-tv +bm-vr +kn-bq +am-bc +ph-vi +zk-an +hz-tu +tu-nm +ez-uc +eb-ya +tk-oy +em-io +yv-vz +bq-aq +pr-hw +xn-sa +zt-tx +rp-nl +oy-zq +ed-sw +wl-hj +vq-kc +zh-na +bx-jb +sx-dg +fp-im +ml-ag +ja-zp +jr-if +cl-yz +bm-tt +rt-kb +om-pg +az-cz +ip-vt +fn-ds +hm-xr +pw-ez +qf-gt +vy-ny +sb-ra +ej-pk +qq-ki +ch-mg +ro-cb +yx-np +pv-cg +aa-mj +gp-kk +ga-dm +pp-it +xl-uz +ce-qt +as-on +xn-us +zd-bw +hz-lc +ym-cz +qx-au +dc-id +ly-wh +kx-fh +hb-vw +sh-sx +pj-yo +vt-rv +td-un +xb-ky +bl-fg +rs-de +li-hu +ky-nb +je-va +ic-ul +xw-na +wy-bk +bp-kf +uc-rs +zp-mp +of-hj +or-pw +nm-df +dm-bd +pw-hg +ni-dm +aq-sx +gq-hq +rf-nu +jt-ul +lc-xu +hb-yz +qt-vc +yg-ms +jj-hi +hh-fn +ff-hr +rb-ax +ui-wy +ku-ww +yd-sf +wj-tb +kp-wb +ln-op +bp-xi +vl-su +ur-kg +vt-si +al-cv +xm-vy +yd-md +or-qu +hz-yo +yn-fn +wd-oy +zq-sv +qh-ms +ze-ds +tr-il +nh-qn +kf-im +mc-jl +fe-yx +ws-bn +yo-hv +ko-kg +be-nx +un-bf +hn-hb +nj-vf +bb-wa +kd-if +vp-jt +kt-xq +co-dt +js-ep +wl-jv +ha-tj +wa-uk +ow-nw +gr-qg +qh-bn +gj-rh +hy-te +to-te +em-to +jn-nc +vu-eb +to-sg +al-ha +ed-jp +ll-if +fk-sw +ba-hi +vz-sg +au-ch +vc-ip +zw-bp +jf-si +of-qm +jw-ig +nl-hn +gb-wd +jt-nj +vx-st +nd-ol +xk-yx +rg-ne +rb-yu +hp-dd +id-ze +rg-jx +sp-io +yd-mi +rs-or +de-qu +ir-ct +ob-eb +wb-ow +ea-od +gc-cp +nk-sp +nc-vy +sk-pg +gr-qq +qu-wq +bl-zm +yv-wu +ol-sz +xl-rd +xi-zm +ey-ka +jw-ep +rc-an +pq-qx +lr-qh +bx-hu +xt-zh +fj-tj +zq-av +zo-rx +hg-iy +iv-un +ls-nh +aa-pm +dj-yc +kh-ph +xt-pv +ji-vq +wm-sf +cn-xv +fs-sf +cl-hn +ml-pl +xi-nv +sm-ep +fs-xz +ij-ks +wo-as +hz-re +db-wa +xq-ya +lo-kd +zr-le +ep-nh +xf-mf +rb-yt +qt-at +hl-ip +si-vc +ft-mk +xq-io +jn-ny +yd-eu +qc-qv +of-jf +ez-sn +lv-gj +xc-tj +ze-hh +eh-ky +ch-jk +yt-ub +uo-ff +sm-dn +ex-wk +nh-dn +st-vl +dw-gp +sb-ua +pe-mk +zh-zx +vp-yi +ys-yu +vy-tq +fk-jp +dw-ml +dd-by +oa-wr +ul-tr +lf-qk +yy-cn +fu-sv +wc-kk +ua-ra +fi-bz +lo-yq +nz-yn +lu-ur +sm-yw +kt-xj +iv-wx +rj-uw +te-wu +fu-av +do-md +yi-cg +fm-xg +xs-fg +pr-ge +aq-dg +bq-ur +ww-fy +rt-oy +mn-on +fy-kz +qe-yd +sb-of +zy-ch +mf-nz +iq-gn +nb-pk +kn-ur +bn-ci +tm-bq +xv-xw +we-xp +nk-cx +tb-ch +jm-jp +oh-vg +ys-oo +ve-eh +tp-sb +cf-yv +ka-bd +ge-qc +vg-qc +df-qb +br-rn +no-wj +oh-mb +wa-qf +rx-zk +lt-bg +dy-uv +kx-sq +zb-kj +it-oh +kk-lp +cg-nq +vt-ce +cg-xw +mr-dh +fa-yf +lu-kg +kj-ex +qk-qb +rt-sv +vu-fe +ec-wp +vc-ci +rc-cp +xf-fv +xn-xk +dm-ib +ba-iv +dw-ww +lw-le +sv-hq +ys-rb +kw-tl +sq-bg +vn-vy +qs-uk +tf-wb +xz-eu +yk-jg +vg-it +gt-dh +zt-cq +ci-jm +id-nz +rj-lt +vz-zd +mw-cc +yb-ll +nc-qq +hz-pj +cx-up +lp-ml +wc-jx +rs-qu +uz-yg +ol-cq +ku-kk +nv-fq +rg-bn +lv-ga +gb-sv +jt-gg +di-nw +ew-ci +gq-sv +pr-pp +jb-nj +hm-mw +lo-ts +oj-fe +dg-gg +qe-zr +xr-ro +xq-nr +xc-yk +ki-xm +zh-xw +cj-bb +ze-xf +ob-em +nn-ym +cf-to +lj-xv +vq-zd +gg-bt +le-mi +yt-xp +cq-tx +ed-ke +ib-qz +mv-ws +ua-pm +vv-ss +jl-xr +wo-ag +em-yr +fj-jg +rc-xh +it-qv +ci-zs +sp-kt +ew-zs +ff-om +gv-ez +zm-lo +kt-yo +bn-fr +yg-ne +hh-fv +ml-fy +lk-vm +pg-ff +kj-bw +ip-si +uu-hp +yw-go +nw-hb +wr-eg +de-wq +hj-ej +zr-wm +oh-qv +fk-uw +cy-qn +ed-nq +up-ym +pl-gp +hn-vw +uq-xd +ep-dn +ge-fw +fr-qh +sf-mi +ua-of +ph-wy +jz-tc +df-qy +vt-qi +wo-on +dc-ds +vy-jn +tf-tj +ic-zm +fa-gz +hj-qm +uf-rj +bm-jh +st-fd +xs-yb +sw-ke +br-rv +rn-nb +ia-te +il-ul +ph-bk +zd-we +nr-ya +fh-rj +ut-ld +ul-nj +ci-qi +rh-ka +yy-yi +ce-ci +lt-xj +wj-xn +yt-oo +iz-qz +da-ji +ka-lv +zo-gd +cl-ow +bp-im +bs-an +ex-fx +vw-ow +uk-rf +zt-nd +sg-dy +zs-vt +zw-fq +vv-hy +al-xc +sq-uw +gg-bx +wf-vu +hv-qd +uc-gv +hz-kv +fo-gp +yy-xt +sl-uk +of-lx +wo-az +vs-cq +ps-tj +vr-ym +rt-zq +vx-ft +dm-rh +un-jj +be-kx +pe-wp +je-no +hi-wx +ph-co +ir-qy +fj-ha +mn-pv +mt-hm +dd-ec +vl-ft +hu-oa +wh-ag +fa-ev +qu-pw +wf-np +ab-su +wx-td +sm-zf +jq-at +bo-ij +nm-bu +pk-rn +or-id +bl-kd +vc-vt +hj-aa +yu-ll +vc-qi +ep-qn +we-qb +fn-nz +ss-mb +zm-xs +sx-tm +xg-yu +lc-xt +jn-gr +xn-mp +qg-ny +zf-nh +kc-sq +db-he +cl-nl +ki-qg +oo-xg +xh-qp +cy-zf +ip-jr +xh-cp +bo-ln +zm-yb +hp-gz +ec-ev +bu-tu +wc-fy +vz-cf +ey-ye +sq-be +ww-tv +lj-xt +fd-vx +vx-og +tu-kv +ka-ib +dz-hi +xd-ev +yo-lc +pm-tp +nn-bv +tt-jh +ww-lp +uu-dd +zw-kf +kc-ji +bq-bb +bn-mv +uw-nx +bv-rt +xv-zh +ws-ne +fa-ec +vg-ge +dj-jx +or-uc +hw-ss +to-yv +zi-we +fb-im +av-wd +xs-yc +fd-hs +yi-mn +di-hn +il-vp +kw-nz +xm-tq +nc-ny +qe-xz +om-sw +gl-ej +qb-ct +ce-ip +hy-ia +la-vy +df-ct +vz-hy +ir-df +iq-kv +uc-wq +mg-zy +wo-oa +xi-zw +bs-gc +hb-ow +am-qd +gj-ge +bn-ms +do-nw +ph-lk +ol-gs +od-tt +xy-tt +qt-jm +lt-fh +yw-zf +eh-br +hs-ft +vn-ny +ny-qq +gs-zt +kn-aq +hw-pn +ha-xc +vn-jn +yv-dy +xo-rp +qa-zo +zt-zg +wy-ld +kp-ha +mr-qs +qn-go +zk-gc +uq-fa +vu-np +ff-ke +yb-yc +tz-jv +fw-mb +xu-hv +kb-hq +hj-ra +tj-yk +ic-nj +xs-lo +ym-cx +vg-az +qv-hw +hs-vx +oy-kb +hw-oh +jq-hc +gb-hq +gj-ka +bs-qa +na-yi +rx-rc +gm-kd +rx-an +bk-lk +az-eg +ze-rh +xx-tc +sw-sk +ga-ey +uv-wu +po-mt +qc-hw +lw-xz +ry-rb +qy-cr +ra-qm +uh-po +im-ue +je-jk +uo-hr +hq-zq +he-ol +ip-jm +zy-kl +kz-ku +ll-xs +dz-jj +ix-xm +lp-kz +hi-iv +yo-tu +qg-qq +tp-hf +ij-fx +kg-cj +qn-ls +dg-kn +sv-bv +rf-he +ub-wn +sg-sh +ax-ry +ws-dj +jk-zy +bd-ga +dg-ur +tf-dv +qh-rg +rd-wk +qv-pp +oj-zp +ig-nh +dj-rg +zo-zk +yc-zm +nb-rv +ve-rn +wh-wr +ss-fw +xm-vn +zi-es +pv-lj +bv-vs +tt-ym +od-jh +qh-xz +hf-of +bl-yq +xo-hb +yi-zh +oa-az +yx-mp +jn-ki +ws-yg +jm-hl +zw-fp +my-le +tb-va +sa-xk +oa-kp +om-ul +zg-ol +vm-ut +nk-ob +rc-bs +gq-fu +np-oj +yu-yt +tu-ks +ia-cf +zt-vs +my-md +yz-rp +id-fv +tm-dg +zd-qk +hy-dy +wd-kk +je-sg +nc-gr +nb-gl +co-lk +dw-ku +eg-wo +sw-hr +vw-do +xz-my +hf-ct +kd-yb +si-qi +es-ct +dt-vi +kw-fv +dd-uq +ym-in +hg-sn +tj-al +vl-mk +re-iq +xg-xp +mn-zh +oa-li +yv-hy +ba-jj +hs-st +ic-vp +fq-bp +qu-iy +fp-jz +rf-db +rh-ye +qe-wm +lp-pl +rn-eh +on-wh +zg-hc +ab-vl +cq-jv +lt-sq +gq-bv +di-ow +xp-yu +rg-mv +fm-lr +fr-dj +qt-hl +uv-sg +bz-hm +qu-uc +om-jp +xd-wp +gy-rn +pl-ww +dz-pr +hg-de +qx-no +dm-lv +xg-yt +mw-cb +bm-nn +rb-ub +vq-hk +kx-vq +wq-gv +xi-fb +rj-ji +ry-jv +xj-io +oh-qc +mc-cb +ol-vs +fg-yc +sz-hc +tz-ys +wy-co +vr-in +gn-re +li-eg +js-uu +kj-ks +jg-ha +gz-uu +zr-jw +qt-ew +ve-br +cm-qu +ua-lx +hs-pe +vp-vf +mf-id +wu-cf +tz-xp +rd-uz +up-iv +vx-qj +he-qf +on-wr +jb-gt +so-nb +ix-mk +kv-yo +xs-yq +zp-np +tr-gg +qz-ni +nq-sw +kf-jz +qx-kl +vh-ph +xh-rr +sp-em +nb-xb +mi-lw +jr-zm +nd-wh +xr-fi +gq-tr +jg-tf +wh-hu +xh-gd +ua-mj +mn-yy +rr-zo +mp-xk +kh-vi +hi-bf +wm-lw +yt-ry +xf-nz +ye-ka +om-qa +wf-ls +fg-if +jw-qn +xk-np +ct-zi +kz-wc +tm-ur +zb-xl +tl-ze +fd-ab +jv-ys +rt-tk +wj-jk +ve-gy +va-kl +bl-yb +zo-rc +cb-bz +us-mp +jj-wx +cj-sx +ea-tt +av-sv +rp-ow +es-df +dt-vm +lu-mj +gx-qf +gy-xb +ba-dz +tk-sv +og-iq +av-bv +yk-tf +tk-zq +fo-pl +yy-xv +qb-lf +uf-td +qx-jk +nu-sl +ce-jf +qb-bw +yq-gm +pe-fd +ou-xj +fr-ms +eq-vf +ue-fb +lv-rh +ua-wl +vi-vm +oj-vu +yv-ia +cq-oz +zb-rd +st-ft +xx-xi +hb-rp +kv-ly +uc-iy +sp-yr +bl-jr +ut-bk +bt-jt +zy-qx +ed-hr +jt-ic +fw-pr +sz-oz +yz-ow +da-nx +wr-hk +cc-yx +mb-pr +iy-sa +rr-qp +ev-by +dm-ey +dw-fo +fu-oy +vt-jf +gg-vf +de-gv +pk-rv +vg-pn +ry-yv +vg-pp +hf-wl +up-tt +xs-gx +kk-fy +ib-ey +ba-ky +tq-ny +il-gg +cc-xr +gl-gy +bu-hv +da-be +cr-ir +tf-xc +db-qf +fx-xl +ci-jf +cp-qa +ed-rb +mp-oj +uz-ks +fi-mw +ul-vf +hh-mf +na-cg +az-hk +wc-ml +ps-qf +ji-nx +jp-ke +wb-xc +wb-tj +bf-bc +np-mp +qn-js +oo-jv +yb-jr +gc-qa +rc-qa +ha-tf +xz-md +od-bm +sn-cm +lo-gm +un-uf +qy-bw +tq-bd +ag-az +qj-fd +wm-le +rl-gz +qm-lx +td-bc +pl-ku +fy-ku +rj-da +wd-kb +wf-sa +mg-au +mf-tl +hz-xh +tq-la +gn-yo +iq-xu +ew-ce +ut-kh +tl-fs +hn-ow +pn-qc +lu-cj +xb-gl +tv-kk +op-rd +hb-do +mn-na +id-yn +zd-df +zh-yy +aq-ko +no-pq +at-zg +bl-ll +ob-nr +ld-dt +vz-uv +ic-gg +ys-ry +qb-cr +ce-vc +zi-df +jz-nv +cj-ko +jr-fg +ey-gj +fj-kp +dc-mf +te-yv +ob-kt +or-sn \ No newline at end of file diff --git a/2024/input/24 b/2024/input/24 new file mode 100644 index 0000000..d608f73 --- /dev/null +++ b/2024/input/24 @@ -0,0 +1,313 @@ +x00: 1 +x01: 1 +x02: 0 +x03: 0 +x04: 0 +x05: 1 +x06: 0 +x07: 1 +x08: 1 +x09: 0 +x10: 1 +x11: 0 +x12: 0 +x13: 1 +x14: 0 +x15: 1 +x16: 0 +x17: 1 +x18: 1 +x19: 1 +x20: 1 +x21: 0 +x22: 0 +x23: 1 +x24: 1 +x25: 0 +x26: 0 +x27: 1 +x28: 1 +x29: 1 +x30: 1 +x31: 0 +x32: 0 +x33: 1 +x34: 0 +x35: 1 +x36: 0 +x37: 1 +x38: 0 +x39: 0 +x40: 1 +x41: 1 +x42: 0 +x43: 1 +x44: 1 +y00: 1 +y01: 0 +y02: 1 +y03: 1 +y04: 0 +y05: 0 +y06: 1 +y07: 1 +y08: 0 +y09: 1 +y10: 1 +y11: 1 +y12: 1 +y13: 1 +y14: 0 +y15: 1 +y16: 1 +y17: 0 +y18: 1 +y19: 0 +y20: 0 +y21: 1 +y22: 1 +y23: 1 +y24: 1 +y25: 0 +y26: 1 +y27: 0 +y28: 0 +y29: 1 +y30: 1 +y31: 1 +y32: 1 +y33: 1 +y34: 0 +y35: 1 +y36: 0 +y37: 1 +y38: 1 +y39: 0 +y40: 0 +y41: 0 +y42: 0 +y43: 1 +y44: 1 + +mrg XOR wrd -> z32 +x36 AND y36 -> pfc +sqk AND jcq -> bmc +tfh AND nkd -> jrd +x19 XOR y19 -> mcv +x39 XOR y39 -> ksf +rtb AND whc -> jsf +x00 XOR y00 -> z00 +vjg XOR jgc -> z37 +y02 XOR x02 -> qpd +mrg AND wrd -> vcm +x34 XOR y34 -> bgg +nbb OR vjc -> bwm +y25 AND x25 -> dbt +vmj AND wtw -> nbw +vcd OR vch -> nhh +pmg AND rnc -> dmp +y21 XOR x21 -> sbs +wbw AND qwr -> dqm +gdt XOR nsb -> z43 +nsb AND gdt -> dnc +x09 XOR y09 -> mnm +x28 AND y28 -> shp +x10 XOR y10 -> cvv +kdn AND pbv -> mhd +sgk XOR krk -> z41 +gwh AND cvv -> pgn +x06 XOR y06 -> hsn +dfq OR dbt -> kgs +x25 XOR y25 -> nfm +mcv XOR ppf -> z19 +x36 XOR y36 -> dkj +dtn OR nnq -> svk +dkj XOR dmj -> z36 +y41 AND x41 -> kfp +y40 AND x40 -> qhf +hnj OR bmc -> kpf +dmj AND dkj -> vnw +y04 AND x04 -> dtn +x38 XOR y38 -> spg +spg XOR bwb -> z38 +fjr OR jgh -> whc +pjg OR cvk -> z45 +y30 AND x30 -> rvc +qwt XOR nhk -> z40 +nth OR rvc -> mwg +rtb XOR whc -> z28 +sgk AND krk -> qvv +x38 AND y38 -> crp +svk XOR sfn -> z05 +jrd OR ktg -> bgh +x23 XOR y23 -> gcj +y07 AND x07 -> vjc +jct OR hvf -> nhk +nfm AND vsw -> dfq +y44 AND x44 -> cvk +pfc OR vnw -> jgc +mjf AND qrw -> jgh +gcj AND grk -> cdw +gvt OR hhb -> tjc +nfm XOR vsw -> z25 +spg AND bwb -> wjg +bgh AND pvj -> vcd +jcq XOR sqk -> z01 +y31 XOR x31 -> tkw +pmg XOR rnc -> z33 +x11 AND y11 -> cbm +x43 AND y43 -> bmf +kgk AND sbs -> z21 +kvw AND bgg -> gwm +x17 XOR y17 -> tdb +kfp OR qvv -> pwt +y37 AND x37 -> nbc +y42 AND x42 -> qjp +x29 AND y29 -> bqn +hbn OR dmp -> kvw +y10 AND x10 -> bcw +x21 AND y21 -> knb +x16 XOR y16 -> vgb +y20 AND x20 -> vwh +cjh XOR hsn -> z06 +grk XOR gcj -> z23 +sbn AND pwt -> qwg +mnm XOR gqb -> gwh +tdh XOR jrb -> z44 +y04 XOR x04 -> ptv +vwh OR vvc -> kgk +wtw XOR vmj -> z29 +jrb AND tdh -> pjg +jbp AND wtc -> pfh +y27 XOR x27 -> qrw +tkw AND mwg -> vmq +x29 XOR y29 -> wtw +x44 XOR y44 -> jrb +qwg OR qjp -> gdt +x28 XOR y28 -> rtb +y16 AND x16 -> fhn +pfh OR gpq -> ppf +kgs AND jkt -> wtd +nhh XOR vgb -> z16 +x26 AND y26 -> jck +nhk AND qwt -> qwh +gjv AND wcs -> nbb +ksf AND wjf -> hvf +y27 AND x27 -> fjr +qgc AND bqb -> nth +bwm XOR jhr -> z08 +jgf AND htr -> dmc +nrw OR cdw -> pbv +kpf XOR qpd -> z02 +htr XOR jgf -> z12 +y13 AND x13 -> wbw +x43 XOR y43 -> nsb +hrr OR rtt -> bdk +bcw OR pgn -> jbk +bgg XOR kvw -> z34 +y18 AND x18 -> gpq +vjg AND jgc -> mqh +y23 AND x23 -> nrw +fpk OR ffh -> wtc +ctv XOR tdb -> z17 +y33 XOR x33 -> pmg +x24 AND y24 -> frv +ppf AND mcv -> gvt +kdn XOR pbv -> z24 +y03 AND x03 -> rtt +btr OR fhn -> ctv +bwm AND jhr -> tvw +wcs XOR gjv -> z07 +vcm OR ttt -> rnc +jck OR wtd -> mjf +gqb AND mnm -> dsk +wtc XOR jbp -> z18 +nbc OR mqh -> bwb +y05 XOR x05 -> sfn +fkt OR wnq -> cjh +y14 XOR x14 -> tfh +x40 XOR y40 -> qwt +y02 AND x02 -> tng +y24 XOR x24 -> kdn +knd OR hds -> wcs +x39 AND y39 -> z39 +y15 AND x15 -> vch +crp OR wjg -> wjf +y26 XOR x26 -> jkt +y35 XOR x35 -> prn +x12 XOR y12 -> htr +pwt XOR sbn -> z42 +gpp OR vmq -> mrg +dsk OR ptc -> z09 +cbm OR hgb -> jgf +frv OR mhd -> vsw +x09 AND y09 -> ptc +y34 AND x34 -> rkq +dqm OR wgb -> nkd +x00 AND y00 -> jcq +drv OR qph -> dmj +bgh XOR pvj -> z15 +vdc AND tjc -> vvc +x41 XOR y41 -> krk +dmc OR njd -> qwr +wjf XOR ksf -> jct +ptv XOR bdk -> z04 +x42 XOR y42 -> sbn +tpv AND npk -> hrr +x14 AND y14 -> ktg +x22 XOR y22 -> qgd +bqb XOR qgc -> z30 +kpf AND qpd -> pwk +vdc XOR tjc -> z20 +y18 XOR x18 -> jbp +x19 AND y19 -> hhb +x22 AND y22 -> dpg +jsf OR shp -> vmj +y15 XOR x15 -> pvj +dpg OR vsb -> grk +prn AND bhd -> drv +bhd XOR prn -> z35 +qgd AND tvj -> vsb +y32 XOR x32 -> wrd +tvw OR qpg -> gqb +nkd XOR tfh -> z14 +ksb XOR jbk -> z11 +vgb AND nhh -> btr +y06 AND x06 -> knd +cjh AND hsn -> hds +dnc OR bmf -> tdh +nbw OR bqn -> bqb +tpv XOR npk -> z03 +x20 XOR y20 -> vdc +x32 AND y32 -> ttt +y13 XOR x13 -> wgb +x12 AND y12 -> njd +y35 AND x35 -> qph +tdb AND ctv -> ffh +x03 XOR y03 -> npk +qrw XOR mjf -> z27 +y30 XOR x30 -> qgc +y08 AND x08 -> qpg +x08 XOR y08 -> jhr +tng OR pwk -> tpv +cvv XOR gwh -> z10 +mwg XOR tkw -> z31 +kgk XOR sbs -> rcb +x17 AND y17 -> fpk +qwr XOR wbw -> z13 +y07 XOR x07 -> gjv +x33 AND y33 -> hbn +ksb AND jbk -> hgb +x01 XOR y01 -> sqk +x11 XOR y11 -> ksb +rcb OR knb -> tvj +jkt XOR kgs -> z26 +qhf OR qwh -> sgk +y31 AND x31 -> gpp +sfn AND svk -> wnq +ptv AND bdk -> nnq +x01 AND y01 -> hnj +x05 AND y05 -> fkt +qgd XOR tvj -> z22 +rkq OR gwm -> bhd +x37 XOR y37 -> vjg \ No newline at end of file diff --git a/2024/input/25 b/2024/input/25 new file mode 100644 index 0000000..cc4b7fa --- /dev/null +++ b/2024/input/25 @@ -0,0 +1,3999 @@ +..... +..... +..#.. +..#.# +.##.# +##### +##### + +..... +#..#. +##.#. +##.#. +####. +####. +##### + +..... +.#... +.##.. +####. +####. +####. +##### + +##### +##### +##.## +#..## +....# +..... +..... + +..... +..#.. +..##. +..### +.#### +.#### +##### + +##### +####. +####. +#.##. +#..#. +#.... +..... + +##### +##### +.#.## +.#.## +.#..# +....# +..... + +##### +.#### +..### +...## +....# +....# +..... + +..... +..#.. +..#.. +#.##. +##### +##### +##### + +..... +.#.#. +.#.#. +####. +####. +##### +##### + +..... +..... +..... +..... +..#.. +.##.# +##### + +##### +##### +##.#. +##.#. +##.#. +#.... +..... + +##### +##.## +##.## +##..# +.#... +.#... +..... + +..... +..... +.#... +.##.. +.##.# +###.# +##### + +##### +#.### +#.### +#.### +...#. +..... +..... + +..... +..... +..#.. +#.#.. +#.##. +#.### +##### + +##### +##.#. +#.... +#.... +..... +..... +..... + +##### +.#### +.#### +..##. +..##. +...#. +..... + +..... +..... +#.#.. +#.#.# +#.### +##### +##### + +..... +...#. +#..#. +#..## +#.### +##### +##### + +..... +..... +#.... +#.... +#.#.# +#.#.# +##### + +##### +##.## +#..## +....# +....# +....# +..... + +..... +..... +#.#.. +#.#.. +#.#.# +#.#.# +##### + +##### +####. +####. +#.##. +#.#.. +#.#.. +..... + +..... +.#.#. +.#.#. +##### +##### +##### +##### + +..... +..#.# +.##.# +##### +##### +##### +##### + +##### +##### +##### +.###. +.###. +.#.#. +..... + +##### +##### +.#.## +.#.#. +.#.#. +...#. +..... + +..... +..#.# +.#### +.#### +.#### +##### +##### + +..... +#..#. +#..#. +##.## +##.## +##.## +##### + +..... +.#..# +.#..# +.#..# +##.## +##.## +##### + +##### +##.## +#..## +#..#. +...#. +..... +..... + +..... +#..#. +#..## +#..## +#.### +#.### +##### + +##### +#.### +#.### +#.##. +#.#.. +..#.. +..... + +..... +..#.. +..#.. +..#.. +.##.. +.###. +##### + +##### +.###. +.#.#. +.#.#. +.#.#. +.#.#. +..... + +##### +##.## +##.## +.#.## +...#. +...#. +..... + +##### +#.### +#.#.# +#.#.. +..... +..... +..... + +##### +##### +##### +#.### +#.##. +..#.. +..... + +##### +###.# +#.#.. +#.#.. +#.#.. +#.... +..... + +##### +##.## +##.## +##.## +#..#. +#.... +..... + +..... +....# +...## +...## +.#.## +.#### +##### + +..... +.#... +.#..# +###.# +##### +##### +##### + +##### +#.### +#.#.# +#.#.# +..... +..... +..... + +..... +..#.# +..#.# +#.### +##### +##### +##### + +##### +##.## +##.## +##.## +##.## +#...# +..... + +##### +#.### +#.#.# +#.... +#.... +#.... +..... + +##### +###.# +###.# +###.# +.#..# +.#..# +..... + +##### +##### +##### +.#### +..#.# +....# +..... + +..... +..... +#.#.. +#.#.. +####. +####. +##### + +..... +.#..# +.#..# +.#..# +###.# +##### +##### + +..... +..#.# +#.#.# +#.#.# +#.### +##### +##### + +..... +..... +.#... +.#... +.#.#. +####. +##### + +##### +#.### +#.#.# +..#.# +..... +..... +..... + +##### +###.# +###.# +###.# +.##.# +.#..# +..... + +##### +###.# +##..# +##... +.#... +.#... +..... + +##### +##### +##### +##### +#.##. +#..#. +..... + +..... +..#.. +..#.# +..#.# +#.### +#.### +##### + +##### +##### +####. +#.#.. +#.#.. +#.... +..... + +..... +..... +..... +#.#.. +#.#.. +###.# +##### + +..... +..... +..... +....# +....# +.#.## +##### + +##### +####. +####. +.###. +..##. +...#. +..... + +##### +#.### +#.### +..### +..### +...#. +..... + +..... +..... +..... +....# +.#.## +.#### +##### + +##### +#.### +..### +...## +....# +....# +..... + +##### +##### +#.#.# +#.#.. +#.#.. +..... +..... + +..... +..... +..#.. +..#.. +.##.. +####. +##### + +..... +.#... +.#... +.#... +###.. +####. +##### + +##### +##### +##### +###.# +##..# +#...# +..... + +..... +...#. +...## +...## +.#.## +.#.## +##### + +..... +..#.. +..#.. +..##. +..##. +#.##. +##### + +..... +..... +..#.# +..#.# +.##.# +.#### +##### + +..... +..#.. +..#.. +..#.# +#.#.# +#.### +##### + +##### +##### +#.##. +#.#.. +..#.. +..#.. +..... + +..... +.#... +.#.#. +.###. +##### +##### +##### + +..... +..... +#.#.# +#.#.# +#.#.# +#.### +##### + +##### +##### +###.# +#.#.# +#.#.# +#.... +..... + +##### +#.### +#.### +#.### +#.#.# +....# +..... + +##### +#.### +..### +..##. +...#. +...#. +..... + +##### +##### +##.#. +##.#. +#..#. +..... +..... + +..... +..... +.#.#. +.#.#. +.###. +.###. +##### + +..... +..... +.#.#. +##.## +##.## +##.## +##### + +##### +##.#. +##.#. +.#.#. +...#. +..... +..... + +##### +#.#.# +#...# +..... +..... +..... +..... + +##### +####. +###.. +##... +.#... +.#... +..... + +##### +##### +##### +##.## +#...# +..... +..... + +..... +..... +#.... +#...# +#.#.# +##### +##### + +..... +.#... +.#... +.#.#. +.#.#. +.###. +##### + +##### +###.# +#.#.# +..#.# +..#.# +..#.. +..... + +..... +...#. +#..#. +#..#. +#..#. +#.### +##### + +##### +##### +.##.# +.##.# +.#..# +.#..# +..... + +##### +#.### +#..## +....# +....# +..... +..... + +##### +##.## +##.## +.#..# +.#... +..... +..... + +..... +....# +..#.# +.#### +.#### +.#### +##### + +##### +##### +##### +###.# +#.#.. +#.... +..... + +..... +..... +#.#.# +#.#.# +#.### +#.### +##### + +..... +...#. +...#. +...#. +#..## +##.## +##### + +##### +.##.# +.##.. +.##.. +.##.. +.#... +..... + +##### +##### +###.# +#.#.# +..#.# +..#.. +..... + +..... +..... +.#... +##... +###.# +##### +##### + +##### +##.## +##..# +##..# +#.... +#.... +..... + +..... +..... +.#..# +.#..# +##..# +###.# +##### + +##### +##### +#.### +..##. +...#. +...#. +..... + +##### +##### +###.# +#.#.# +#.#.. +..... +..... + +##### +##### +.#### +.#### +.#### +.#.#. +..... + +##### +.#### +.#### +.#.## +...#. +...#. +..... + +..... +...#. +#..## +#.### +##### +##### +##### + +..... +#...# +#.#.# +#.#.# +#.#.# +###.# +##### + +##### +###.# +###.# +.#..# +.#... +.#... +..... + +..... +...#. +...## +#..## +#.### +##### +##### + +..... +..#.. +#.#.. +#.#.# +#.### +#.### +##### + +..... +..... +..... +.#... +.#... +.#.#. +##### + +##### +#.##. +#.##. +#.#.. +..#.. +..... +..... + +##### +##### +##### +##### +##.#. +#..#. +..... + +##### +###.# +###.# +#.#.# +....# +....# +..... + +##### +#.#.# +#.#.# +#...# +..... +..... +..... + +..... +..... +...#. +#.##. +#.### +#.### +##### + +..... +..... +...#. +.#.#. +.#.#. +##### +##### + +##### +##### +##### +#.### +...## +....# +..... + +..... +.#... +.##.. +.###. +.###. +.#### +##### + +..... +..... +..... +....# +.#..# +.##.# +##### + +..... +..... +#.... +#.... +#.#.. +#.#.# +##### + +##### +.#### +..### +...#. +...#. +...#. +..... + +..... +..#.. +..##. +..##. +..### +.#### +##### + +##### +##### +####. +.#.#. +.#.#. +..... +..... + +##### +.##.# +.##.# +..#.. +..#.. +..#.. +..... + +..... +..... +....# +#...# +##..# +###.# +##### + +..... +..... +...#. +#..#. +#..#. +#.##. +##### + +..... +...#. +...#. +...#. +#.##. +#.### +##### + +..... +#.... +#..#. +#..#. +#.##. +#.##. +##### + +..... +..... +..... +#...# +#.#.# +#.#.# +##### + +##### +.#### +.#### +..#.# +..#.# +..#.# +..... + +##### +#.### +#.#.# +..#.# +....# +....# +..... + +..... +#.... +##... +##... +###.# +###.# +##### + +##### +##### +.#### +.##.# +.##.# +..#.. +..... + +..... +..... +.#... +.#..# +.#.## +##.## +##### + +..... +..... +..... +.#... +##.#. +##### +##### + +..... +....# +....# +.#..# +.##.# +.##.# +##### + +##### +##### +#.#.# +..#.. +..... +..... +..... + +..... +....# +.#..# +.##.# +.##.# +.#### +##### + +##### +###.# +.##.. +.##.. +..#.. +..#.. +..... + +..... +....# +....# +...## +...## +.#.## +##### + +..... +..... +..... +#..#. +##.## +##.## +##### + +##### +###.# +.#..# +....# +....# +..... +..... + +..... +...#. +..### +..### +#.### +##### +##### + +..... +#.... +##... +###.# +###.# +##### +##### + +..... +.#... +.##.. +###.. +###.# +##### +##### + +##### +##### +.#.## +.#.#. +.#... +.#... +..... + +##### +####. +##.#. +##.#. +#..#. +...#. +..... + +..... +....# +...## +..### +..### +#.### +##### + +..... +..... +..... +...#. +#..#. +##.## +##### + +##### +####. +####. +###.. +#.#.. +#.#.. +..... + +..... +...#. +...## +..### +.#### +.#### +##### + +..... +...#. +..##. +.###. +.###. +.###. +##### + +##### +##### +.#.## +.#.## +.#.#. +...#. +..... + +##### +#.### +#..#. +..... +..... +..... +..... + +..... +...#. +...#. +#..#. +#.##. +##### +##### + +##### +####. +##.#. +.#... +..... +..... +..... + +##### +##.## +##.## +.#.#. +.#.#. +.#... +..... + +..... +...#. +...#. +#..#. +#.##. +####. +##### + +##### +#.### +..##. +...#. +..... +..... +..... + +##### +##### +.#### +..### +...## +....# +..... + +..... +...#. +.#.## +##.## +##### +##### +##### + +..... +#.#.. +#.#.. +#.#.. +#.#.# +#.#.# +##### + +##### +.#### +..#.# +..#.# +....# +..... +..... + +##### +##### +#.### +#.### +..##. +..#.. +..... + +..... +#..#. +#..#. +##.#. +##.#. +####. +##### + +##### +.#### +.#.## +.#.#. +.#... +..... +..... + +..... +..#.. +#.#.. +###.. +####. +####. +##### + +..... +.#..# +.#..# +.#.## +.#.## +##### +##### + +##### +##### +##### +##.## +#...# +#...# +..... + +##### +##### +##.## +##.## +##.## +#..#. +..... + +..... +#.... +#.... +#.#.. +#.##. +##### +##### + +..... +...#. +..##. +.###. +##### +##### +##### + +..... +..#.. +..#.. +.##.. +.##.# +.#### +##### + +##### +###.# +#.#.# +#...# +....# +..... +..... + +..... +..#.. +.##.. +.###. +####. +##### +##### + +..... +.#... +.#... +.#.#. +####. +##### +##### + +..... +..... +..... +..#.# +#.#.# +#.#.# +##### + +##### +##### +##.## +#..## +#...# +#...# +..... + +..... +....# +....# +..#.# +#.#.# +#.### +##### + +..... +.#... +##... +##.#. +##.#. +####. +##### + +##### +##### +##### +.##.# +.##.# +.#..# +..... + +##### +.#### +.#.#. +...#. +...#. +..... +..... + +..... +.#... +##.#. +##.#. +##.## +##.## +##### + +##### +##### +##### +.#.## +.#.#. +...#. +..... + +##### +##### +##### +#.#.# +..#.# +..... +..... + +..... +..... +..... +..#.. +.###. +####. +##### + +##### +##### +#.##. +#.#.. +#.... +#.... +..... + +##### +##### +#.### +#.### +#.### +#.#.# +..... + +..... +..... +..... +.#... +.#.#. +##### +##### + +..... +..... +....# +...## +.#.## +.#.## +##### + +##### +#.### +#.### +#..## +#..#. +#.... +..... + +##### +##### +#.#.# +#.#.. +..#.. +..... +..... + +..... +..... +..#.. +.##.. +####. +####. +##### + +..... +#.... +#.#.. +#.#.# +#.#.# +###.# +##### + +..... +...#. +.#.#. +.#.## +.#.## +.#### +##### + +##### +####. +#.#.. +#.#.. +#.... +#.... +..... + +##### +.##.# +..#.# +..#.# +..#.# +....# +..... + +..... +..... +..... +..#.. +.##.. +.###. +##### + +##### +##.## +##..# +##... +##... +#.... +..... + +##### +#.### +#.### +..#.# +..#.# +..... +..... + +##### +###.# +##..# +##..# +#...# +#...# +..... + +##### +.##.# +..#.# +....# +....# +....# +..... + +..... +..... +...#. +.#.#. +.#.#. +##.## +##### + +..... +.#... +##... +##... +###.# +###.# +##### + +##### +#.### +..### +..### +..#.# +..#.. +..... + +..... +#.... +#..#. +#..#. +##.#. +##.#. +##### + +##### +##### +#.##. +..##. +..##. +...#. +..... + +..... +..... +....# +...## +#..## +#.### +##### + +..... +...#. +...#. +.#.#. +##.#. +##.## +##### + +..... +..#.. +.##.# +.##.# +.#### +.#### +##### + +..... +.#... +##.#. +##.#. +##### +##### +##### + +##### +##.## +#..#. +#.... +..... +..... +..... + +##### +.#### +..### +..### +...#. +..... +..... + +##### +##### +#.#.# +#...# +#...# +#...# +..... + +##### +.##.# +.##.# +..#.# +..#.# +..#.# +..... + +..... +..... +.#... +##.#. +##.#. +##### +##### + +##### +####. +####. +####. +.#.#. +..... +..... + +##### +###.# +###.. +##... +#.... +..... +..... + +##### +.#### +.#### +..##. +..#.. +..... +..... + +..... +...#. +...#. +.#.#. +##.#. +####. +##### + +##### +##### +##### +##### +####. +#.#.. +..... + +..... +..... +...#. +#.##. +#.##. +####. +##### + +##### +##### +###.# +.##.# +.#..# +..... +..... + +##### +##### +##.## +.#..# +.#..# +....# +..... + +##### +##.## +##.## +##.## +##..# +#.... +..... + +..... +#.#.. +#.##. +#.### +#.### +##### +##### + +##### +#.### +#.### +#.#.# +#.#.# +....# +..... + +..... +..#.# +.##.# +.#### +##### +##### +##### + +..... +..... +#...# +#...# +#...# +#.#.# +##### + +..... +#.... +##.#. +##.#. +##### +##### +##### + +..... +.#... +.#... +.#... +##... +###.# +##### + +..... +..... +#.... +##.#. +##.#. +##.#. +##### + +..... +..... +.#... +.#... +###.. +####. +##### + +##### +#.### +#..## +...## +....# +....# +..... + +##### +###.# +##..# +.#..# +.#..# +.#..# +..... + +..... +..#.. +..#.. +#.##. +#.### +#.### +##### + +..... +..#.. +.##.. +###.. +####. +####. +##### + +..... +..#.. +#.#.. +###.. +###.# +###.# +##### + +..... +#.... +#.#.. +#.#.# +#.### +#.### +##### + +##### +###.# +##..# +##... +.#... +..... +..... + +..... +#.... +#.... +##... +###.. +####. +##### + +##### +.#.## +.#.## +.#.## +.#.#. +...#. +..... + +..... +....# +....# +#.#.# +#.### +##### +##### + +..... +..... +..#.# +..#.# +#.### +##### +##### + +..... +..... +.#.#. +.#.## +##### +##### +##### + +..... +...#. +...#. +...#. +#.##. +#.##. +##### + +..... +..... +..... +..#.# +.##.# +##### +##### + +..... +..... +..#.. +..#.# +..#.# +#.#.# +##### + +##### +####. +####. +##.#. +##.#. +.#... +..... + +##### +#.##. +#.##. +#.##. +..##. +..#.. +..... + +##### +##### +##.#. +##.#. +##.#. +.#... +..... + +..... +..... +#.#.. +###.. +####. +##### +##### + +##### +###.# +###.# +.##.# +.##.# +.#... +..... + +##### +##.## +##..# +##..# +##..# +.#..# +..... + +..... +..... +#.... +#.#.. +#.#.# +##### +##### + +..... +..... +.#... +.##.. +.##.# +.#### +##### + +##### +##### +.#### +.###. +.###. +.#.#. +..... + +##### +##### +##### +##.## +#..## +....# +..... + +##### +.#### +.#### +.#.## +.#..# +.#... +..... + +..... +.#.#. +.#.#. +##.#. +##.#. +##.#. +##### + +..... +..#.# +..#.# +#.#.# +#.#.# +#.### +##### + +..... +....# +.#.## +.#### +.#### +.#### +##### + +##### +##.## +##.## +##.## +.#..# +.#..# +..... + +..... +...#. +..##. +#.##. +#.##. +#.### +##### + +##### +#.### +#..## +#...# +#.... +..... +..... + +..... +.#... +.#.#. +##.#. +##.#. +####. +##### + +##### +#.### +#.### +#.#.# +..... +..... +..... + +##### +.#.## +.#..# +.#... +..... +..... +..... + +##### +##### +.#### +.#### +.#.## +.#.#. +..... + +##### +##.## +#..#. +..... +..... +..... +..... + +##### +###.# +###.. +##... +##... +#.... +..... + +..... +..... +#.... +#.#.# +###.# +##### +##### + +..... +....# +....# +....# +#.#.# +###.# +##### + +..... +..... +#.... +#...# +#.#.# +###.# +##### + +..... +..... +...#. +...#. +#.##. +##### +##### + +##### +.#### +..##. +...#. +...#. +...#. +..... + +##### +.#### +.#### +.##.# +.#... +..... +..... + +##### +#.#.# +#.#.. +..#.. +..... +..... +..... + +##### +##### +##.#. +.#... +.#... +..... +..... + +##### +##.## +##..# +##... +#.... +#.... +..... + +##### +##.## +##.## +##.#. +.#.#. +..... +..... + +..... +.#... +.#... +.#... +###.# +###.# +##### + +##### +##### +###.# +###.# +.##.. +..#.. +..... + +..... +.#... +.#... +##... +##.#. +##### +##### + +..... +.#.#. +.#.#. +##.#. +##### +##### +##### + +##### +##### +.##.# +.#..# +.#..# +....# +..... + +..... +..... +.#.#. +.#.#. +##.#. +##.#. +##### + +..... +....# +....# +#.#.# +#.### +#.### +##### + +##### +####. +##.#. +#..#. +#.... +#.... +..... + +..... +....# +.#..# +.#.## +.#### +.#### +##### + +##### +##.## +##.## +.#.## +...## +...#. +..... + +##### +###.# +.##.# +.##.# +.##.. +.#... +..... + +..... +....# +..#.# +..#.# +.##.# +##### +##### + +..... +.#... +.##.. +###.. +####. +##### +##### + +..... +..... +..... +#...# +#.#.# +##### +##### + +##### +##### +###.# +#.#.# +#.#.# +#.#.. +..... + +..... +..... +..#.# +..### +#.### +##### +##### + +..... +..... +..#.. +#.#.. +#.##. +#.##. +##### + +..... +..... +...#. +#..#. +#..## +##.## +##### + +##### +#.### +..### +..#.# +..... +..... +..... + +##### +.#.## +.#.## +.#.## +...#. +...#. +..... + +..... +.#..# +.#..# +##..# +##..# +###.# +##### + +..... +..... +....# +#...# +#...# +##.## +##### + +..... +#...# +#...# +#...# +##.## +##.## +##### + +##### +.#### +.#.## +.#.## +...#. +..... +..... + +##### +##### +##### +#.### +..#.# +..... +..... + +##### +##.#. +.#.#. +.#... +.#... +..... +..... + +..... +..... +..... +.#.#. +.#.## +.#### +##### + +..... +...#. +...## +...## +..### +.#### +##### + +..... +..... +..#.# +..#.# +..### +#.### +##### + +..... +..... +..... +#.... +#.#.# +###.# +##### + +##### +##### +##### +.#.## +...## +...#. +..... + +##### +##.## +.#.## +....# +....# +....# +..... + +##### +##### +.#### +.#### +.#.#. +..... +..... + +##### +#.#.# +#.#.# +#.#.# +#.... +..... +..... + +..... +.#... +.#.#. +.#.## +##### +##### +##### + +##### +.#### +.##.# +.#..# +.#..# +.#..# +..... + +..... +#.#.. +#.#.. +###.# +###.# +###.# +##### + +..... +..#.. +..##. +..### +.#### +##### +##### + +..... +..... +..#.. +..#.. +..#.# +.##.# +##### + +..... +#.#.. +#.#.. +#.#.. +###.# +##### +##### + +..... +#.... +##... +###.. +###.. +####. +##### + +##### +##### +##### +####. +#.#.. +..... +..... + +..... +..... +#.... +#..#. +#..## +##.## +##### + +..... +..... +.#... +.#.#. +####. +##### +##### + +..... +..#.# +..#.# +#.#.# +#.#.# +##### +##### + +..... +#.... +#.... +##... +##..# +###.# +##### + +..... +..... +.#..# +.#.## +.#.## +.#### +##### + +..... +..#.. +..#.# +..#.# +.#### +.#### +##### + +..... +.#... +.##.. +.###. +##### +##### +##### + +##### +.#### +.#### +.##.# +..#.# +....# +..... + +..... +....# +.#.## +.#.## +.#.## +##### +##### + +##### +##### +##### +.##.# +..#.. +..... +..... + +##### +#.### +#.#.# +#.#.# +#.#.. +#.... +..... + +##### +##.#. +##.#. +#..#. +...#. +..... +..... + +..... +.#... +.##.# +.##.# +##### +##### +##### + +..... +...#. +...#. +.#.#. +.#.#. +####. +##### + +##### +###.# +#.#.# +#.#.# +..#.# +..#.# +..... + +##### +###.# +.#... +.#... +..... +..... +..... + +##### +#.##. +#.##. +#.##. +..##. +...#. +..... + +..... +.#... +##... +##..# +##..# +##.## +##### + +..... +...#. +#..#. +#..#. +#.##. +#.##. +##### + +##### +##### +####. +.###. +.#.#. +.#... +..... + +##### +##.## +##.#. +##.#. +.#... +..... +..... + +..... +....# +....# +#.#.# +#.#.# +##### +##### + +##### +###.# +###.# +.##.. +.#... +..... +..... + +##### +.###. +.###. +.##.. +.##.. +..#.. +..... + +..... +....# +..#.# +.##.# +.#### +##### +##### + +..... +...#. +...#. +#..#. +#.### +##### +##### + +##### +####. +##.#. +#..#. +#..#. +..... +..... + +##### +###.# +###.# +.##.# +.#..# +.#..# +..... + +..... +..... +..#.. +.##.. +.##.. +.###. +##### + +..... +#.... +#...# +#...# +#.#.# +##### +##### + +..... +..... +.#.#. +.#.#. +##.## +##### +##### + +..... +..... +..... +#.... +#.#.. +#.##. +##### + +##### +##### +#.#.# +..#.. +..#.. +..... +..... + +##### +##### +#.### +#..## +#..## +...#. +..... + +..... +...#. +#..## +#..## +#..## +##.## +##### + +##### +##### +##### +##### +.#.## +.#..# +..... + +..... +..... +#.... +##..# +##.## +##### +##### + +..... +..... +...#. +.#.## +.#.## +##### +##### + +..... +#.... +#.... +#.#.# +###.# +###.# +##### + +..... +..... +..... +#.... +##.#. +##### +##### + +..... +...#. +.#.#. +####. +####. +##### +##### + +..... +..... +.#.#. +##.#. +##.#. +##.## +##### + +..... +..... +.#... +##..# +##..# +###.# +##### + +..... +..... +.#..# +##.## +##### +##### +##### + +..... +..... +.#.#. +.#.#. +.#.#. +####. +##### + +##### +#.### +#.### +...## +...#. +..... +..... + +..... +..... +..... +#...# +#.#.# +#.### +##### + +##### +###.# +###.# +#.#.# +#...# +....# +..... + +##### +#.### +#..#. +#..#. +#.... +..... +..... + +##### +##.## +.#.## +...## +...## +...#. +..... + +..... +..... +...#. +#..#. +#..#. +#.### +##### + +##### +###.# +###.. +.#... +.#... +..... +..... + +##### +##.## +##.## +##.#. +##.#. +.#.#. +..... + +..... +#..#. +#..## +##.## +##.## +##.## +##### + +##### +##### +####. +####. +.##.. +.#... +..... + +##### +#.### +#.### +..### +...## +....# +..... + +##### +#.### +#.##. +#..#. +#..#. +#..#. +..... + +##### +###.# +.##.# +..#.. +..#.. +..#.. +..... + +..... +#...# +#..## +#..## +#..## +##.## +##### + +..... +..... +.#... +.#.#. +.#.#. +.###. +##### + +##### +##### +.#### +.###. +.#.#. +..... +..... + +##### +##### +##### +.#.## +.#..# +.#..# +..... + +##### +####. +###.. +###.. +#.#.. +..... +..... + +##### +####. +#.#.. +#.#.. +..#.. +..... +..... + +##### +###.# +##... +##... +#.... +..... +..... + +##### +##### +##### +###.# +##... +.#... +..... + +##### +###.# +.##.# +.#... +.#... +..... +..... + +##### +.###. +.###. +.#.#. +.#.#. +.#.#. +..... + +##### +#.### +..### +..### +..##. +..#.. +..... + +..... +.#... +.#.#. +.#.## +.#.## +.#### +##### + +..... +..... +#..#. +#..#. +##.#. +####. +##### + +..... +..... +.#... +.#.#. +.#### +##### +##### + +..... +..#.. +..#.. +..#.. +.###. +.#### +##### + +..... +..#.. +..#.. +#.#.. +###.# +###.# +##### + +##### +####. +#.##. +..#.. +..... +..... +..... + +##### +#.### +#.### +..#.# +..#.# +....# +..... + +##### +####. +#.##. +#..#. +#..#. +...#. +..... + +##### +##### +#.### +#.#.# +#.#.. +..... +..... + +..... +....# +#...# +#.#.# +#.#.# +#.#.# +##### + +..... +.#... +###.# +##### +##### +##### +##### + +##### +##### +##### +##.#. +.#.#. +...#. +..... + +..... +..... +..... +...#. +..##. +.#### +##### + +##### +##### +##.## +##..# +.#..# +....# +..... + +##### +##.#. +##.#. +##.#. +#.... +#.... +..... + +##### +##### +.#### +.#.## +...#. +...#. +..... + +..... +..#.. +..#.. +#.#.. +###.. +###.# +##### + +##### +.#.## +...## +...#. +...#. +...#. +..... + +..... +.#... +##... +##.#. +##.#. +##.## +##### + +##### +#.#.# +#.#.# +..#.# +..#.# +..#.. +..... + +..... +#.... +#.#.. +#.#.. +#.#.# +##### +##### + +..... +...#. +..##. +..##. +#.### +#.### +##### + +##### +##### +#.#.# +#.#.# +#.#.# +#...# +..... + +..... +...#. +.#.#. +.###. +.#### +##### +##### + +##### +###.# +###.. +###.. +#.#.. +..#.. +..... + +##### +####. +####. +.###. +.###. +..#.. +..... + +##### +##### +##### +.###. +.#.#. +...#. +..... + +##### +.#### +.#### +.#.#. +.#... +.#... +..... + +..... +#.... +#.... +#..#. +#.##. +##### +##### + +##### +##.## +##.#. +.#.#. +.#.#. +.#... +..... + +##### +##### +#.### +#.#.# +#...# +..... +..... + +##### +####. +####. +.#.#. +.#.#. +.#... +..... + +..... +..... +..... +#.... +#..#. +#.##. +##### + +##### +##### +##.## +.#.## +.#..# +.#..# +..... + +##### +##### +##.## +#..#. +#..#. +..... +..... + +..... +.#.#. +.#.#. +.#### +.#### +.#### +##### + +..... +..#.. +.##.. +.##.. +.###. +####. +##### + +##### +.#### +.##.# +.##.# +..#.# +..#.. +..... + +..... +..... +...#. +...#. +..### +#.### +##### + +##### +.###. +.#.#. +.#.#. +.#... +.#... +..... + +..... +#...# +##..# +###.# +###.# +###.# +##### + +##### +####. +####. +####. +###.. +#.#.. +..... + +##### +#.#.# +#.#.# +....# +....# +....# +..... + +##### +.###. +.###. +.##.. +..#.. +..#.. +..... + +##### +##### +##### +.##.# +.##.# +..#.. +..... + +##### +#.### +..#.# +..#.. +..#.. +..#.. +..... + +##### +#.##. +#.##. +#.#.. +#.... +#.... +..... + +..... +...#. +...## +..### +.#### +##### +##### + +..... +..... +..#.. +#.##. +####. +####. +##### + +##### +.###. +.###. +.###. +.#.#. +..... +..... + +..... +....# +.#..# +.#..# +.#.## +.#.## +##### + +##### +.#### +.#.#. +.#.#. +.#.#. +...#. +..... + +..... +..... +..... +.#.#. +.#.#. +.#### +##### + +##### +##.## +##.## +#..## +#...# +....# +..... + +##### +####. +.###. +.#.#. +.#... +..... +..... + +..... +..... +..... +.#... +##..# +##.## +##### + +##### +##### +.#.#. +.#.#. +.#... +..... +..... + +..... +#.... +#.... +#..#. +##.#. +##### +##### + +##### +##### +.##.# +.##.# +.##.. +..#.. +..... + +##### +##### +#.### +..### +...#. +...#. +..... + +##### +##### +.#### +.#.## +.#.#. +.#... +..... + +..... +..... +....# +.#.## +##.## +##.## +##### + +##### +##### +###.# +#.#.# +#.#.. +#.... +..... + +..... +.#... +##.#. +####. +##### +##### +##### + +..... +..#.# +..#.# +.##.# +###.# +###.# +##### + +..... +..... +...#. +...#. +.#.## +.#### +##### + +##### +##### +.#.## +....# +....# +..... +..... + +##### +##.## +#..## +#...# +....# +....# +..... + +..... +..#.. +.##.. +.##.. +###.# +##### +##### + +##### +##.## +#..## +#..#. +#.... +#.... +..... + +##### +##.## +##.#. +##.#. +##... +.#... +..... + +..... +..#.. +..#.. +..#.# +#.#.# +###.# +##### + +..... +...#. +..##. +#.### +#.### +##### +##### + +##### +.#### +.#.#. +.#.#. +.#.#. +.#... +..... + +..... +#...# +#.#.# +#.### +#.### +#.### +##### + +..... +..#.. +..#.. +#.##. +####. +####. +##### + +##### +####. +#.##. +#.##. +...#. +..... +..... + +..... +..... +#.#.# +###.# +###.# +##### +##### + +..... +#..#. +##.#. +####. +####. +##### +##### + +##### +###.# +###.# +###.# +.#..# +..... +..... + +..... +.#.#. +.#.#. +.#.#. +##### +##### +##### + +..... +....# +.#..# +.##.# +.##.# +##### +##### + +..... +.#... +.#.#. +.#.## +.#### +##### +##### + +##### +#.### +#.### +#.#.# +#.#.# +#...# +..... + +##### +####. +#.##. +#.##. +#..#. +#.... +..... + +..... +..#.. +..#.. +#.#.. +#.##. +#.##. +##### + +..... +..... +..#.. +#.##. +#.##. +####. +##### + +..... +..... +#.#.# +#.#.# +#.#.# +###.# +##### + +##### +###.# +###.# +.#... +.#... +..... +..... + +##### +##### +##.## +.#..# +....# +....# +..... + +##### +###.# +#.#.# +#...# +#...# +..... +..... + +##### +#.### +#..## +#...# +#.... +#.... +..... + +..... +...#. +#.##. +####. +##### +##### +##### + +##### +##### +.#### +.#.#. +..... +..... +..... + +..... +..... +....# +..#.# +.##.# +##### +##### + +..... +..... +.#... +.#..# +##..# +##.## +##### + +##### +##### +.#### +.#### +.##.# +.#..# +..... + +##### +#.### +..#.# +..#.# +..... +..... +..... + +##### +##### +.##.# +..#.# +..#.# +....# +..... + +..... +.#... +.#..# +.##.# +.##.# +.#### +##### + +##### +##### +#.### +..### +..#.# +..... +..... + +..... +.#... +##... +###.. +####. +##### +##### + +##### +###.# +##..# +#.... +..... +..... +..... + +..... +..... +..... +#.#.. +###.# +###.# +##### + +..... +..... +.#..# +.#.## +.#### +##### +##### + +##### +##### +##### +##.## +#..#. +..... +..... \ No newline at end of file diff --git a/README.md b/README.md index 07fc849..737b906 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,15 @@ -# aoc +# advent-of-code -Advent Of Code solutions for 2015 using C99. Builds and runs on macOS, Linux, and OpenBSD. +Advent Of Code solutions using a different language each year -## Building - -Be sure to clone the top project with its submodules: - - git clone --recurse-submodules https://git.burkey.co/eburk/aoc - -This project relies on several BSD extensions to the stdlib. OpenBSD and macOS users should be able to build the project out of the box. Linux users will need `libbsd` installed. The package is called `libbsd-dev` on Debian-based systems. - -Build the project using Cmake: - - mkdir build - cd build - cmake .. - make - -The supplied `build.sh` script does the above for you. - -## Inputs - -Inputs can be generated from `get_input.sh`. You will need to get your session cookie from the Advent of Code website. The easiest way to do this is to inspect any input page in your browser. - -The script can then be run with `bash get_input.sh SESSIONCOOKIE`, with `SESSIONCOOKIE` replaced by your unique session cookie's hash. - -## Usage - -```bash -./advent $DAY -``` - -For example, `./advent 1` will run Day 01 +2015: C99 +2016: Go +2017: TBD +2018: TBD +2019: TBD +2020: TBD +2021: TBD +2022: TBD +2023: TBD +2024: C# +2025: TBD