diff --git a/day-3/.gitignore b/day-3/.gitignore
deleted file mode 100644
index ea8c4bf..0000000
--- a/day-3/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/target
diff --git a/day-3/Cargo.lock b/day-3/Cargo.lock
deleted file mode 100644
index d0411da..0000000
--- a/day-3/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-3"
-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.53"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8833e20724c24de12bbaba5ad230ea61c3eafb05b881c7c9d3cfe8638b187e68"
-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-3/Cargo.toml b/day-3/Cargo.toml
deleted file mode 100644
index d861f49..0000000
--- a/day-3/Cargo.toml
+++ /dev/null
@@ -1,10 +0,0 @@
-[package]
-name = "day-3"
-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-3/input b/day-3/input
deleted file mode 100644
index b4223c3..0000000
--- a/day-3/input
+++ /dev/null
@@ -1,323 +0,0 @@
-...#...#..#....#..#...#..##..#.
-.#..#.....#.#............###...
-.#...###....#.............##..#
-...##...##....#.....##..#.##...
-.....###.#.###..##.#.##.......#
-#...##.....#..........#..#.#.#.
-......##.......##..#....#.#....
-....#.###.##..#.#..##.##....#.#
-.......#.......###.#.#.##.....#
-.........#.#....#..........#.#.
-.#...##.....##.........#..#....
-.##....#.#.#...##......#.......
-##.#.#..#....#....#....#...#.#.
-##....#.#..##......#....##...#.
-....#..#..##..#.###.......#.#..
-.....##....###...........#.#.##
-#.....##.........#....##......#
-........###.#..#....#....#.....
-...#.......#.##..#.###......#..
-...............#..#....#.##....
-..#..###..#.#..#.........##..#.
-####..#..####..................
-#...####...#.......#.#.#...#...
-......###.....#......#..#..#...
-#...#.....##.....#.#..##...#.#.
-#...........##.......#.........
-.#..#.........#.#..##....#.....
-........##...#................#
-........#.###.#.###.#.#.##..##.
-.#....##.....#...##.#..#.#.....
-..#..#.....###....##.#....#.#.#
-#......##.##...##..#.........#.
-#..#..#.....#.....#.........#..
-#....#.#...###.........#...#...
-.#.#.....##......#.#......#....
-..##......##...#.#.#.#.........
-..#......#.....##.###.#.#..#...
-....#..#.......#..#..#.....#...
-.#.#.....#...#..........#......
-#.#..#...........#.#.##.#...#.#
-..#.#....###...#...#.....#.#...
-....##.#.###....####.......#...
-.....##....#.......#..#..#....#
-...##..#.#.#.#......#......#...
-...##...#....#...#......###...#
-........#..#.#.....#.###.......
-..#..##.#....#.#.........#...#.
-.....#.####....#.##.........#..
-......#...#...#.....#......###.
-.##.....#....#..#.#....#.....#.
-...........#...#....##..#...#..
-.....#....#.....#...##..#...#.#
-.#...#.........#.......#...#..#
-...#..#...#........#......#....
-..#..#####.#.....#.#....#...#.#
-...#.......#.#....#...##..#..#.
-####..#.#.###.#.#..............
-.##........#...#.#....#..#.....
-..#..............#.#..##...#.##
-.###.#.....#.#.....##.#......##
-....###.....#...#...#.#..#.....
-....###.#.##.......#....#...#..
-#..#...#......##..#.....#.#...#
-....#.#.........#..............
-#.##.##...#..#.#.#.....#...#.##
-#...#...#......#...........##..
-#.#.#......#............#.#....
-.#.#..######...#.#.........#.##
-..#.#..#...#......#............
-....#.....#......##..#.....#...
-.##............#....##..#......
-.#.#.#...#.##.............###.#
-#.#...#...#.....#....#.#.#.....
-........#..#......##.##.#.....#
-.....#.....#.#####...#....#....
-.#...#......#.........#.#......
-...#...#..##.....##....#..#....
-....#....##..#.........#.......
-..#........##..#.#........#....
-...#...##...........#...#....#.
-.....##.........#..#....#..#.#.
-#..#....##..#...##.....#..##.#.
-..#.#.#.#...#...#.....#.#....#.
-.......#.###...#.#.......#.#...
-....#..#..#.###.#.....###..#.#.
-.#..##......#..#..#....#.####..
-..##...........#...#.........#.
-......#..#...#..........#......
-....#..........#......##...#...
-....#..#.##........#.#...##.#..
-#.##......#........##.#...#...#
-#..#....#.....###........##....
-...........##.....##..#....#.##
-..#....#..#..#......#.#.....#..
-#....#.##....#.....##.......#..
-.#.....#.#..............#.##..#
-.#..#..#...#...#....#.#.....#..
-...###...##.#...#..#........#..
-#...#.##.#.....#.#....#..#.....
-#.....###.#.......#.#..#.#..##.
-....#..#..##.......###.#...#...
-.#...####...............#.....#
-.#.##.#.....#.....#.#......##.#
-#...........#.##....###.##....#
-...............#..........#....
-.....#..#.##.###.#.............
-...##.............#.....#.#..#.
-....#.#...#.#..#..#..#....#....
-..#.......#..........#...#...#.
-...............#.#.#...###....#
-....#...#.##....#..##....#.....
-........#.#.##.........##.##.##
-#.....###.......#.#....#..#..##
-.#..#...#......#.#..##.......#.
-#.....#.#........#.##..#..#....
-.###..##.#.......#......###....
-.#...###.....#.....#....###...#
-........##.##......#.#....#...#
-.#....#..#.........#..##...##..
-.......#.......##.#..#..##.....
-#..##..##......#.#......#.##...
-..#..###..#...#....#..#...#....
-#.............#.####.........##
-..#..................#...#..#..
-..#......#........##.......#.#.
-.#.#.#.#..###.....#....#.#.....
-...#.##.###.......#....#.......
-................##...#.....#...
-..#.###.#...#.####....#..#..#..
-..#....###....##..#.#.........#
-.#..#.#.....#........#....##...
-.....#..#......#..#..##.#.#....
-.#..#.........##....##......#..
-.....#.#...#...#.#...#.#...#.#.
-..#..#...#...#...##.#..###.....
-..#..##......#..##.#...##......
-.......#..##....##.#......#..#.
-..#......#.#.....#.##....##....
-..#....#......#......##........
-....##.#.#....#.......#.##.....
-#.....#...###....#....#...#....
-............#.#..#...#...#..#..
-..##.............##....#.......
-.#.......#.##.#......#....##...
-...##............#....#..#...#.
-.##.####.....#.#..###.#....#.##
-....##.#........#..#...#.......
-...#...###.##...........##..#..
-..##..##....#...#..#..........#
-..#.........#.#...##..........#
-.......##....#.#...##.....#..#.
-.............#.....#.#.......#.
-#.......#..##..##...##.#.......
-..............#.....#.#..#...##
-........##..#.....#...#...#.#..
-###.#.................#........
-...#........#...#.#######..#..#
-...#.##...##.#.#..######...#...
-#.......#..#....#..#.##.....#..
-#..#....##....#.##.......#....#
-#...#..#.#.#...#..#.##..#......
-....#..##....#..#.#...........#
-.##..#.#.............###.......
-#....##......#..#..#.....###...
-..#..........#...###.#.........
-.####......#....#......#.#....#
-..#....#.#.#......#....#.......
-.....#.....#....#....#####....#
-.##..........#...#.###....#....
-....##.....##......#...#.#.....
-.#...#...#..#.#.#...#####......
-...#.##..####.##.##.......##...
-............#.......#..........
-.#..##.#..#####........#..#...#
-#......##..##..##.........##...
-....#....#.............#.#....#
-###..#.....#.....#.#...#..#.###
-#...#.......##......#....#.#.#.
-...#......#..#...#....#...###.#
-....#....##.......#....#......#
-............#......##.##.....#.
-...#.........#......#....##..##
-.....##....##...#..###...#..#..
-.......##.#..........#.##.##...
-....##...........#.#..#..#.##.#
-#...#..##.##.#....#....#.#.....
-...##.#.....#..#..#..###....##.
-#.##.#..#..#.#.............#...
-..#.#.............###.....#....
-...#..#....#..#.....#.#..#..#..
-...#.....##.#...........#..##.#
-.........#.#.##..#..#.#...#....
-...#..##..#...#...###.##.#..#..
-.#..##...##......##..##........
-......##....##.#.##.#.#........
-...#..................#.....#..
-.##................#.#..#..###.
-.##.##.....#................#..
-.....#.#..........#...#..#.#..#
-.............#......#..#.#..#..
-...#...##..#........#....#.....
-#......#........##.##...##.....
-##..#..##....#...#............#
-..##..##.##....##..##........#.
-...#....#.#.#.#....#.#...##....
-....#...##..##.#.##...#..#...#.
-#..#....##.#.....#.......#...##
-##.#....#.............#..#.....
-.##..#..#.#.....#.......#.#..#.
-.......#..#...##...#...###..#..
-..........#...#.#..##.....#...#
-..#....#...........#####....#..
-#....#..#.......##.............
-.........##..#####.......##....
-#..#..........#.....###...#..#.
-.#.#.#..#...#.......##...#####.
-.....#....#.###...#.......#....
-#.#.....##...###....###....#...
-.#.....#..#.#.#........#...#...
-.##.#.#.#......#....###....#...
-.#..##..####......###......#...
-......#.#.#.#.#...#...####.##..
-.#........##..#.....#....#....#
-.....###......##..#....#.......
-#.#.##...#.#......###..........
-........#.#...#..#......#....#.
-..##...##.........#.......#.#..
-..#.##....#...##.....#.###.....
-.........#..#.#....#....#.#.##.
-#.........#......#..#.......#..
-...#...##.......#.........#....
-............#......#...........
-##.....#.....#.#...#.....#.....
-..#.#...#..#...#.#...........#.
-#.#.#..#..#...##.#...#.#.....#.
-.#..###.#..##.#.....#.....#....
-##....##....#.......##..##.....
-.#..#...........###..........#.
-.#..#..#..........###..#.......
-#..###......#............##...#
-#......#........#..#..#..#.#...
-.......#.###...#.##............
-.##....#.......#.#...##.....#.#
-....#..#.#.......#.#...........
-##....#.###.#....#.#..##.#....#
-..#..#..#....#...#........##...
-...#...##....#..#.#...#..#.....
-......#..#......#....#.......#.
-#.#..............#...###...#..#
-...#....#..#..........#.#...#..
-#.....##..##.....#........#....
-.#...##..#.#..............#....
-##.#....#..##...#..#.####.#..#.
-.....#.......#.#.#.#..#.....###
-...#.##....#.#........##.......
-#...#.#...#.#..###..##.##...#.#
-###..............#.#.###.......
-...###..#.#..#....##...###.#...
-......##...........#...#..#...#
-.#..#.........##.......#..#...#
-.#.......###......##...#...#...
-.#......##...#........#.......#
-.#..#.....#.........#.#........
-#...#.#.....#...#..##.........#
-......##.#......##.#..##.#.....
-...............#.#..#....#....#
-#....#..#..#..#.#.....##...##..
-#.#......#.###......#..#...####
-.#.#..#...#...#.#..#.##.##.#.#.
-.....#.#...###...#.#.....##....
-...#..#.#..........##.#....#.#.
-...#..#.#.##.....###.##.#....#.
-..........#..###......#..#.#...
-###.....#..###..#...#..###.#...
-..#..#.....##.#.#..###.......#.
-....#....##........##..........
-.......#..........#...#......#.
-.#........#.#.#.#.#.......#....
-.#..#.......##..##....#.#...#..
-.#.#.#.......#..#..............
-#.#....#.#...#.#.#.....#.#...##
-.....#..........##..#.......#..
-.##......#.#....#.#.......#....
-..#.##....#.##.#...#...........
-...##......##..##.............#
-..........##.#.#..#..........#.
-.##....#..#..#.#....##.#...#.#.
-...........#....#.....#.#..#...
-.#.....#....##..#.........#....
-.....#.....#...#....#...#.###.#
-..#....#....#.....#...#......#.
-.....##..#.............#...#...
-........#..#.......#.#.......#.
-#...###..#.##.#...###...##..##.
-....##..#.......#...#.#........
-.#...#.#.##....####........#..#
-.#...#.#.####.##.#.............
-#..##...#....#...#.#.#.#.##..#.
-.#.......#........#.....###....
-#.#.....#....#..#....#..#....#.
-...#..#...#.....#.........##...
-.#....#......###...#....#.#.#..
-#.#........#......#...#....##..
-.....#..#......#..#..#......#..
-.#.....#..#.##.#.#.#...#......#
-##........#..#.#..#...#.####...
-..........##....#.#..#.#....#..
-#.##..#..#....#..#....##..#.#.#
-..#......#.......#...##..#.....
-##...#.........#......#......#.
-.#.....................#..#.##.
-.#.......#........#.#.#..##.#..
-..#..........#........#..##.#..
-.#...#...#.........##.#.#.#....
-....#....#.###.#....###....#.##
-....##......##........##.#.##..
-....#.#......#.##.#...#.##.....
-....#....#..#.#..###.#.#.......
-....#......#..#.#.......#..##..
-.....#..#.#.##.##..##.....#.#..
-...#....................##.....
-#.....#...##...#.#.............
-..#.#...#.#.#.....##..#....#...
diff --git a/day-3/src/main.rs b/day-3/src/main.rs
deleted file mode 100644
index b5c2d85..0000000
--- a/day-3/src/main.rs
+++ /dev/null
@@ -1,91 +0,0 @@
-use std::fs;
-
-fn main() -> Result<(), Box<dyn std::error::Error>> {
-    let input = fs::read_to_string("input")?;
-    let slope = parse_slope(&input)?;
-
-    // Part 1
-    let encounters = count_encounters(&slope, (1, 3));
-    println!("{}", encounters);
-
-    // Part 2
-    let encounters: usize = [(1, 1), (1, 3), (1, 5), (1, 7), (2, 1)]
-        .iter()
-        .map(|angle| count_encounters(&slope, *angle))
-        .product();
-    println!("{}", encounters);
-
-    Ok(())
-}
-
-fn parse_slope(input: &str) -> Result<Vec<Vec<usize>>, String> {
-    input
-        .lines()
-        .map(|line| {
-            line.chars()
-                .map(|c| match c {
-                    '.' => Ok(0),
-                    '#' => Ok(1),
-                    other => Err(format!("Invalid slope; contains character: {}", other)),
-                })
-                .collect()
-        })
-        .collect()
-}
-
-fn count_encounters(input: &Vec<Vec<usize>>, angle: (usize, usize)) -> usize {
-    input
-        .iter()
-        .enumerate()
-        .step_by(angle.0)
-        .map(|(i, row)| row[(i * angle.1 / angle.0) % row.len()])
-        .sum()
-}
-
-#[cfg(test)]
-mod tests {
-    use super::*;
-    use indoc::indoc;
-
-    #[test]
-    fn test_simple() -> Result<(), Box<dyn std::error::Error>> {
-        let example = indoc!(
-            "..##.......
-             #...#...#..
-             .#....#..#.
-             ..#.#...#.#
-             .#...##..#.
-             ..#.##.....
-             .#.#.#....#
-             .#........#
-             #.##...#...
-             #...##....#
-             .#..#...#.#"
-        );
-
-        let parsed = parse_slope(example)?;
-        assert_eq!(count_encounters(&parsed, (1, 3)), 7);
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple2() -> Result<(), Box<dyn std::error::Error>> {
-        let example = indoc!(
-            "..##.......
-             #...#...#..
-             .#....#..#.
-             ..#.#...#.#
-             .#...##..#.
-             ..#.##.....
-             .#.#.#....#
-             .#........#
-             #.##...#...
-             #...##....#
-             .#..#...#.#"
-        );
-
-        let parsed = parse_slope(example)?;
-        assert_eq!(count_encounters(&parsed, (2, 1)), 2);
-        Ok(())
-    }
-}
diff --git a/day-4/.gitignore b/day-4/.gitignore
deleted file mode 100644
index b83d222..0000000
--- a/day-4/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/target/
diff --git a/day-4/Cargo.lock b/day-4/Cargo.lock
deleted file mode 100644
index 44f11e3..0000000
--- a/day-4/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-4"
-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.53"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8833e20724c24de12bbaba5ad230ea61c3eafb05b881c7c9d3cfe8638b187e68"
-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-4/Cargo.toml b/day-4/Cargo.toml
deleted file mode 100644
index 223e26a..0000000
--- a/day-4/Cargo.toml
+++ /dev/null
@@ -1,10 +0,0 @@
-[package]
-name = "day-4"
-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-4/input b/day-4/input
deleted file mode 100644
index 5b0a490..0000000
--- a/day-4/input
+++ /dev/null
@@ -1,1068 +0,0 @@
-hgt:159cm
-pid:561068005 eyr:2025 iyr:2017 cid:139 ecl:blu hcl:#ceb3a1
-byr:1940
-
-iyr:2014
-byr:1986 pid:960679613 eyr:2025 ecl:hzl
-
-cid:211 ecl:blu hcl:#7d3b0c iyr:2011 pid:006632702
-byr:1982 eyr:2023 hgt:68in
-
-hcl:#341e13 hgt:192 iyr:2028
-ecl:utc
-eyr:2027 byr:1979 pid:653515689
-
-eyr:2026 hgt:161cm ecl:#1850b8
-pid:298779494 hcl:b2114e iyr:1953
-
-hgt:155cm
-hcl:#a97842 iyr:2019
-ecl:gry byr:1939
-pid:935099157 eyr:2027
-
-eyr:2024 ecl:grn
-pid:102781360 byr:1962 iyr:2013 hcl:#602927
-
-hcl:#602927 hgt:152cm
-pid:659074205 ecl:brn iyr:2014 byr:1951
-
-iyr:2025 hcl:8464b2 byr:2030 pid:976783295 hgt:155cm ecl:dne
-
-hcl:#ceb3a1 byr:1984 pid:863872932
-iyr:2016 hgt:190cm ecl:grn eyr:2026
-
-eyr:2030 hcl:#efcc98
-cid:166 pid:894418497 ecl:hzl
-hgt:189cm iyr:2014 byr:1966
-
-byr:1937 iyr:2017 eyr:2028
-ecl:amb
-hgt:165cm cid:84
-pid:435289747
-
-hgt:166cm hcl:#6b5442 byr:1953 eyr:2023 iyr:2010
-pid:948173962 ecl:amb
-
-byr:1962 cid:276 iyr:2010 hgt:183cm pid:097154397
-hcl:#341e13 eyr:2024
-
-hgt:61cm
-byr:1942 ecl:xry hcl:#05e97d pid:42823283
-eyr:2024
-
-hcl:#888785
-pid:960190685 byr:1967 iyr:2012 cid:99 eyr:2021
-hgt:76in
-
-eyr:2025 byr:1958 hcl:#18171d iyr:2012 pid:759427419
-ecl:hzl
-
-ecl:#829d2e
-cid:60 iyr:2028
-byr:1979 hcl:caff12 eyr:1931 pid:#fd7aab hgt:184cm
-
-cid:251 byr:1981 pid:625590775
-hcl:#a97842 eyr:2020
-ecl:amb hgt:178cm
-iyr:2016
-
-pid:026891577 ecl:amb byr:2014
-hcl:bc419f eyr:2026
-iyr:1948
-hgt:123 cid:67
-
-ecl:hzl
-hgt:152cm hcl:#efcc98
-byr:1993
-eyr:2025
-
-ecl:grn iyr:1924 eyr:2039 pid:8441306576
-hgt:163in
-byr:2012
-cid:193
-
-ecl:#78f4fa
-eyr:2020 hgt:165cm byr:1965 pid:987868257 iyr:2012
-cid:331 hcl:z
-
-ecl:brn cid:289 pid:868305933
-byr:1936 hgt:174cm iyr:2016 hcl:#623a2f eyr:2021
-
-hcl:#2a6308 eyr:2027 hgt:154cm ecl:grn
-iyr:2012
-byr:1940
-pid:675209536
-
-pid:186cm eyr:2022
-hcl:#fffffd hgt:151cm iyr:2016 ecl:hzl byr:1954
-
-ecl:grn hgt:177cm pid:725111435 byr:1927 eyr:2027 cid:154 iyr:2010 hcl:#623a2f
-
-pid:801551597 cid:55 eyr:2028 hgt:193cm hcl:#a97842
-ecl:hzl byr:1942 iyr:2015
-
-cid:176 eyr:2030 iyr:2018 byr:1932 hgt:162cm pid:896180324 ecl:amb hcl:#6b5442
-
-cid:239 ecl:grn iyr:1953 pid:9500162195
-byr:1998
-hgt:182cm hcl:#733820 eyr:1966
-
-eyr:2030
-pid:919325322 hcl:z iyr:2024 hgt:71cm ecl:#1e935c byr:2026
-
-iyr:2012
-ecl:gry eyr:2025 hcl:#602927 hgt:168cm byr:1925
-pid:303312675
-
-hgt:150in iyr:2014 ecl:gry eyr:2029
-byr:2029
-cid:228
-
-ecl:#9524e0 byr:2026 hcl:z
-iyr:2023
-cid:325
-eyr:1996
-pid:6172325031 hgt:191
-
-ecl:#689e88
-eyr:1937
-cid:75 byr:1963 iyr:2024
-pid:4980937 hgt:156cm
-hcl:#fffffd
-
-pid:719820090 iyr:2020 hgt:165cm
-hcl:#ceb3a1 byr:1997 ecl:blu eyr:2027
-
-eyr:2025
-pid:241723456
-iyr:2011
-byr:1953 cid:230 hgt:185cm hcl:#efcc98 ecl:oth
-
-byr:1936 hcl:#623a2f
-iyr:2010 hgt:156cm
-eyr:2022
-pid:064253102 ecl:brn
-
-cid:332 hcl:#a97842 eyr:2026 ecl:gry iyr:2019 pid:#4e4a46
-hgt:150cm
-byr:1987
-
-ecl:grn hgt:67in
-iyr:2012
-byr:1953 pid:910793005 hcl:#341e13 eyr:2020
-
-iyr:2024 eyr:2030 cid:204 hgt:166cm pid:218828260
-hcl:701b48 ecl:gry byr:1930
-
-hgt:162cm pid:024916763 eyr:2026 ecl:hzl
-hcl:#efcc98 iyr:2019 byr:1921
-
-eyr:2025
-iyr:2017 ecl:hzl hcl:#fffffd hgt:167cm pid:779214145
-
-eyr:2022
-hcl:#6b5442 byr:1941 ecl:grn hgt:169cm iyr:2014
-pid:610328167
-
-iyr:2026 cid:179 pid:193cm
-ecl:#deb37c
-byr:1958 eyr:2024
-hgt:185cm
-
-pid:907508207 ecl:oth byr:1941 iyr:2017 hcl:#341e13
-eyr:2030 hgt:186cm
-
-iyr:2018 byr:1925
-ecl:brn eyr:2023 pid:903196231
-hgt:159cm
-hcl:#a97842 cid:323
-
-hgt:185cm ecl:hzl eyr:2022 iyr:2020 pid:572453155 hcl:#fffffd
-
-hcl:#a97842 ecl:blu pid:#ab3597 eyr:1964 byr:2030
-hgt:181cm iyr:2018
-
-ecl:blu
-hcl:#602927
-cid:234
-hgt:68in eyr:2021 pid:257420555 iyr:2014 byr:1972
-
-hcl:#7d3b0c eyr:2022
-hgt:152cm byr:1974
-iyr:2017
-pid:353127736
-ecl:gry
-
-iyr:2018 eyr:2028 byr:1924 hcl:#69929e ecl:gry
-hgt:68in pid:942207567
-
-eyr:2028 cid:90
-hgt:185cm
-ecl:amb byr:1990 pid:947625812 hcl:#623a2f iyr:2011
-
-eyr:2023 byr:1996 hgt:175cm
-iyr:2012
-hcl:#866857 ecl:blu
-pid:437669135
-
-byr:1937 eyr:2030
-hcl:#866857 iyr:2017 pid:513963895 hgt:157cm
-ecl:grn
-
-iyr:2016 hcl:#623a2f eyr:2025
-pid:559150893 hgt:176cm
-byr:1920 ecl:amb
-
-byr:1982
-eyr:1961 ecl:hzl
-hgt:167cm hcl:#888785 iyr:2011 cid:261 pid:709006236
-
-pid:307171649 byr:1935 hcl:#888785 hgt:182cm ecl:brn eyr:2030 iyr:2013
-cid:256
-
-ecl:hzl
-eyr:1998
-byr:2009
-hgt:153cm iyr:2010
-hcl:#888785 pid:140487128
-
-iyr:2019 cid:78
-hgt:169cm
-hcl:#888785 ecl:hzl byr:1997 eyr:2028
-
-hgt:182in eyr:2025 hcl:#cfa07d ecl:#27a1c9 byr:2005 pid:8143047758
-
-byr:2013 hgt:178in
-eyr:1933
-pid:829007679 iyr:2016 hcl:#783308
-ecl:grn
-
-cid:267 byr:1930 pid:949963673 eyr:2026
-ecl:grn iyr:2020
-hgt:188cm hcl:#6b5442
-
-eyr:2022 pid:254482159
-byr:1935 iyr:2017
-ecl:hzl
-hcl:#b6652a
-hgt:165cm
-
-hcl:109d15 hgt:72cm
-cid:258 byr:2023 eyr:1987 ecl:grt iyr:2022
-
-byr:1969
-ecl:oth hgt:151cm
-pid:578662559
-eyr:2024 iyr:2015 hcl:#602927
-cid:343
-
-iyr:2011 byr:1989
-ecl:brn eyr:2029 pid:123354233
-hcl:#efcc98
-
-hcl:#a97842 iyr:2010 pid:558586208
-eyr:2029 byr:2002 ecl:amb
-cid:225 hgt:152cm
-
-eyr:2005 byr:2024 iyr:1924 ecl:gmt cid:186 pid:#886ae9
-hcl:3cf4cd hgt:74cm
-
-ecl:gry
-eyr:2029
-iyr:2013
-hgt:178cm hcl:#7d3b0c
-
-byr:1970 hcl:#6b5442 hgt:155cm iyr:2020 ecl:hzl
-pid:698123164 eyr:2030 cid:185
-
-hcl:#6b5442 ecl:hzl
-iyr:2014 cid:324 pid:149063285 hgt:64in eyr:2023
-byr:1949
-
-hcl:#866857
-eyr:2025
-iyr:2012 cid:116 hgt:185cm
-pid:416329937
-ecl:grn byr:1962
-
-iyr:2020 cid:55 byr:1985 hcl:#733820 pid:237883033 eyr:2020 ecl:blu
-
-iyr:2020 hgt:71in
-ecl:hzl byr:1960 cid:53 hcl:#888785 pid:590574853 eyr:2024
-
-pid:834729501 iyr:2019 hgt:72in byr:1977
-hcl:#604861 ecl:oth eyr:2024
-
-pid:111536282 ecl:gry
-hgt:69in eyr:2021 byr:1940
-iyr:2019
-hcl:#ceb3a1
-
-hgt:186cm pid:045765056 ecl:gry byr:1958 iyr:2012
-eyr:2025 hcl:#cfa07d
-
-hgt:61in eyr:2023 pid:4189258985 ecl:brn iyr:1995
-hcl:#602927 byr:2017
-
-byr:1984 hcl:#866857
-iyr:2013 pid:927074474 hgt:168cm
-eyr:2021 ecl:oth
-
-hgt:186cm
-pid:948677443 iyr:2014 hcl:#866857 byr:1968 ecl:amb eyr:2027
-
-eyr:2028 cid:260 hcl:#623a2f pid:500330326
-iyr:2018 hgt:170cm
-ecl:gry
-byr:1960
-
-hgt:71cm
-pid:6209572 byr:1927 iyr:2011 ecl:utc hcl:3bc47a eyr:1984
-
-hgt:164cm cid:160 iyr:2010
-byr:1922 eyr:2024 hcl:#c0946f ecl:gry pid:867476938
-
-cid:316
-iyr:2015 hcl:#b6652a hgt:72cm pid:#c37dbf byr:2022 eyr:2036 ecl:#8bd8f4
-
-iyr:2016 hgt:172cm
-pid:482664712 ecl:hzl eyr:2024 hcl:#602927 byr:1945
-
-eyr:2029 pid:883381915
-hgt:174cm byr:1937 hcl:#fffffd ecl:gry cid:91
-
-eyr:2029 pid:302832265 hcl:#ceb3a1 byr:2010
-hgt:64 iyr:1960
-
-hgt:170cm eyr:2030 pid:846949920
-hcl:#ceb3a1
-ecl:hzl iyr:2016 byr:1945
-
-hcl:#efcc98
-pid:406029852 eyr:2023 byr:1981 ecl:blu iyr:2013
-
-pid:788563693 hcl:#a97842 hgt:172cm eyr:2022 ecl:brn iyr:2010 byr:2002
-
-iyr:2013
-hgt:60cm hcl:#7d3b0c pid:6594060725 ecl:#46a7d7 eyr:2023 byr:1995
-
-cid:313 byr:1964 pid:102442749 eyr:2020
-hgt:167cm
-hcl:#341e13
-
-ecl:grn hgt:163cm pid:405504213 cid:349 hcl:#733820 eyr:2029 iyr:2011
-
-ecl:hzl pid:470689685 iyr:2015 byr:1980 hgt:180cm eyr:2027
-
-eyr:2023 iyr:2013
-hgt:189cm hcl:#866857 byr:1981
-cid:313
-ecl:brn pid:386584267
-
-iyr:2011
-hcl:#7d3b0c
-eyr:2027
-ecl:gry byr:1931
-hgt:71in
-pid:435568613
-
-eyr:2021
-pid:443386140 hgt:192cm iyr:2015 byr:1974
-
-byr:1989 ecl:oth iyr:2011
-eyr:2027
-pid:761106563 hcl:#efcc98
-hgt:60in
-
-byr:1933 ecl:brn pid:607926472
-hcl:#cfa07d eyr:2026
-iyr:2010
-
-ecl:hzl eyr:2027 hgt:175cm
-pid:68527368
-byr:1980 iyr:2017 hcl:#341e13
-
-hgt:159cm pid:6199921925 iyr:1920 byr:1950 ecl:amb cid:229 eyr:2034
-
-pid:060780170 ecl:gmt
-eyr:1961 hgt:184cm hcl:#a97842 byr:2007
-
-eyr:2025 byr:1970 ecl:brn hgt:183cm pid:423232940 hcl:#cfa07d cid:283
-
-hcl:#18171d hgt:191cm
-byr:1951
-eyr:2029
-pid:627632195 cid:268 iyr:2012
-
-eyr:2025 iyr:2019 hgt:163cm
-ecl:oth pid:967756889
-byr:1938
-
-hgt:160cm iyr:2015
-ecl:#9cf598 pid:297446459 cid:123 byr:1968 eyr:1970
-hcl:#efcc98
-
-ecl:hzl pid:311990731 hgt:171cm hcl:#602927 byr:1978
-eyr:2026 cid:254 iyr:2014
-
-hcl:#8e0dfc
-pid:961997362 byr:1950 eyr:2027 hgt:184in ecl:blu iyr:2015 cid:266
-
-pid:953859016 iyr:2018 hcl:#341e13 ecl:grn cid:61
-hgt:192cm
-eyr:2022 byr:1920
-
-eyr:2026 pid:149020634 byr:1942 iyr:2021 hcl:#6b5442
-ecl:oth hgt:176in
-
-eyr:2025 hgt:176cm
-iyr:2020 ecl:oth hcl:#efcc98 pid:196082064 byr:2002
-
-hgt:172in hcl:z
-pid:#b454a0
-ecl:#d7a600
-byr:1977
-eyr:2035 iyr:2014
-
-cid:254 iyr:2020
-pid:716596533
-hcl:#341e13 byr:1947
-hgt:150cm ecl:hzl eyr:2028
-
-iyr:2019 pid:190601635 byr:1922 hcl:#18171d hgt:71in ecl:brn eyr:2021
-
-byr:1938 iyr:2019 eyr:2028 pid:568504071 hcl:#efcc98 hgt:178cm ecl:amb
-
-pid:921417345 eyr:2020 ecl:brn hcl:#c0946f
-hgt:168cm
-byr:1983 cid:170
-iyr:2018
-
-iyr:2020 cid:212 eyr:2002 pid:61850316 hgt:148 hcl:#b6652a
-byr:2024 ecl:grn
-
-hcl:z eyr:1985 iyr:2015 hgt:72cm ecl:brn pid:599880521
-
-pid:166cm hcl:z
-hgt:165 eyr:2036
-cid:152 iyr:1943
-ecl:zzz
-
-eyr:2021 iyr:2014
-hgt:156cm
-pid:654181902 ecl:amb
-byr:1946
-hcl:#733820
-
-iyr:2019
-hgt:189cm byr:1940 pid:419593669 ecl:amb
-cid:149 hcl:#fffffd eyr:2020
-
-hgt:172cm
-ecl:lzr pid:788208394 hcl:#341e13 cid:183
-iyr:2020 eyr:2027 byr:1988
-
-byr:2030 ecl:#d82c54 iyr:2014
-hcl:#be9be7 eyr:2027 pid:1291285950 hgt:61cm
-
-ecl:hzl
-hcl:#a97842 hgt:186cm byr:1992 eyr:2022
-
-iyr:2017 hgt:191cm pid:097984693 eyr:2025 byr:1963
-cid:333
-ecl:blu
-
-ecl:zzz pid:425594420
-byr:1983
-hcl:z
-eyr:2028 hgt:184cm
-iyr:1937
-
-hgt:167cm
-eyr:2025 hcl:#623a2f pid:575911832
-cid:305 byr:1939 iyr:2020
-
-iyr:2015 hgt:179cm hcl:d678e0 byr:2030 pid:284187009 eyr:1977 cid:285
-
-pid:405789549 byr:1982 eyr:2020 hcl:#623a2f
-hgt:161cm iyr:2013 ecl:amb
-
-pid:775860836 hgt:184cm hcl:#fffffd ecl:amb byr:1930 eyr:2022 iyr:2016
-
-iyr:2020 byr:1979
-eyr:2024 hgt:171cm
-ecl:brn hcl:#ceb3a1 pid:853915000
-
-iyr:2015 pid:244459567
-hcl:#18171d cid:224 byr:1931 eyr:2022 hgt:169cm ecl:gry
-
-iyr:2017 cid:308 eyr:2026 ecl:blu hgt:59in byr:1953
-hcl:#ceb3a1 pid:466915764
-
-hcl:#7d3b0c
-byr:1940 iyr:2015
-eyr:2020 pid:950614940 ecl:amb
-hgt:179cm
-
-byr:2010
-cid:106 eyr:2022
-iyr:2020 pid:336057617 ecl:brn hcl:f13e26
-hgt:182cm
-
-byr:1981 iyr:2017 hgt:152cm
-hcl:#fffffd
-eyr:2024 ecl:gry
-
-cid:216 hgt:193cm
-byr:1975 ecl:oth pid:684529055 iyr:2018 eyr:2020 hcl:#18171d
-
-hgt:150cm
-eyr:2028
-hcl:#cfa07d ecl:grn
-iyr:2018 byr:1951 pid:749102509
-
-pid:937451204 hcl:#341e13 iyr:2020
-hgt:171cm eyr:2021
-byr:1941
-ecl:hzl
-
-cid:69
-iyr:2014 eyr:2022 pid:174789690 hgt:157cm byr:1961 ecl:hzl
-hcl:#a97842
-
-hcl:#7d3b0c pid:658134059 hgt:65in byr:2005 ecl:#2dcb50 iyr:2012
-eyr:2030
-
-eyr:2027
-hgt:68in ecl:oth hcl:#888785 iyr:2016 pid:181577931
-
-iyr:1997 byr:1994
-hgt:189cm
-ecl:gry pid:564165515
-eyr:2029 hcl:#ceb3a1
-
-hcl:#602927 eyr:2024
-cid:130
-iyr:2015 ecl:blu
-hgt:184cm byr:1996
-pid:897871188
-
-ecl:oth hcl:#623a2f
-iyr:2016 pid:012591439 byr:1937 eyr:2022 hgt:176cm
-
-eyr:2020
-byr:1965
-iyr:2013 hgt:193cm
-hcl:#ceb3a1
-ecl:hzl pid:177120440
-
-byr:1934 iyr:2015 hcl:#341e13
-pid:370860309 ecl:oth
-eyr:2028 hgt:157cm
-
-ecl:brn
-byr:2001
-iyr:2010
-eyr:2028 hcl:#866857 hgt:183cm pid:194361427
-
-hgt:182cm pid:449667574 ecl:amb
-byr:1958 iyr:2017
-hcl:#efcc98
-
-iyr:2020 ecl:hzl eyr:2030 hgt:185cm byr:1969 hcl:#ceb3a1 pid:157651787
-
-pid:893956434 eyr:2027 hgt:185cm hcl:#a97842
-byr:1944 ecl:oth
-
-byr:2011
-iyr:2018
-hcl:#623a2f hgt:159cm ecl:blu pid:174cm
-eyr:2030
-
-ecl:grt pid:520129782 eyr:2020
-byr:2020 hcl:z cid:50 iyr:2017
-hgt:156cm
-
-iyr:2015
-ecl:grn hcl:#83b224 eyr:2021 pid:554994156 hgt:179cm byr:1994
-
-ecl:gry byr:1971 pid:772131254
-eyr:2027 cid:201 hcl:#602927
-
-cid:125
-byr:1943 hgt:168cm ecl:hzl pid:418786991
-eyr:2020 iyr:2016
-hcl:#cfa07d
-
-pid:825704567 eyr:2032 byr:2024
-iyr:1926
-hcl:d31139 hgt:190in
-
-cid:243 hcl:#cfa07d byr:1951 ecl:oth pid:382615614
-iyr:2018 eyr:2030 hgt:64in
-
-byr:1925 hgt:187cm ecl:oth eyr:2023 hcl:#888785
-
-eyr:2028 iyr:2013 ecl:brn byr:1923 cid:174 hcl:#b6652a hgt:154cm pid:274036240
-
-ecl:brn hgt:183cm iyr:2016
-byr:1922
-hcl:#efcc98 eyr:2030
-
-hgt:188cm
-byr:1979
-ecl:amb
-eyr:2025 hcl:#b6652a cid:130
-pid:646985829 iyr:2019
-
-hgt:76cm hcl:z cid:112 ecl:zzz
-pid:953385473 eyr:2020
-byr:1943
-
-ecl:#12c807
-byr:1954 eyr:1934 hgt:73cm hcl:#ceb3a1 iyr:2015 pid:704621520
-
-hgt:188cm hcl:#733820 eyr:2024 ecl:grn
-iyr:2018 byr:1982 pid:522812862
-
-hgt:68cm ecl:blu
-byr:2023 pid:875418461 iyr:2021 eyr:2020 hcl:#623a2f
-
-byr:1967
-pid:313706535 ecl:amb hcl:#888785
-iyr:2012
-eyr:2026
-
-eyr:2026
-pid:288363970 cid:70 byr:1932 hgt:157cm iyr:2016 ecl:hzl hcl:#ceb3a1
-
-byr:1992 pid:539896055
-eyr:2023
-cid:189 hgt:70in ecl:oth iyr:2019
-hcl:#866857
-
-hgt:158in
-ecl:gry byr:2028
-eyr:2036 cid:188
-hcl:#cfa07d
-pid:044279141
-
-eyr:2024 hgt:170cm ecl:hzl
-byr:1939 pid:851235247 iyr:2013
-hcl:#fffffd
-
-ecl:hzl hcl:#c0946f
-hgt:167cm
-eyr:2024 byr:1936 pid:463230636 cid:297
-iyr:2016
-
-pid:291401545 ecl:grn hcl:#b6652a iyr:2014
-hgt:185cm eyr:2025 byr:1947
-
-eyr:2029 pid:612595763
-iyr:2018 ecl:gry
-cid:290
-byr:1991 hcl:#733820
-hgt:150cm
-
-hgt:151cm
-pid:667532675 cid:134
-byr:1930
-hcl:#efcc98 iyr:2012
-ecl:oth
-
-ecl:gry
-hcl:#888785 hgt:161cm
-eyr:2023
-pid:467759498 cid:274
-
-eyr:2023 byr:1956 hgt:188cm iyr:2014 hcl:#b6652a pid:382721925 ecl:brn
-
-byr:1947 ecl:gry eyr:2020
-pid:874004905 hcl:#602927 hgt:161cm iyr:2029
-
-pid:164334257
-iyr:2014 cid:286 eyr:2020
-hcl:#733820
-ecl:gry byr:1959 hgt:165cm
-
-hgt:59in
-pid:#5b1362
-eyr:2028 iyr:1980 hcl:z byr:2030
-ecl:utc
-
-pid:604128460 iyr:2016 byr:1952 hgt:152cm ecl:grn hcl:#7d3b0c eyr:2021
-
-pid:7483106309 eyr:2005 hgt:158in byr:2024 iyr:1935 hcl:z
-ecl:#158994
-
-hcl:22207f eyr:1994
-cid:166 pid:#d8e64c ecl:utc
-byr:1966 hgt:70cm
-iyr:1980
-
-iyr:2012 pid:045892410 hgt:70in ecl:dne hcl:1a323a byr:1920 eyr:2022
-
-hcl:#18171d iyr:2019 eyr:2026
-hgt:191cm pid:514596186 cid:327 byr:1938 ecl:grn
-
-pid:904148746 hcl:#a97842 hgt:161cm
-cid:181
-iyr:2012 eyr:2020 ecl:oth
-
-iyr:2028
-eyr:2034
-cid:276 pid:#0e7ee2 byr:2020
-hgt:63cm ecl:gry
-hcl:z
-
-pid:4270554593 eyr:2031 ecl:lzr hgt:72cm
-iyr:2027 hcl:ffc210 cid:132
-byr:2008
-
-iyr:2018 pid:174cm cid:144
-ecl:#10b2ed byr:1931 eyr:2040 hcl:z hgt:68in
-
-pid:446746712
-iyr:1957
-ecl:oth cid:213 hgt:184cm byr:2008 hcl:z
-
-hcl:#7d3b0c iyr:2012 ecl:hzl
-eyr:2023 pid:270148060
-
-pid:832184923
-eyr:2023 hgt:180cm
-byr:1965 ecl:hzl cid:189 hcl:#a97842
-iyr:2016
-
-pid:688867083
-iyr:2011 hcl:#733820 cid:147 eyr:2021
-byr:1986 ecl:oth
-
-hgt:166in ecl:amb byr:2014
-pid:169cm hcl:#cfa07d iyr:1976
-
-hgt:64in byr:1987 hcl:01f3d7
-pid:553206412 eyr:2027 ecl:grn cid:336
-iyr:2012
-
-cid:336
-ecl:oth byr:1975
-pid:296100726 hcl:#6b5442 iyr:2016 hgt:180cm eyr:2029
-
-hcl:#ceb3a1 hgt:181cm pid:364719801 byr:1922 eyr:2029
-iyr:2010 cid:346 ecl:gry
-
-hcl:#1c7f1d cid:205
-hgt:184cm
-byr:1928
-pid:694275035 iyr:2018 ecl:blu eyr:2023
-
-eyr:1970
-hcl:z byr:2001
-pid:9244596 iyr:2030 hgt:187in ecl:blu
-
-hgt:96
-byr:2030 ecl:zzz eyr:1920 pid:115437655 hcl:z
-iyr:2017
-cid:344
-
-iyr:2018
-eyr:2023
-hcl:#888785 hgt:188cm
-ecl:amb byr:1992 pid:602211075
-
-pid:848099019 hgt:168cm iyr:2016
-eyr:2026 ecl:amb
-hcl:#866857 byr:1981
-
-iyr:2013 hcl:#623a2f hgt:151cm cid:135 byr:1974 eyr:2026 ecl:gry
-pid:313553018
-
-hcl:#733820
-byr:1986 hgt:182cm
-ecl:brn eyr:2024 iyr:2017
-pid:676008782
-
-eyr:2030 pid:833874339 iyr:2011 byr:1949 hgt:159cm
-ecl:brn hcl:#602927
-
-hgt:182cm hcl:#6b5442 pid:131549376 eyr:2029 iyr:2012
-ecl:gry byr:1926
-
-cid:55 ecl:amb iyr:2015 hgt:192cm hcl:#a97842
-byr:1944
-eyr:2027
-
-iyr:1944 eyr:2038 hcl:a2adf2 cid:99 byr:2006 hgt:67cm
-pid:154cm
-ecl:dne
-
-eyr:2005 hcl:#1495bd ecl:grt byr:2028
-iyr:2016 hgt:155 pid:182cm
-cid:326
-
-hgt:136
-pid:599182089 eyr:2020 byr:1945
-iyr:2012
-ecl:oth hcl:#18171d
-
-pid:4695182580
-iyr:2012
-ecl:brn eyr:2039 byr:1936
-hcl:#cfa07d
-
-ecl:hzl byr:1949 cid:133 hgt:159cm hcl:#b6652a pid:9833212692 iyr:2011 eyr:2030
-
-eyr:2020
-hgt:175cm
-cid:140 iyr:2014 byr:1980 hcl:#7d3b0c
-ecl:grn pid:400508366
-
-pid:#100a75 iyr:2016
-hgt:65
-eyr:2037 ecl:hzl
-byr:1962
-
-eyr:2024 pid:180cm hcl:#6b5442 hgt:154cm
-iyr:1964
-
-byr:1986 hgt:159cm ecl:brn
-pid:856817592 hcl:#cfa07d eyr:2024
-iyr:2017
-
-hgt:166cm
-byr:1996 hcl:#410645
-ecl:hzl iyr:2010 cid:178 pid:337713295
-eyr:2026
-
-iyr:2017 byr:1964 hgt:167cm hcl:#7d3b0c cid:298 ecl:brn pid:371416367
-
-byr:1929 iyr:2011 hcl:#fffffd ecl:blu
-pid:013408674 hgt:187cm eyr:2021
-
-hcl:#cfa07d byr:1986 cid:331
-iyr:2010 ecl:gry pid:616063053 hgt:150cm
-eyr:2028
-
-pid:013835033 iyr:2017 byr:1991
-hgt:154cm hcl:#efcc98 eyr:2020
-
-byr:1978 eyr:2024
-hgt:155cm iyr:2012 hcl:#694989 pid:914726069
-ecl:amb
-
-ecl:blu pid:139464317 hcl:#fffffd eyr:2024 byr:1970 hgt:72in iyr:2012
-
-byr:1965 hcl:#ceb3a1 ecl:hzl iyr:2019 pid:910593212 eyr:2029
-
-byr:1994 cid:228
-ecl:grn hgt:171cm pid:538884417 eyr:2025 iyr:2011 hcl:#6b5442
-
-cid:264 hcl:#623a2f
-hgt:186cm iyr:2012 ecl:brn eyr:2024 pid:304101929 byr:1954
-
-hgt:183cm byr:1987 hcl:z ecl:gry eyr:2020 pid:384983241 iyr:2015
-
-pid:#885c1a
-byr:2012 eyr:2034 ecl:#8ea705 iyr:2028 hgt:61cm hcl:z
-
-eyr:2023 hgt:156cm byr:1939 hcl:#cd2220 ecl:brn pid:484163297
-
-hgt:158in
-byr:2000 ecl:lzr
-iyr:2014
-eyr:2033 pid:50157400
-
-byr:1974 hcl:#c0946f
-iyr:2018 pid:285451524 cid:299 eyr:2029 hgt:184cm ecl:hzl
-
-byr:1974 hcl:#602927 hgt:151cm iyr:2013 pid:322935162 ecl:amb
-cid:209
-eyr:2026
-
-hcl:#341e13 iyr:2015
-ecl:gry byr:1970
-hgt:186cm
-pid:330151070 eyr:2034
-
-ecl:gry eyr:2023
-hgt:160cm hcl:#c0946f
-iyr:2011 byr:1926 pid:727347794
-
-iyr:2012
-byr:1974 hcl:#866857
-eyr:2025
-pid:933155590 hgt:167cm
-ecl:grn
-
-iyr:2015 ecl:gry eyr:2029
-byr:1967 hcl:#f9f576 hgt:170cm pid:439696954 cid:173
-
-eyr:2029 byr:1935 ecl:brn pid:165587982
-hcl:#6b5442
-iyr:2020
-
-eyr:2029 ecl:hzl hcl:#866857 byr:1994
-pid:308548232 hgt:162cm iyr:2012
-
-byr:1924 cid:274
-pid:028266367 eyr:2025 iyr:2017 hgt:169cm
-hcl:#cfa07d ecl:gry
-
-eyr:2025 byr:1995
-ecl:brn
-hgt:160cm
-pid:819047484
-hcl:#602927 iyr:2011
-
-pid:660383456
-iyr:2016 eyr:2022 hgt:158cm byr:1942 ecl:amb cid:334 hcl:#efcc98
-
-hcl:#6b5442 iyr:2024 cid:180 ecl:grn pid:167cm hgt:169
-
-eyr:2024 iyr:2017 hgt:165cm hcl:#7d3b0c byr:1920
-ecl:amb pid:236377188
-
-pid:063113952
-ecl:grn hcl:#341e13 hgt:166cm
-byr:1977 iyr:2017
-
-ecl:amb hgt:174cm
-eyr:2028 byr:2002
-hcl:#7d3b0c
-pid:428826816 iyr:2017
-
-byr:2025 ecl:dne hgt:167in pid:706379338
-iyr:2019 hcl:240e75 eyr:1971
-
-eyr:2021
-hcl:#efcc98 iyr:2014
-pid:358236477
-byr:1923 cid:73 hgt:165cm ecl:amb
-
-eyr:2030 cid:267
-ecl:brn
-pid:282023612 hcl:#c0946f iyr:2018 byr:1989
-hgt:72cm
-
-ecl:utc hcl:ea4b34 byr:2013
-pid:#d58d54
-hgt:107 iyr:2027 cid:296 eyr:2038
-
-byr:1946 eyr:2024 iyr:2012
-hcl:#341e13
-pid:765835791 hgt:159cm
-
-hcl:#341e13 byr:1927
-ecl:grn iyr:2011
-hgt:175cm eyr:2023 pid:638808763 cid:339
-
-eyr:2030 cid:160 byr:1994 hgt:163cm ecl:hzl iyr:2016 hcl:#623a2f pid:569304871
-
-byr:1965
-eyr:2020 hgt:157cm hcl:#a97842
-cid:271 iyr:2014 pid:326802068 ecl:#a16571
-
-byr:1965
-ecl:hzl eyr:2029 iyr:2010 hgt:157cm
-hcl:#7d3b0c pid:617693914
-
-pid:547158528 byr:1956
-ecl:gry hgt:189cm
-eyr:2029
-hcl:#602927
-iyr:2011
-
-hcl:#efcc98
-ecl:#1ecd0e pid:160cm eyr:2027 hgt:183cm byr:2027 iyr:1963
-
-hcl:#fffffd eyr:2021 iyr:2014 byr:1959 ecl:amb
-pid:102521439 hgt:190cm
-
-cid:112 hcl:#fffffd byr:2025
-pid:016603375
-eyr:1942 hgt:145
-iyr:1994
-
-ecl:xry
-pid:#5be367
-hgt:171cm cid:144 iyr:1946 eyr:2034 hcl:z byr:2022
-
-ecl:oth
-iyr:2014 hcl:#7d3b0c
-cid:316
-byr:1936 pid:088295340
-eyr:2029
-
-iyr:2019
-hgt:183cm ecl:brn hcl:#efcc98 pid:821190245 cid:251 eyr:2023
-byr:1993
-
-ecl:oth iyr:2018
-cid:131
-hcl:#524e2e byr:1981 hgt:183cm eyr:2022 pid:037981572
-
-hcl:#18171d byr:1934 eyr:2020 hgt:62in
-cid:64
-ecl:oth pid:343039563 iyr:2010
-
-hcl:#733820 pid:374199356
-hgt:169cm eyr:2026 byr:1994 iyr:2015 ecl:brn
-
-pid:394267581
-hcl:#a97842 iyr:2010 byr:1988
-hgt:185cm ecl:amb
-eyr:2022
-
-ecl:#be3b70 iyr:2025
-hcl:z
-eyr:2010
-byr:2023
-hgt:65 cid:220 pid:#d6af49
-
-eyr:2029
-hcl:#a97842 ecl:amb hgt:159cm
-cid:228 byr:1946 iyr:2012
-pid:805319194
-
-hcl:#c0946f eyr:2020 hgt:171cm ecl:oth iyr:2010 byr:1958 pid:276122958
-
-iyr:2017
-hcl:#da47a1 byr:2007 ecl:utc
-eyr:1945 cid:327 hgt:192cm pid:549704477
-
-iyr:1923 hgt:174in hcl:z byr:1974
-eyr:2026
-ecl:xry pid:158cm
-
-iyr:2022
-ecl:#ae10f9
-hgt:108
-eyr:2035 hcl:z byr:2019 pid:#1f4f7c
-
-eyr:2021 pid:959352732 cid:306 hgt:178cm ecl:amb
-iyr:2012
-byr:1953
-
-byr:2016 ecl:lzr eyr:2021 hcl:z iyr:1977 hgt:181cm cid:164
-
-cid:242 byr:2008 hcl:#866857 hgt:172cm iyr:2011
-ecl:blu eyr:2026 pid:350658669
-
-hgt:67in eyr:2030
-ecl:gry pid:156329184 iyr:2010 byr:1936 hcl:#efcc98
-
-cid:110 hgt:76in iyr:2018
-eyr:2029 pid:474249956 byr:2002 hcl:#866857
-ecl:oth
-
-iyr:2016 hgt:193cm eyr:2029
-byr:1934 hcl:#b6652a pid:901756621
-ecl:brn
-
-eyr:2017 hcl:z pid:#2f9848 iyr:2024
-hgt:170cm
-
-hgt:60in eyr:2026 byr:1922 hcl:#18171d iyr:2016
-pid:921038878
diff --git a/day-4/src/main.rs b/day-4/src/main.rs
deleted file mode 100644
index 1e5dfd9..0000000
--- a/day-4/src/main.rs
+++ /dev/null
@@ -1,122 +0,0 @@
-use std::collections::HashMap;
-use std::fs;
-
-fn main() -> Result<(), Box<dyn std::error::Error>> {
-    let input = fs::read_to_string("input")?;
-    let passports = parse_passports(&input)?;
-    println!("{}", validate_passports(&passports));
-
-    Ok(())
-}
-
-fn parse_passports(input: &str) -> Result<Vec<HashMap<&str, &str>>, &str> {
-    input
-        .split("\n\n")
-        .map(|passport| {
-            passport
-                .trim()
-                .split(|c| c == ' ' || c == '\n')
-                .map(|field| {
-                    let split = field
-                        .find(':')
-                        .ok_or("Invalid passport entry; no separator")?;
-                    let item = field.split_at(split);
-
-                    let key = item.0;
-                    let value = item
-                        .1
-                        .strip_prefix(":")
-                        .expect("We've already checked the separator exists");
-
-                    Ok((key, value))
-                })
-                .collect()
-        })
-        .collect()
-}
-
-fn validate_passports(passports: &Vec<HashMap<&str, &str>>) -> usize {
-    let required_fields = ["byr", "iyr", "eyr", "hgt", "hcl", "ecl", "pid"];
-    let rules = [
-        |year: &str| match year.parse() {
-            Ok(1920..=2002) => true,
-            _ => false,
-        },
-        |year: &str| match year.parse() {
-            Ok(2010..=2020) => true,
-            _ => false,
-        },
-        |year: &str| match year.parse() {
-            Ok(2020..=2030) => true,
-            _ => false,
-        },
-        |height: &str| match height.split_at(height.chars().count() - 2) {
-            (height, "cm") => match height.parse() {
-                Ok(150..=193) => true,
-                _ => false,
-            },
-            (height, "in") => match height.parse() {
-                Ok(59..=76) => true,
-                _ => false,
-            },
-            _ => false,
-        },
-        |color: &str| match color.split_at(1) {
-            ("#", code) => code.chars().all(|a| char::is_ascii_hexdigit(&a)),
-            _ => false,
-        },
-        |color: &str| {
-            ["amb", "blu", "brn", "gry", "grn", "hzl", "oth"]
-                .iter()
-                .any(|c| c == &color)
-        },
-        |pid: &str| pid.chars().count() == 9 && pid.chars().all(char::is_numeric),
-    ];
-
-    passports
-        .iter()
-        .filter(|passport| {
-            required_fields
-                .iter()
-                .zip(rules.iter())
-                .all(|(field, rule)| {
-                    if let Some(value) = passport.get(field) {
-                        rule(value)
-                    } else {
-                        false
-                    }
-                })
-        })
-        .count()
-}
-
-#[cfg(test)]
-mod tests {
-    use super::*;
-    use indoc::indoc;
-
-    #[test]
-    fn test_simple() -> Result<(), String> {
-        let example = indoc!(
-            "ecl:gry pid:860033327 eyr:2020 hcl:#fffffd
-             byr:1937 iyr:2017 cid:147 hgt:183cm
-
-             iyr:2013 ecl:amb cid:350 eyr:2023 pid:028048884
-             hcl:#cfa07d byr:1929
-
-             hcl:#ae17e1 iyr:2013
-             eyr:2024
-             ecl:brn pid:760753108 byr:1931
-             hgt:179cm
-
-             hcl:#cfa07d eyr:2025 pid:166559648
-             iyr:2011 ecl:brn hgt:59in
-             "
-        );
-
-        let passports = parse_passports(example)?;
-        assert_eq!(validate_passports(&passports), 2);
-
-        Ok(())
-    }
-}
diff --git a/day-5/.gitignore b/day-5/.gitignore
deleted file mode 100644
index b83d222..0000000
--- a/day-5/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/target/
diff --git a/day-5/Cargo.lock b/day-5/Cargo.lock
deleted file mode 100644
index 80f8ea6..0000000
--- a/day-5/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-5"
-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.53"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8833e20724c24de12bbaba5ad230ea61c3eafb05b881c7c9d3cfe8638b187e68"
-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-5/Cargo.toml b/day-5/Cargo.toml
deleted file mode 100644
index f161c8d..0000000
--- a/day-5/Cargo.toml
+++ /dev/null
@@ -1,10 +0,0 @@
-[package]
-name = "day-5"
-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-5/input b/day-5/input
deleted file mode 100644
index 8699311..0000000
--- a/day-5/input
+++ /dev/null
@@ -1,815 +0,0 @@
-BFBBFFFLRR
-FFBFBBBLLL
-FBFBFBFLLL
-BBFFFBFLLR
-FBFFBBFLRR
-BBFBFFFLLL
-FFBBFFFRLL
-BFBFBBBRRR
-FBFFBFFRLR
-FBBBBBBLLL
-BBFBBBBLLL
-BFFFBBBLLL
-FFBFFFBRLR
-BFFFFBFLLR
-FFBBBFBLRL
-BFFBFBBRRL
-FBFBFBBRRR
-FBFFFBBRRL
-FBFBBBFRLR
-BFFFFFBRRL
-BBFFFBBLRR
-FFBBBBBRRR
-FFBBBBBLLL
-BBFBFFBRLR
-FBFFBFBRRR
-FFFBBBBRLL
-BBFBFFBLLR
-BFBFFFBRLL
-FFBFBFFLLR
-FBFBBFBRLL
-FBFFBBBLLL
-FBFBBBFRLL
-FBFBFBBRLL
-BFFFFBBRLL
-FFFBBFFLLR
-FFBFFFBLRL
-FFBFBBFLLL
-BFBBFBBLLL
-BFFFFBBRRL
-FFBFFFBRLL
-BFBBFFFRRR
-FFBBFFFLRL
-FFBFBFBRLL
-BFBFBBBLLL
-BBFBBFFLRL
-BFFFFBBLLR
-FFBFBBFRLR
-FFBBFBBLLR
-FBFFBBFLLL
-BFBFBFBLLL
-BFFBFBBLLR
-FBBBBFFRLR
-FBBBFBFRLL
-FBBBBFFLRR
-BFFBBBBLRL
-FBFFBBFLRL
-BBFFFBBLLR
-FBFBFFFRLL
-FBBBFBBRRL
-FFBBBFBLLR
-BFFBBBFLLR
-BFFFFBFRLR
-BBFFFFBLLR
-FBBFFFBRRL
-BFFFBFBRRR
-FBFBFFFRRR
-BBBFFFBLRL
-BFBFBFBLLR
-BFBBBBBLRL
-FFBBFBBRRR
-FBBFFFBRRR
-FFBFBFBRRR
-BBFFFFBRRL
-BFBBBBBLLL
-BFBFBFFRLL
-BFBFBFBRRL
-BFBFFFFLRL
-FFBBBBBLLR
-FBBFBFFRLL
-FBBFFBBLLL
-BFFFFFFLRL
-FFFBBFFLRL
-FFFBBFFRLL
-FFBFFFBLLL
-FBBFBFBLRL
-BBFFFFBRLR
-FBBFBBBRLR
-FFBBFFBLLL
-FFBFFFBRRR
-FBFBFBFRRL
-FFBBBFBRRL
-BBFFBFFLRR
-FBFFFFFRRR
-FBBFFFBRLL
-FFBBFBBRRL
-FFBBFFFLLR
-FBFBBFBLLL
-BFFFBBFLRR
-BFBFBFFLRR
-BFFFFBFRRR
-BBFBBFFRLL
-BFBBBBBLRR
-BFBBBBFLLL
-BBFBBBBLLR
-FFBBBFFRRR
-BBFFBFBLRR
-FFFBBBFRLR
-BFBFFFBLRR
-BFFFBBFLLL
-FBBBBFFLRL
-FBBFFFFRRL
-FFBFFBBRRL
-BFBBBBBRLR
-FBBFFBBLRL
-BBFBFBBRLL
-FBFFBFBRLR
-FBBBBFFLLR
-FBBFBBFRRL
-FBFBBBBRLL
-BFFBFBFRLL
-FFBFBBFRRL
-FBFFFBFRRL
-FBFFBBFRRL
-FFBFBBFRLL
-BBFBBBBLRL
-BFFFBBBRRL
-FFBFFFBLRR
-FFBBFBBLRL
-BFBFBBFRRR
-BFFFFFFRRL
-FBBBBBBRRR
-FBFBBFBLRR
-FBFFFFFRLR
-BFFBBBFLRR
-BFBBFFBLLL
-FBFFFFBLRL
-FFBBBBBLRL
-FFFBBBFRLL
-FFBBFBFRLL
-FBFBBBFLRL
-FFBBBFBRLL
-BBFBBFBLRL
-FFBFBFFRLR
-BBFBBBBLRR
-FFFBBBBRRR
-FBBBFBFLLL
-BFFFBFBRLR
-FBBFBBFRRR
-FBFFBBBRLR
-FBFBBFBRLR
-FBBBFBBLLL
-BBFBFBFLLL
-FFBBFBBRLL
-FBBFBBBLRR
-BFFFBBFRRL
-BFBFFBFLRR
-BBFBBBFLLL
-BFFFBBFRLR
-BFBBFBFLRL
-FBBBBBFRRR
-FBFFFBBRRR
-BBFFFFBLRR
-FBFBFBFLRL
-BBFFBBBRLL
-FFBBBFFLRR
-FFBBBBFLRR
-FBFBFBBRRL
-BBFBFFBRRL
-FBBBFFBLLL
-BFBFFFFLLR
-FFBFFBFLRR
-BFBBFFFLLR
-BBFBBFFLRR
-BFFFFFFLLR
-BBFFBFBRRL
-FBBBFBBRLL
-BFBBBFBLLR
-BFBBFFBRLR
-FBFBBBFRRR
-BFBBBBBRRR
-FFBBFBBRLR
-FBBFBBFRLR
-BFFBBFBRLR
-FBFFFFFLLL
-FBBFFBFRLL
-FBBBBFFRRL
-FBFBBBBLRL
-FFFBBFBLRR
-FFBFFBBLRR
-FFBBBBBLRR
-FBBFFBFRRR
-FBBBFBFRRR
-FBBFBBBLLR
-BFFFFBFLLL
-FFBFFFFRRL
-BFBFFBBLRL
-FFBFFFFRLR
-FBFBFBFRLL
-BBFBFBBRRL
-FFBFBBFLLR
-BFBBFFBLLR
-FBFFBFFLLL
-BFFBBFBRRR
-FBFFFBBRLL
-BBFBBFFRRR
-FBFBBFBLRL
-FBFBFBBLRL
-FBFFBBFRRR
-FBFFBBBLRL
-FFBFBBBRRR
-BFBBBFFLLR
-FFBBFFFRRL
-FFBBBBBRRL
-FFBFFBBRLL
-FFBBFBFLLR
-FBBBFBFLLR
-BFFFBFFRLL
-FFBBBFBLRR
-BFFBBBFRRR
-BFBBFBBRRR
-BBFBFFFRRR
-FBBFFFBLRL
-BBFBBBFLLR
-BBFFFBBLRL
-FBBFFFFLRR
-BFFBFFFRRL
-FFBFBBBRLL
-BBFBBFBRLL
-FBFFFBBLRR
-BFBFBBFRLL
-FBFBBBBRRL
-FFFBBBFLLR
-FBFFFFBRRR
-FBBBBBBRLR
-BBFBFBFRRR
-BFBFFBFRLL
-BFBBBFFLLL
-BFBBBFBLLL
-FBFFBFBLRL
-FFBFFFFLLR
-FBBBBBFLLL
-BBFFBFBLLR
-BBFBBBFLRR
-BFFFFFFRRR
-BFFBFFBRRR
-BFFBBFFLLL
-FFFBBBFLLL
-BFFBBFFRRR
-BBFBBBBRRL
-FBFBBFFLRR
-BFBFFBBLLR
-BFBFFBBRRL
-BFBBFFFLLL
-BFBFFBBRRR
-BFBBFBFRRL
-FBFBFFFLLR
-BFBFBFFLLR
-BFBBBBFRRL
-BFFFBFFLRR
-FBBFBBBRRL
-BBFFFBBRLL
-FFBFBBBLRR
-FFBBFFBRLL
-FBBBFBFRRL
-FFBFFFFLRL
-BFFFBBBRLL
-BFBBBFFRRR
-FFBFFBBRRR
-BFBFFFBLLR
-FBFFFBFLLR
-FBFBBFFRRL
-FFBFFBBLLL
-BBFBBBFLRL
-BFBFBBFRRL
-BFFFBFFLLL
-FBBBFFFRLL
-BBBFFFFLLR
-BFFBFFBLRL
-BBFFBBBLLL
-BFFBFFBLLR
-BBFFBBBLRL
-FBBFFBBLLR
-FFBFBBFRRR
-FBFBBFBRRR
-BFBFFBFRLR
-BFBBBFBRLL
-FFBBBBFLRL
-BFFBFBFLLR
-BFBBFFFRLL
-BBFBFBBLRR
-FBBFBFFLLL
-FBBFFFFLRL
-FBBBBFBRRL
-FFBBBFFRLL
-FBBFBFFRRL
-FBBBFBFRLR
-FBBBFFBLRR
-BBFFBBBLRR
-FBBFFBFLLL
-FBFBBFFRLL
-FFBFBFFRLL
-BFBFBBBRRL
-FBFBBBFRRL
-FFBFBBBLLR
-BFFBFFFRLR
-FFBFBFFRRL
-BBFFFFFLRL
-FBFFBFFLRL
-BBFFFBFLLL
-BFFBBFBLRR
-BFBBFBFLLR
-FBFBFBFLRR
-BBFFBBFRLL
-BBFBFBFRLL
-BBFFFBFRLR
-BFFBFBFRRL
-BFFBFBBLRL
-FFFBBBFLRL
-FBBBFFFRRL
-FFBFBBFLRR
-FBBFBFBRLR
-FFFBBFFRRR
-FBBBBBBLRL
-BBFFBBFRRR
-FFBFFBFLLL
-BFFFBBFLRL
-FBFBBBFLRR
-BBFFBFBLLL
-FBFFBBFRLR
-BFFBFBBLLL
-BFBBFFBLRR
-FFBBBFFLLR
-FBFBFFFRRL
-BFBBFBBRLL
-BBFBBFBLRR
-FBBFFFFLLR
-BFFFBBFRRR
-BBFFFBFRRR
-BBFBBFFLLL
-BBFFBFBRLL
-BBBFFFFRLR
-BFFFFBFRLL
-FFBBBFFRRL
-BFFBBBFLRL
-BBFBBBFRLL
-FBFFFFBRLL
-BFBFFBFLRL
-FFBFFBBLRL
-FBBBBBBLRR
-BBFFFBFRLL
-BFBFFBBRLR
-BBFBFFBLLL
-BFFFBFFRRR
-FFBFFBFLRL
-FBBFBFFLRR
-BBFBFFBRRR
-BBFBFFBLRL
-FBBBBFBLRR
-BBFFBBBRRR
-BBFFBFFLLR
-FBBBFFBRLL
-BFBFFBBLLL
-FBBFBBBLLL
-FFBBFBBLRR
-FBBBBFFLLL
-BFBFBBFLRL
-BFBBBFBRRL
-BFBBBBFRLL
-FFBBFFFRLR
-BBFBBBFRLR
-BFBBFBBRLR
-FFFBBBBLLL
-BFFFFFBLRL
-FBFBFFBRLL
-FBBFBBBRLL
-FBBFBBFRLL
-BFBFBBFLLR
-FFBBFBFLRL
-FBBBFFBRRL
-FFBFFBFRRR
-BBFFFFBRLL
-FBBFFBFRRL
-BBFFFFFRLR
-FBFBFFBLRR
-BFFBBFBRLL
-BBFFFFFLRR
-BBFFBBBRRL
-BBFFBFFRLR
-FFBBFFBLLR
-FBBFFFBLRR
-BFFBBBBRLL
-FBFBFBBLRR
-FBBFBFBRLL
-FBBBFFFRRR
-FBBFFBBRLL
-FFBFFFFRLL
-FFBBBFBLLL
-FBFFBBBLRR
-FFBBFFBRRR
-FFFBBFBRRR
-FBFBFFBRRR
-FFBFFBFRLR
-BFFFFFFLLL
-FFBFFBFRRL
-BFBFBFFLLL
-BFFBBBBRRR
-BFFBBFBRRL
-BBFFBBBRLR
-BBFFBFFRRR
-BBFBFBFRLR
-FFBBFBFLRR
-FBFFBFBLRR
-BBFBBBBRLL
-BBFFFFFLLL
-FBFFBFFLRR
-BBBFFFBRRL
-BFFBFFBRRL
-BFBBBFBRRR
-FFFBBFBRLL
-BFFBBFBLLR
-BFBBBBFRLR
-BFFFFBFLRL
-FBBFBFBRRR
-BFFBFBBLRR
-BBFBBFBLLL
-FBFBFFBRLR
-FFBBBBFRLL
-BFBFFBBRLL
-BBFBBBBRLR
-FFFBBBBLRL
-FFFBBFBLLR
-BFBBFBFLRR
-FFFBBFBLRL
-FBBBBBFLLR
-FBFFBFBRLL
-BFBFBBBRLL
-BFBBBBFRRR
-FBBFBFBRRL
-BBFFBBFRLR
-FFFBBBBRLR
-BFBFBBBLRR
-FBBBBFBRLR
-BBFBFBBLRL
-FFBBBFFRLR
-BFBBBFFLRR
-FBFBBBBLRR
-FBBFFFBRLR
-BFFFFFBLRR
-BFFBBBBRLR
-FBBBFFFRLR
-BBBFFFFLRR
-BFBFBFBRRR
-FFBFFBFRLL
-BBFBFBFLRR
-BFBBFBBLLR
-FFBBBBBRLL
-FFFBBBBLRR
-FBBFBBFLRL
-BFFFBFBLLL
-BFBFFFFRLL
-FBFFFBFLRL
-BBFFFFFRRR
-FBBFBBFLLL
-FBBFBFFRLR
-FFFBBFFLRR
-BFBBFFFRRL
-FBFFFBBRLR
-BBFBFFFRLL
-FBBFFBBRRL
-BBBFFFFRLL
-BFBBBBBRLL
-FFFBBFFRRL
-FBBFFFBLLR
-BFFFBFFLLR
-FFBFFBFLLR
-FBBFFBBRRR
-BFFFFFBRLL
-BFFFBFFRRL
-BBFBBBFRRR
-BFFBFBFLRR
-FBFBBFFRLR
-BBFFFBFLRR
-BBFBFBFLLR
-BFFBBBFLLL
-FBFBFBBLLR
-FBBBBBBRLL
-FBFBFFFLRL
-FFBBFFBRLR
-BBFBBFBRRL
-BBFBBFBRLR
-BFFBBFFLRR
-BFFBFFFLRR
-BFBFBFFRRL
-BBFBBBBRRR
-FBFFFFFLLR
-BBFFBBFLLR
-BFFFBBBRLR
-FBBBBFFRLL
-BBFBBFFRRL
-BBFFBFFRLL
-BFBFBFBLRL
-BFBFFFBLLL
-BBFBFFFRLR
-FBBBFFFLRL
-FFFBBBBLLR
-FFBFFFFLRR
-BBFBFBFRRL
-FBFFBBBRLL
-FBBBFBBLRL
-BBBFFFFLLL
-FFBFBBBRRL
-FBFBFFBLLR
-FBFFFFFLRL
-BFBFBBBLRL
-BFFBBFFRLR
-BFBFFBBLRR
-BFFBFBBRLR
-FBBFBFBLRR
-FFBBBFFLRL
-BBFFBBFLRR
-FBBBFBBRRR
-BFFFBBBLLR
-BFBFBBBRLR
-BFFBFBFLLL
-BBBFFFBRRR
-BBBFFFBRLR
-FBFBBFFLLL
-BFFBBFFLLR
-FFBBFFBLRR
-FBBBBBFRLR
-BFBBFFBRRL
-FBBBFFFLRR
-FBFFFFFRLL
-FFBFFFBLLR
-BFFBFFFRLL
-BFBFBFBRLL
-BFFFFBBLRR
-FBBFFBBLRR
-BFBBBFBLRL
-BBFBFBBLLR
-BFBBBFBLRR
-FBFFFBFLLL
-BFBBBBBLLR
-BFBFFFBRLR
-BFBFBBFLLL
-BBBFFFFRRR
-FBBFFBBRLR
-BBBFFFFLRL
-FBBFBBBRRR
-FFBBFBFRRL
-BFFFBBBRRR
-FFBFBFFRRR
-BBFBFFFLRR
-FFBFBBBLRL
-BFBFBFFRLR
-FFBBFFFRRR
-FBFFBFBLLL
-FBFFBFBLLR
-BBFBBFFLLR
-BFBBBFFRLR
-BFFFFBBLLL
-BFFBFFBRLL
-FBBFFFFRLL
-FFBFBFBLRR
-FBBBBFBLLL
-BFBFBFBRLR
-FBBFBBBLRL
-BFBFFBFRRL
-FBBFBFBLLL
-BFFFBFBLRL
-BBFFBFFLLL
-BBFFFBFLRL
-FFFBBBFRRL
-FBBFFFBLLL
-BFFFFFBLLR
-FBBBBFBRLL
-BFFFFBBRRR
-BFFFFBBLRL
-FBBFFBFRLR
-BBFFFFBRRR
-FBFFFFBLLL
-FFBFBFBRLR
-BFFFBBBLRL
-BFFFFFFRLL
-BFBFFBFLLR
-BBFFFBBRLR
-FBBBBFBLRL
-FBBBBFBRRR
-BFFBFFFLLL
-BFFBBBFRLL
-BFBFBBFRLR
-BBFFBFBRLR
-FBBBBBFLRR
-BFBBFBFRLR
-FFBBFBFRLR
-BFFFFFBRRR
-BFFBBFFLRL
-FBFFBFFRRL
-BFBBFFFLRL
-FBFFFBBLRL
-BFFFBFFRLR
-BFFFBFBRRL
-FBBBBBFLRL
-BBFFBBFLLL
-FFBBFBBLLL
-FFBFBFFLLL
-BBBFFFBLLL
-BFBFBBBLLR
-FBBFFBFLRL
-FBBBBFFRRR
-BFBBBBFLLR
-FFBFFFFRRR
-BBFFBBFLRL
-FBFBFBBRLR
-BFBBFFBLRL
-FBFBFFBLLL
-BBFFBFFLRL
-FBFBFFFLRR
-FFBFBFBLRL
-BFFBFBBRRR
-FFBFBBBRLR
-BFBBFFFRLR
-BFBFFFFRLR
-FFFBBFFLLL
-BFBFFFFLLL
-FFBFFBBRLR
-FFBFBFFLRR
-BFFBBFFRLL
-BBFFBBBLLR
-BFBBBBBRRL
-FBFBBBBRRR
-FBBFFFFRRR
-FFBBBFBRLR
-FFBFBFBLLL
-BFFBFFFLLR
-FBFBFBFRRR
-BFFBBBBLLL
-BFFFFBBRLR
-FBFBBFFLRL
-FFBFBFFLRL
-FBBBFFBLLR
-FBBFBFFLRL
-FFBFBBFLRL
-BBBFFFFRRL
-FFBBFBFLLL
-FFBBBBFRRL
-BBFFFFBLLL
-FFBBFBFRRR
-FBFFFFFLRR
-BFFBBBBRRL
-BFBBFBBRRL
-BBFBFBBRLR
-FFBFFFFLLL
-FBBFBFBLLR
-FBFBFFBLRL
-BBFBFBBRRR
-BFFBBFBLRL
-FFBBBFFLLL
-FBBBFFFLLL
-BFFFBFBLLR
-FFBBFFFLLL
-BFFBFFBLRR
-FFBBFFFLRR
-BFFBFBBRLL
-FFBFBFBLLR
-FBBBBBBLLR
-FBFFFFBRLR
-BFBBBFFRLL
-FFBBBBFRLR
-FFBFFBBLLR
-BBFFFFFLLR
-FBFFFBFRLR
-BFBFFFFRRL
-FBFFFBBLLL
-BBFFFBBLLL
-BFFBFBFLRL
-BBFFFBFRRL
-FBFFBBBRRR
-FBFFFBBLLR
-FFFBBFBRRL
-BBFBFFFLRL
-BFBFFFBRRL
-BFBBBFBRLR
-BFFFBBBLRR
-FBBFBFFLLR
-FBFBBBBRLR
-BBFBBBFRRL
-FFFBBFBRLR
-BFFBFFFLRL
-FBBBBBBRRL
-BFFBFFBLLL
-BFFBBFFRRL
-FBBFBBFLLR
-BFFBBBBLLR
-BFBBBFFLRL
-BFBFFBFRRR
-BBFFFBBRRL
-BFBFBFFLRL
-BFBBFFBRLL
-BFFFFFFLRR
-FFFBBBFLRR
-FBBFFFFLLL
-FFBBFFBRRL
-BFBFFBFLLL
-FBFBBBFLLR
-FFBBBBBRLR
-BBFBFFBRLL
-FBFBBFBRRL
-FBBFFBFLRR
-BFFFFFBRLR
-FBFBBFBLLR
-FBBBFFFLLR
-BFFFFBFRRL
-FBFFFFFRRL
-FBFBFFFRLR
-FBFBBBFLLL
-BBFBFFBLRR
-BFBBBFFRRL
-BFBBFBFRRR
-BBFFFFFRLL
-FBFBFBFRLR
-FBBBBBFRLL
-BBFFBFBLRL
-BBFFBBFRRL
-BFBFFFFLRR
-FBFFBBBRRL
-FFFBBFFRLR
-BBFFBFFRRL
-BBFBBFBLLR
-FBBFFBFLLR
-FBFFFFBLLR
-FFBFBFBRRL
-FBFFFFBLRR
-BFFBFFFRRR
-FFFBBBFRRR
-BFBFBFBLRR
-FBFBBBBLLR
-BBFFFFBLRL
-BFBBFBFLLL
-FBBBFFBLRL
-BBFBFFFRRL
-BBBFFFBRLL
-FBBFBBFLRR
-FBFBFFFLLL
-FBBFFFFRLR
-BFFBBBFRRL
-BBFFFBBRRR
-FBBBFFBRLR
-FFBFFFBRRL
-BFFFFFBLLL
-FBFFFBFRLL
-BBFFBFBRRR
-BFFFFBFLRR
-FFBBBBFLLR
-BFBFBBFLRR
-FBFBFBBLLL
-BFFFBFBLRR
-BBFBBFBRRR
-BFBBFBBLRL
-BBFBFBBLLL
-FBBBFBFLRL
-BFFFBBFRLL
-FBBBBBFRRL
-BFFBFFBRLR
-BFFBBBBLRR
-FFFBBFBLLL
-BFBBBBFLRL
-FBBBFBFLRR
-FBFFFBFLRR
-BFBFFFBRRR
-FBFFBFFLLR
-BFBFBFFRRR
-BFFBFBFRLR
-FBFFFFBRRL
-BFFFBFBRLL
-FBBBFBBLRR
-BFBBFFBRRR
-BFBFFFFRRR
-BFFBFBFRRR
-FFBBFFBLRL
-BFBBBBFLRR
-FBFFBBBLLR
-FBFBBFFLLR
-FBFFFBFRRR
-FBFBBBBLLL
-BFBBFBBLRR
-BFBFFFBLRL
-BFFBBFBLLL
-FBFFBBFLLR
-BBFBFFFLLR
-BBFFFFFRRL
-FBFBBFFRRR
-BFFFBFFLRL
-FBFBFBFLLR
-BFFFFFFRLR
-FFBBBBFRRR
-BBFBFBFLRL
-FBBBFFBRRR
-FBFFBFFRRR
-FBBBBFBLLR
-BBBFFFBLLR
-FBFFBFBRRL
-FBBBFBBRLR
-FBFFBBFRLL
-BBBFFFBLRR
-BFFFBBFLLR
-FBFFBFFRLL
-FFBBBBFLLL
-FFBBBFBRRR
-BBFBBFFRLR
-FBBBFBBLLR
-FBBFBFFRRR
-BFBBFBFRLL
-FFFBBBBRRL
-FBFBFFBRRL
diff --git a/day-5/src/main.rs b/day-5/src/main.rs
deleted file mode 100644
index 81f9d27..0000000
--- a/day-5/src/main.rs
+++ /dev/null
@@ -1,114 +0,0 @@
-use std::fs;
-
-type SeatCode = [char; 10];
-
-fn main() -> Result<(), Box<dyn std::error::Error>> {
-    let input = fs::read_to_string("input")?;
-
-    // Part 1
-    let max_id: Result<usize, String> = input
-        .lines()
-        .map(|code| {
-            let (row, col) = find_seat(parse_seatcode(code)?);
-            Ok(row * 8 + col)
-        })
-        .max()
-        .ok_or("No seat codes set")?;
-
-    println!("{}", max_id?);
-
-    // Part 2
-    let mut ids = input
-        .lines()
-        .map(|code| {
-            let (row, col) = find_seat(parse_seatcode(code)?);
-            Ok(row * 8 + col)
-        })
-        .collect::<Result<Vec<usize>, String>>()?;
-    ids.sort();
-
-    let mut previous = ids[0];
-    for id in &ids[1..] {
-        if id - 1 != previous {
-            println!("{}", id);
-            break;
-        } else {
-            previous = *id;
-        }
-    }
-
-    Ok(())
-}
-
-fn parse_seatcode(input: &str) -> Result<SeatCode, String> {
-    let mut output = ['0'; 10];
-
-    for (i, c) in input.chars().enumerate() {
-        if i > 10 {
-            Err(format!("Seat code too long: '{}'", input))?;
-        }
-
-        if !['F', 'B', 'L', 'R'].iter().any(|valid| &c != valid) {
-            Err(format!("Invalid character in seat code: '{}'", input))?;
-        }
-
-        output[i] = c;
-    }
-
-    Ok(output)
-}
-
-fn find_seat(code: SeatCode) -> (usize, usize) {
-    let midpoint = |(start, end): (usize, usize)| (start + end) / 2;
-    let binary_follow = |range: (usize, usize), direction: &char| match direction {
-        'F' | 'L' => (range.0, midpoint(range)),
-        'B' | 'R' => (midpoint(range) + 1, range.1),
-        _ => unreachable!("We already checked all characters are valid"),
-    };
-
-    let row = code[..7].iter().fold((0, 127), binary_follow).0;
-    let col = code[7..].iter().fold((0, 7), binary_follow).0;
-
-    (row, col)
-}
-
-#[cfg(test)]
-mod tests {
-    use super::*;
-
-    #[test]
-    fn test_simple() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "FBFBBFFRLR";
-        let seat = find_seat(parse_seatcode(input)?);
-
-        assert_eq!(seat, (44, 5));
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple2() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "BFFFBBFRRR";
-        let seat = find_seat(parse_seatcode(input)?);
-
-        assert_eq!(seat, (70, 7));
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple3() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "FFFBBBFRRR";
-        let seat = find_seat(parse_seatcode(input)?);
-
-        assert_eq!(seat, (14, 7));
-        Ok(())
-    }
-
-    #[test]
-    fn test_simple4() -> Result<(), Box<dyn std::error::Error>> {
-        let input = "BBFFBBFRLL";
-        let seat = find_seat(parse_seatcode(input)?);
-
-        assert_eq!(seat, (102, 4));
-        Ok(())
-    }
-}