[INFO] cloning repository https://github.com/timfennis/advent-of-code-2023
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/timfennis/advent-of-code-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftimfennis%2Fadvent-of-code-2023", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftimfennis%2Fadvent-of-code-2023'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 11c063123ed2761912a68d4f88d0487c93899306
[INFO] checking timfennis/advent-of-code-2023 against 1.95.0-beta.7 for beta-1.95-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftimfennis%2Fadvent-of-code-2023" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/timfennis/advent-of-code-2023
[INFO] finished tweaking git repo https://github.com/timfennis/advent-of-code-2023
[INFO] tweaked toml for git repo https://github.com/timfennis/advent-of-code-2023 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/timfennis/advent-of-code-2023 on toolchain 1.95.0-beta.7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0-beta.7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/timfennis/advent-of-code-2023 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0-beta.7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0-beta.7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1e7b430732f85a59cbe14eadc3291206a9bd774aa907107e82fd27d29a350911
[INFO] running `Command { std: "docker" "start" "-a" "1e7b430732f85a59cbe14eadc3291206a9bd774aa907107e82fd27d29a350911", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1e7b430732f85a59cbe14eadc3291206a9bd774aa907107e82fd27d29a350911", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e7b430732f85a59cbe14eadc3291206a9bd774aa907107e82fd27d29a350911", kill_on_drop: false }`
[INFO] [stdout] 1e7b430732f85a59cbe14eadc3291206a9bd774aa907107e82fd27d29a350911
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0-beta.7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 041411d693420f3af4fe0962c69f85585c3a215266e69987f1bb8d8e7624dede
[INFO] running `Command { std: "docker" "start" "-a" "041411d693420f3af4fe0962c69f85585c3a215266e69987f1bb8d8e7624dede", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling libc v0.2.150
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]     Checking pin-project-lite v0.2.13
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling futures-core v0.3.29
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]     Checking bytes v1.5.0
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]     Checking zerocopy v0.7.29
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling ahash v0.8.6
[INFO] [stderr]     Checking allocator-api2 v0.2.16
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling futures-task v0.3.29
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling futures-util v0.3.29
[INFO] [stderr]    Compiling bindgen v0.66.1
[INFO] [stderr]    Compiling openssl v0.10.59
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]     Checking futures-io v0.3.29
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling futures-channel v0.3.29
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]     Checking futures-sink v0.3.29
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling shlex v1.2.0
[INFO] [stderr]     Checking http v0.2.11
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]     Checking try-lock v0.2.4
[INFO] [stderr]    Compiling serde v1.0.192
[INFO] [stderr]     Checking percent-encoding v2.3.0
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking getrandom v0.2.11
[INFO] [stderr]     Checking socket2 v0.5.5
[INFO] [stderr]     Checking mio v0.8.9
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking form_urlencoded v1.2.0
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking socket2 v0.4.10
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]     Checking unicode-bidi v0.3.13
[INFO] [stderr]     Checking hashbrown v0.14.2
[INFO] [stderr]    Compiling thiserror v1.0.50
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]     Checking tokio v1.34.0
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]    Compiling anyhow v1.0.75
[INFO] [stderr]     Checking deranged v0.3.9
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]     Checking indexmap v2.1.0
[INFO] [stderr]     Checking encoding_rs v0.8.33
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]     Checking time-core v0.1.2
[INFO] [stderr]     Checking base64 v0.21.5
[INFO] [stderr]     Checking num_threads v0.1.6
[INFO] [stderr]     Checking url v2.4.1
[INFO] [stderr]     Checking cached_proc_macro_types v0.1.0
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]    Compiling openssl-sys v0.9.95
[INFO] [stderr]     Checking itertools v0.12.0
[INFO] [stderr]     Checking maths-rs v0.2.5
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]     Checking time v0.3.30
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]     Checking num v0.4.1
[INFO] [stderr]    Compiling darling_core v0.14.4
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.50
[INFO] [stderr]     Checking h2 v0.3.22
[INFO] [stderr]    Compiling darling_macro v0.14.4
[INFO] [stderr]    Compiling darling v0.14.4
[INFO] [stderr]    Compiling cached_proc_macro v0.18.1
[INFO] [stderr]     Checking cached v0.46.1
[INFO] [stderr]     Checking hyper v0.14.27
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling z3-sys v0.8.1
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.22
[INFO] [stderr]     Checking z3 v0.12.1
[INFO] [stderr]     Checking advent-of-code-2023 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variants `Right`, `Down`, `Left`, and `Up` are never constructed
[INFO] [stdout]    --> src/prelude/vec2.rs:118:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub enum Direction {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] 118 |     Right,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 119 |     Down,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 120 |     Left,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 121 |     Up,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Direction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `turn_left`, `turn_right`, and `all` are never used
[INFO] [stdout]    --> src/prelude/vec2.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 124 | impl Direction {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 125 |     pub fn turn_left(&self) -> Direction {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn turn_right(&self) -> Direction {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn all() -> [Direction; 4] {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `StringTools` is never used
[INFO] [stdout]  --> src/prelude/string.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait StringTools {
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nums` is never constructed
[INFO] [stdout]   --> src/prelude/string.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Nums<'a, T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vec3` is never constructed
[INFO] [stdout]  --> src/prelude/vec3.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct Vec3 {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]  --> src/prelude/vec3.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Vec3 {
[INFO] [stdout]   | --------- associated function in this implementation
[INFO] [stdout] 9 |     pub fn from(x: i64, y: i64, z: i64) -> Self {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_program` is never used
[INFO] [stdout]   --> src/year2019.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn run_program(program: &[i64], input: Vec<i64>) -> Vec<i64> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day1` is never constructed
[INFO] [stdout]  --> src/year2019/day1.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | create_solution!(Day1, 2019, 1);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_p1` is never used
[INFO] [stdout]   --> src/year2019/day1.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn calc_p1(n: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_p2` is never used
[INFO] [stdout]   --> src/year2019/day1.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn calc_p2(n: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day2` is never constructed
[INFO] [stdout]  --> src/year2019/day2.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day2, 2019, 2);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day10` is never constructed
[INFO] [stdout]  --> src/year2019/day10.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day10, 2019, 10);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day3` is never constructed
[INFO] [stdout]  --> src/year2019/day3.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day3, 2019, 3);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/year2019/day3.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn parse(str: &str) -> Vec<(Direction, u32)> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sim` is never used
[INFO] [stdout]    --> src/year2019/day3.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn sim(instructions: &[(Direction, u32)]) -> HashSet<Vec2> {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sim2` is never used
[INFO] [stdout]    --> src/year2019/day3.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn sim2(instructions: &[(Direction, u32)]) -> Vec<Vec2> {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day4` is never constructed
[INFO] [stdout]  --> src/year2019/day4.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | create_solution!(Day4, 2019, 4);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day5` is never constructed
[INFO] [stdout]  --> src/year2019/day5.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_solution!(Day5, 2019, 5);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day6` is never constructed
[INFO] [stdout]  --> src/year2019/day6.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | create_solution!(Day6, 2019, 6);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day7` is never constructed
[INFO] [stdout]  --> src/year2019/day7.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day7, 2019, 7);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day8` is never constructed
[INFO] [stdout]  --> src/year2019/day8.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | create_solution!(Day8, 2019, 8);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day9` is never constructed
[INFO] [stdout]  --> src/year2019/day9.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | create_solution!(Day9, 2019, 9);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IntCodeComputer` is never constructed
[INFO] [stdout]  --> src/year2019/intcode.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct IntCodeComputer {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/year2019/intcode.rs:13:12
[INFO] [stdout]     |
[INFO] [stdout]  12 | impl IntCodeComputer {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout]  13 |     pub fn halted(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  16 |     pub fn read(&self, addr: usize) -> i64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  24 |     pub fn write(&mut self, addr: usize, val: i64) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     fn write_bool(&mut self, addr: usize, val: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     pub fn run_with_input_until_halt(&mut self, input: Vec<i64>) -> Vec<i64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn run_until_halt(&mut self, input: Vec<i64>) -> Vec<i64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn param(&self, position: usize) -> (i64, i64) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     fn param_addr(&self, position: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     fn param_value(&self, position: usize) -> i64 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn step(&mut self, input: Option<i64>) -> Option<i64> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day1` is never constructed
[INFO] [stdout]  --> src/year2023/day1.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | create_solution!(Day1, 2023, 1);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string_to_digit` is never used
[INFO] [stdout]   --> src/year2023/day1.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn string_to_digit(string: &str) -> Option<u32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day10` is never constructed
[INFO] [stdout]  --> src/year2023/day10.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | create_solution!(Day10, 2023, 10);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_connected` is never used
[INFO] [stdout]    --> src/year2023/day10.rs:171:4
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn is_connected(from: char, to: char, dir: Direction) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day11` is never constructed
[INFO] [stdout]  --> src/year2023/day11.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day11, 2023, 11);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_positions` is never used
[INFO] [stdout]   --> src/year2023/day11.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn get_positions(input: &str, distance: i64) -> Vec<Vec2> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day12` is never constructed
[INFO] [stdout]  --> src/year2023/day12.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | create_solution!(Day12, 2023, 12);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Good`, `Bad`, and `Unknown` are never constructed
[INFO] [stdout]   --> src/year2023/day12.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | enum State {
[INFO] [stdout]    |      ----- variants in this enum
[INFO] [stdout] 13 |     Good,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     Bad,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 15 |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `State` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/year2023/day12.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn run(input: &str, expand: usize) -> usize {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day13` is never constructed
[INFO] [stdout]  --> src/year2023/day13.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_solution!(Day13, 2023, 13);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_puzzle` is never used
[INFO] [stdout]   --> src/year2023/day13.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn solve_puzzle(input: &str) -> (i64, i64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_fold` is never used
[INFO] [stdout]   --> src/year2023/day13.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn find_fold(grid: &Grid, error_margin: usize) -> (Option<i64>, Option<i64>) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day14` is never constructed
[INFO] [stdout]  --> src/year2023/day14.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day14, 2023, 14);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diffs` is never used
[INFO] [stdout]   --> src/year2023/day14.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn diffs(list: &[usize]) -> Vec<usize> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tilt` is never used
[INFO] [stdout]   --> src/year2023/day14.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn tilt(grid: &Grid, direction: Direction) -> Grid {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_load` is never used
[INFO] [stdout]    --> src/year2023/day14.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn calc_load(grid: &Grid) -> i64 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day15` is never constructed
[INFO] [stdout]  --> src/year2023/day15.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | create_solution!(Day15, 2023, 15);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day15.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn solve(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_part2` is never used
[INFO] [stdout]   --> src/year2023/day15.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn solve_part2(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash` is never used
[INFO] [stdout]   --> src/year2023/day15.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn hash(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day16` is never constructed
[INFO] [stdout]  --> src/year2023/day16.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_solution!(Day16, 2023, 16);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_p2` is never used
[INFO] [stdout]   --> src/year2023/day16.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn solve_p2(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day16.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn solve(input: &str, start: Vec2, start_dir: Direction) -> usize {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day17` is never constructed
[INFO] [stdout]  --> src/year2023/day17.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day17, 2023, 17);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BfsEntry` is never constructed
[INFO] [stdout]   --> src/year2023/day17.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct BfsEntry {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_shortest_path` is never used
[INFO] [stdout]   --> src/year2023/day17.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn find_shortest_path(input: &str, min_travel: usize, max_travel: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day18` is never constructed
[INFO] [stdout]  --> src/year2023/day18.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day18, 2023, 18);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_part2` is never used
[INFO] [stdout]   --> src/year2023/day18.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn solve_part2(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_points` is never used
[INFO] [stdout]   --> src/year2023/day18.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn solve_points(points: &[Vec2]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shoelace` is never used
[INFO] [stdout]   --> src/year2023/day18.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn shoelace(points: &[Vec2]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_part1` is never used
[INFO] [stdout]   --> src/year2023/day18.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn solve_part1(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day19` is never constructed
[INFO] [stdout]  --> src/year2023/day19.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day19, 2023, 19);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Identifier` is never used
[INFO] [stdout]   --> src/year2023/day19.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum Identifier {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Condition` is never used
[INFO] [stdout]   --> src/year2023/day19.rs:46:6
[INFO] [stdout]    |
[INFO] [stdout] 46 | enum Condition {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `PartRanges` is never used
[INFO] [stdout]   --> src/year2023/day19.rs:52:6
[INFO] [stdout]    |
[INFO] [stdout] 52 | type PartRanges = (Range<usize>, Range<usize>, Range<usize>, Range<usize>);
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `matches` and `split` are never used
[INFO] [stdout]   --> src/year2023/day19.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | impl Condition {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 55 |     fn matches(&self, (x, m, a, s): Part) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn split(&self, (x, m, a, s): PartRanges) -> (PartRanges, PartRanges) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Part` is never used
[INFO] [stdout]    --> src/year2023/day19.rs:146:6
[INFO] [stdout]     |
[INFO] [stdout] 146 | type Part = (usize, usize, usize, usize);
[INFO] [stdout]     |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]    --> src/year2023/day19.rs:148:4
[INFO] [stdout]     |
[INFO] [stdout] 148 | fn solve(input: &str) -> (usize, usize) {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day2` is never constructed
[INFO] [stdout]  --> src/year2023/day2.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | create_solution!(Day2, 2023, 2);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day20` is never constructed
[INFO] [stdout]  --> src/year2023/day20.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | create_solution!(Day20, 2023, 20);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day20.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn solve(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solvep2` is never used
[INFO] [stdout]    --> src/year2023/day20.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn solvep2(input: &str) -> usize {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day21` is never constructed
[INFO] [stdout]  --> src/year2023/day21.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day21, 2023, 21);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_part2` is never used
[INFO] [stdout]   --> src/year2023/day21.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn solve_part2(input: &str, _probe_len: usize, steps: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]    --> src/year2023/day21.rs:207:4
[INFO] [stdout]     |
[INFO] [stdout] 207 | fn solve(input: &str, steps: usize) -> usize {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day22` is never constructed
[INFO] [stdout]  --> src/year2023/day22.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day22, 2023, 22);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Brick` is never constructed
[INFO] [stdout]   --> src/year2023/day22.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Brick {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `intersects` is never used
[INFO] [stdout]   --> src/year2023/day22.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Brick {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 17 |     fn intersects(&self, other: &Brick) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day22.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn solve(input: &str) -> (usize, usize) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settle` is never used
[INFO] [stdout]    --> src/year2023/day22.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn settle(bricks: &mut Vec<Brick>) -> usize {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day23` is never constructed
[INFO] [stdout]  --> src/year2023/day23.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day23, 2023, 23);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day23.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn solve(input: &str) -> (usize, usize) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compress` is never used
[INFO] [stdout]   --> src/year2023/day23.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn compress(graph: &mut Graph) {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_graph` is never used
[INFO] [stdout]   --> src/year2023/day23.rs:61:4
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn parse_graph(input: &str, part_2: bool) -> (Graph, Vec2, Vec2) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Graph` is never used
[INFO] [stdout]    --> src/year2023/day23.rs:123:6
[INFO] [stdout]     |
[INFO] [stdout] 123 | type Graph = HashMap<Vec2, Vec<(Vec2, usize)>>;
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]    --> src/year2023/day23.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn dfs(graph: &Graph, start: Vec2, end: Vec2) -> usize {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day24` is never constructed
[INFO] [stdout]   --> src/year2023/day24.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | create_solution!(Day24, 2023, 24);
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Hail` is never constructed
[INFO] [stdout]   --> src/year2023/day24.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Hail<T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec_from_str` is never used
[INFO] [stdout]   --> src/year2023/day24.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn vec_from_str<T: FromStr>(input: &str) -> Vec3<T> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/year2023/day24.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn parse<T: FromStr>(input: &str) -> Vec<Hail<T>> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day24.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn solve(input: &str, test_area_start: f64, test_area_end: f64) -> (usize, i64) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_collisions_in_test_area` is never used
[INFO] [stdout]   --> src/year2023/day24.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn count_collisions_in_test_area(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_p2` is never used
[INFO] [stdout]    --> src/year2023/day24.rs:114:4
[INFO] [stdout]     |
[INFO] [stdout] 114 | fn solve_p2(hail: &[Hail<i64>]) -> i64 {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day3` is never constructed
[INFO] [stdout]  --> src/year2023/day3.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day3, 2023, 3);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day4` is never constructed
[INFO] [stdout]  --> src/year2023/day4.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day4, 2023, 4);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day5` is never constructed
[INFO] [stdout]  --> src/year2023/day5.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day5, 2023, 5);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day6` is never constructed
[INFO] [stdout]  --> src/year2023/day6.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_solution!(Day6, 2023, 6);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day6.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn solve(max_time: u64, max_dist: u64) -> u64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day7` is never constructed
[INFO] [stdout]  --> src/year2023/day7.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day7, 2023, 7);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Hand` is never constructed
[INFO] [stdout]   --> src/year2023/day7.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Hand {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/year2023/day7.rs:15:8
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl Hand {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout]  15 |     fn tally(&self) -> [u8; 13] {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  39 |     fn score_part1(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  45 |     fn score_part2(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn score_tally(values: [u8; 13]) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     fn cmp_part_1(&self, other: &Self) -> Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     fn cmp_part_2(&self, other: &Self) -> Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn cmp_by_card_value(&self, other: &Self, card_value_order: &[char]) -> Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day8` is never constructed
[INFO] [stdout]  --> src/year2023/day8.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_solution!(Day8, 2023, 8);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]   --> src/year2023/day8.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn solve(
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day9` is never constructed
[INFO] [stdout]  --> src/year2023/day9.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_solution!(Day9, 2023, 9);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next` is never used
[INFO] [stdout]   --> src/year2023/day9.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn next(series: &[i64]) -> Vec<i64> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/prelude/string.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn nums<T>(&self) -> Nums<T>;
[INFO] [stdout]   |                ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                |
[INFO] [stdout]   |                the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn nums<T>(&self) -> Nums<'_, T>;
[INFO] [stdout]   |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day10` is never constructed
[INFO] [stdout]  --> src/year2019/day10.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day10, 2019, 10);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day9` is never constructed
[INFO] [stdout]  --> src/year2019/day9.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | create_solution!(Day9, 2019, 9);
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day20` is never constructed
[INFO] [stdout]  --> src/year2023/day20.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | create_solution!(Day20, 2023, 20);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solvep2` is never used
[INFO] [stdout]    --> src/year2023/day20.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn solvep2(input: &str) -> usize {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day21` is never constructed
[INFO] [stdout]  --> src/year2023/day21.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_solution!(Day21, 2023, 21);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day22` is never constructed
[INFO] [stdout]  --> src/year2023/day22.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day22, 2023, 22);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day23` is never constructed
[INFO] [stdout]  --> src/year2023/day23.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_solution!(Day23, 2023, 23);
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Day24` is never constructed
[INFO] [stdout]   --> src/year2023/day24.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | create_solution!(Day24, 2023, 24);
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `create_solution` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/prelude/string.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn nums<T>(&self) -> Nums<T>;
[INFO] [stdout]   |                ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                |
[INFO] [stdout]   |                the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn nums<T>(&self) -> Nums<'_, T>;
[INFO] [stdout]   |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 53.28s
[INFO] running `Command { std: "docker" "inspect" "041411d693420f3af4fe0962c69f85585c3a215266e69987f1bb8d8e7624dede", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "041411d693420f3af4fe0962c69f85585c3a215266e69987f1bb8d8e7624dede", kill_on_drop: false }`
[INFO] [stdout] 041411d693420f3af4fe0962c69f85585c3a215266e69987f1bb8d8e7624dede
