diff --git a/AdventOfCode2020.xcodeproj/project.pbxproj b/2020/AdventOfCode2020.xcodeproj/project.pbxproj
similarity index 100%
rename from AdventOfCode2020.xcodeproj/project.pbxproj
rename to 2020/AdventOfCode2020.xcodeproj/project.pbxproj
diff --git a/AdventOfCode2020.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/2020/AdventOfCode2020.xcodeproj/project.xcworkspace/contents.xcworkspacedata
similarity index 100%
rename from AdventOfCode2020.xcodeproj/project.xcworkspace/contents.xcworkspacedata
rename to 2020/AdventOfCode2020.xcodeproj/project.xcworkspace/contents.xcworkspacedata
diff --git a/AdventOfCode2020.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/2020/AdventOfCode2020.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
similarity index 100%
rename from AdventOfCode2020.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
rename to 2020/AdventOfCode2020.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
diff --git a/2020/AdventOfCode2020.xcodeproj/project.xcworkspace/xcuserdata/sven.xcuserdatad/UserInterfaceState.xcuserstate b/2020/AdventOfCode2020.xcodeproj/project.xcworkspace/xcuserdata/sven.xcuserdatad/UserInterfaceState.xcuserstate
new file mode 100644
index 0000000..4447323
Binary files /dev/null and b/2020/AdventOfCode2020.xcodeproj/project.xcworkspace/xcuserdata/sven.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day20.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day20.xcscheme
similarity index 100%
rename from AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day20.xcscheme
rename to 2020/AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day20.xcscheme
diff --git a/AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day23.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day23.xcscheme
similarity index 100%
rename from AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day23.xcscheme
rename to 2020/AdventOfCode2020.xcodeproj/xcshareddata/xcschemes/day23.xcscheme
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
new file mode 100644
index 0000000..12b1cea
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day1.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day1.xcscheme
new file mode 100644
index 0000000..81d86c7
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day1.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day10.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day10.xcscheme
new file mode 100644
index 0000000..7d6b9fc
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day10.xcscheme
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day11.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day11.xcscheme
new file mode 100644
index 0000000..1ed6f5a
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day11.xcscheme
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day12.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day12.xcscheme
new file mode 100644
index 0000000..1a65050
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day12.xcscheme
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day2.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day2.xcscheme
new file mode 100644
index 0000000..3844cb4
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day2.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day3.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day3.xcscheme
new file mode 100644
index 0000000..97fe661
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day3.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day4.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day4.xcscheme
new file mode 100644
index 0000000..b213be1
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day4.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day5.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day5.xcscheme
new file mode 100644
index 0000000..9ab25de
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day5.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day6.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day6.xcscheme
new file mode 100644
index 0000000..c700b3e
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day6.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day7.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day7.xcscheme
new file mode 100644
index 0000000..81783b9
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day7.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day8.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day8.xcscheme
new file mode 100644
index 0000000..2f61a3b
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day8.xcscheme
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day9.xcscheme b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day9.xcscheme
new file mode 100644
index 0000000..4be0723
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/day9.xcscheme
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/xcschememanagement.plist b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..d52b15e
--- /dev/null
+++ b/2020/AdventOfCode2020.xcodeproj/xcuserdata/sven.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,172 @@
+
+
+
+
+ SchemeUserState
+
+ day1.xcscheme
+
+ orderHint
+ 10
+
+ day10.xcscheme
+
+ orderHint
+ 2
+
+ day11.xcscheme
+
+ orderHint
+ 3
+
+ day12.xcscheme
+
+ orderHint
+ 12
+
+ day13.xcscheme_^#shared#^_
+
+ orderHint
+ 12
+
+ day14.xcscheme_^#shared#^_
+
+ orderHint
+ 15
+
+ day15.xcscheme_^#shared#^_
+
+ orderHint
+ 19
+
+ day16.xcscheme_^#shared#^_
+
+ orderHint
+ 23
+
+ day17.xcscheme_^#shared#^_
+
+ orderHint
+ 20
+
+ day18.xcscheme_^#shared#^_
+
+ orderHint
+ 21
+
+ day19.xcscheme_^#shared#^_
+
+ orderHint
+ 24
+
+ day2.xcscheme
+
+ orderHint
+ 6
+
+ day20.xcscheme_^#shared#^_
+
+ orderHint
+ 13
+
+ day21.xcscheme_^#shared#^_
+
+ orderHint
+ 27
+
+ day22.xcscheme_^#shared#^_
+
+ orderHint
+ 25
+
+ day23.xcscheme_^#shared#^_
+
+ orderHint
+ 14
+
+ day24.xcscheme_^#shared#^_
+
+ orderHint
+ 17
+
+ day25.xcscheme_^#shared#^_
+
+ orderHint
+ 29
+
+ day3.xcscheme
+
+ orderHint
+ 7
+
+ day4.xcscheme
+
+ orderHint
+ 9
+
+ day5.xcscheme
+
+ orderHint
+ 11
+
+ day6.xcscheme
+
+ orderHint
+ 8
+
+ day7.xcscheme
+
+ orderHint
+ 5
+
+ day8.xcscheme
+
+ orderHint
+ 4
+
+ day9.xcscheme
+
+ orderHint
+ 1
+
+
+ SuppressBuildableAutocreation
+
+ 26DD9C70258F2CEE0082D4F2
+
+ primary
+
+
+ 26DD9D2A259312410082D4F2
+
+ primary
+
+
+ 26E2ACF9258009FE00702405
+
+ primary
+
+
+ 26E2AD1D25816EE100702405
+
+ primary
+
+
+ 26E2AD52258343D800702405
+
+ primary
+
+
+ 26E2AD802584A61F00702405
+
+ primary
+
+
+ 26E2ADA82586024700702405
+
+ primary
+
+
+
+
+
diff --git a/common/Extensions.swift b/2020/common/Extensions.swift
similarity index 100%
rename from common/Extensions.swift
rename to 2020/common/Extensions.swift
diff --git a/common/LoadData.swift b/2020/common/LoadData.swift
similarity index 100%
rename from common/LoadData.swift
rename to 2020/common/LoadData.swift
diff --git a/day1/main.swift b/2020/day1/main.swift
similarity index 100%
rename from day1/main.swift
rename to 2020/day1/main.swift
diff --git a/day10/main.swift b/2020/day10/main.swift
similarity index 100%
rename from day10/main.swift
rename to 2020/day10/main.swift
diff --git a/day11/main.swift b/2020/day11/main.swift
similarity index 100%
rename from day11/main.swift
rename to 2020/day11/main.swift
diff --git a/day12/main.swift b/2020/day12/main.swift
similarity index 100%
rename from day12/main.swift
rename to 2020/day12/main.swift
diff --git a/day13/main.swift b/2020/day13/main.swift
similarity index 100%
rename from day13/main.swift
rename to 2020/day13/main.swift
diff --git a/day14/main.swift b/2020/day14/main.swift
similarity index 100%
rename from day14/main.swift
rename to 2020/day14/main.swift
diff --git a/day15/main.swift b/2020/day15/main.swift
similarity index 100%
rename from day15/main.swift
rename to 2020/day15/main.swift
diff --git a/day16/main.swift b/2020/day16/main.swift
similarity index 100%
rename from day16/main.swift
rename to 2020/day16/main.swift
diff --git a/day17/main.swift b/2020/day17/main.swift
similarity index 100%
rename from day17/main.swift
rename to 2020/day17/main.swift
diff --git a/day18/main.swift b/2020/day18/main.swift
similarity index 100%
rename from day18/main.swift
rename to 2020/day18/main.swift
diff --git a/day19/main.swift b/2020/day19/main.swift
similarity index 100%
rename from day19/main.swift
rename to 2020/day19/main.swift
diff --git a/day2/main.swift b/2020/day2/main.swift
similarity index 100%
rename from day2/main.swift
rename to 2020/day2/main.swift
diff --git a/day20/main.swift b/2020/day20/main.swift
similarity index 100%
rename from day20/main.swift
rename to 2020/day20/main.swift
diff --git a/day21/main.swift b/2020/day21/main.swift
similarity index 100%
rename from day21/main.swift
rename to 2020/day21/main.swift
diff --git a/day22/main.swift b/2020/day22/main.swift
similarity index 100%
rename from day22/main.swift
rename to 2020/day22/main.swift
diff --git a/day23/main.swift b/2020/day23/main.swift
similarity index 100%
rename from day23/main.swift
rename to 2020/day23/main.swift
diff --git a/day24/main.swift b/2020/day24/main.swift
similarity index 100%
rename from day24/main.swift
rename to 2020/day24/main.swift
diff --git a/day25/main.swift b/2020/day25/main.swift
similarity index 100%
rename from day25/main.swift
rename to 2020/day25/main.swift
diff --git a/day3/main.swift b/2020/day3/main.swift
similarity index 100%
rename from day3/main.swift
rename to 2020/day3/main.swift
diff --git a/day4/main.swift b/2020/day4/main.swift
similarity index 100%
rename from day4/main.swift
rename to 2020/day4/main.swift
diff --git a/day5/main.swift b/2020/day5/main.swift
similarity index 100%
rename from day5/main.swift
rename to 2020/day5/main.swift
diff --git a/day6/main.swift b/2020/day6/main.swift
similarity index 100%
rename from day6/main.swift
rename to 2020/day6/main.swift
diff --git a/day7/main.swift b/2020/day7/main.swift
similarity index 100%
rename from day7/main.swift
rename to 2020/day7/main.swift
diff --git a/day8/main.swift b/2020/day8/main.swift
similarity index 100%
rename from day8/main.swift
rename to 2020/day8/main.swift
diff --git a/day9/main.swift b/2020/day9/main.swift
similarity index 100%
rename from day9/main.swift
rename to 2020/day9/main.swift