From 92455e38b3ef0630d9002924627cfe8326d8225d Mon Sep 17 00:00:00 2001 From: Tom Weber Date: Mon, 12 Dec 2022 14:14:58 +0100 Subject: [PATCH] day9, day10 --- .gitignore | 1 + python/day10/bsp.txt | 146 +++ python/day10/bsp1.txt | 6 + python/day10/day10_1.py | 26 + python/day10/day10_2.py | 29 + python/day10/input.txt | 146 +++ python/day9/bsp.txt | 8 + python/day9/bsp2.txt | 8 + python/day9/day9_1.py | 64 ++ python/day9/day9_2.py | 69 ++ python/day9/input.txt | 2000 +++++++++++++++++++++++++++++++++++++++ 11 files changed, 2503 insertions(+) create mode 100644 .gitignore create mode 100644 python/day10/bsp.txt create mode 100644 python/day10/bsp1.txt create mode 100644 python/day10/day10_1.py create mode 100644 python/day10/day10_2.py create mode 100644 python/day10/input.txt create mode 100644 python/day9/bsp.txt create mode 100644 python/day9/bsp2.txt create mode 100644 python/day9/day9_1.py create mode 100644 python/day9/day9_2.py create mode 100644 python/day9/input.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..485dee6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea diff --git a/python/day10/bsp.txt b/python/day10/bsp.txt new file mode 100644 index 0000000..94cd0a8 --- /dev/null +++ b/python/day10/bsp.txt @@ -0,0 +1,146 @@ +addx 15 +addx -11 +addx 6 +addx -3 +addx 5 +addx -1 +addx -8 +addx 13 +addx 4 +noop +addx -1 +addx 5 +addx -1 +addx 5 +addx -1 +addx 5 +addx -1 +addx 5 +addx -1 +addx -35 +addx 1 +addx 24 +addx -19 +addx 1 +addx 16 +addx -11 +noop +noop +addx 21 +addx -15 +noop +noop +addx -3 +addx 9 +addx 1 +addx -3 +addx 8 +addx 1 +addx 5 +noop +noop +noop +noop +noop +addx -36 +noop +addx 1 +addx 7 +noop +noop +noop +addx 2 +addx 6 +noop +noop +noop +noop +noop +addx 1 +noop +noop +addx 7 +addx 1 +noop +addx -13 +addx 13 +addx 7 +noop +addx 1 +addx -33 +noop +noop +noop +addx 2 +noop +noop +noop +addx 8 +noop +addx -1 +addx 2 +addx 1 +noop +addx 17 +addx -9 +addx 1 +addx 1 +addx -3 +addx 11 +noop +noop +addx 1 +noop +addx 1 +noop +noop +addx -13 +addx -19 +addx 1 +addx 3 +addx 26 +addx -30 +addx 12 +addx -1 +addx 3 +addx 1 +noop +noop +noop +addx -9 +addx 18 +addx 1 +addx 2 +noop +noop +addx 9 +noop +noop +noop +addx -1 +addx 2 +addx -37 +addx 1 +addx 3 +noop +addx 15 +addx -21 +addx 22 +addx -6 +addx 1 +noop +addx 2 +addx 1 +noop +addx -10 +noop +noop +addx 20 +addx 1 +addx 2 +addx 2 +addx -6 +addx -11 +noop +noop +noop \ No newline at end of file diff --git a/python/day10/bsp1.txt b/python/day10/bsp1.txt new file mode 100644 index 0000000..550651b --- /dev/null +++ b/python/day10/bsp1.txt @@ -0,0 +1,6 @@ +noop +addx 3 +addx -5 +noop +noop +noop \ No newline at end of file diff --git a/python/day10/day10_1.py b/python/day10/day10_1.py new file mode 100644 index 0000000..f11a732 --- /dev/null +++ b/python/day10/day10_1.py @@ -0,0 +1,26 @@ +lines = open('input.txt', "r").read().splitlines() + +cycle = 0 +x = 1 +signals = [20, 60, 100, 140, 180, 220] +strengths = [] +for line in lines: + cmd = line.split(" ") + if len(signals) == 0: + signals.append(9999999) + elif cycle == signals[0]: + strengths.append(x *cycle) + signals.pop(0) + elif cycle + 1 == signals[0]: + strengths.append(x * (cycle+1)) + signals.pop(0) + elif cycle + 2 == signals[0]: + strengths.append(x * (cycle+2)) + signals.pop(0) + if cmd[0] == "noop": + cycle += 1 + else: + cycle += 2 + x += int(cmd[1]) +print(sum(strengths)) + diff --git a/python/day10/day10_2.py b/python/day10/day10_2.py new file mode 100644 index 0000000..814aec3 --- /dev/null +++ b/python/day10/day10_2.py @@ -0,0 +1,29 @@ +lines = open('input.txt', "r").read().splitlines() + +cycle = 0 +x = 1 +end = [40, 80, 120, 160, 200, 240] +registers = [999999 for y in range(240)] +for line in lines: + cmd = line.split(" ") + registers[cycle] = x + if cmd[0] == "noop": + cycle += 1 + else: + registers[cycle+1] = x + cycle += 2 + x += int(cmd[1]) + +pixel_pos = 0 +screen = "" +for r in range(len(registers)): + if r in end: + screen += "\n" + pixel_pos = 0 + if pixel_pos in [registers[r]-1, registers[r], registers[r]+1]: + screen += "#" + else: + screen += "." + pixel_pos += 1 + +print(screen) \ No newline at end of file diff --git a/python/day10/input.txt b/python/day10/input.txt new file mode 100644 index 0000000..1b68dd1 --- /dev/null +++ b/python/day10/input.txt @@ -0,0 +1,146 @@ +noop +addx 5 +addx -2 +noop +noop +addx 7 +addx 15 +addx -14 +addx 2 +addx 7 +noop +addx -2 +noop +addx 3 +addx 4 +noop +noop +addx 5 +noop +noop +addx 1 +addx 2 +addx 5 +addx -40 +noop +addx 5 +addx 2 +addx 15 +noop +addx -10 +addx 3 +noop +addx 2 +addx -15 +addx 20 +addx -2 +addx 2 +addx 5 +addx 3 +addx -2 +noop +noop +noop +addx 5 +addx 2 +addx 5 +addx -38 +addx 3 +noop +addx 2 +addx 5 +noop +noop +addx -2 +addx 5 +addx 2 +addx -2 +noop +addx 7 +noop +addx 10 +addx -5 +noop +noop +noop +addx -15 +addx 22 +addx 3 +noop +noop +addx 2 +addx -37 +noop +noop +addx 13 +addx -10 +noop +addx -5 +addx 10 +addx 5 +addx 2 +addx -6 +addx 11 +addx -2 +addx 2 +addx 5 +addx 3 +noop +addx 3 +addx -2 +noop +addx 6 +addx -22 +addx 23 +addx -38 +noop +addx 7 +noop +addx 5 +noop +noop +noop +addx 9 +addx -8 +addx 2 +addx 7 +noop +noop +addx 2 +addx -4 +addx 5 +addx 5 +addx 2 +addx -26 +addx 31 +noop +addx 3 +noop +addx -40 +addx 7 +noop +noop +noop +noop +addx 2 +addx 4 +noop +addx -1 +addx 5 +noop +addx 1 +noop +addx 2 +addx 5 +addx 2 +noop +noop +noop +addx 5 +addx 1 +noop +addx 4 +addx 3 +noop +addx -24 +noop diff --git a/python/day9/bsp.txt b/python/day9/bsp.txt new file mode 100644 index 0000000..9874df2 --- /dev/null +++ b/python/day9/bsp.txt @@ -0,0 +1,8 @@ +R 4 +U 4 +L 3 +D 1 +R 4 +D 1 +L 5 +R 2 diff --git a/python/day9/bsp2.txt b/python/day9/bsp2.txt new file mode 100644 index 0000000..c1eba0a --- /dev/null +++ b/python/day9/bsp2.txt @@ -0,0 +1,8 @@ +R 5 +U 8 +L 8 +D 3 +R 17 +D 10 +L 25 +U 20 \ No newline at end of file diff --git a/python/day9/day9_1.py b/python/day9/day9_1.py new file mode 100644 index 0000000..225dd67 --- /dev/null +++ b/python/day9/day9_1.py @@ -0,0 +1,64 @@ +lines = open("input.txt", "r").read().splitlines() + +class Knots: + def __init__(self): + self.x = 0 + self.y = 0 + self.pos = [] + + def visited(self): + return len(set(self.pos)) + +t= Knots() +h = Knots() + +def move(h, t): + if abs(h.x - t.x) <= 1 and abs(h.y - t.y) <= 1: + pass + elif abs(h.x - t.x) > 1 and abs(h.y - t.y) == 0: + if h.x > t.x: + t.x += 1 + else: + t.x -= 1 + elif abs(h.x - t.x) == 0 and abs(h.y - t.y) > 1: + if h.y > t.y: + t.y += 1 + else: + t.y -= 1 + else: + if h.x > t.x and h.y > t.y : + t.x += 1 + t.y += 1 + elif h.x > t.x and h.y < t.y: + t.x += 1 + t.y -= 1 + elif h.x < t.x and h.y < t.y: + t.x -= 1 + t.y -= 1 + else: + t.x -= 1 + t.y += 1 + t.pos.append((t.x,t.y)) + + +t.pos.append((0,0)) +for line in lines: + cmd = line.split(" ") + if cmd[0] == "R": + for i in range(int(cmd[1])): + h.x = h.x + 1 + move(h, t) + if cmd[0] == "L": + for i in range(int(cmd[1])): + h.x = h.x - 1 + move(h, t) + if cmd[0] == "U": + for i in range(int(cmd[1])): + h.y = h.y + 1 + move(h, t) + if cmd[0] == "D": + for i in range(int(cmd[1])): + h.y = h.y - 1 + move(h, t) + +print(t.visited()) \ No newline at end of file diff --git a/python/day9/day9_2.py b/python/day9/day9_2.py new file mode 100644 index 0000000..c250ebb --- /dev/null +++ b/python/day9/day9_2.py @@ -0,0 +1,69 @@ +lines = open("input.txt", "r").read().splitlines() + +class Knots: + def __init__(self): + self.x = 0 + self.y = 0 + self.pos = [] + + def visited(self): + return len(set(self.pos)) + +k = [] +for i in range(10): + k.append(Knots()) + k[i].pos.append((0,0)) + +def move(h, t): + if abs(h.x - t.x) <= 1 and abs(h.y - t.y) <= 1: + pass + elif abs(h.x - t.x) > 1 and abs(h.y - t.y) == 0: + if h.x > t.x: + t.x += 1 + else: + t.x -= 1 + elif abs(h.x - t.x) == 0 and abs(h.y - t.y) > 1: + if h.y > t.y: + t.y += 1 + else: + t.y -= 1 + else: + if h.x > t.x and h.y > t.y : + t.x += 1 + t.y += 1 + elif h.x > t.x and h.y < t.y: + t.x += 1 + t.y -= 1 + elif h.x < t.x and h.y < t.y: + t.x -= 1 + t.y -= 1 + else: + t.x -= 1 + t.y += 1 + t.pos.append((t.x,t.y)) + + +for line in lines: + cmd = line.split(" ") + if cmd[0] == "R": + for _ in range(int(cmd[1])): + k[0].x = k[0].x + 1 + for i in range(1, 10): + move(k[i-1], k[i]) + if cmd[0] == "L": + for _ in range(int(cmd[1])): + k[0].x = k[0].x - 1 + for i in range(1, 10): + move(k[i-1], k[i]) + if cmd[0] == "U": + for _ in range(int(cmd[1])): + k[0].y = k[0].y + 1 + for i in range(1, 10): + move(k[i-1], k[i]) + if cmd[0] == "D": + for _ in range(int(cmd[1])): + k[0].y = k[0].y - 1 + for i in range(1, 10): + move(k[i-1], k[i]) + +print(k[-1].visited()) diff --git a/python/day9/input.txt b/python/day9/input.txt new file mode 100644 index 0000000..cb18548 --- /dev/null +++ b/python/day9/input.txt @@ -0,0 +1,2000 @@ +L 1 +U 1 +L 1 +D 2 +U 2 +L 2 +U 2 +L 2 +U 2 +L 1 +U 1 +D 1 +R 2 +U 1 +R 2 +D 1 +U 1 +L 1 +R 1 +L 1 +R 2 +D 1 +L 2 +U 2 +D 2 +L 1 +U 1 +L 2 +R 2 +L 1 +D 2 +U 2 +R 1 +U 2 +D 1 +L 1 +R 1 +U 2 +D 2 +U 2 +L 1 +U 2 +L 2 +R 2 +L 1 +D 1 +L 1 +U 2 +L 2 +U 2 +R 1 +U 1 +L 2 +R 1 +L 2 +D 2 +L 2 +D 2 +L 2 +R 2 +D 1 +U 2 +L 2 +D 2 +L 1 +U 1 +R 2 +D 1 +U 2 +L 1 +U 2 +D 2 +L 1 +D 1 +L 1 +U 2 +R 2 +L 2 +R 1 +D 2 +R 2 +D 2 +U 1 +D 2 +U 2 +L 2 +U 1 +D 2 +L 1 +D 2 +U 2 +D 2 +L 1 +U 2 +R 2 +L 2 +U 1 +D 2 +L 1 +R 1 +U 2 +D 2 +L 1 +R 1 +U 1 +L 2 +D 2 +R 1 +U 1 +L 2 +R 2 +U 1 +L 3 +D 2 +L 1 +U 3 +R 3 +U 1 +R 3 +D 3 +U 2 +D 2 +R 1 +U 2 +L 1 +R 3 +L 1 +U 1 +D 2 +R 1 +L 1 +R 2 +D 2 +L 3 +D 2 +U 2 +R 1 +D 1 +U 1 +R 3 +L 2 +R 1 +L 1 +R 1 +L 1 +R 2 +U 1 +L 2 +R 2 +U 3 +D 2 +L 3 +R 1 +L 1 +U 3 +D 1 +L 3 +U 2 +L 1 +D 3 +L 2 +R 3 +L 2 +D 1 +U 2 +R 3 +L 3 +U 2 +R 2 +D 3 +U 2 +D 2 +U 1 +L 1 +R 1 +U 3 +R 1 +D 2 +L 3 +U 2 +D 1 +R 1 +D 3 +R 1 +L 1 +U 3 +D 1 +L 3 +R 1 +U 2 +L 2 +D 1 +R 2 +L 3 +U 3 +L 1 +U 1 +L 1 +U 3 +L 2 +U 1 +D 2 +U 2 +R 3 +U 1 +D 2 +U 1 +D 2 +U 3 +L 1 +R 2 +L 2 +U 3 +L 2 +R 3 +U 1 +R 3 +D 3 +L 2 +U 2 +R 1 +U 1 +L 3 +R 1 +L 1 +R 1 +L 1 +D 3 +R 2 +U 1 +D 3 +L 3 +U 3 +L 1 +D 2 +L 3 +D 3 +R 4 +U 2 +R 2 +U 3 +L 2 +R 3 +U 1 +L 1 +D 1 +U 1 +D 4 +U 4 +D 2 +U 2 +D 3 +L 4 +D 2 +R 1 +U 1 +D 3 +R 3 +D 3 +U 3 +D 1 +R 3 +D 1 +U 3 +D 4 +R 3 +L 2 +R 1 +L 3 +D 1 +R 4 +U 4 +L 1 +U 4 +R 4 +U 3 +R 4 +D 4 +L 3 +R 1 +D 3 +U 2 +R 4 +U 1 +D 4 +U 2 +R 2 +L 4 +D 4 +U 2 +D 1 +R 4 +U 2 +D 1 +U 3 +D 2 +L 2 +R 3 +L 1 +R 2 +U 4 +L 3 +U 1 +R 4 +U 2 +R 3 +L 2 +U 4 +R 1 +D 1 +U 4 +R 1 +D 3 +R 1 +L 1 +D 3 +L 4 +R 2 +D 4 +R 2 +D 1 +R 1 +L 4 +D 3 +U 1 +D 4 +L 4 +D 2 +R 2 +U 1 +L 1 +D 1 +U 3 +D 4 +U 3 +R 5 +D 2 +L 3 +U 4 +R 1 +U 5 +R 3 +L 5 +R 2 +U 4 +L 3 +U 3 +L 4 +D 4 +U 3 +L 1 +U 2 +L 5 +R 2 +U 5 +R 5 +L 4 +D 2 +R 4 +U 1 +L 5 +U 4 +L 3 +R 5 +D 5 +L 5 +U 2 +D 1 +L 3 +R 5 +D 1 +L 4 +R 1 +U 4 +L 3 +U 3 +R 2 +U 3 +R 4 +L 2 +R 3 +U 4 +L 3 +U 5 +D 3 +L 2 +R 1 +L 1 +U 4 +R 5 +D 3 +U 2 +L 5 +R 4 +U 1 +L 5 +D 5 +U 5 +D 5 +U 3 +L 3 +R 3 +L 1 +U 2 +D 4 +R 4 +L 1 +D 3 +R 5 +D 3 +R 4 +D 5 +L 4 +D 2 +U 1 +L 5 +U 4 +L 4 +R 1 +D 2 +L 5 +R 2 +U 4 +R 5 +L 1 +D 3 +L 4 +U 3 +L 3 +U 1 +D 1 +R 1 +D 1 +U 3 +D 1 +L 5 +D 2 +R 1 +D 1 +L 5 +U 2 +L 4 +D 5 +U 1 +R 5 +U 6 +D 3 +U 1 +R 6 +D 6 +L 3 +U 4 +D 2 +U 3 +L 2 +U 2 +L 4 +D 5 +U 3 +D 1 +R 6 +L 6 +R 5 +U 1 +R 1 +L 1 +U 1 +R 4 +U 2 +D 5 +L 6 +D 6 +U 5 +L 2 +D 3 +R 2 +U 6 +L 6 +D 1 +L 3 +U 6 +L 2 +U 4 +R 4 +D 5 +R 3 +D 5 +R 3 +D 4 +R 3 +D 3 +U 5 +D 2 +U 6 +R 1 +L 2 +R 5 +L 2 +U 2 +D 6 +R 5 +U 2 +D 1 +L 1 +D 3 +U 5 +D 2 +R 4 +D 6 +L 4 +R 1 +U 4 +L 6 +D 6 +L 4 +D 1 +L 4 +R 1 +D 1 +U 3 +L 6 +D 2 +U 5 +R 3 +U 2 +R 5 +L 3 +U 5 +L 4 +U 1 +R 5 +D 3 +L 6 +U 1 +L 6 +U 1 +L 5 +D 5 +L 4 +D 5 +U 3 +R 3 +D 3 +L 2 +R 2 +D 4 +U 5 +L 1 +U 6 +D 6 +U 1 +D 3 +L 4 +R 6 +D 4 +L 3 +R 5 +U 1 +L 1 +R 3 +L 2 +D 4 +L 4 +D 6 +L 2 +D 5 +L 1 +R 4 +U 3 +L 1 +D 7 +U 5 +D 2 +R 6 +L 1 +U 3 +L 2 +R 1 +U 6 +L 3 +D 2 +R 4 +D 2 +U 2 +L 5 +U 7 +D 7 +U 3 +L 5 +R 5 +U 6 +D 1 +L 6 +U 7 +D 5 +U 6 +R 4 +U 5 +D 1 +L 5 +U 5 +R 1 +U 3 +L 4 +D 4 +L 5 +U 1 +R 5 +U 3 +L 3 +R 1 +U 6 +L 3 +D 3 +R 4 +L 1 +R 6 +D 4 +L 1 +R 6 +L 4 +U 4 +R 4 +L 1 +R 6 +L 4 +D 3 +R 4 +L 7 +D 1 +R 6 +D 5 +L 2 +U 2 +D 5 +U 3 +R 2 +D 3 +R 6 +L 5 +R 4 +L 1 +D 7 +U 7 +R 3 +D 3 +R 2 +U 3 +R 1 +D 5 +U 5 +R 4 +L 6 +R 6 +U 4 +R 2 +L 3 +U 5 +R 2 +L 5 +D 6 +L 3 +U 6 +R 7 +U 5 +R 1 +L 6 +D 2 +R 1 +D 1 +R 2 +D 3 +U 2 +D 1 +U 1 +D 6 +R 2 +U 5 +L 5 +D 2 +R 7 +D 7 +U 8 +D 3 +L 1 +U 6 +R 8 +D 6 +U 5 +R 2 +L 5 +R 7 +D 8 +U 4 +R 8 +D 8 +R 4 +L 4 +U 2 +R 6 +U 4 +R 7 +D 6 +L 8 +R 8 +L 7 +D 2 +L 3 +D 3 +R 7 +D 8 +U 4 +R 8 +U 8 +L 2 +D 2 +L 6 +U 2 +L 8 +R 3 +L 1 +D 6 +U 4 +R 3 +U 4 +D 1 +U 5 +D 5 +U 2 +L 8 +U 3 +R 6 +L 1 +R 2 +U 3 +D 2 +L 5 +U 2 +L 8 +U 4 +L 1 +R 7 +D 6 +L 5 +D 7 +R 7 +U 8 +R 3 +U 1 +D 5 +L 8 +D 6 +L 1 +R 8 +L 6 +U 7 +R 5 +L 7 +R 6 +D 3 +R 7 +D 6 +U 5 +R 6 +D 2 +U 8 +L 4 +D 1 +R 5 +D 8 +L 7 +U 4 +R 6 +L 5 +U 1 +D 3 +L 7 +R 2 +U 9 +L 3 +U 7 +R 6 +L 1 +U 2 +R 8 +U 4 +R 3 +L 7 +U 3 +L 1 +D 2 +R 1 +U 2 +L 9 +R 3 +D 1 +L 7 +U 2 +D 1 +L 5 +R 9 +U 1 +D 1 +U 4 +R 9 +U 7 +L 5 +R 7 +L 7 +R 6 +D 6 +R 3 +D 4 +R 9 +U 3 +R 6 +L 8 +U 4 +L 5 +R 2 +L 1 +R 9 +L 2 +U 8 +D 5 +R 7 +D 7 +L 9 +D 6 +U 2 +R 6 +L 5 +D 5 +U 7 +R 6 +L 6 +U 1 +R 9 +U 8 +D 6 +R 9 +D 7 +R 8 +D 7 +R 4 +D 9 +L 2 +R 7 +L 3 +D 7 +U 3 +L 7 +D 4 +R 4 +L 5 +R 7 +U 6 +L 5 +D 9 +U 8 +L 1 +D 8 +U 1 +L 2 +U 6 +L 3 +D 6 +R 3 +L 1 +U 3 +D 5 +U 9 +R 3 +U 7 +L 5 +D 3 +L 8 +U 9 +L 7 +U 4 +R 7 +L 3 +R 7 +L 4 +D 4 +L 5 +R 2 +L 2 +U 2 +D 1 +R 2 +D 5 +R 10 +U 5 +D 6 +R 4 +L 8 +U 8 +R 6 +L 1 +U 4 +L 5 +D 8 +R 7 +L 4 +D 4 +U 6 +L 6 +U 3 +R 10 +D 7 +U 6 +D 3 +R 8 +L 2 +U 5 +L 2 +D 8 +R 3 +L 6 +U 2 +D 1 +U 7 +R 3 +U 7 +L 7 +R 8 +D 3 +R 9 +U 5 +R 6 +D 3 +L 4 +R 5 +U 4 +L 7 +U 5 +R 7 +D 2 +R 4 +D 4 +L 6 +D 9 +R 2 +L 3 +U 10 +R 2 +D 5 +U 8 +L 3 +R 6 +L 5 +U 5 +L 5 +D 5 +L 3 +D 4 +U 8 +R 2 +L 9 +D 8 +U 9 +L 7 +U 5 +D 3 +L 9 +R 2 +U 6 +D 5 +U 4 +D 3 +L 9 +D 7 +U 8 +R 6 +L 5 +D 2 +U 5 +R 2 +D 9 +U 9 +D 9 +L 7 +D 5 +R 1 +U 9 +L 6 +U 5 +L 7 +D 8 +U 7 +L 9 +D 3 +R 9 +U 2 +D 8 +L 2 +D 9 +R 8 +U 6 +D 10 +R 7 +D 3 +U 5 +R 8 +D 10 +R 3 +L 2 +R 5 +U 5 +D 11 +L 5 +D 4 +R 8 +L 7 +R 4 +L 6 +U 6 +L 5 +U 9 +R 10 +D 1 +L 2 +U 9 +L 2 +U 4 +R 1 +L 11 +D 8 +R 9 +D 5 +R 11 +L 10 +R 2 +U 7 +D 9 +U 4 +L 10 +U 8 +D 2 +L 4 +U 11 +R 5 +U 8 +L 7 +D 5 +L 10 +R 8 +L 11 +U 10 +L 5 +U 6 +L 8 +U 9 +L 1 +U 2 +D 10 +U 6 +R 4 +U 7 +L 8 +D 5 +U 1 +D 2 +L 2 +U 5 +L 2 +U 11 +D 10 +L 8 +U 2 +L 8 +R 6 +U 5 +R 7 +L 1 +D 10 +L 10 +U 4 +R 8 +D 2 +R 4 +U 7 +L 8 +D 8 +U 2 +L 5 +U 3 +D 4 +L 7 +R 8 +D 11 +U 1 +D 5 +R 10 +D 2 +U 11 +R 1 +D 3 +L 3 +R 11 +L 9 +D 11 +L 10 +U 1 +R 9 +U 9 +L 8 +U 5 +D 11 +U 9 +R 7 +D 8 +R 4 +U 5 +D 11 +L 8 +D 3 +R 7 +L 2 +D 3 +R 7 +L 3 +U 3 +D 1 +U 6 +L 7 +U 8 +D 4 +L 12 +D 5 +U 4 +D 5 +U 2 +R 9 +L 6 +R 2 +D 3 +U 1 +R 11 +U 3 +R 4 +D 10 +R 3 +L 8 +U 11 +L 2 +U 6 +R 12 +D 7 +L 2 +D 7 +L 12 +D 9 +R 11 +D 6 +R 4 +L 4 +D 6 +R 11 +L 9 +D 3 +R 2 +L 12 +D 6 +R 7 +L 7 +D 5 +L 6 +R 2 +U 1 +D 6 +R 6 +L 12 +R 8 +U 9 +L 2 +U 7 +R 9 +D 9 +U 4 +D 3 +R 10 +L 1 +D 10 +R 9 +U 5 +L 2 +D 7 +R 10 +U 12 +D 11 +U 11 +L 8 +R 5 +L 11 +U 3 +D 8 +U 11 +D 2 +R 2 +D 2 +U 3 +D 8 +U 2 +D 11 +L 1 +D 11 +U 11 +L 7 +D 6 +U 5 +D 7 +R 12 +U 3 +D 5 +R 8 +D 4 +L 2 +U 11 +R 12 +D 1 +R 13 +D 12 +R 3 +D 7 +R 1 +U 4 +L 9 +U 3 +D 12 +L 4 +D 6 +L 9 +D 8 +R 5 +L 4 +R 3 +D 1 +U 8 +R 8 +D 7 +L 8 +R 8 +U 6 +R 5 +L 8 +U 4 +D 11 +R 3 +U 12 +D 8 +L 13 +U 3 +L 5 +U 2 +L 9 +R 7 +U 11 +D 10 +R 6 +L 2 +D 6 +R 9 +U 13 +L 13 +D 5 +U 11 +L 10 +U 9 +L 8 +D 7 +R 4 +L 7 +D 13 +U 9 +D 9 +U 12 +R 9 +U 1 +D 7 +L 2 +D 6 +R 1 +U 4 +R 6 +U 9 +L 8 +U 10 +L 2 +U 5 +R 4 +D 9 +L 12 +U 8 +L 2 +D 9 +U 4 +R 1 +D 5 +R 11 +U 10 +D 12 +R 2 +U 6 +R 4 +U 5 +R 5 +L 12 +R 10 +D 9 +L 11 +D 10 +R 2 +U 4 +R 5 +L 4 +U 10 +D 10 +U 2 +L 4 +R 7 +D 12 +U 8 +L 8 +D 12 +R 7 +L 13 +D 12 +R 11 +U 13 +L 11 +U 5 +D 11 +U 2 +D 14 +U 7 +R 1 +D 10 +R 10 +D 13 +R 3 +D 13 +U 2 +L 13 +U 9 +D 13 +L 7 +D 3 +L 4 +R 1 +D 11 +U 1 +D 7 +L 1 +U 1 +R 6 +D 14 +L 11 +U 13 +D 10 +L 3 +R 11 +L 3 +D 10 +L 11 +U 4 +L 13 +U 13 +D 12 +R 5 +D 1 +U 14 +D 3 +U 4 +D 5 +L 3 +D 2 +R 3 +U 8 +D 5 +U 13 +R 11 +L 10 +R 13 +L 6 +U 10 +R 2 +U 9 +D 12 +L 7 +D 8 +U 4 +D 7 +L 5 +U 10 +D 10 +R 6 +L 14 +D 11 +U 13 +D 13 +U 10 +L 1 +U 2 +L 14 +U 2 +R 2 +D 12 +R 2 +L 12 +U 1 +D 13 +R 12 +L 9 +U 5 +D 11 +L 7 +R 3 +U 2 +L 4 +U 8 +L 10 +D 13 +L 2 +U 7 +L 8 +R 1 +U 3 +L 14 +U 11 +L 3 +U 11 +L 7 +R 13 +U 13 +L 4 +U 12 +R 2 +L 8 +D 10 +L 7 +U 10 +R 2 +L 4 +D 14 +R 11 +D 4 +L 4 +R 6 +L 3 +R 5 +U 5 +L 9 +R 9 +L 3 +R 14 +U 10 +D 8 +U 5 +L 9 +R 15 +L 1 +R 4 +U 9 +R 9 +D 10 +L 7 +D 15 +U 12 +L 4 +U 10 +D 14 +R 11 +D 5 +U 14 +L 8 +R 2 +U 13 +D 5 +L 2 +U 15 +R 11 +L 1 +U 5 +D 4 +R 4 +D 10 +U 13 +L 12 +R 2 +U 4 +L 13 +R 4 +U 4 +R 14 +D 10 +R 11 +D 7 +U 12 +L 4 +U 11 +D 6 +R 1 +D 5 +L 12 +R 7 +L 3 +U 11 +R 15 +D 1 +R 2 +L 6 +U 7 +L 5 +R 4 +D 3 +R 13 +L 12 +R 15 +L 15 +U 14 +D 8 +U 1 +D 14 +U 14 +L 2 +D 1 +R 4 +L 14 +R 11 +U 11 +L 10 +D 10 +R 13 +U 11 +L 7 +R 4 +U 14 +L 2 +D 15 +R 11 +D 11 +L 13 +R 13 +D 2 +R 4 +U 5 +L 14 +D 9 +R 11 +D 4 +U 6 +D 13 +R 11 +D 6 +L 14 +D 13 +L 7 +U 7 +L 8 +D 7 +L 15 +D 7 +R 11 +U 6 +L 10 +U 4 +R 12 +L 2 +D 10 +L 14 +R 15 +D 1 +U 15 +L 11 +D 5 +L 11 +D 6 +U 7 +L 14 +R 8 +U 1 +R 4 +D 2 +R 3 +L 6 +U 8 +L 15 +U 16 +L 9 +R 16 +U 6 +L 7 +U 3 +R 13 +L 6 +U 14 +L 13 +R 2 +U 10 +R 4 +U 6 +D 7 +R 16 +U 16 +L 14 +D 6 +U 1 +D 16 +L 10 +D 7 +L 16 +D 12 +R 13 +U 15 +R 2 +U 15 +D 2 +L 14 +R 13 +L 1 +U 10 +D 10 +L 2 +D 6 +L 14 +D 15 +U 1 +D 10 +L 10 +D 5 +L 10 +R 14 +U 1 +R 7 +L 3 +R 9 +U 10 +D 2 +R 5 +D 9 +U 15 +D 4 +U 16 +D 14 +R 9 +D 13 +R 16 +D 14 +L 12 +R 16 +D 2 +L 7 +D 4 +U 5 +L 10 +R 11 +L 2 +R 1 +U 4 +R 2 +L 12 +D 7 +U 12 +L 2 +U 7 +L 12 +U 1 +R 3 +U 9 +D 1 +U 13 +R 17 +U 12 +R 3 +D 10 +R 6 +L 14 +U 5 +D 3 +U 4 +D 11 +U 7 +L 15 +U 14 +L 1 +U 10 +R 1 +L 9 +U 12 +R 15 +D 11 +R 3 +L 15 +U 7 +R 12 +U 7 +D 10 +R 17 +D 13 +L 7 +U 9 +R 14 +L 16 +R 3 +U 5 +L 10 +D 16 +L 7 +U 11 +R 7 +L 8 +D 4 +L 6 +D 6 +U 17 +D 6 +R 14 +D 4 +R 17 +U 4 +L 17 +D 5 +R 16 +U 10 +R 11 +D 7 +R 14 +D 14 +L 2 +R 11 +L 16 +D 14 +R 4 +L 7 +D 15 +R 13 +U 8 +L 12 +R 4 +U 16 +D 2 +U 10 +D 2 +U 1 +L 5 +U 4 +L 17 +R 11 +D 9 +L 2 +U 12 +R 3 +D 3 +L 10 +R 2 +D 2 +L 4 +R 14 +U 3 +R 16 +L 11 +U 1 +L 15 +R 9 +U 7 +L 12 +U 10 +L 2 +U 3 +R 8 +L 13 +R 4 +D 3 +U 10 +D 12 +R 7 +U 12 +R 9 +L 18 +D 4 +U 16 +R 7 +U 13 +D 10 +R 13 +U 12 +R 8 +D 16 +R 4 +L 3 +D 13 +U 11 +D 7 +L 3 +R 10 +L 16 +D 4 +L 15 +U 13 +R 15 +L 6 +R 14 +D 8 +R 16 +D 10 +U 10 +L 12 +D 17 +R 10 +L 4 +R 4 +U 8 +R 1 +U 13 +D 17 +L 4 +D 3 +U 3 +L 8 +D 3 +U 12 +D 2 +U 11 +L 15 +R 11 +L 14 +U 5 +D 6 +L 17 +U 18 +R 1 +U 2 +R 15 +U 8 +L 9 +U 16 +L 7 +D 9 +L 8 +U 4 +D 3 +L 6 +U 10 +L 14 +R 17 +L 16 +U 15 +R 5 +D 2 +U 8 +L 8 +U 11 +D 6 +L 14 +U 2 +D 3 +R 10 +U 2 +D 16 +U 2 +D 1 +L 12 +R 4 +L 13 +D 15 +U 6 +R 11 +U 5 +L 7 +D 15 +R 2 +D 9 +R 16 +U 1 +L 12 +U 6 +D 3 +U 3 +L 6 +U 11 +R 4 +L 11 +R 12 +U 14 +L 13 +D 13 +L 5 +U 19 +D 11 +L 14 +U 12 +D 1 +R 15 +L 17 +U 6 +R 3 +U 11 +D 11 +U 14 +R 3 +L 10 +D 11 +L 8 +U 18 +L 7 +R 6 +U 4 +D 7 +L 4 +R 12 +U 2 +R 17 +U 2 +L 9 +R 18 +U 13 +L 14 +D 16 +U 3 +D 8 +U 17 +D 15 +L 13 +R 6 +D 13 +U 17 +L 19 +U 3 +L 2 +D 14 +R 13 +D 13 +L 7 +R 12 +D 7 +U 8 +D 4 +U 13 +D 11 +U 2 +D 6 +L 1 +D 19 +L 9 +D 5 +R 11 +U 19 +L 11 +D 3 +R 3 +U 6 +D 18 +U 17 +D 12 +R 13 +U 18 +R 14 +L 10 +R 15 +L 1 +U 14 +L 19 +D 1 +U 13 +L 4 +R 6 +D 10 +R 6 +D 6 +L 15 +D 8 +L 8 +U 3 +D 14 +U 5 +L 4 +U 14 +R 3 +U 16 +R 5 +L 18 +R 16 +D 13 +U 9 +R 14 +L 2 +D 12 +R 5 +U 17 +R 9 +L 11 +D 8 +L 8 +D 8 +U 6 +R 16 +L 5 +D 14 \ No newline at end of file