[INFO] cloning repository https://github.com/tigerplush/advent_of_code_2024
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tigerplush/advent_of_code_2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftigerplush%2Fadvent_of_code_2024", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftigerplush%2Fadvent_of_code_2024'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9837a75b8b7ccffc90ad307d9615bc3b301c1569
[INFO] checking tigerplush/advent_of_code_2024 against try#ed606620234c6b50f2414162c4bbabd5f4a925f3 for pr-147995
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftigerplush%2Fadvent_of_code_2024" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tigerplush/advent_of_code_2024
[INFO] finished tweaking git repo https://github.com/tigerplush/advent_of_code_2024
[INFO] tweaked toml for git repo https://github.com/tigerplush/advent_of_code_2024 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tigerplush/advent_of_code_2024 on toolchain ed606620234c6b50f2414162c4bbabd5f4a925f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ed606620234c6b50f2414162c4bbabd5f4a925f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tigerplush/advent_of_code_2024 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" "+ed606620234c6b50f2414162c4bbabd5f4a925f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ed606620234c6b50f2414162c4bbabd5f4a925f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6246d856d534d19ef7fa0067d941bead69fde49bbce61440d163aca66be783e7
[INFO] running `Command { std: "docker" "start" "-a" "6246d856d534d19ef7fa0067d941bead69fde49bbce61440d163aca66be783e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6246d856d534d19ef7fa0067d941bead69fde49bbce61440d163aca66be783e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6246d856d534d19ef7fa0067d941bead69fde49bbce61440d163aca66be783e7", kill_on_drop: false }`
[INFO] [stdout] 6246d856d534d19ef7fa0067d941bead69fde49bbce61440d163aca66be783e7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ed606620234c6b50f2414162c4bbabd5f4a925f3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9f77eebf12e5f15c6ceef8678eec40c149527c0c949739733e993f51289d248f
[INFO] running `Command { std: "docker" "start" "-a" "9f77eebf12e5f15c6ceef8678eec40c149527c0c949739733e993f51289d248f", kill_on_drop: false }`
[INFO] [stderr]     Checking advent_of_code_2024 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `num::ParseIntError`
[INFO] [stdout]  --> src/lib.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{num::ParseIntError, ops::Add};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num::ParseIntError`
[INFO] [stdout]  --> src/lib.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{num::ParseIntError, ops::Add};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ops::Add`
[INFO] [stdout]  --> src/day_06.rs:1:37
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, fs, ops::Add};
[INFO] [stdout]   |                                     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `result`
[INFO] [stdout]  --> src/day_07.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fs, result};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/day_08.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `fs`
[INFO] [stdout]  --> src/day_12.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, fs};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Direction`
[INFO] [stdout]  --> src/day_12.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use advent_of_code_2024::{Direction, Position, DIRECTIONS};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> src/day_15.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, hash::Hash};
[INFO] [stdout]   |                                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ops::Add`
[INFO] [stdout]  --> src/day_06.rs:1:37
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, fs, ops::Add};
[INFO] [stdout]   |                                     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `result`
[INFO] [stdout]  --> src/day_07.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fs, result};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/day_08.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `fs`
[INFO] [stdout]  --> src/day_12.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, fs};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Direction`
[INFO] [stdout]  --> src/day_12.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use advent_of_code_2024::{Direction, Position, DIRECTIONS};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> src/day_15.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, hash::Hash};
[INFO] [stdout]   |                                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_06.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]  --> src/day_08.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn evaluate_part_one(input: &str) -> i32 {
[INFO] [stdout]   |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_08.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_12.rs:55:22
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day_13.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     for (a, b, mut price) in machines {
[INFO] [stdout]    |                ----^^^^^
[INFO] [stdout]    |                |
[INFO] [stdout]    |                help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/day_15.rs:106:22
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]     |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]  --> src/day_01.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const TEST_INPUT: &str = "3   4
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]   --> src/day_01.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate` is never used
[INFO] [stdout]   --> src/day_01.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn evaluate(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_01.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day_01.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn parse(input: &str) -> (Vec<i32>, Vec<i32>) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_02.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (usize, usize) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]  --> src/day_02.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const TEST_INPUT: &str = "7 6 4 2 1
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate` is never used
[INFO] [stdout]   --> src/day_02.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn evaluate(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_02.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn evaluate_part_two(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Report` is never constructed
[INFO] [stdout]   --> src/day_02.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct Report {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_valid`, and `fix` are never used
[INFO] [stdout]   --> src/day_02.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl Report {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 54 |     fn new(levels: Vec<i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn is_valid(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn fix(&mut self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Derivation` is never used
[INFO] [stdout]   --> src/day_02.rs:89:7
[INFO] [stdout]    |
[INFO] [stdout] 89 | trait Derivation {
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]    --> src/day_02.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn parse(input: &str) -> Vec<Vec<i32>> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]  --> src/day_03.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const TEST_INPUT: &str = "xmul(2,4)%&mul[3,7]!@^do_not_mul(5,5)+mul(32,64]then(mul(11,8)mul(8,5))";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_TWO` is never used
[INFO] [stdout]  --> src/day_03.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const TEST_INPUT_TWO: &str =
[INFO] [stdout]   |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_03.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]   --> src/day_03.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn evaluate_part_one(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_03.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_04.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]   --> src/day_04.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn evaluate_part_one(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_04.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day_04.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn parse(input: &str) -> Vec<Vec<char>> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Direction` is never constructed
[INFO] [stdout]   --> src/day_04.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct Direction {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/day_04.rs:85:11
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl Direction {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  85 |     const RIGHT: Direction = Direction::new(1, 0);
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout]  86 |     const LEFT: Direction = Direction::new(-1, 0);
[INFO] [stdout]     |           ^^^^
[INFO] [stdout]  87 |     const UP: Direction = Direction::new(0, -1);
[INFO] [stdout]     |           ^^
[INFO] [stdout]  88 |     const DOWN: Direction = Direction::new(0, 1);
[INFO] [stdout]     |           ^^^^
[INFO] [stdout]  89 |     const DOWN_RIGHT: Direction = Direction::new(1, 1);
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]  90 |     const DOWN_LEFT: Direction = Direction::new(-1, 1);
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout]  91 |     const UP_RIGHT: Direction = Direction::new(1, -1);
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout]  92 |     const UP_LEFT: Direction = Direction::new(-1, -1);
[INFO] [stdout]     |           ^^^^^^^
[INFO] [stdout]  93 |
[INFO] [stdout]  94 |     const DIRECTIONS: [Direction; 8] = [
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     const fn new(x: isize, y: isize) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]    --> src/day_04.rs:110:7
[INFO] [stdout]     |
[INFO] [stdout] 110 | const TEST_INPUT_ONE: &str = "MMMSXXMASM
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_05.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]   --> src/day_05.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn evaluate_part_one(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_05.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day_05.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn parse(input: &str) -> (Vec<PageOrderingRule>, Vec<Vec<i32>>) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PageOrderingRule` is never constructed
[INFO] [stdout]   --> src/day_05.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct PageOrderingRule {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `parse_from` and `evaluate` are never used
[INFO] [stdout]   --> src/day_05.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | impl PageOrderingRule {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 85 |     fn parse_from(input: &str) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 96 |     fn evaluate(&self, window: &[i32]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Evaluate` is never used
[INFO] [stdout]    --> src/day_05.rs:105:7
[INFO] [stdout]     |
[INFO] [stdout] 105 | trait Evaluate {
[INFO] [stdout]     |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]    --> src/day_05.rs:122:7
[INFO] [stdout]     |
[INFO] [stdout] 122 | const TEST_INPUT_ONE: &str = "47|53
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_06.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn load_and_evaluate(path: &str) -> (usize, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]   --> src/day_06.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn evaluate_part_one(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_06.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]   --> src/day_06.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | const TEST_INPUT_ONE: &str = "....#.....
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_07.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (i64, i64) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]   --> src/day_07.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn evaluate_part_one(input: &str) -> i64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_part_one` is never used
[INFO] [stdout]   --> src/day_07.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn solve_part_one(input: Vec<i64>) -> Vec<Vec<i64>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_part_two` is never used
[INFO] [stdout]   --> src/day_07.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn solve_part_two(input: Vec<i64>) -> Vec<Vec<i64>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_07.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn evaluate_part_two(input: &str) -> i64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day_07.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn parse(input: &str) -> Vec<Vec<i64>> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]   --> src/day_07.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | const TEST_INPUT_ONE: &str = "190: 10 19
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_08.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn load_and_evaluate(input: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]  --> src/day_08.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn evaluate_part_one(input: &str) -> i32 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_08.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]   --> src/day_08.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const TEST_INPUT_ONE: &str ="............
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_11.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(input: &str) -> (usize, usize) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]  --> src/day_11.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn evaluate_part_one(input: &str) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_11.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn evaluate_part_two(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blink_dict` is never used
[INFO] [stdout]   --> src/day_11.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn blink_dict(input: HashMap<u64, usize>) -> HashMap<u64, usize> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blink` is never used
[INFO] [stdout]   --> src/day_11.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn blink(input: &Vec<u64>) -> Vec<u64> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]   --> src/day_11.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 | const TEST_INPUT_ONE: &str ="0 1 10 99 999";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_12.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn load_and_evaluate(input: &str) -> (usize, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]   --> src/day_12.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn evaluate_part_one(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_12.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]   --> src/day_12.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | const TEST_INPUT_ONE: &str = "AAAA
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_TWO` is never used
[INFO] [stdout]   --> src/day_12.rs:64:7
[INFO] [stdout]    |
[INFO] [stdout] 64 | const TEST_INPUT_TWO: &str = "OOOOO
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_THREE` is never used
[INFO] [stdout]   --> src/day_12.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | const TEST_INPUT_THREE: &str ="RRRRIICCFF
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Region` is never constructed
[INFO] [stdout]   --> src/day_12.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | struct Region {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price` and `side_price` are never used
[INFO] [stdout]    --> src/day_12.rs:99:8
[INFO] [stdout]     |
[INFO] [stdout]  98 | impl Region {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout]  99 |     fn price(&self) -> usize {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn side_price(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_13.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn load_and_evaluate(input: &str) -> (isize, isize) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one` is never used
[INFO] [stdout]  --> src/day_13.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn evaluate_part_one(input: &str) -> isize {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_13.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn evaluate_part_two(input: &str) -> isize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_one_2` is never used
[INFO] [stdout]   --> src/day_13.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn evaluate_part_one_2(input: &str) -> isize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]   --> src/day_13.rs:68:7
[INFO] [stdout]    |
[INFO] [stdout] 68 | const TEST_INPUT_ONE: &str ="Button A: X+94, Y+34
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day_13.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn parse(input: &str) -> Vec<(Direction, Direction, Position)>{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_map` is never used
[INFO] [stdout]   --> src/day_15.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn to_map(map: &HashMap<Position, Object>, pos: Position) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_ONE` is never used
[INFO] [stdout]    --> src/day_15.rs:111:7
[INFO] [stdout]     |
[INFO] [stdout] 111 | const TEST_INPUT_ONE: &str ="########
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_TWO` is never used
[INFO] [stdout]    --> src/day_15.rs:164:7
[INFO] [stdout]     |
[INFO] [stdout] 164 | const TEST_INPUT_TWO: &str = "##########
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_06.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]  --> src/day_08.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn evaluate_part_one(input: &str) -> i32 {
[INFO] [stdout]   |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_08.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_12.rs:55:22
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]    |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day_13.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     for (a, b, mut price) in machines {
[INFO] [stdout]    |                ----^^^^^
[INFO] [stdout]    |                |
[INFO] [stdout]    |                help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/day_15.rs:106:22
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn evaluate_part_two(input: &str) -> i32 {
[INFO] [stdout]     |                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `map`
[INFO] [stdout]    --> src/day_15.rs:188:15
[INFO] [stdout]     |
[INFO] [stdout] 188 |     let (pos, map, instructions) = parse(TEST_INPUT_ONE);
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]   --> src/day_01.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_02.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (usize, usize) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_02.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn evaluate_part_two(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fix` is never used
[INFO] [stdout]   --> src/day_02.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl Report {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn fix(&mut self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_03.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_04.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_05.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_06.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn load_and_evaluate(path: &str) -> (usize, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_07.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(path: &str) -> (i64, i64) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_08.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn load_and_evaluate(input: &str) -> (i32, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_11.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn load_and_evaluate(input: &str) -> (usize, usize) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_11.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn evaluate_part_two(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blink_dict` is never used
[INFO] [stdout]   --> src/day_11.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn blink_dict(input: HashMap<u64, usize>) -> HashMap<u64, usize> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_12.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn load_and_evaluate(input: &str) -> (usize, i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `label` is never read
[INFO] [stdout]   --> src/day_12.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 93 | struct Region {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 94 |     label: char,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `side_price` is never used
[INFO] [stdout]    --> src/day_12.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout]  98 | impl Region {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn side_price(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_and_evaluate` is never used
[INFO] [stdout]  --> src/day_13.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn load_and_evaluate(input: &str) -> (isize, isize) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_part_two` is never used
[INFO] [stdout]   --> src/day_13.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn evaluate_part_two(input: &str) -> isize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_map` is never used
[INFO] [stdout]   --> src/day_15.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn to_map(map: &HashMap<Position, Object>, pos: Position) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.37s
[INFO] running `Command { std: "docker" "inspect" "9f77eebf12e5f15c6ceef8678eec40c149527c0c949739733e993f51289d248f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9f77eebf12e5f15c6ceef8678eec40c149527c0c949739733e993f51289d248f", kill_on_drop: false }`
[INFO] [stdout] 9f77eebf12e5f15c6ceef8678eec40c149527c0c949739733e993f51289d248f
