diff --git a/day-15/Cargo.lock b/day-15/Cargo.lock
deleted file mode 100644
index 1135a55..0000000
--- a/day-15/Cargo.lock
+++ /dev/null
@@ -1,78 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-[[package]]
-name = "day-15"
-version = "0.1.0"
-dependencies = [
- "indoc",
-]
-
-[[package]]
-name = "indoc"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47741a8bc60fb26eb8d6e0238bbb26d8575ff623fdc97b1a2c00c050b9684ed8"
-dependencies = [
- "indoc-impl",
- "proc-macro-hack",
-]
-
-[[package]]
-name = "indoc-impl"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce046d161f000fffde5f432a0d034d0341dc152643b2598ed5bfce44c4f3a8f0"
-dependencies = [
- "proc-macro-hack",
- "proc-macro2",
- "quote",
- "syn",
- "unindent",
-]
-
-[[package]]
-name = "proc-macro-hack"
-version = "0.5.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71"
-dependencies = [
- "unicode-xid",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "syn"
-version = "1.0.54"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2af957a63d6bd42255c359c93d9bfdb97076bd3b820897ce55ffbfbf107f44"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
-]
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
-
-[[package]]
-name = "unindent"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f14ee04d9415b52b3aeab06258a3f07093182b88ba0f9b8d203f211a7a7d41c7"
diff --git a/day-15/Cargo.toml b/day-15/Cargo.toml
deleted file mode 100644
index 5d876d5..0000000
--- a/day-15/Cargo.toml
+++ /dev/null
@@ -1,10 +0,0 @@
-[package]
-name = "day-15"
-version = "0.1.0"
-authors = ["Tristan Daniƫl Maat <tm@tlater.net>"]
-edition = "2018"
-
-# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
-
-[dependencies]
-indoc = "0.3"
diff --git a/day-15/src/main.rs b/day-15/src/main.rs
deleted file mode 100644
index 8aa0f24..0000000
--- a/day-15/src/main.rs
+++ /dev/null
@@ -1,121 +0,0 @@
-use std::collections::HashMap;
-
-fn main() -> Result<(), Box<dyn std::error::Error>> {
-    // Part 1
-    let numbers = parse_numbers("1,20,11,6,12,0")?;
-    let result = play(&numbers, 2020);
-    println!("{}", result);
-
-    // Part 2
-    let numbers = parse_numbers("1,20,11,6,12,0")?;
-    let result = play(&numbers, 30000000);
-    println!("{}", result);
-
-    Ok(())
-}
-
-fn parse_numbers(input: &str) -> Result<Vec<u32>, std::num::ParseIntError> {
-    input.split(',').map(|number| number.parse()).collect()
-}
-
-fn play(numbers: &Vec<u32>, turns: usize) -> u32 {
-    let mut said = HashMap::new();
-    for (turn, number) in numbers.iter().enumerate() {
-        said.insert(*number, (turn + 1, 0));
-    }
-    let mut last = *numbers.last().expect("Must have at least one number");
-
-    for turn in numbers.len()..turns {
-        match said.get(&last) {
-            Some((_, 0)) | None => {
-                last = 0;
-
-                let entry = said.entry(last).or_insert((0, 0));
-                *entry = (turn + 1, entry.0);
-            }
-            Some((last_turn, last_last_turn)) => {
-                last = (last_turn - last_last_turn) as u32;
-
-                let entry = said.entry(last).or_insert((0, 0));
-                *entry = (turn + 1, entry.0);
-            }
-        };
-    }
-
-    last
-}
-
-#[cfg(test)]
-mod tests {
-    use super::*;
-
-    #[test]
-    fn test_simple() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "0,3,6";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 436);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple0() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "1,3,2";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 1);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple1() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "2,1,3";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 10);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple2() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "1,2,3";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 27);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple3() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "2,3,1";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 78);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple4() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "3,2,1";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 438);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple5() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "3,1,2";
-        let numbers = parse_numbers(input)?;
-        let result = play(&numbers, 2020);
-
-        assert_eq!(result, 1836);
-        Ok(())
-    }
-}