diff --git a/day1/day1.py b/day1/day1.py
index 753bab14866f3202ac2baa85347b5c764b7fb7bf..47374cdb52c285269c4b8f4c19b271767947f86d 100644
--- a/day1/day1.py
+++ b/day1/day1.py
@@ -27,6 +27,13 @@ def reverse_sort_carried_calories():
     return sum(elves[:3])
 
 
+# Day 1 - Part 1 Solution in one line by
+# https://www.reddit.com/r/adventofcode/comments/z9ezjb/comment/iyghuum/?utm_source=share&utm_medium=web2x&context=3
+def one_line():
+    print(max([sum(list(map(int, line.split()))) for line in open('input.dat').read().split('\n\n')]))
+
+
 if __name__ == '__main__':
     print(calculate_max_calories())
-    print(reverse_sort_carried_calories())
\ No newline at end of file
+    print(reverse_sort_carried_calories())
+    one_line()
\ No newline at end of file
diff --git a/day2/day2.py b/day2/day2.py
new file mode 100644
index 0000000000000000000000000000000000000000..5e199fe114894bf3ac71ed5a7742b466f8518061
--- /dev/null
+++ b/day2/day2.py
@@ -0,0 +1,40 @@
+import ../util.py
+
+# Day 2 - Part 1
+def rock_paper_scissor_guide_result():
+    score_rps = {"X": 1, "Y": 2, "Z": 3}
+    game_rps = {"A X": 3, "A Y": 6, "A Z": 0,
+                "B X": 0, "B Y": 3, "B Z": 6,
+                "C X": 6, "C Y": 0, "C Z": 3}
+    print(score_rps)
+    score = 0
+    with open("./input.dat") as file:
+        for line in file:
+            #print(line)
+            player1, player2 = line.split()
+            print(f"{player2}: {score_rps[player2]}")
+            score += score_rps[player2]
+            print(f"{line.strip()}: {game_rps[line.strip()]}")
+            score += game_rps[line.strip()]
+    print(score)
+
+
+# Day 2 - Part 2
+def rock_paper_scissor_guide_result2():
+    score_rps = {"X": 0, "Y": 3, "Z": 6}
+    game_rps = {"A X": 3, "A Y": 1, "A Z": 2,
+                "B X": 1, "B Y": 2, "B Z": 3,
+                "C X": 2, "C Y": 3, "C Z": 1}
+    score = 0
+    with open("./input.dat") as file:
+        for line in file:
+            player1, result = line.split()
+            print(f"{result}: {score_rps[result]}")
+            score += score_rps[result]
+            print(f"{line.strip()}: {game_rps[line.strip()]}")
+            score += game_rps[line.strip()]
+    print(score)
+
+if __name__ == '__main__':
+    #rock_paper_scissor_guide_result()
+    rock_paper_scissor_guide_result2()
diff --git a/day2/input.dat b/day2/input.dat
new file mode 100644
index 0000000000000000000000000000000000000000..d9dd32ccf6e2744bb11afceb5fd1e4ffe84e92d8
--- /dev/null
+++ b/day2/input.dat
@@ -0,0 +1,2500 @@
+A X
+A Z
+A Z
+A X
+A X
+B X
+C Y
+B X
+A Z
+A X
+A X
+A X
+A X
+B X
+A X
+B X
+A Z
+A Z
+A X
+A X
+A Z
+A Z
+A Z
+A X
+A Z
+A X
+C Y
+C Z
+A X
+B X
+A X
+A X
+A X
+A Z
+B X
+A X
+B X
+C Y
+A X
+A Z
+A Y
+A X
+A Z
+A X
+A Z
+B X
+A X
+A Z
+B X
+A X
+A Z
+A X
+A Z
+A Z
+A X
+B X
+B X
+B X
+B Z
+A Z
+B Z
+A X
+A X
+A Z
+A X
+B Z
+B Y
+A Z
+B X
+A Y
+B X
+C X
+B Z
+B X
+C Y
+A Z
+A X
+A X
+C Y
+B X
+A X
+A Y
+A X
+A X
+A Y
+A Z
+C Z
+A Z
+B X
+B X
+A X
+B X
+A X
+A X
+B Y
+B X
+A Z
+B X
+B X
+A X
+B Z
+C Z
+A Z
+C Z
+B X
+B X
+A Z
+A X
+A X
+B X
+A Z
+B X
+A Z
+A X
+A X
+A X
+B X
+B X
+B X
+B X
+A X
+A Y
+A X
+B X
+A Z
+A X
+A X
+A X
+C Y
+A X
+B X
+A X
+A Z
+A X
+B X
+A Y
+B X
+C Z
+A Y
+A X
+B Y
+A X
+B X
+A X
+A X
+A X
+B X
+A X
+A X
+A Z
+A Z
+A X
+C Y
+B X
+B X
+A Z
+B X
+B Y
+C Y
+A X
+A X
+B Y
+A X
+B Y
+B X
+B X
+A X
+A Z
+B X
+B X
+A Y
+A X
+C Y
+C Y
+C Y
+A X
+B X
+A X
+A X
+A X
+B X
+B X
+C Y
+A X
+A Z
+A Z
+A X
+B X
+A Z
+A Z
+A X
+B X
+A X
+A Z
+A X
+C Z
+B X
+A X
+C Y
+C Y
+A Z
+B X
+B Z
+C Y
+B X
+A Y
+B Y
+A Z
+A X
+A X
+B X
+B Y
+A Z
+A X
+B X
+A X
+C X
+C Y
+A X
+B X
+A Z
+A X
+B X
+A X
+C Y
+C Y
+C Y
+A X
+A X
+A Z
+A X
+C Y
+A Z
+B Y
+A X
+C Y
+B Z
+B X
+B X
+A Z
+B X
+A Y
+C X
+A X
+B X
+A Z
+C Y
+A X
+A Z
+C Z
+A X
+C Y
+B X
+C Y
+C Z
+A Y
+A Z
+C Y
+A X
+A X
+A X
+A Y
+B X
+B X
+C Y
+C Y
+A X
+A Z
+C Y
+B Z
+B X
+C Z
+B X
+B X
+C Z
+A X
+A X
+B X
+B X
+A X
+A X
+B X
+B X
+B X
+C Y
+A X
+A X
+A X
+A X
+B X
+A X
+A X
+B X
+B Z
+A X
+B X
+A X
+C Y
+B Y
+A X
+B X
+A Y
+B Z
+B X
+A X
+B Z
+B X
+A Y
+A X
+B X
+A X
+A Z
+B X
+A X
+A X
+C Z
+A X
+B X
+A X
+B Y
+A Z
+A X
+B X
+A X
+A Z
+B X
+B X
+B Y
+B X
+A X
+C Y
+A X
+A X
+B X
+B Y
+A X
+A X
+A X
+C Z
+C Z
+B Y
+B X
+B Z
+A X
+A Y
+A X
+C Y
+B X
+A X
+A X
+A X
+A Z
+C Y
+A X
+A X
+C Y
+A X
+A X
+A X
+A Z
+A Y
+A X
+A Y
+C Z
+A Z
+A X
+B X
+A Z
+C Z
+C Y
+A Z
+A Z
+C Y
+C Z
+C Z
+A X
+B X
+B X
+B Z
+C Y
+A X
+A X
+A X
+A Z
+A X
+B X
+B X
+C X
+A X
+A X
+B X
+A Y
+A X
+A X
+B Y
+C Z
+A X
+A X
+A Y
+B X
+B X
+B X
+C Z
+A Z
+A Y
+B Y
+A X
+B X
+B X
+B X
+B Z
+A Y
+B Y
+A Z
+A Z
+C Z
+B X
+A X
+A Y
+A Y
+C Y
+B Y
+A X
+A X
+A X
+A X
+B Y
+A X
+A Y
+A X
+A Z
+B X
+B X
+A Y
+A X
+A Y
+A Y
+A Z
+B X
+B X
+A Z
+B X
+A X
+A Z
+A Z
+B X
+A Z
+A X
+A Y
+A Z
+A X
+A Z
+B Y
+A X
+C Y
+B X
+C X
+C Y
+B Z
+C Y
+C Y
+A X
+A X
+A Y
+B X
+C Z
+B X
+C Y
+A X
+A Z
+C Y
+A X
+A Z
+A Z
+B Y
+A X
+A X
+B X
+B Y
+A X
+A X
+B X
+A X
+B X
+A X
+B X
+A X
+B Y
+A Z
+B X
+B X
+B X
+B X
+A Y
+A X
+A Y
+A Y
+C Z
+B Z
+A X
+B Y
+A X
+C Z
+B X
+A X
+A X
+A X
+A X
+A X
+C Z
+C Z
+C Z
+A X
+C Y
+A X
+C X
+C Z
+A X
+B X
+A Z
+A Z
+A Z
+A X
+A Z
+A Z
+B Z
+A X
+B X
+A Z
+C Y
+A X
+A Z
+A Z
+A Z
+B Z
+B X
+A X
+B X
+B X
+B X
+B X
+B Y
+B X
+A X
+A X
+A Z
+A Z
+A Z
+B Y
+A X
+A X
+A Y
+B X
+B X
+A Z
+A X
+B X
+A X
+A X
+A Z
+C Y
+A X
+B X
+A X
+B X
+A X
+B X
+A Z
+B X
+A X
+A Z
+A Z
+B X
+A Y
+A X
+A Z
+C Y
+A X
+A X
+A X
+B Y
+B X
+A Y
+A Z
+C X
+B X
+C Y
+A X
+B X
+C Z
+C Z
+A X
+B X
+B X
+B Y
+B X
+B X
+A X
+A Z
+B Z
+B X
+A X
+B X
+B X
+B X
+A Z
+A X
+A X
+A Z
+B Y
+B Z
+A X
+A Z
+A Z
+A Z
+A X
+A X
+A X
+A X
+A X
+A X
+B X
+A Z
+B Z
+A X
+A Z
+C Y
+A Z
+A X
+A Y
+A Y
+B X
+B Y
+A Z
+A X
+B X
+B Y
+A X
+B X
+A X
+B X
+B X
+C Y
+A Z
+B X
+A X
+B X
+A X
+A Z
+A X
+A Z
+A X
+A X
+A X
+B X
+A Y
+A X
+A X
+B X
+C Z
+B X
+A X
+C Y
+A X
+B X
+A Z
+B Y
+B Z
+A X
+A X
+A X
+C Y
+A X
+A X
+A X
+B X
+C Z
+A Z
+A X
+C Z
+B X
+A Z
+A Y
+C Y
+C Y
+A Z
+B X
+C Z
+C Z
+A X
+A X
+A X
+A X
+A X
+B X
+C Y
+A Z
+A X
+B X
+A Z
+A X
+A Y
+A X
+B Z
+A X
+B X
+A X
+A X
+A X
+A Y
+B X
+C Y
+A X
+A Z
+C Y
+A Z
+A X
+A Y
+A X
+A Z
+A X
+A Y
+C Y
+A Y
+A Z
+A X
+A X
+A X
+A Z
+A X
+B X
+A Y
+A X
+B X
+A X
+A X
+B X
+A X
+B X
+C Z
+B X
+A Z
+A Z
+C Y
+B Y
+B X
+A Y
+B X
+B X
+A Y
+A X
+C X
+C Y
+B X
+A X
+C X
+C Z
+A X
+A Z
+B X
+B Z
+C Y
+A X
+C Y
+A Y
+B X
+B Y
+A X
+C Y
+A Z
+A X
+A X
+C Y
+C Y
+A X
+A Z
+B X
+A Y
+B X
+A Z
+A Z
+A Z
+A Z
+A X
+C Z
+B X
+B Y
+A X
+A Y
+A X
+B X
+C Y
+C Z
+B Z
+B X
+B Z
+A X
+A Z
+C Y
+A X
+B Y
+A X
+A Z
+A X
+C Z
+A X
+A Y
+B Y
+A X
+A X
+A X
+A Z
+B X
+B X
+B X
+A X
+C Y
+C X
+C Y
+C Z
+A X
+A X
+A Z
+A Z
+A X
+A X
+A X
+A X
+A X
+A X
+A X
+C Z
+A X
+B X
+A Z
+B X
+B X
+B X
+A Y
+A X
+A X
+B X
+A X
+B X
+A Z
+C Y
+B Y
+C Z
+B Y
+B X
+B X
+A X
+C Z
+A X
+B Y
+C Y
+B Y
+A Z
+A Y
+A X
+A X
+C Y
+B X
+B X
+A Z
+A X
+C Y
+C Y
+A Y
+A Z
+B X
+C Z
+A Z
+C Y
+A X
+A X
+A Z
+B X
+A X
+A X
+A Z
+B X
+C Z
+A X
+A X
+B X
+B Y
+A Z
+A X
+B X
+A X
+C Y
+B X
+B X
+B Z
+C Y
+A X
+B X
+A X
+A X
+A Y
+A Y
+A Z
+B X
+A Z
+B Y
+B X
+A X
+B Y
+A X
+A X
+A Z
+A X
+B X
+A Z
+A X
+A Z
+B X
+B X
+B X
+B Z
+C Y
+A Y
+A Y
+A Z
+A X
+B X
+B X
+A X
+A X
+B Y
+A X
+B X
+A Z
+B Z
+B X
+C Y
+A Z
+A X
+C Z
+A Y
+A Y
+B X
+A Y
+C Z
+A Z
+A X
+B X
+A Z
+C Y
+C X
+B X
+B Z
+A X
+A Y
+A X
+B X
+A X
+A X
+C Y
+B Z
+B Z
+B Y
+C Z
+C Y
+B X
+B Y
+C Y
+A Z
+B X
+A X
+A X
+A X
+A X
+A X
+A X
+B X
+B X
+B X
+A X
+C Y
+A X
+A Y
+A Z
+B Y
+C Y
+A Z
+A X
+A X
+A Z
+A Y
+B X
+A Y
+A X
+A X
+C Z
+A X
+A X
+B X
+A X
+A Z
+A Z
+A X
+A X
+A X
+B X
+A X
+A X
+A X
+A Z
+A X
+B X
+B Z
+C Y
+A X
+A Z
+B X
+B X
+B X
+A X
+B X
+A X
+B X
+A Y
+B Y
+C Y
+A X
+C Z
+B Z
+A Z
+A X
+A X
+A Z
+A Y
+A Z
+A X
+A X
+B X
+A X
+A X
+A Z
+C Z
+B X
+B Y
+A Z
+B X
+A Z
+A X
+A X
+A X
+C Y
+C Y
+A Z
+A X
+A X
+B Y
+A Y
+A X
+B Z
+B X
+B Z
+B X
+B Y
+B X
+A Y
+A Z
+C Y
+B X
+A X
+A X
+B X
+B Z
+A X
+C X
+A X
+A X
+A X
+A X
+A X
+A X
+B X
+A X
+C Z
+A Y
+B X
+B X
+B Z
+A X
+B X
+B Z
+B X
+A Z
+A X
+B X
+A X
+A Y
+B X
+A Z
+C Z
+B X
+C Z
+A X
+A X
+C Y
+A Z
+C Y
+A Z
+A X
+B X
+A X
+C Y
+A Z
+A X
+A X
+B X
+B X
+A Z
+B Y
+B X
+A X
+A Z
+A X
+B X
+A X
+A Z
+A Z
+A Y
+A Y
+A X
+C Z
+A Z
+A Z
+A X
+B X
+A Y
+B Z
+A X
+A Z
+A X
+C Z
+B X
+A Z
+C Z
+A X
+C X
+A Z
+A X
+A X
+B Z
+A X
+B X
+A X
+B X
+C Z
+A X
+B X
+A Z
+B X
+C Y
+B X
+A Z
+A X
+A Y
+C Z
+A Z
+B X
+A Z
+A Y
+A Z
+B X
+A X
+B X
+C Y
+B X
+A X
+C Y
+A X
+A X
+B Y
+A X
+B Y
+A X
+A X
+A X
+B X
+A X
+A X
+C Z
+A X
+B X
+A Y
+A Y
+B Z
+A Z
+A Y
+A X
+B X
+B Y
+A Z
+B Y
+A X
+A Z
+A X
+A Z
+B X
+A X
+A X
+B X
+A Y
+B X
+B X
+A X
+A Z
+B X
+A Y
+B X
+A Z
+B X
+B X
+B X
+B X
+A Y
+A Z
+B X
+B Y
+B X
+C Y
+C Y
+C Y
+B X
+B X
+A Y
+A X
+B X
+B X
+A X
+B X
+A X
+A Z
+A Z
+A Z
+B X
+A X
+A X
+A Y
+A X
+A X
+C Y
+B X
+C Y
+A X
+A Y
+C Z
+A X
+B X
+A Z
+A X
+A X
+A Z
+A X
+B Z
+A X
+A Z
+A X
+C Y
+A Y
+C X
+A X
+C Y
+B X
+B X
+A Z
+A X
+A X
+A X
+B X
+A X
+C Y
+C Y
+A Y
+A X
+C Z
+A X
+B X
+B Y
+A Z
+A X
+B X
+B X
+A X
+A Z
+C Y
+B X
+A Y
+A X
+A Z
+B X
+A X
+A Z
+B X
+A Y
+B Z
+A Z
+C Z
+C Y
+A Z
+A X
+A X
+A Z
+B X
+A X
+B X
+A X
+A X
+B X
+A Z
+A X
+C Z
+B X
+A Z
+B Y
+A Z
+A X
+A Z
+B X
+A X
+A X
+A Y
+B X
+C Z
+B X
+A X
+A X
+A Z
+B X
+C X
+B X
+B X
+A Z
+B Y
+B X
+A Z
+C Y
+A X
+A X
+B X
+B X
+A X
+B X
+A Z
+A X
+A X
+A Z
+A X
+A X
+B X
+B X
+A X
+A Z
+A Y
+A X
+A X
+C Y
+B X
+A X
+B X
+C Z
+A Z
+B X
+A X
+A X
+A X
+C Y
+A X
+A X
+A X
+A Z
+B Y
+B X
+A X
+A X
+A Z
+B X
+C Z
+B X
+A Z
+A Z
+A X
+A Y
+B Y
+B X
+A Z
+A Z
+A X
+A Y
+B X
+A X
+A Z
+B X
+A Y
+A Z
+A Z
+B X
+C Z
+A X
+A X
+B X
+B X
+A X
+A Y
+A Y
+C Z
+B X
+A X
+A Z
+C Y
+B X
+A Z
+A X
+B X
+B Y
+A X
+B X
+A Y
+B X
+A X
+A Z
+B X
+B X
+C Y
+B X
+B X
+B Y
+A X
+A X
+B X
+B X
+A X
+B X
+C Y
+A X
+A X
+A Z
+A Z
+B X
+A Y
+B X
+B Y
+A X
+A Z
+A X
+A Z
+A X
+B Y
+B X
+B X
+A X
+B X
+A X
+B X
+B X
+A X
+B X
+C X
+A Z
+A Z
+A X
+A X
+A Z
+A X
+B X
+A X
+A X
+A Z
+A Z
+A X
+A X
+B X
+C Y
+A Z
+A X
+A X
+A Y
+A X
+B Z
+C Z
+A Z
+B X
+A X
+B X
+A X
+B X
+B X
+A Y
+B Y
+A X
+B X
+B Y
+C Y
+B Z
+B Y
+B Y
+A Z
+A X
+A Y
+A X
+A Z
+A Z
+A X
+A X
+A X
+A X
+A Y
+C Y
+A X
+A Y
+A Z
+A Z
+B X
+A X
+A X
+A Z
+B Y
+B X
+B X
+A X
+B Z
+B Z
+A Y
+B X
+A Y
+A X
+B X
+C Z
+A X
+A Y
+B X
+A X
+B Z
+C Y
+A Z
+A X
+A Z
+A X
+A X
+A X
+A X
+C Y
+B X
+A X
+A X
+C Y
+C Y
+A Z
+C Y
+A Z
+A Y
+C X
+B X
+C Y
+A Z
+A X
+B X
+B Z
+B X
+B X
+B X
+B X
+B X
+A X
+A Z
+B X
+A Y
+A X
+A Y
+B X
+A X
+A X
+A X
+B Z
+B Z
+B X
+B X
+A Y
+A X
+B Y
+B X
+B Y
+C Y
+A X
+A X
+C Y
+A X
+B X
+B X
+B X
+C Z
+B X
+A Z
+B X
+B X
+A X
+B Z
+A Z
+A Z
+A X
+A Z
+A Y
+A Z
+B X
+A X
+B X
+A X
+A X
+A X
+B X
+A X
+B X
+A X
+A X
+B X
+A Z
+A X
+A Z
+C Y
+A X
+B X
+A X
+A X
+B X
+B X
+C Z
+A X
+A X
+B X
+A X
+A Y
+A X
+A X
+A Z
+A X
+A X
+B X
+A X
+A X
+A X
+A Y
+C Z
+A Z
+A Z
+A X
+B X
+A Z
+A X
+A X
+A X
+C Y
+C Y
+A Z
+C Y
+B X
+A X
+B X
+B X
+A Z
+A Z
+A Y
+B X
+A Z
+A X
+A Z
+A X
+A X
+A X
+A Z
+A Z
+B X
+A X
+A X
+B X
+B X
+A Z
+B X
+A X
+A X
+B X
+B X
+B X
+A X
+A X
+A Z
+A X
+A X
+B Y
+B Y
+C Y
+A Y
+A Y
+B X
+B X
+C Y
+A X
+B X
+A X
+A X
+A Z
+A Y
+A X
+B X
+A X
+B X
+A X
+A Z
+A X
+C Y
+B X
+B X
+A X
+B X
+A X
+A X
+A Z
+C Y
+B X
+B X
+A X
+A X
+A Z
+A Z
+B Y
+A X
+B X
+A Y
+C Z
+B X
+A X
+A Z
+B Y
+A Z
+B X
+B X
+B X
+A X
+A Z
+A Z
+B Y
+A Y
+B X
+B Y
+A Y
+A Z
+A X
+A X
+B X
+B X
+A Y
+B X
+A X
+A X
+C Y
+B X
+A X
+C X
+C Z
+A X
+A X
+C Y
+C Z
+A Z
+A X
+C Y
+C Y
+C Y
+A X
+A Y
+A Z
+A X
+C Z
+A X
+C X
+B X
+B Y
+B Z
+A X
+A X
+A X
+A Z
+B X
+B X
+C X
+A X
+C Z
+C Y
+A X
+A X
+B X
+B X
+A X
+A X
+A X
+A Z
+A Z
+B X
+A Z
+B Y
+A Y
+A Y
+A Z
+B X
+A Y
+A X
+A X
+B X
+A Z
+B X
+A Y
+A X
+B X
+A X
+B X
+A X
+B X
+B Z
+A Z
+A Y
+A Z
+A X
+B X
+B X
+C Y
+B X
+A X
+B X
+A Y
+B X
+B X
+C Y
+B X
+A Z
+A Z
+C Y
+A X
+B X
+B X
+A X
+B X
+A Z
+A X
+A X
+A Z
+A Z
+C Z
+A X
+A X
+A X
+A X
+A X
+A X
+A Z
+C Y
+A X
+C Y
+A X
+B X
+C Y
+B X
+A Y
+B X
+B X
+B X
+A X
+A X
+A X
+C Y
+A Z
+A Z
+B X
+A X
+A Z
+B X
+B X
+A X
+A X
+B Z
+A X
+B Z
+B X
+A X
+A X
+A X
+B X
+A X
+C Y
+A Y
+A X
+A X
+B X
+A Y
+A X
+C Y
+C Y
+B X
+B X
+A X
+A X
+C Y
+B Y
+C Y
+A X
+B X
+A Y
+B Z
+B X
+B X
+A Y
+B X
+A Z
+C Y
+B X
+B X
+B Y
+A X
+A X
+A X
+C Y
+B X
+A Y
+B X
+A Z
+B Y
+A X
+A X
+A X
+A X
+A X
+A X
+B X
+C Z
+B X
+B X
+A X
+A X
+C Y
+A X
+A X
+A X
+A X
+B Z
+B X
+A Z
+B Z
+C Z
+C Y
+B X
+B X
+C Z
+A Z
+A Y
+A Z
+A Y
+C Z
+A X
+A X
+A Z
+A X
+A Z
+A X
+B Z
+B X
+B X
+C Z
+B X
+C Y
+C Y
+B X
+A X
+A X
+A X
+B Y
+A X
+C Y
+B Y
+C Y
+B Y
+A Z
+B X
+A X
+A Z
+B X
+B Z
+A Z
+A X
+A X
+A Y
+A X
+A X
+A Z
+B X
+B X
+B X
+B X
+B X
+A X
+A X
+A X
+A Z
+A Z
+A Y
+A X
+A Z
+A Z
+B X
+A X
+B X
+B X
+A Z
+B Y
+A X
+A X
+A X
+A X
+B X
+A Y
+A X
+C X
+A Z
+A X
+C Z
+C Y
+B X
+A Z
+A Z
+B X
+C Y
+A X
+A Z
+A X
+B Y
+C Y
+A X
+A X
+A Z
+A X
+C Y
+A Z
+A X
+A X
+A X
+C Y
+B X
+A X
+B Y
+A Z
+A X
+A Z
+B X
+A Z
+A Z
+A X
+A X
+C Z
+B X
+A Z
+A X
+B Z
+A Z
+A Z
+B X
+A X
+A Z
+A Y
+A X
+A Z
+A Z
+C X
+C Z
+B X
+B X
+A Z
+A X
+B X
+A X
+A X
+A X
+A Z
+B X
+A Z
+A X
+B X
+A X
+A X
+C Z
+B X
+C Y
+A X
+B X
+A Z
+A Z
+A X
+B Z
+B X
+A Z
+A Z
+A X
+C Y
+A X
+B X
+C Y
+B X
+B X
+A Z
+B X
+A Z
+C Y
+B X
+A Y
+B X
+A Z
+B Z
+A Z
+B X
+A X
+B Z
+A X
+A Y
+B Z
+C Y
+C Y
+B X
+A X
+A X
+A X
+A X
+B Z
+A X
+A X
+A X
+C Y
+C X
+B Y
+B X
+B X
+B X
+A Y
+A X
+A Z
+A X
+B X
+A Z
+C Y
+A X
+A Z
+A Z
+A X
+A X
+A X
+A X
+A Z
+A X
+A X
+B X
+C Z
+B X
+C Z
+B Y
+B X
+A Z
+A Z
+A Z
+B Y
+A Y
+A Z
+B X
+C Y
+A X
+B X
+A Z
+C Y
+A Y
+B X
+A X
+A Y
+A X
+A Z
+B X
+A Z
+B Y
+B X
+A X
+B X
+A X
+A X
+A X
+A Y
+B X
+A Y
+A X
+B X
+A X
+A X
+C Y
+A X
+A X
+B Z
+A Z
+A Z
+A X
+C Y
+B X
+B X
+C Y
+A Z
+C Y
+A X
+A X
+B X
+B X
+A X
+A Z
+B Y
+B X
+A Z
+B X
+A X
+B X
+A Z
+C Y
+A X
+B X
+A X
+A X
+A Z
+A X
+B X
+C Z
+A X
+A X
+A Y
+B X
+A Z
+B X
+B X
+B Y
+A X
+A Z
+A X
+A Z
+B X
+B X
+A X
+A X
+B Z
+A X
+C Y
+B X
+A X
+A Z
+A Z
+B X
+C Y
+C Y
+B Y
+A Z
+C Z
+A X
+B X
+A X
+A X
+B Y
+B X
+A X
+A X
+A Y
+A Z
+B X
+A X
+A X
+A Z
+A X
+A X
+B X
+B X
+A Y
+A X
+B X
+A Z
+B Z
+B X
+A Z
+A X
+A Z
+B X
+C Y
+A X
+A X
+B X
+A Z
+B X
+A Z
+C Z
+A Z
+A X
+C Y
+A X
+B X
+B Z
+A X
+B X
+C X
+A X
+B Y
+A X
+A X
+C Y
+A X
+B Y
+A X
+A X
+A X
+B X
+A X
+B X
+A Z
+C Y
+A X
+C Z
+A X
+B X
+A Z
+A X
+C Z
+C Z
+A X
+A Y
+A Z
+A X
+B X
+B X
+A Z
+B X
+A X
+B X
+B Y
+B X
+B X
+C Z
+A Y
+A X
+A Z
+B Z
+A X
+A Z
+A Z
+A Y
+B X
+A Y
+A X
+A X
+B X
+A Z
+B Z
+A X
+A Z
+A Z
+A Z
+C Y
+A X
+B Z
+B X
+A Z
+B X
+A Z
+A Y
+A X
+C Z
+C X
+A Y
+A X
+A Z
+A X
+A X
+A Z
+A Y
+A Z
+A Y
+A X
+C Y
+B X
+A Z
+A X
+A X
+C Y
+A X
+A X
+B Z
+A Z
+C Y
+A X
+A X
+A X
+B X
+C Y
+A X
+A Y
+B X
+A X
+A X
+B Y
+A Z
+A X
+A X
+B X
+A Z
+A Y
+C Y
+C Z
+C Y
+A X
+C Y
+C Y
+A X
+A Y
+C Y
+B X
+A X
+B X
+A X
+A X
+B X
+A X
+A Z
+C Y
+C Y
+B X
+A X
+B X
+C Z
+C Y
+B X
+A X
+A X
+A Y
+A X
+A Y
+A Z
+B X
+A Z
+A Z
+A X
+A X
+B X
+C Y
+B X
+A Z
+A X
+A X
+A X
+B X
+B Z
+B X
+B X
+B X
+A Z
+A X
+B Z
+A X
+B Z
+A X
+B Y
+C Z
+B Y
+C Z
+B Y
+B X
+A X
+A X
+C Y
+B X
+B X
+A X
+B Z
+A Z
+A Z
+A X
+A X
+A X
+B X
+B X
+B X
+C Y
+A X
+B X
+B X
+B Z
+B X
+A Z
+C Y
+A X
+C Z
+A Z