[INFO] cloning repository https://github.com/Bammerbom/aoc2019
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Bammerbom/aoc2019" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBammerbom%2Faoc2019", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBammerbom%2Faoc2019'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6dd3bfaf54f00ea4e20c1e829923eb7d9dafa0ab
[INFO] testing Bammerbom/aoc2019 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBammerbom%2Faoc2019" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Bammerbom/aoc2019
[INFO] finished tweaking git repo https://github.com/Bammerbom/aoc2019
[INFO] tweaked toml for git repo https://github.com/Bammerbom/aoc2019 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Bammerbom/aoc2019 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Bammerbom/aoc2019 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" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] baf99537ba2d02711f674e08a5aa8030e41426d7c3df22494e74effc49723af5
[INFO] running `Command { std: "docker" "start" "-a" "baf99537ba2d02711f674e08a5aa8030e41426d7c3df22494e74effc49723af5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "baf99537ba2d02711f674e08a5aa8030e41426d7c3df22494e74effc49723af5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "baf99537ba2d02711f674e08a5aa8030e41426d7c3df22494e74effc49723af5", kill_on_drop: false }`
[INFO] [stdout] baf99537ba2d02711f674e08a5aa8030e41426d7c3df22494e74effc49723af5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5457c7446f985e9f0333a35c432327f895e12f12867f12f143e80bff176abd7b
[INFO] running `Command { std: "docker" "start" "-a" "5457c7446f985e9f0333a35c432327f895e12f12867f12f143e80bff176abd7b", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.10
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling num-bigint v0.2.3
[INFO] [stderr]    Compiling num-iter v0.1.39
[INFO] [stderr]    Compiling num-complex v0.2.3
[INFO] [stderr]    Compiling num-rational v0.2.2
[INFO] [stderr]    Compiling text_io v0.1.7
[INFO] [stderr]    Compiling modinverse v0.1.1
[INFO] [stderr]    Compiling num v0.2.0
[INFO] [stderr]    Compiling aoc2019 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day3/main1.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day6/main2.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |     if(from == "SAN") {
[INFO] [stdout]    |       ^             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 -     if(from == "SAN") {
[INFO] [stdout] 29 +     if from == "SAN"  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day6/main2.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 48 |     if(out.is_some()) {
[INFO] [stdout]    |       ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -     if(out.is_some()) {
[INFO] [stdout] 48 +     if out.is_some()  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/day9/main2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day9/main2.rs:221:7
[INFO] [stdout]     |
[INFO] [stdout] 221 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 221 -     if(program.memory.len() <= index) {
[INFO] [stdout] 221 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day10/main1.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 |         if(count > max) {
[INFO] [stdout]    |           ^           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 36 -         if(count > max) {
[INFO] [stdout] 36 +         if count > max {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day10/main1.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 |     if ((slope_p2p1.is_infinite() && slope_tp1.is_infinite())
[INFO] [stdout]    |        ^
[INFO] [stdout] 77 |         || (slope_tp1-slope_p2p1).abs() < 0.000001) {
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 76 ~     if (slope_p2p1.is_infinite() && slope_tp1.is_infinite())
[INFO] [stdout] 77 ~         || (slope_tp1-slope_p2p1).abs() < 0.000001 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/day10/main2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering::Equal`
[INFO] [stdout]  --> src/day10/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::cmp::Ordering::Equal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/day11/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day11/main1.rs:290:7
[INFO] [stdout]     |
[INFO] [stdout] 290 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 290 -     if(program.memory.len() <= index) {
[INFO] [stdout] 290 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/day13/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering::Less`
[INFO] [stdout]  --> src/day13/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::cmp::Ordering::Less;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day13/main2.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout] 308 |     if (program.memory.len() <= index) {
[INFO] [stdout]     |        ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 308 -     if (program.memory.len() <= index) {
[INFO] [stdout] 308 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/day13/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day13/main1.rs:241:7
[INFO] [stdout]     |
[INFO] [stdout] 241 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 241 -     if(program.memory.len() <= index) {
[INFO] [stdout] 241 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/day14/main1.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/day14/main1.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/day14/main1.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/day14/main2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/day14/main2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/day14/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/day14/main2.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::day13::main2::print_board`
[INFO] [stdout]  --> src/day15/main2.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::day13::main2::print_board;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/day15/main2.rs:90:41
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stdout]    |                                         ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 - pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stdout] 90 + pub fn explore2(state: ProgramState) -> i64  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day15/main2.rs:412:7
[INFO] [stdout]     |
[INFO] [stdout] 412 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 412 -     if(program.memory.len() <= index) {
[INFO] [stdout] 412 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day15/main1.rs:336:7
[INFO] [stdout]     |
[INFO] [stdout] 336 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 336 -     if(program.memory.len() <= index) {
[INFO] [stdout] 336 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice::Iter`
[INFO] [stdout]  --> src/day17/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::slice::Iter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day17/main2.rs:560:7
[INFO] [stdout]     |
[INFO] [stdout] 560 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 560 -     if(program.memory.len() <= index) {
[INFO] [stdout] 560 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> src/day17/main1.rs:1:42
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day17/main1.rs:278:7
[INFO] [stdout]     |
[INFO] [stdout] 278 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 278 -     if(program.memory.len() <= index) {
[INFO] [stdout] 278 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stdout]  --> src/day19/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day19/main2.rs:254:7
[INFO] [stdout]     |
[INFO] [stdout] 254 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 254 -     if(program.memory.len() <= index) {
[INFO] [stdout] 254 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> src/day19/main1.rs:1:42
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day19/main1.rs:258:7
[INFO] [stdout]     |
[INFO] [stdout] 258 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 258 -     if(program.memory.len() <= index) {
[INFO] [stdout] 258 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stdout]  --> src/day21/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day21/main2.rs:243:7
[INFO] [stdout]     |
[INFO] [stdout] 243 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 243 -     if(program.memory.len() <= index) {
[INFO] [stdout] 243 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stdout]  --> src/day21/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day21/main1.rs:243:7
[INFO] [stdout]     |
[INFO] [stdout] 243 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 243 -     if(program.memory.len() <= index) {
[INFO] [stdout] 243 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day22/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/day22/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/day23/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day23/main2.rs:304:7
[INFO] [stdout]     |
[INFO] [stdout] 304 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 304 -     if(program.memory.len() <= index) {
[INFO] [stdout] 304 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/day23/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day23/main1.rs:290:7
[INFO] [stdout]     |
[INFO] [stdout] 290 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 290 -     if(program.memory.len() <= index) {
[INFO] [stdout] 290 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day24/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `VecDeque`
[INFO] [stdout]  --> src/day25/main1.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                                 ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/day25/main1.rs:139:51
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn neighbours(output_str: &String) -> HashSet<(Direction)> {
[INFO] [stdout]     |                                                   ^         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 139 - pub fn neighbours(output_str: &String) -> HashSet<(Direction)> {
[INFO] [stdout] 139 + pub fn neighbours(output_str: &String) -> HashSet<Direction > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day25/main1.rs:435:7
[INFO] [stdout]     |
[INFO] [stdout] 435 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 435 -     if(program.memory.len() <= index) {
[INFO] [stdout] 435 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/day13/main2.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | /     loop {
[INFO] [stdout] 27 | |         let input = match state.ball_pos.0.cmp(&state.paddle_pos.0) {
[INFO] [stdout] 28 | |             Ordering::Less => -1,
[INFO] [stdout] 29 | |             Ordering::Equal => 0,
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | |         if halt { return state.score; };
[INFO] [stdout] 36 | |     }
[INFO] [stdout]    | |_____- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 39 |       return 0;
[INFO] [stdout]    |       ^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/day23/main1.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | /     loop {
[INFO] [stdout] 34 | |         for i in 0..50 {
[INFO] [stdout] 35 | |             //Get inputs
[INFO] [stdout] 36 | |             let inputs;
[INFO] [stdout] ...  |
[INFO] [stdout] 60 | |     }
[INFO] [stdout]    | |_____- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 64 |       return 0;
[INFO] [stdout]    |       ^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `substr`
[INFO] [stdout]   --> src/day3/main1.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let substr: String = stepstr[1..].to_string();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_substr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `substr`
[INFO] [stdout]   --> src/day3/main2.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let substr: String = stepstr[1..].to_string();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_substr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day7/main2.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut memory = parse(program);
[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: `i`
[INFO] [stdout]  --> src/day8/main2.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     for i in 0..imgsize {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day10/main2.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let mut base = Point { x: basex, y: basey };
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day10/main2.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut start_point = Point {x: p1.x, y: p1.y + 100000};
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day10/main2.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let mut curr_top = (1.0 as f64).atan2(0.0 as f64);
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_point`
[INFO] [stdout]   --> src/day10/main2.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut start_point = Point {x: p1.x, y: p1.y + 100000};
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day13/main2.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day13/main1.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut memory = &mut parse(program);
[INFO] [stdout]   |         ----^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day15/main2.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut state = ProgramState {memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/day15/main2.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (result, newstate) = explore(state);
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day15/main2.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day15/main1.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut state = ProgramState {memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day15/main1.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day17/main2.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut strings = routine.iter().map(|step| step.to_string()).collect::<Vec<String>>();
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day17/main2.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 343 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day17/main1.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day19/main2.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut program = ProgramState{memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]   |         ----^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day19/main2.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day19/main1.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut program = ProgramState{memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]   |         ----^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day19/main1.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tile`
[INFO] [stdout]   --> src/day20/main2.rs:67:15
[INFO] [stdout]    |
[INFO] [stdout] 67 |     for (pos, tile) in &tiles {
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_tile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day21/main2.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day21/main1.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day23/main2.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/day23/main1.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     for i in 0..50 {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day23/main1.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/day24/main2.rs:21:38
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let maxl = state.iter().map(|(p, v)| p.2).max().unwrap();
[INFO] [stdout]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/day24/main2.rs:20:38
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let minl = state.iter().map(|(p, v)| p.2).min().unwrap();
[INFO] [stdout]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halt`
[INFO] [stdout]   --> src/day25/main1.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (inv, halt) = droid.input(INV);
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halt`
[INFO] [stdout]   --> src/day25/main1.rs:71:22
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let (output, halt) = droid.input(MOVE(SOUTH));
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:101:10
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let mut output_str: String = output.iter().map( |i| *i as u8 as char).collect();
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halt`
[INFO] [stdout]    --> src/day25/main1.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stdout]     |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day2/main.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main(input: &str) -> usize {
[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 `run` is never used
[INFO] [stdout]   --> src/day2/main.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn run(mut memory: Vec<usize>) -> usize {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day3/main1.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(input: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_path` is never used
[INFO] [stdout]   --> src/day3/main1.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn parse_path(input: &str) -> HashSet<(i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Position` is never constructed
[INFO] [stdout]   --> src/day3/main1.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct Position {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day3/main2.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(input: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_path` is never used
[INFO] [stdout]   --> src/day3/main2.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn parse_path(input: &str) -> (HashSet<(i64, i64)>, HashMap<(i64, i64), i64>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Position` is never constructed
[INFO] [stdout]   --> src/day3/main2.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct Position {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day4/main1_fast.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main() -> usize {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid` is never used
[INFO] [stdout]   --> src/day4/main1_fast.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn is_valid(chars: &Vec<char>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_next` is never used
[INFO] [stdout]   --> src/day4/main1_fast.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn generate_next(chars: &mut Vec<char>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day4/main1_short.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main() -> usize {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid` is never used
[INFO] [stdout]  --> src/day4/main1_short.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn is_valid(i: &i32) -> bool {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day4/main2_fast.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main() -> usize {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid` is never used
[INFO] [stdout]   --> src/day4/main2_fast.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn is_valid(chars: &Vec<char>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_next` is never used
[INFO] [stdout]   --> src/day4/main2_fast.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn generate_next(chars: &mut Vec<char>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day4/main2_short.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main() -> usize {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid` is never used
[INFO] [stdout]  --> src/day4/main2_short.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn is_valid(i: &i32) -> bool {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day5/main.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main(program: &str, inputs: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day5/main.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn run(memory: &mut Vec<i32>, inputs: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day5/main.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `input_param` is never used
[INFO] [stdout]    --> src/day5/main.rs:156:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub fn input_param(memory: &Vec<i32>, instr: usize, instrindex: usize, paramnum: usize) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `output_param` is never used
[INFO] [stdout]    --> src/day5/main.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub fn output_param(memory: &Vec<i32>, instr: usize, instrindex: usize, paramnum: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day5/main.rs:192:4
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day6/main1.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count` is never used
[INFO] [stdout]   --> src/day6/main1.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn count(from: &str, edgesOut: &HashMap<&str, HashSet<&str>>) -> (i64, i64) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day6/main2.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count` is never used
[INFO] [stdout]   --> src/day6/main2.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_settings` is never used
[INFO] [stdout]  --> src/day7/main1.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn try_settings(program: &str) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_parse` is never used
[INFO] [stdout]   --> src/day7/main1.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn run_parse(program: &str, inputs: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day7/main1.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn run(memory: &mut Vec<i32>, inputs: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day7/main1.rs:186:8
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `input_param` is never used
[INFO] [stdout]    --> src/day7/main1.rs:191:8
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub fn input_param(memory: &Vec<i32>, instr: usize, instrindex: usize, paramnum: usize) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `output_param` is never used
[INFO] [stdout]    --> src/day7/main1.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn output_param(memory: &Vec<i32>, instr: usize, instrindex: usize, paramnum: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day7/main1.rs:227:4
[INFO] [stdout]     |
[INFO] [stdout] 227 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_settings` is never used
[INFO] [stdout]  --> src/day7/main2.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn try_settings(program: &str) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day7/main2.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn parse(program: &str) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day7/main2.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn run(memory: &mut Vec<i32>, program_counter: &mut usize, inputs: Vec<i32>) -> (Vec<i32>,
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day7/main2.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `input_param` is never used
[INFO] [stdout]    --> src/day7/main2.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn input_param(memory: &Vec<i32>, instr: usize, instrindex: usize, paramnum: usize) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `output_param` is never used
[INFO] [stdout]    --> src/day7/main2.rs:236:8
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub fn output_param(memory: &Vec<i32>, instr: usize, instrindex: usize, paramnum: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day7/main2.rs:255:4
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day8/main1.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main(input: &str, width: usize, height: usize) -> usize {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day8/main2.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main(input: &str, width: usize, height: usize) -> Vec<usize> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]  --> src/day9/main2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day9/main2.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day9/main2.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct ProgramState<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day9/main2.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day9/main2.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day9/main2.rs:177:10
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day9/main2.rs:181:8
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day9/main2.rs:220:4
[INFO] [stdout]     |
[INFO] [stdout] 220 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day9/main2.rs:227:4
[INFO] [stdout]     |
[INFO] [stdout] 227 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/day10/main1.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct Point {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day10/main1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn main(input: &str) -> usize {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_in_line` is never used
[INFO] [stdout]   --> src/day10/main1.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn is_in_line(a: &Point, b: &Point, target: &Point) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_in_line_f64` is never used
[INFO] [stdout]   --> src/day10/main1.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn is_in_line_f64(a: &(f64, f64), b: &(f64, f64), target: &(f64, f64)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dist` is never used
[INFO] [stdout]   --> src/day10/main1.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn dist(a: &(f64, f64), b: &(f64, f64)) -> f64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `points_intersect` is never used
[INFO] [stdout]   --> src/day10/main1.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn points_intersect(p1: &Point, p2: &Point, test: &Point) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manhatten_dist` is never used
[INFO] [stdout]   --> src/day10/main1.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn manhatten_dist(p1: &Point, p2: &Point) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/day10/main2.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Point {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/day10/main2.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn main(input: &str, basex: i64, basey: i64, maxcount: i64) -> usize {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `angle` is never used
[INFO] [stdout]   --> src/day10/main2.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn angle(p1: &Point) -> f64 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day11/main1.rs:5:6
[INFO] [stdout]   |
[INFO] [stdout] 5 | enum Direction {N, E, S, W}
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `paint_robot` is never used
[INFO] [stdout]  --> src/day11/main1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn paint_robot(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day11/main1.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day11/main1.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day11/main1.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub struct ProgramState<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day11/main1.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day11/main1.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day11/main1.rs:246:10
[INFO] [stdout]     |
[INFO] [stdout] 246 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day11/main1.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day11/main1.rs:289:4
[INFO] [stdout]     |
[INFO] [stdout] 289 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day11/main1.rs:296:4
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day12/main1.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(input: &str, stepcount: i64) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `energy` is never used
[INFO] [stdout]   --> src/day12/main1.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn energy(moons: &Vec<Moon>) -> i64 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Moon` is never constructed
[INFO] [stdout]   --> src/day12/main1.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct Moon {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day12/main2.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn main(input: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Moon` is never constructed
[INFO] [stdout]   --> src/day12/main2.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Moon {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoonPart` is never constructed
[INFO] [stdout]   --> src/day12/main2.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct MoonPart {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `play` is never used
[INFO] [stdout]  --> src/day13/main2.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn play(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GameState` is never constructed
[INFO] [stdout]   --> src/day13/main2.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct GameState {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_output` is never used
[INFO] [stdout]   --> src/day13/main2.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn handle_output(tiles: &mut HashMap<(i64, i64), i64>, state: &mut GameState, output: &Vec<i64>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_board` is never used
[INFO] [stdout]   --> src/day13/main2.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn print_board(tiles: &HashMap<(i64, i64), i64>) {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day13/main2.rs:89:8
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day13/main2.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]    --> src/day13/main2.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct ProgramState {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/day13/main2.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day13/main2.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 258 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day13/main2.rs:263:10
[INFO] [stdout]     |
[INFO] [stdout] 263 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day13/main2.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day13/main2.rs:307:4
[INFO] [stdout]     |
[INFO] [stdout] 307 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day13/main2.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `play` is never used
[INFO] [stdout]  --> src/day13/main1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn play(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day13/main1.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day13/main1.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day13/main1.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct ProgramState<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day13/main1.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day13/main1.rs:192:8
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day13/main1.rs:197:10
[INFO] [stdout]     |
[INFO] [stdout] 197 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day13/main1.rs:201:8
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day13/main1.rs:240:4
[INFO] [stdout]     |
[INFO] [stdout] 240 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day13/main1.rs:247:4
[INFO] [stdout]     |
[INFO] [stdout] 247 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `findOreNeeded` is never used
[INFO] [stdout]  --> src/day14/main1.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn findOreNeeded(input: &str, fuel_count: i64) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Recipe` is never constructed
[INFO] [stdout]   --> src/day14/main1.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub struct Recipe<'a> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Thing` is never constructed
[INFO] [stdout]   --> src/day14/main1.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub struct Thing<'a> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getFuelFromOre` is never used
[INFO] [stdout]  --> src/day14/main2.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn getFuelFromOre(input: &str, ore_have: i64) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day15/main2.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Direction {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `play` is never used
[INFO] [stdout]   --> src/day15/main2.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn play(program: &str) -> i64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `explore` is never used
[INFO] [stdout]   --> src/day15/main2.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn explore(state: ProgramState) -> (i64, ProgramState) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `explore2` is never used
[INFO] [stdout]   --> src/day15/main2.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]    --> src/day15/main2.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub fn neighbours(from: (i64, i64)) -> Vec<((i64, i64), Direction)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_map` is never used
[INFO] [stdout]    --> src/day15/main2.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn render_map(have_been: &HashSet<(i64, i64)>, type_map: &HashMap<(i64, i64), i64>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]    --> src/day15/main2.rs:194:8
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]    --> src/day15/main2.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]    --> src/day15/main2.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub struct ProgramState {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/day15/main2.rs:217:8
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day15/main2.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day15/main2.rs:368:10
[INFO] [stdout]     |
[INFO] [stdout] 368 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day15/main2.rs:372:8
[INFO] [stdout]     |
[INFO] [stdout] 372 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day15/main2.rs:411:4
[INFO] [stdout]     |
[INFO] [stdout] 411 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day15/main2.rs:418:4
[INFO] [stdout]     |
[INFO] [stdout] 418 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day15/main1.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Direction {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `play` is never used
[INFO] [stdout]  --> src/day15/main1.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn play(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `explore` is never used
[INFO] [stdout]   --> src/day15/main1.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn explore(state: ProgramState, loc: (i64, i64)) -> i64 {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]   --> src/day15/main1.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn neighbours(from: (i64, i64)) -> Vec<((i64, i64), Direction)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_map` is never used
[INFO] [stdout]   --> src/day15/main1.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn render_map(have_been: &HashSet<(i64, i64)>, type_map: &HashMap<(i64, i64), i64>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]    --> src/day15/main1.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]    --> src/day15/main1.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]    --> src/day15/main1.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct ProgramState {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/day15/main1.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day15/main1.rs:287:8
[INFO] [stdout]     |
[INFO] [stdout] 287 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day15/main1.rs:292:10
[INFO] [stdout]     |
[INFO] [stdout] 292 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day15/main1.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day15/main1.rs:335:4
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day15/main1.rs:342:4
[INFO] [stdout]     |
[INFO] [stdout] 342 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day16/main1.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main(strin: &str) -> String {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day16/main2.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn main(strin: &str) -> u64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Rotation` is never used
[INFO] [stdout]  --> src/day17/main2.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum Rotation {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Step` is never used
[INFO] [stdout]   --> src/day17/main2.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Step {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Len` is never used
[INFO] [stdout]   --> src/day17/main2.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait Len {
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAXLENGTH` is never used
[INFO] [stdout]   --> src/day17/main2.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | const MAXLENGTH: usize = 21;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main_str` is never used
[INFO] [stdout]   --> src/day17/main2.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn main_str(main: &Vec<usize>) -> Vec<char> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `routine_str` is never used
[INFO] [stdout]   --> src/day17/main2.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn routine_str(routine: &Vec<Step>) -> Vec<char> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `counter` is never used
[INFO] [stdout]   --> src/day17/main2.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | static mut counter: i64 = 0;
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print` is never used
[INFO] [stdout]   --> src/day17/main2.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn print(chars: &Vec<i64>) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/day17/main2.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_map` is never used
[INFO] [stdout]    --> src/day17/main2.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub fn find_map(parsed: &Vec<char>) -> (Vec<Vec<Step>>, Vec<usize>) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_subroutines` is never used
[INFO] [stdout]    --> src/day17/main2.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn find_subroutines<'a>(path: &[Step], main_program: &mut Vec<usize>, routines: &mut Vec<Vec<Step>>, cr: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_path` is never used
[INFO] [stdout]    --> src/day17/main2.rs:247:8
[INFO] [stdout]     |
[INFO] [stdout] 247 | pub fn find_path(parsed: &Vec<char>) -> Vec<Step> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]    --> src/day17/main2.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 325 | pub fn neighbours(map: &HashSet<(i64, i64)>, pos: &(i64, i64)) -> HashSet<((i64, i64), Rotation)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]    --> src/day17/main2.rs:342:8
[INFO] [stdout]     |
[INFO] [stdout] 342 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]    --> src/day17/main2.rs:348:8
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]    --> src/day17/main2.rs:359:12
[INFO] [stdout]     |
[INFO] [stdout] 359 | pub struct ProgramState {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/day17/main2.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day17/main2.rs:511:8
[INFO] [stdout]     |
[INFO] [stdout] 511 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day17/main2.rs:516:10
[INFO] [stdout]     |
[INFO] [stdout] 516 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day17/main2.rs:520:8
[INFO] [stdout]     |
[INFO] [stdout] 520 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day17/main2.rs:559:4
[INFO] [stdout]     |
[INFO] [stdout] 559 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day17/main2.rs:566:4
[INFO] [stdout]     |
[INFO] [stdout] 566 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `alignment_sum` is never used
[INFO] [stdout]  --> src/day17/main1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn alignment_sum(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `alignment_sum_parsed` is never used
[INFO] [stdout]   --> src/day17/main1.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn alignment_sum_parsed(parsed: &Vec<char>) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]   --> src/day17/main1.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn neighbours(map: &HashMap<(i64, i64), char>, pos: (i64, i64)) -> HashSet<(i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day17/main1.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day17/main1.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day17/main1.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct ProgramState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day17/main1.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day17/main1.rs:229:8
[INFO] [stdout]     |
[INFO] [stdout] 229 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day17/main1.rs:234:10
[INFO] [stdout]     |
[INFO] [stdout] 234 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day17/main1.rs:238:8
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day17/main1.rs:277:4
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day17/main1.rs:284:4
[INFO] [stdout]     |
[INFO] [stdout] 284 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day18/main1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main(input: &str) -> u64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getDistance` is never used
[INFO] [stdout]   --> src/day18/main1.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn getDistance(cache: &mut HashMap<((u64, u64), Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &HashMap<c...
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/day18/main1.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn test() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Field` is never used
[INFO] [stdout]    --> src/day18/main1.rs:112:10
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum Field {
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]    --> src/day18/main1.rs:119:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub fn neighbours(points: &HashMap<(u64, u64), Field>, point: &(u64, u64)) -> HashSet<(u64, u64)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day18/main2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main(input: &str) -> u64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getDistance` is never used
[INFO] [stdout]   --> src/day18/main2.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn getDistance(cache: &mut HashMap<(Vec<(u64, u64)>, Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &Hash...
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]    --> src/day18/main2.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn test() {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Field` is never used
[INFO] [stdout]    --> src/day18/main2.rs:129:10
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub enum Field {
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]    --> src/day18/main2.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub fn neighbours(points: &HashMap<(u64, u64), Field>, point: &(u64, u64)) -> HashSet<(u64, u64)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count` is never used
[INFO] [stdout]  --> src/day19/main2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn count(program: &str) -> u64 {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get` is never used
[INFO] [stdout]   --> src/day19/main2.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn get(program: &ProgramState, point: &(u64, u64)) -> i64 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day19/main2.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day19/main2.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day19/main2.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct ProgramState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day19/main2.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day19/main2.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day19/main2.rs:210:10
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day19/main2.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day19/main2.rs:253:4
[INFO] [stdout]     |
[INFO] [stdout] 253 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day19/main2.rs:260:4
[INFO] [stdout]     |
[INFO] [stdout] 260 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count` is never used
[INFO] [stdout]  --> src/day19/main1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn count(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]   --> src/day19/main1.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn neighbours(map: &HashMap<(i64, i64), char>, pos: (i64, i64)) -> HashSet<(i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day19/main1.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day19/main1.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day19/main1.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct ProgramState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day19/main1.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day19/main1.rs:209:8
[INFO] [stdout]     |
[INFO] [stdout] 209 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day19/main1.rs:214:10
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day19/main1.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day19/main1.rs:257:4
[INFO] [stdout]     |
[INFO] [stdout] 257 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day19/main1.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day20/main1.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn main(strin: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Tile` is never used
[INFO] [stdout]    --> src/day20/main1.rs:104:10
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub enum Tile {
[INFO] [stdout]     |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]    --> src/day20/main1.rs:110:10
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub enum Direction {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_portal` is never used
[INFO] [stdout]    --> src/day20/main1.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn parse_portal(ch1: char, ch2: char, dir2: Direction) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]    --> src/day20/main1.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn neighbours(points: &HashMap<(i64, i64), Tile>, point: &(i64, i64)) -> HashSet<((i64, i64), Direction)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day20/main2.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn main(strin: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Tile` is never used
[INFO] [stdout]    --> src/day20/main2.rs:128:10
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub enum Tile {
[INFO] [stdout]     |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]    --> src/day20/main2.rs:134:10
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub enum Direction {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MinMax` is never constructed
[INFO] [stdout]    --> src/day20/main2.rs:141:12
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub struct MinMax {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_outer_portal` is never used
[INFO] [stdout]    --> src/day20/main2.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub fn is_outer_portal(mm: &MinMax, portal: &(i64, i64)) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_portal` is never used
[INFO] [stdout]    --> src/day20/main2.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub fn parse_portal(ch1: char, ch2: char, dir2: Direction) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]    --> src/day20/main2.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn neighbours(points: &HashMap<(i64, i64), Tile>, point: &(i64, i64)) -> HashSet<((i64, i64), Direction)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day21/main2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day21/main2.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day21/main2.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day21/main2.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct ProgramState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day21/main2.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day21/main2.rs:194:8
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day21/main2.rs:199:10
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day21/main2.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 203 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day21/main2.rs:242:4
[INFO] [stdout]     |
[INFO] [stdout] 242 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day21/main2.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day21/main1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day21/main1.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day21/main1.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day21/main1.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct ProgramState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day21/main1.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day21/main1.rs:194:8
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day21/main1.rs:199:10
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day21/main1.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 203 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day21/main1.rs:242:4
[INFO] [stdout]     |
[INFO] [stdout] 242 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day21/main1.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `card_at_pos` is never used
[INFO] [stdout]  --> src/day22/main1.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn card_at_pos(strin: &str, deck_size: u64, card_at_pos: usize) -> usize {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/day22/main1.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn main(strin: &str, deck_size: u64) -> Vec<u64> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deal_new_stack` is never used
[INFO] [stdout]   --> src/day22/main1.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn deal_new_stack(deck: &mut Vec<u64>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cut` is never used
[INFO] [stdout]   --> src/day22/main1.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub fn cut(deck: &mut Vec<u64>, amount: i64) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deal_with_increment` is never used
[INFO] [stdout]   --> src/day22/main1.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn deal_with_increment(deck: &mut Vec<u64>, amount: u64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day22/main2.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(strin: &str, deck_size: u128, repeat: u128, position: u128) -> u128 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deal_new_stack_rv` is never used
[INFO] [stdout]   --> src/day22/main2.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn deal_new_stack_rv(size: u128) -> LinearModularFunction {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cut_rv` is never used
[INFO] [stdout]   --> src/day22/main2.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub fn cut_rv(size: u128, amount: i128) -> LinearModularFunction {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deal_with_increment_rv` is never used
[INFO] [stdout]   --> src/day22/main2.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn deal_with_increment_rv(size: u128, amount: u128) -> LinearModularFunction {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modulo` is never used
[INFO] [stdout]   --> src/day22/main2.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn modulo(x: i128, m: i128) -> i128 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LinearModularFunction` is never constructed
[INFO] [stdout]   --> src/day22/main2.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct LinearModularFunction {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `apply`, `power`, and `then` are never used
[INFO] [stdout]   --> src/day22/main2.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl LinearModularFunction {
[INFO] [stdout]    | -------------------------- methods in this implementation
[INFO] [stdout] 70 |     pub fn apply(&self, to: i128) -> u128 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn power(&self, to: u128) -> LinearModularFunction {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn then(&self, next: &LinearModularFunction) -> LinearModularFunction {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day23/main2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Packet` is never constructed
[INFO] [stdout]   --> src/day23/main2.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Packet {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day23/main2.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day23/main2.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]    --> src/day23/main2.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct ProgramState {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/day23/main2.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day23/main2.rs:255:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day23/main2.rs:260:10
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day23/main2.rs:264:8
[INFO] [stdout]     |
[INFO] [stdout] 264 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day23/main2.rs:303:4
[INFO] [stdout]     |
[INFO] [stdout] 303 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day23/main2.rs:310:4
[INFO] [stdout]     |
[INFO] [stdout] 310 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day23/main1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn main(program: &str) -> i64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Packet` is never constructed
[INFO] [stdout]   --> src/day23/main1.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct Packet {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]   --> src/day23/main1.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]   --> src/day23/main1.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn parse(program: &str) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgramState` is never constructed
[INFO] [stdout]   --> src/day23/main1.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub struct ProgramState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/day23/main1.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn run(pr: &mut ProgramState, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_instr` is never used
[INFO] [stdout]    --> src/day23/main1.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub fn get_instr(instr: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParamMode` is never used
[INFO] [stdout]    --> src/day23/main1.rs:246:10
[INFO] [stdout]     |
[INFO] [stdout] 246 | pub enum ParamMode {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `param` is never used
[INFO] [stdout]    --> src/day23/main1.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn param(pr: &mut ProgramState, paramnum: usize, mode: ParamMode) -> i64 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_size` is never used
[INFO] [stdout]    --> src/day23/main1.rs:289:4
[INFO] [stdout]     |
[INFO] [stdout] 289 | fn ensure_size(program: &mut ProgramState, index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_vec` is never used
[INFO] [stdout]    --> src/day23/main1.rs:296:4
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn number_to_vec(n: usize) -> Vec<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day24/main1.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(strin: &str) -> u64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step` is never used
[INFO] [stdout]   --> src/day24/main1.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn step(state: &mut [[bool; 5]; 5]) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_biodiversity` is never used
[INFO] [stdout]   --> src/day24/main1.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn calculate_biodiversity(state: &[[bool; 5]; 5]) -> u64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/day24/main2.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(strin: &str, stepcount: u64) -> u64 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step` is never used
[INFO] [stdout]   --> src/day24/main2.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn step(state: &mut HashMap<(u64, u64, i64), bool>) -> u64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]   --> src/day24/main2.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub fn neighbours(point: &(u64, u64, i64)) -> HashSet<(u64, u64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_run` is never used
[INFO] [stdout]    --> src/day25/main1.rs:217:8
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn parse_run(program: &str, inputs: Vec<i64>) -> (Vec<i64>, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesIn` should have a snake case name
[INFO] [stdout]  --> src/day6/main1.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut edgesIn: HashMap<&str, &str> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]  --> src/day6/main1.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut edgesOut: HashMap<&str, HashSet<&str>> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]   --> src/day6/main1.rs:24:26
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn count(from: &str, edgesOut: &HashMap<&str, HashSet<&str>>) -> (i64, i64) {
[INFO] [stdout]    |                          ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesIn` should have a snake case name
[INFO] [stdout]  --> src/day6/main2.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut edgesIn: HashMap<&str, &str> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]  --> src/day6/main2.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut edgesOut: HashMap<&str, HashSet<&str>> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hasBeen` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut hasBeen: HashSet<&str> = HashSet::new();
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `has_been`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesIn` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:25:33
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stdout]    |                                 ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:25:70
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stdout]    |                                                                      ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hasBeen` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |     HashSet<&'a str>>, hasBeen: &mut HashSet<&'a str>) -> Option<i64> {
[INFO] [stdout]    |                        ^^^^^^^ help: convert the identifier to snake case: `has_been`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `findOreNeeded` should have a snake case name
[INFO] [stdout]  --> src/day14/main1.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn findOreNeeded(input: &str, fuel_count: i64) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_ore_needed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getFuelFromOre` should have a snake case name
[INFO] [stdout]  --> src/day14/main2.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn getFuelFromOre(input: &str, ore_have: i64) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_fuel_from_ore`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `counter` should have an upper case name
[INFO] [stdout]   --> src/day17/main2.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | static mut counter: i64 = 0;
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 54 - static mut counter: i64 = 0;
[INFO] [stdout] 54 + static mut COUNTER: i64 = 0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/day17/main2.rs:57:25
[INFO] [stdout]    |
[INFO] [stdout] 57 |         print!("[{}] ", counter);
[INFO] [stdout]    |                         ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getDistance` should have a snake case name
[INFO] [stdout]   --> src/day18/main1.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn getDistance(cache: &mut HashMap<((u64, u64), Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &HashMap<c...
[INFO] [stdout]    |        ^^^^^^^^^^^ help: convert the identifier to snake case: `get_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getDistance` should have a snake case name
[INFO] [stdout]   --> src/day18/main2.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn getDistance(cache: &mut HashMap<(Vec<(u64, u64)>, Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &Hash...
[INFO] [stdout]    |        ^^^^^^^^^^^ help: convert the identifier to snake case: `get_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.43s
[INFO] running `Command { std: "docker" "inspect" "5457c7446f985e9f0333a35c432327f895e12f12867f12f143e80bff176abd7b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5457c7446f985e9f0333a35c432327f895e12f12867f12f143e80bff176abd7b", kill_on_drop: false }`
[INFO] [stdout] 5457c7446f985e9f0333a35c432327f895e12f12867f12f143e80bff176abd7b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 10b16e3eeea8cab8b3a23669a0ab28c1ada795320bac018b90668dc424a91afc
[INFO] running `Command { std: "docker" "start" "-a" "10b16e3eeea8cab8b3a23669a0ab28c1ada795320bac018b90668dc424a91afc", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc2019 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day3/main1.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[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: `crate::day4::main1_fast::is_valid`
[INFO] [stdout]   --> src/day4/main1_fast.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     use crate::day4::main1_fast::is_valid;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::day4::main2_fast::is_valid`
[INFO] [stdout]   --> src/day4/main2_fast.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     use crate::day4::main2_fast::is_valid;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day6/main2.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |     if(from == "SAN") {
[INFO] [stdout]    |       ^             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 -     if(from == "SAN") {
[INFO] [stdout] 29 +     if from == "SAN"  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day6/main2.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 48 |     if(out.is_some()) {
[INFO] [stdout]    |       ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -     if(out.is_some()) {
[INFO] [stdout] 48 +     if out.is_some()  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day7/main2_test.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day7::main2::{parse,run};
[INFO] [stdout]   |                              ^^^^^ ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/day9/main2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day9/main2.rs:221:7
[INFO] [stdout]     |
[INFO] [stdout] 221 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 221 -     if(program.memory.len() <= index) {
[INFO] [stdout] 221 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day9/main2_test.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day9::main2::{parse,run, parse_run};
[INFO] [stdout]   |                              ^^^^^ ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day10/main1.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 |         if(count > max) {
[INFO] [stdout]    |           ^           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 36 -         if(count > max) {
[INFO] [stdout] 36 +         if count > max {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/day10/main1.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 |     if ((slope_p2p1.is_infinite() && slope_tp1.is_infinite())
[INFO] [stdout]    |        ^
[INFO] [stdout] 77 |         || (slope_tp1-slope_p2p1).abs() < 0.000001) {
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 76 ~     if (slope_p2p1.is_infinite() && slope_tp1.is_infinite())
[INFO] [stdout] 77 ~         || (slope_tp1-slope_p2p1).abs() < 0.000001 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/day10/main2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering::Equal`
[INFO] [stdout]  --> src/day10/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::cmp::Ordering::Equal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/day11/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day11/main1.rs:290:7
[INFO] [stdout]     |
[INFO] [stdout] 290 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 290 -     if(program.memory.len() <= index) {
[INFO] [stdout] 290 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day11/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day11::main1::{parse, run, parse_run, paint_robot};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/day13/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering::Less`
[INFO] [stdout]  --> src/day13/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::cmp::Ordering::Less;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day13/main2.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout] 308 |     if (program.memory.len() <= index) {
[INFO] [stdout]     |        ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 308 -     if (program.memory.len() <= index) {
[INFO] [stdout] 308 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/day13/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day13/main1.rs:241:7
[INFO] [stdout]     |
[INFO] [stdout] 241 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 241 -     if(program.memory.len() <= index) {
[INFO] [stdout] 241 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day13/main2_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day13::main2::{parse, run, parse_run, play};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day13/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day13::main1::{parse, run, parse_run, play};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/day14/main1.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/day14/main1.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/day14/main1.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/day14/main2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/day14/main2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/day14/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/day14/main2.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::day13::main2::print_board`
[INFO] [stdout]  --> src/day15/main2.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::day13::main2::print_board;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/day15/main2.rs:90:41
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stdout]    |                                         ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 - pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stdout] 90 + pub fn explore2(state: ProgramState) -> i64  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day15/main2.rs:412:7
[INFO] [stdout]     |
[INFO] [stdout] 412 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 412 -     if(program.memory.len() <= index) {
[INFO] [stdout] 412 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day15/main1.rs:336:7
[INFO] [stdout]     |
[INFO] [stdout] 336 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 336 -     if(program.memory.len() <= index) {
[INFO] [stdout] 336 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day15/main2_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day15::main2::{parse, run, parse_run, play};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day15/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day15::main1::{parse, run, parse_run, play};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice::Iter`
[INFO] [stdout]  --> src/day17/main2.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::slice::Iter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day17/main2.rs:560:7
[INFO] [stdout]     |
[INFO] [stdout] 560 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 560 -     if(program.memory.len() <= index) {
[INFO] [stdout] 560 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> src/day17/main1.rs:1:42
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day17/main1.rs:278:7
[INFO] [stdout]     |
[INFO] [stdout] 278 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 278 -     if(program.memory.len() <= index) {
[INFO] [stdout] 278 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day17/main2_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day17::main2::{parse, run, parse_run, main, find_map};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day17/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day17::main1::{parse, run, parse_run, alignment_sum, alignment_sum_parsed};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stdout]  --> src/day19/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day19/main2.rs:254:7
[INFO] [stdout]     |
[INFO] [stdout] 254 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 254 -     if(program.memory.len() <= index) {
[INFO] [stdout] 254 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> src/day19/main1.rs:1:42
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day19/main1.rs:258:7
[INFO] [stdout]     |
[INFO] [stdout] 258 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 258 -     if(program.memory.len() <= index) {
[INFO] [stdout] 258 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day19/main2_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day19::main2::{parse, run, parse_run, count};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day19/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day19::main1::{parse, run, parse_run, count};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stdout]  --> src/day21/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day21/main2.rs:243:7
[INFO] [stdout]     |
[INFO] [stdout] 243 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 243 -     if(program.memory.len() <= index) {
[INFO] [stdout] 243 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stdout]  --> src/day21/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day21/main1.rs:243:7
[INFO] [stdout]     |
[INFO] [stdout] 243 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 243 -     if(program.memory.len() <= index) {
[INFO] [stdout] 243 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day21/main2_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day21::main2::{parse, run, parse_run, main};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day21/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day21::main1::{parse, run, parse_run, main};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day22/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/day22/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/day23/main2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day23/main2.rs:304:7
[INFO] [stdout]     |
[INFO] [stdout] 304 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 304 -     if(program.memory.len() <= index) {
[INFO] [stdout] 304 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/day23/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day23/main1.rs:290:7
[INFO] [stdout]     |
[INFO] [stdout] 290 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 290 -     if(program.memory.len() <= index) {
[INFO] [stdout] 290 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day23/main2_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day23::main2::{parse, run, parse_run, main};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day23/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day23::main1::{parse, run, parse_run, main};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day24/main1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `VecDeque`
[INFO] [stdout]  --> src/day25/main1.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stdout]   |                                 ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/day25/main1.rs:139:51
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn neighbours(output_str: &String) -> HashSet<(Direction)> {
[INFO] [stdout]     |                                                   ^         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 139 - pub fn neighbours(output_str: &String) -> HashSet<(Direction)> {
[INFO] [stdout] 139 + pub fn neighbours(output_str: &String) -> HashSet<Direction > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/day25/main1.rs:435:7
[INFO] [stdout]     |
[INFO] [stdout] 435 |     if(program.memory.len() <= index) {
[INFO] [stdout]     |       ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 435 -     if(program.memory.len() <= index) {
[INFO] [stdout] 435 +     if program.memory.len() <= index  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parse` and `run`
[INFO] [stdout]  --> src/day25/main1_test.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use crate::day25::main1::{parse, run, parse_run, main};
[INFO] [stdout]   |                               ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/day13/main2.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | /     loop {
[INFO] [stdout] 27 | |         let input = match state.ball_pos.0.cmp(&state.paddle_pos.0) {
[INFO] [stdout] 28 | |             Ordering::Less => -1,
[INFO] [stdout] 29 | |             Ordering::Equal => 0,
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | |         if halt { return state.score; };
[INFO] [stdout] 36 | |     }
[INFO] [stdout]    | |_____- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 39 |       return 0;
[INFO] [stdout]    |       ^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/day23/main1.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | /     loop {
[INFO] [stdout] 34 | |         for i in 0..50 {
[INFO] [stdout] 35 | |             //Get inputs
[INFO] [stdout] 36 | |             let inputs;
[INFO] [stdout] ...  |
[INFO] [stdout] 60 | |     }
[INFO] [stdout]    | |_____- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 64 |       return 0;
[INFO] [stdout]    |       ^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `substr`
[INFO] [stdout]   --> src/day3/main1.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let substr: String = stepstr[1..].to_string();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_substr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `substr`
[INFO] [stdout]   --> src/day3/main2.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let substr: String = stepstr[1..].to_string();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_substr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day7/main2.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut memory = parse(program);
[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: `i`
[INFO] [stdout]  --> src/day8/main2.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     for i in 0..imgsize {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day10/main2.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let mut base = Point { x: basex, y: basey };
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day10/main2.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut start_point = Point {x: p1.x, y: p1.y + 100000};
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day10/main2.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let mut curr_top = (1.0 as f64).atan2(0.0 as f64);
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_point`
[INFO] [stdout]   --> src/day10/main2.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut start_point = Point {x: p1.x, y: p1.y + 100000};
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day13/main2.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day13/main1.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut memory = &mut parse(program);
[INFO] [stdout]   |         ----^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day15/main2.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let mut state = ProgramState {memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/day15/main2.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (result, newstate) = explore(state);
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day15/main2.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day15/main1.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut state = ProgramState {memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day15/main1.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day17/main2.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut strings = routine.iter().map(|step| step.to_string()).collect::<Vec<String>>();
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day17/main2.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 343 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day17/main1.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/day17/main2_test.rs:166:13
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let output = find_map(&input.chars().collect());
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/day17/main2_test.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let output = find_map(&input.chars().collect());
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day19/main2.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut program = ProgramState{memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]   |         ----^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day19/main2.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/day19/main1.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut program = ProgramState{memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stdout]   |         ----^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day19/main1.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tile`
[INFO] [stdout]   --> src/day20/main2.rs:67:15
[INFO] [stdout]    |
[INFO] [stdout] 67 |     for (pos, tile) in &tiles {
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_tile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day21/main2.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day21/main1.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day23/main2.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/day23/main1.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     for i in 0..50 {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day23/main1.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut memory = parse(program);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/day24/main2.rs:21:38
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let maxl = state.iter().map(|(p, v)| p.2).max().unwrap();
[INFO] [stdout]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/day24/main2.rs:20:38
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let minl = state.iter().map(|(p, v)| p.2).min().unwrap();
[INFO] [stdout]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halt`
[INFO] [stdout]   --> src/day25/main1.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (inv, halt) = droid.input(INV);
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halt`
[INFO] [stdout]   --> src/day25/main1.rs:71:22
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let (output, halt) = droid.input(MOVE(SOUTH));
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:101:10
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let mut output_str: String = output.iter().map( |i| *i as u8 as char).collect();
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halt`
[INFO] [stdout]    --> src/day25/main1.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stdout]     |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day25/main1.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let mut memory = parse(program);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `points_intersect` is never used
[INFO] [stdout]   --> src/day10/main1.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn points_intersect(p1: &Point, p2: &Point, test: &Point) -> bool {
[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 `manhatten_dist` is never used
[INFO] [stdout]   --> src/day10/main1.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn manhatten_dist(p1: &Point, p2: &Point) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_map` is never used
[INFO] [stdout]    --> src/day15/main2.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn render_map(have_been: &HashSet<(i64, i64)>, type_map: &HashMap<(i64, i64), i64>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_map` is never used
[INFO] [stdout]   --> src/day15/main1.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn render_map(have_been: &HashSet<(i64, i64)>, type_map: &HashMap<(i64, i64), i64>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Len` is never used
[INFO] [stdout]   --> src/day17/main2.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait Len {
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/day18/main1.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn test() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]    --> src/day18/main2.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn test() {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbours` is never used
[INFO] [stdout]   --> src/day19/main1.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn neighbours(map: &HashMap<(i64, i64), char>, pos: (i64, i64)) -> HashSet<(i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesIn` should have a snake case name
[INFO] [stdout]  --> src/day6/main1.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut edgesIn: HashMap<&str, &str> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]  --> src/day6/main1.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut edgesOut: HashMap<&str, HashSet<&str>> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]   --> src/day6/main1.rs:24:26
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn count(from: &str, edgesOut: &HashMap<&str, HashSet<&str>>) -> (i64, i64) {
[INFO] [stdout]    |                          ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesIn` should have a snake case name
[INFO] [stdout]  --> src/day6/main2.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut edgesIn: HashMap<&str, &str> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]  --> src/day6/main2.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut edgesOut: HashMap<&str, HashSet<&str>> = HashMap::new();
[INFO] [stdout]   |             ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hasBeen` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut hasBeen: HashSet<&str> = HashSet::new();
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `has_been`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesIn` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:25:33
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stdout]    |                                 ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `edgesOut` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:25:70
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stdout]    |                                                                      ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hasBeen` should have a snake case name
[INFO] [stdout]   --> src/day6/main2.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |     HashSet<&'a str>>, hasBeen: &mut HashSet<&'a str>) -> Option<i64> {
[INFO] [stdout]    |                        ^^^^^^^ help: convert the identifier to snake case: `has_been`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `findOreNeeded` should have a snake case name
[INFO] [stdout]  --> src/day14/main1.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn findOreNeeded(input: &str, fuel_count: i64) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_ore_needed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getFuelFromOre` should have a snake case name
[INFO] [stdout]  --> src/day14/main2.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn getFuelFromOre(input: &str, ore_have: i64) -> i64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_fuel_from_ore`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `counter` should have an upper case name
[INFO] [stdout]   --> src/day17/main2.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | static mut counter: i64 = 0;
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 54 - static mut counter: i64 = 0;
[INFO] [stdout] 54 + static mut COUNTER: i64 = 0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/day17/main2.rs:57:25
[INFO] [stdout]    |
[INFO] [stdout] 57 |         print!("[{}] ", counter);
[INFO] [stdout]    |                         ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getDistance` should have a snake case name
[INFO] [stdout]   --> src/day18/main1.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn getDistance(cache: &mut HashMap<((u64, u64), Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &HashMap<c...
[INFO] [stdout]    |        ^^^^^^^^^^^ help: convert the identifier to snake case: `get_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getDistance` should have a snake case name
[INFO] [stdout]   --> src/day18/main2.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn getDistance(cache: &mut HashMap<(Vec<(u64, u64)>, Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &Hash...
[INFO] [stdout]    |        ^^^^^^^^^^^ help: convert the identifier to snake case: `get_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.66s
[INFO] running `Command { std: "docker" "inspect" "10b16e3eeea8cab8b3a23669a0ab28c1ada795320bac018b90668dc424a91afc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "10b16e3eeea8cab8b3a23669a0ab28c1ada795320bac018b90668dc424a91afc", kill_on_drop: false }`
[INFO] [stdout] 10b16e3eeea8cab8b3a23669a0ab28c1ada795320bac018b90668dc424a91afc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1e47affefeafb2d7909735317105a853b7b96ebdb249b0f993ebcfdb0fd961b7
[INFO] running `Command { std: "docker" "start" "-a" "1e47affefeafb2d7909735317105a853b7b96ebdb249b0f993ebcfdb0fd961b7", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `HashMap`
[INFO] [stderr]  --> src/day3/main1.rs:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stderr]   |                                 ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::day4::main1_fast::is_valid`
[INFO] [stderr]   --> src/day4/main1_fast.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |     use crate::day4::main1_fast::is_valid;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::day4::main2_fast::is_valid`
[INFO] [stderr]   --> src/day4/main2_fast.rs:57:9
[INFO] [stderr]    |
[INFO] [stderr] 57 |     use crate::day4::main2_fast::is_valid;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/day6/main2.rs:29:7
[INFO] [stderr]    |
[INFO] [stderr] 29 |     if(from == "SAN") {
[INFO] [stderr]    |       ^             ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 29 -     if(from == "SAN") {
[INFO] [stderr] 29 +     if from == "SAN"  {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/day6/main2.rs:48:7
[INFO] [stderr]    |
[INFO] [stderr] 48 |     if(out.is_some()) {
[INFO] [stderr]    |       ^             ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 48 -     if(out.is_some()) {
[INFO] [stderr] 48 +     if out.is_some()  {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day7/main2_test.rs:3:30
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day7::main2::{parse,run};
[INFO] [stderr]   |                              ^^^^^ ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]  --> src/day9/main2.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::HashSet;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day9/main2.rs:221:7
[INFO] [stderr]     |
[INFO] [stderr] 221 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 221 -     if(program.memory.len() <= index) {
[INFO] [stderr] 221 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day9/main2_test.rs:3:30
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day9::main2::{parse,run, parse_run};
[INFO] [stderr]   |                              ^^^^^ ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/day10/main1.rs:36:11
[INFO] [stderr]    |
[INFO] [stderr] 36 |         if(count > max) {
[INFO] [stderr]    |           ^           ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 36 -         if(count > max) {
[INFO] [stderr] 36 +         if count > max {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/day10/main1.rs:76:8
[INFO] [stderr]    |
[INFO] [stderr] 76 |     if ((slope_p2p1.is_infinite() && slope_tp1.is_infinite())
[INFO] [stderr]    |        ^
[INFO] [stderr] 77 |         || (slope_tp1-slope_p2p1).abs() < 0.000001) {
[INFO] [stderr]    |                                                   ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 76 ~     if (slope_p2p1.is_infinite() && slope_tp1.is_infinite())
[INFO] [stderr] 77 ~         || (slope_tp1-slope_p2p1).abs() < 0.000001 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/day10/main2.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cmp::Ordering::Equal`
[INFO] [stderr]  --> src/day10/main2.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::cmp::Ordering::Equal;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]  --> src/day11/main1.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stderr]   |                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day11/main1.rs:290:7
[INFO] [stderr]     |
[INFO] [stderr] 290 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 290 -     if(program.memory.len() <= index) {
[INFO] [stderr] 290 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day11/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day11::main1::{parse, run, parse_run, paint_robot};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]  --> src/day13/main2.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stderr]   |                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cmp::Ordering::Less`
[INFO] [stderr]  --> src/day13/main2.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::cmp::Ordering::Less;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day13/main2.rs:308:8
[INFO] [stderr]     |
[INFO] [stderr] 308 |     if (program.memory.len() <= index) {
[INFO] [stderr]     |        ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 308 -     if (program.memory.len() <= index) {
[INFO] [stderr] 308 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]  --> src/day13/main1.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stderr]   |                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day13/main1.rs:241:7
[INFO] [stderr]     |
[INFO] [stderr] 241 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 241 -     if(program.memory.len() <= index) {
[INFO] [stderr] 241 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day13/main2_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day13::main2::{parse, run, parse_run, play};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day13/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day13::main1::{parse, run, parse_run, play};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::RefCell`
[INFO] [stderr]  --> src/day14/main1.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::cell::RefCell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]  --> src/day14/main1.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::rc::Rc;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stderr]  --> src/day14/main1.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::borrow::BorrowMut;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::RefCell`
[INFO] [stderr]  --> src/day14/main2.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::cell::RefCell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]  --> src/day14/main2.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::rc::Rc;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stderr]  --> src/day14/main2.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::borrow::BorrowMut;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/day14/main2.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::day13::main2::print_board`
[INFO] [stderr]  --> src/day15/main2.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::day13::main2::print_board;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/day15/main2.rs:90:41
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stderr]    |                                         ^   ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 90 - pub fn explore2(state: ProgramState) -> (i64) {
[INFO] [stderr] 90 + pub fn explore2(state: ProgramState) -> i64  {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day15/main2.rs:412:7
[INFO] [stderr]     |
[INFO] [stderr] 412 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 412 -     if(program.memory.len() <= index) {
[INFO] [stderr] 412 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day15/main1.rs:336:7
[INFO] [stderr]     |
[INFO] [stderr] 336 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 336 -     if(program.memory.len() <= index) {
[INFO] [stderr] 336 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day15/main2_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day15::main2::{parse, run, parse_run, play};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day15/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day15::main1::{parse, run, parse_run, play};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::slice::Iter`
[INFO] [stderr]  --> src/day17/main2.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::slice::Iter;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day17/main2.rs:560:7
[INFO] [stderr]     |
[INFO] [stderr] 560 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 560 -     if(program.memory.len() <= index) {
[INFO] [stderr] 560 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `VecDeque`
[INFO] [stderr]  --> src/day17/main1.rs:1:42
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                                          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day17/main1.rs:278:7
[INFO] [stderr]     |
[INFO] [stderr] 278 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 278 -     if(program.memory.len() <= index) {
[INFO] [stderr] 278 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day17/main2_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day17::main2::{parse, run, parse_run, main, find_map};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day17/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day17::main1::{parse, run, parse_run, alignment_sum, alignment_sum_parsed};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stderr]  --> src/day19/main2.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day19/main2.rs:254:7
[INFO] [stderr]     |
[INFO] [stderr] 254 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 254 -     if(program.memory.len() <= index) {
[INFO] [stderr] 254 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `VecDeque`
[INFO] [stderr]  --> src/day19/main1.rs:1:42
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                                          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day19/main1.rs:258:7
[INFO] [stderr]     |
[INFO] [stderr] 258 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 258 -     if(program.memory.len() <= index) {
[INFO] [stderr] 258 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day19/main2_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day19::main2::{parse, run, parse_run, count};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day19/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day19::main1::{parse, run, parse_run, count};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stderr]  --> src/day21/main2.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day21/main2.rs:243:7
[INFO] [stderr]     |
[INFO] [stderr] 243 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 243 -     if(program.memory.len() <= index) {
[INFO] [stderr] 243 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap`, `HashSet`, and `VecDeque`
[INFO] [stderr]  --> src/day21/main1.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day21/main1.rs:243:7
[INFO] [stderr]     |
[INFO] [stderr] 243 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 243 -     if(program.memory.len() <= index) {
[INFO] [stderr] 243 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day21/main2_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day21::main2::{parse, run, parse_run, main};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day21/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day21::main1::{parse, run, parse_run, main};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashMap`
[INFO] [stderr]  --> src/day22/main1.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/day22/main2.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/day23/main2.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day23/main2.rs:304:7
[INFO] [stderr]     |
[INFO] [stderr] 304 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 304 -     if(program.memory.len() <= index) {
[INFO] [stderr] 304 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/day23/main1.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day23/main1.rs:290:7
[INFO] [stderr]     |
[INFO] [stderr] 290 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 290 -     if(program.memory.len() <= index) {
[INFO] [stderr] 290 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day23/main2_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day23::main2::{parse, run, parse_run, main};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day23/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day23::main1::{parse, run, parse_run, main};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashMap`
[INFO] [stderr]  --> src/day24/main1.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `VecDeque`
[INFO] [stderr]  --> src/day25/main1.rs:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashSet, HashMap, VecDeque};
[INFO] [stderr]   |                                 ^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/day25/main1.rs:139:51
[INFO] [stderr]     |
[INFO] [stderr] 139 | pub fn neighbours(output_str: &String) -> HashSet<(Direction)> {
[INFO] [stderr]     |                                                   ^         ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 139 - pub fn neighbours(output_str: &String) -> HashSet<(Direction)> {
[INFO] [stderr] 139 + pub fn neighbours(output_str: &String) -> HashSet<Direction > {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/day25/main1.rs:435:7
[INFO] [stderr]     |
[INFO] [stderr] 435 |     if(program.memory.len() <= index) {
[INFO] [stderr]     |       ^                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 435 -     if(program.memory.len() <= index) {
[INFO] [stderr] 435 +     if program.memory.len() <= index  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `parse` and `run`
[INFO] [stderr]  --> src/day25/main1_test.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use crate::day25::main1::{parse, run, parse_run, main};
[INFO] [stderr]   |                               ^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]   --> src/day13/main2.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | /     loop {
[INFO] [stderr] 27 | |         let input = match state.ball_pos.0.cmp(&state.paddle_pos.0) {
[INFO] [stderr] 28 | |             Ordering::Less => -1,
[INFO] [stderr] 29 | |             Ordering::Equal => 0,
[INFO] [stderr] ...  |
[INFO] [stderr] 35 | |         if halt { return state.score; };
[INFO] [stderr] 36 | |     }
[INFO] [stderr]    | |_____- any code following this expression is unreachable
[INFO] [stderr] ...
[INFO] [stderr] 39 |       return 0;
[INFO] [stderr]    |       ^^^^^^^^^ unreachable statement
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]   --> src/day23/main1.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 33 | /     loop {
[INFO] [stderr] 34 | |         for i in 0..50 {
[INFO] [stderr] 35 | |             //Get inputs
[INFO] [stderr] 36 | |             let inputs;
[INFO] [stderr] ...  |
[INFO] [stderr] 60 | |     }
[INFO] [stderr]    | |_____- any code following this expression is unreachable
[INFO] [stderr] ...
[INFO] [stderr] 64 |       return 0;
[INFO] [stderr]    |       ^^^^^^^^^ unreachable statement
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `substr`
[INFO] [stderr]   --> src/day3/main1.rs:25:13
[INFO] [stderr]    |
[INFO] [stderr] 25 |         let substr: String = stepstr[1..].to_string();
[INFO] [stderr]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_substr`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `substr`
[INFO] [stderr]   --> src/day3/main2.rs:28:13
[INFO] [stderr]    |
[INFO] [stderr] 28 |         let substr: String = stepstr[1..].to_string();
[INFO] [stderr]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_substr`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/day7/main2.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let mut memory = parse(program);
[INFO] [stderr]   |         ----^^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]  --> src/day8/main2.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     for i in 0..imgsize {
[INFO] [stderr]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day10/main2.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let mut base = Point { x: basex, y: basey };
[INFO] [stderr]    |         ----^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day10/main2.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 69 |     let mut start_point = Point {x: p1.x, y: p1.y + 100000};
[INFO] [stderr]    |         ----^^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day10/main2.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |     let mut curr_top = (1.0 as f64).atan2(0.0 as f64);
[INFO] [stderr]    |         ----^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start_point`
[INFO] [stderr]   --> src/day10/main2.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 69 |     let mut start_point = Point {x: p1.x, y: p1.y + 100000};
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_point`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day13/main2.rs:90:9
[INFO] [stderr]    |
[INFO] [stderr] 90 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/day13/main1.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut memory = &mut parse(program);
[INFO] [stderr]   |         ----^^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day15/main2.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     let mut state = ProgramState {memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stderr]    |         ----^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `result`
[INFO] [stderr]   --> src/day15/main2.rs:14:10
[INFO] [stderr]    |
[INFO] [stderr] 14 |     let (result, newstate) = explore(state);
[INFO] [stderr]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day15/main2.rs:195:9
[INFO] [stderr]     |
[INFO] [stderr] 195 |     let mut memory = parse(program);
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day15/main1.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let mut state = ProgramState {memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stderr]    |         ----^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day15/main1.rs:119:9
[INFO] [stderr]     |
[INFO] [stderr] 119 |     let mut memory = parse(program);
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day17/main2.rs:49:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |     let mut strings = routine.iter().map(|step| step.to_string()).collect::<Vec<String>>();
[INFO] [stderr]    |         ----^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day17/main2.rs:343:9
[INFO] [stderr]     |
[INFO] [stderr] 343 |     let mut memory = parse(program);
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day17/main1.rs:61:9
[INFO] [stderr]    |
[INFO] [stderr] 61 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output`
[INFO] [stderr]    --> src/day17/main2_test.rs:166:13
[INFO] [stderr]     |
[INFO] [stderr] 166 |         let output = find_map(&input.chars().collect());
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output`
[INFO] [stderr]    --> src/day17/main2_test.rs:188:13
[INFO] [stderr]     |
[INFO] [stderr] 188 |         let output = find_map(&input.chars().collect());
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/day19/main2.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut program = ProgramState{memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stderr]   |         ----^^^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day19/main2.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/day19/main1.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut program = ProgramState{memory: parse(program), pc: 0, relativebase: 0};
[INFO] [stderr]   |         ----^^^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day19/main1.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tile`
[INFO] [stderr]   --> src/day20/main2.rs:67:15
[INFO] [stderr]    |
[INFO] [stderr] 67 |     for (pos, tile) in &tiles {
[INFO] [stderr]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_tile`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day21/main2.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day21/main1.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day23/main2.rs:87:9
[INFO] [stderr]    |
[INFO] [stderr] 87 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]  --> src/day23/main1.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     for i in 0..50 {
[INFO] [stderr]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/day23/main1.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 73 |     let mut memory = parse(program);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]   --> src/day24/main2.rs:21:38
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let maxl = state.iter().map(|(p, v)| p.2).max().unwrap();
[INFO] [stderr]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]   --> src/day24/main2.rs:20:38
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let minl = state.iter().map(|(p, v)| p.2).min().unwrap();
[INFO] [stderr]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `halt`
[INFO] [stderr]   --> src/day25/main1.rs:15:15
[INFO] [stderr]    |
[INFO] [stderr] 15 |     let (inv, halt) = droid.input(INV);
[INFO] [stderr]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `halt`
[INFO] [stderr]   --> src/day25/main1.rs:71:22
[INFO] [stderr]    |
[INFO] [stderr] 71 |         let (output, halt) = droid.input(MOVE(SOUTH));
[INFO] [stderr]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day25/main1.rs:101:10
[INFO] [stderr]     |
[INFO] [stderr] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stderr]     |          ----^^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day25/main1.rs:101:22
[INFO] [stderr]     |
[INFO] [stderr] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stderr]     |                      ----^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day25/main1.rs:102:9
[INFO] [stderr]     |
[INFO] [stderr] 102 |     let mut output_str: String = output.iter().map( |i| *i as u8 as char).collect();
[INFO] [stderr]     |         ----^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `halt`
[INFO] [stderr]    --> src/day25/main1.rs:101:22
[INFO] [stderr]     |
[INFO] [stderr] 101 |     let (mut output, mut halt) = run(&mut droid.program, vec!());
[INFO] [stderr]     |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halt`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/day25/main1.rs:218:9
[INFO] [stderr]     |
[INFO] [stderr] 218 |     let mut memory = parse(program);
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function `points_intersect` is never used
[INFO] [stderr]   --> src/day10/main1.rs:69:8
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub fn points_intersect(p1: &Point, p2: &Point, test: &Point) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `manhatten_dist` is never used
[INFO] [stderr]   --> src/day10/main1.rs:83:8
[INFO] [stderr]    |
[INFO] [stderr] 83 | pub fn manhatten_dist(p1: &Point, p2: &Point) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `render_map` is never used
[INFO] [stderr]    --> src/day15/main2.rs:171:8
[INFO] [stderr]     |
[INFO] [stderr] 171 | pub fn render_map(have_been: &HashSet<(i64, i64)>, type_map: &HashMap<(i64, i64), i64>) {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `render_map` is never used
[INFO] [stderr]   --> src/day15/main1.rs:95:8
[INFO] [stderr]    |
[INFO] [stderr] 95 | pub fn render_map(have_been: &HashSet<(i64, i64)>, type_map: &HashMap<(i64, i64), i64>) {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Len` is never used
[INFO] [stderr]   --> src/day17/main2.rs:18:11
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub trait Len {
[INFO] [stderr]    |           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test` is never used
[INFO] [stderr]   --> src/day18/main1.rs:99:8
[INFO] [stderr]    |
[INFO] [stderr] 99 | pub fn test() {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test` is never used
[INFO] [stderr]    --> src/day18/main2.rs:116:8
[INFO] [stderr]     |
[INFO] [stderr] 116 | pub fn test() {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `neighbours` is never used
[INFO] [stderr]   --> src/day19/main1.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn neighbours(map: &HashMap<(i64, i64), char>, pos: (i64, i64)) -> HashSet<(i64, i64)> {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesIn` should have a snake case name
[INFO] [stderr]  --> src/day6/main1.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let mut edgesIn: HashMap<&str, &str> = HashMap::new();
[INFO] [stderr]   |             ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesOut` should have a snake case name
[INFO] [stderr]  --> src/day6/main1.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let mut edgesOut: HashMap<&str, HashSet<&str>> = HashMap::new();
[INFO] [stderr]   |             ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesOut` should have a snake case name
[INFO] [stderr]   --> src/day6/main1.rs:24:26
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub fn count(from: &str, edgesOut: &HashMap<&str, HashSet<&str>>) -> (i64, i64) {
[INFO] [stderr]    |                          ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesIn` should have a snake case name
[INFO] [stderr]  --> src/day6/main2.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let mut edgesIn: HashMap<&str, &str> = HashMap::new();
[INFO] [stderr]   |             ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesOut` should have a snake case name
[INFO] [stderr]  --> src/day6/main2.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let mut edgesOut: HashMap<&str, HashSet<&str>> = HashMap::new();
[INFO] [stderr]   |             ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `hasBeen` should have a snake case name
[INFO] [stderr]   --> src/day6/main2.rs:21:13
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let mut hasBeen: HashSet<&str> = HashSet::new();
[INFO] [stderr]    |             ^^^^^^^ help: convert the identifier to snake case: `has_been`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesIn` should have a snake case name
[INFO] [stderr]   --> src/day6/main2.rs:25:33
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stderr]    |                                 ^^^^^^^ help: convert the identifier to snake case: `edges_in`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `edgesOut` should have a snake case name
[INFO] [stderr]   --> src/day6/main2.rs:25:70
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub fn count<'a>(from: &'a str, edgesIn: &HashMap<&'a str, &'a str>, edgesOut: &HashMap<&'a str,
[INFO] [stderr]    |                                                                      ^^^^^^^^ help: convert the identifier to snake case: `edges_out`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `hasBeen` should have a snake case name
[INFO] [stderr]   --> src/day6/main2.rs:26:24
[INFO] [stderr]    |
[INFO] [stderr] 26 |     HashSet<&'a str>>, hasBeen: &mut HashSet<&'a str>) -> Option<i64> {
[INFO] [stderr]    |                        ^^^^^^^ help: convert the identifier to snake case: `has_been`
[INFO] [stderr] 
[INFO] [stderr] warning: function `findOreNeeded` should have a snake case name
[INFO] [stderr]  --> src/day14/main1.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn findOreNeeded(input: &str, fuel_count: i64) -> i64 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_ore_needed`
[INFO] [stderr] 
[INFO] [stderr] warning: function `getFuelFromOre` should have a snake case name
[INFO] [stderr]  --> src/day14/main2.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn getFuelFromOre(input: &str, ore_have: i64) -> i64 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_fuel_from_ore`
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `counter` should have an upper case name
[INFO] [stderr]   --> src/day17/main2.rs:54:12
[INFO] [stderr]    |
[INFO] [stderr] 54 | static mut counter: i64 = 0;
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 54 - static mut counter: i64 = 0;
[INFO] [stderr] 54 + static mut COUNTER: i64 = 0;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> src/day17/main2.rs:57:25
[INFO] [stderr]    |
[INFO] [stderr] 57 |         print!("[{}] ", counter);
[INFO] [stderr]    |                         ^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `getDistance` should have a snake case name
[INFO] [stderr]   --> src/day18/main1.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub fn getDistance(cache: &mut HashMap<((u64, u64), Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &HashMap<c...
[INFO] [stderr]    |        ^^^^^^^^^^^ help: convert the identifier to snake case: `get_distance`
[INFO] [stderr] 
[INFO] [stderr] warning: function `getDistance` should have a snake case name
[INFO] [stderr]   --> src/day18/main2.rs:33:8
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub fn getDistance(cache: &mut HashMap<(Vec<(u64, u64)>, Vec<char>), u64>, points: &HashMap<(u64, u64), Field>, key_locations: &Hash...
[INFO] [stderr]    |        ^^^^^^^^^^^ help: convert the identifier to snake case: `get_distance`
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc2019` (bin "aoc2019" test) generated 131 warnings (run `cargo fix --bin "aoc2019" -p aoc2019 --tests` to apply 107 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/aoc2019-929ac218193c9207)
[INFO] [stdout] running 477 tests
[INFO] [stdout] test day11::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day11::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day10::main2::test::test_day8_part2_2 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day10::main1::test::test_day8_part1_1 ... ok
[INFO] [stdout] test day11::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day10::main2::test::test_day8_part2_1 ... ok
[INFO] [stdout] test day10::main2::test::test_day8_part2_3 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day12::main1::test::test_day12_part2_1 ... ok
[INFO] [stdout] test day12::main1::test::test_day12_part2_2 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day13::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day13::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day11::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day12::main1::test::test_main_real ... ok
[INFO] [stdout] test day13::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day13::main2_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day13::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day10::main2::test::test_main_real ... ok
[INFO] [stdout] test day13::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day13::main2_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day13::main2_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day14::main1::test::test_day8_part1_0 ... ok
[INFO] [stdout] test day14::main1::test::test_day8_part1_3 ... ok
[INFO] [stdout] test day14::main1::test::test_day8_part1_2 ... ok
[INFO] [stdout] test day14::main1::test::test_day8_part1_1 ... ok
[INFO] [stdout] test day14::main1::test::test_day8_part1_4 ... ok
[INFO] [stdout] test day14::main1::test::test_main_real ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day13::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day14::main2::test::test_day8_part1_2 ... ok
[INFO] [stdout] test day14::main2::test::test_day8_part1_0 ... ok
[INFO] [stdout] test day14::main2::test::test_day8_part1_1 ... ok
[INFO] [stdout] test day15::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day15::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day15::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day14::main2::test::test_day8_part1_3 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day10::main1::test::test_day8_part1_3 ... ok
[INFO] [stdout] test day15::main2_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day15::main2_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day15::main2_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day11::main1_test::test::test_day11_part1_real ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day16::main1::test::test_day16_part1_0 ... ok
[INFO] [stdout] test day10::main1::test::test_day8_part1_2 ... ok
[INFO] [stdout] test day15::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day13::main1_test::test::test_day13_part1_real ... ok
[INFO] [stdout] test day10::main1::test::test_day8_part1_4 ... ok
[INFO] [stdout] test day16::main1::test::test_day16_part1_1 ... ok
[INFO] [stdout] test day16::main1::test::test_day16_part1_2 ... ok
[INFO] [stdout] test day15::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day14::main2::test::test_day8_part1_4 ... ok
[INFO] [stdout] test day17::main1_test::test::test_day17_part1_1 ... ok
[INFO] [stdout] test day16::main1::test::test_day16_part1_3 ... ok
[INFO] [stdout] test day17::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day17::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day17::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day17::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day14::main2::test::test_main_real ... ok
[INFO] [stdout] test day12::main2::test::test_day12_part2_1 ... ok
[INFO] [stdout] test day17::main2_test::test::test_day17_part2_1 ... ok
[INFO] [stdout] test day17::main2_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day17::main2_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day17::main2_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day17::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day18::main1::test::test_day18_part1_0 ... ok
[INFO] [stdout] test day18::main1::test::test_day18_part1_1 ... ok
[INFO] [stdout] test day15::main1_test::test::test_day15_part1_real ... ok
[INFO] [stdout] test day17::main1_test::test::test_day17_part1_real ... ok
[INFO] [stdout] test day18::main2::test::test_day18_part1_1 ... ok
[INFO] [stdout] test day18::main2::test::test_day18_part1_2 ... ok
[INFO] [stdout] test day18::main1::test::test_day18_part1_2 ... ok
[INFO] [stdout] test day18::main2::test::test_day18_part2_0 ... ok
[INFO] [stdout] test day18::main2::test::test_main_real ... ok
[INFO] [stdout] test day18::main1::test::test_day18_part1_4 ... ok
[INFO] [stdout] test day19::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day19::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day19::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day19::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day18::main2::test::test_day18_part1_3 ... ok
[INFO] [stdout] test day19::main2_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day19::main2_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day19::main2_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day15::main2_test::test::test_day15_part2_real ... ok
[INFO] [stdout] test day20::main1::test::test_day16_part1_0 ... ok
[INFO] [stdout] test day19::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day20::main1::test::test_day16_part1_1 ... ok
[INFO] [stdout] test day20::main2::test::test_day16_part1_0 ... ok
[INFO] [stdout] test day20::main1::test::test_main_real ... ok
[INFO] [stdout] test day20::main2::test::test_day16_part1_2 ... ok
[INFO] [stdout] test day16::main2::test::test_day16_part1_3 ... ok
[INFO] [stdout] test day21::main1_test::test::test_day21_part1_real ... ok
[INFO] [stdout] test day21::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day21::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day21::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day20::main2::test::test_day16_part1_1 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day21::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day21::main2_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day21::main2_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day21::main2_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day21::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day22::main1::test::test_day22_part1_0 ... ok
[INFO] [stdout] test day22::main1::test::test_day22_part1_1 ... ok
[INFO] [stdout] test day22::main1::test::test_day22_part1_2 ... ok
[INFO] [stdout] test day22::main1::test::test_day22_part1_3 ... ok
[INFO] [stdout] test day16::main2::test::test_day16_part1_2 ... ok
[INFO] [stdout] test day22::main2::test::test_day22_part2_0 ... ok
[INFO] [stdout] test day22::main2::test::test_day22_part2_1 ... ok
[INFO] [stdout] test day22::main2::test::test_day22_part2_2 ... ok
[INFO] [stdout] test day22::main2::test::test_day22_part2_3 ... ok
[INFO] [stdout] test day22::main2::test::test_day22_part2_methods ... ok
[INFO] [stdout] test day22::main2::test::test_day22_part2_real ... ok
[INFO] [stdout] test day17::main2_test::test::test_day17_part2_2 ... ok
[INFO] [stdout] test day23::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day23::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day23::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day23::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day23::main1_test::test::test_day23_part1_real ... ok
[INFO] [stdout] test day23::main2_test::test::test_day7_part2_1 ... ok
[INFO] [stdout] test day23::main2_test::test::test_day7_part2_2 ... ok
[INFO] [stdout] test day23::main2_test::test::test_day7_part2_3 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day23::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day24::main1::test::test_day24_part1_0 ... ok
[INFO] [stdout] test day24::main1::test::test_day24_part1_real ... ok
[INFO] [stdout] test day24::main2::test::test_day24_part2_0 ... ok
[INFO] [stdout] test day23::main2_test::test::test_day23_part2_real ... ok
[INFO] [stdout] test day16::main2::test::test_day16_part1_1 ... ok
[INFO] [stdout] test day25::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day25::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day25::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day25::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day2::main::test::test_main_real ... ok
[INFO] [stdout] test day3::main1::test::example1 ... ok
[INFO] [stdout] test day3::main1::test::example2 ... ok
[INFO] [stdout] test day13::main2_test::test::test_day13_part1_real ... ok
[INFO] [stdout] test day3::main2::test::example1 ... ok
[INFO] [stdout] test day3::main2::test::example2 ... ok
[INFO] [stdout] test day3::main2::test::simple ... ok
[INFO] [stdout] test day16::main1::test::test_main_real ... ok
[INFO] [stdout] test day4::main1_fast::test::real ... ok
[INFO] [stdout] test day19::main2_test::test::test_day19_part2_real ... ok
[INFO] [stdout] test day4::main1_short::test::test1 ... ok
[INFO] [stdout] test day4::main1_short::test::test2 ... ok
[INFO] [stdout] test day4::main1_short::test::test3 ... ok
[INFO] [stdout] test day4::main2_fast::test::real ... ok
[INFO] [stdout] test day19::main1_test::test::test_day19_part1_real ... ok
[INFO] [stdout] test day4::main2_short::test::test1 ... ok
[INFO] [stdout] test day4::main2_short::test::test2 ... ok
[INFO] [stdout] test day4::main2_short::test::test3 ... ok
[INFO] [stdout] test day5::main_test::test::real_part1 ... ok
[INFO] [stdout] test day5::main_test::test::real_part2 ... ok
[INFO] [stdout] test day5::main_test::test::test_day2_1 ... ok
[INFO] [stdout] test day5::main_test::test::test_day2_2 ... ok
[INFO] [stdout] test day5::main_test::test::test_part1_1 ... ok
[INFO] [stdout] test day5::main_test::test::test_part1_2 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_1 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_10 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_11 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_12 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_13 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_14 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_15 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_16 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_2 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_3 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_4 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_5 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_6 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_7 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_8 ... ok
[INFO] [stdout] test day5::main_test::test::test_part2_9 ... ok
[INFO] [stdout] test day6::main1::test::real_part1 ... ok
[INFO] [stdout] test day6::main1::test::test_part1_1 ... ok
[INFO] [stdout] test day6::main2::test::real_part2 ... ok
[INFO] [stdout] test day6::main2::test::test_part2_1 ... ok
[INFO] [stdout] test day7::main1_test::test::test_day2_1 ... ok
[INFO] [stdout] test day7::main1_test::test::test_day2_2 ... ok
[INFO] [stdout] test day7::main1_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day7::main1_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day22::main1::test::test_day22_part1_real ... ok
[INFO] [stdout] test day7::main1_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part1_1 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part1_2 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_1 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_10 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_11 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_12 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_13 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_14 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_15 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_16 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_2 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_3 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_4 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_5 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_6 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_7 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_8 ... ok
[INFO] [stdout] test day7::main1_test::test::test_part2_9 ... ok
[INFO] [stdout] test day7::main1_test::test::test_day7_part1_real ... ok
[INFO] [stdout] test day7::main2_test::test::test_day7_part2_1 ... ok
[INFO] [stdout] test day3::main1::test::test_main_real ... ok
[INFO] [stdout] test day21::main2_test::test::test_day21_part2_real ... FAILED
[INFO] [stdout] test day8::main1::test::test_main_real ... ok
[INFO] [stdout] test day8::main2::test::test_day8_part1_1 ... ok
[INFO] [stdout] test day8::main2::test::test_main_real ... ok
[INFO] [stdout] test day9::main2_test::test::test_day7_part1_1 ... ok
[INFO] [stdout] test day9::main2_test::test::test_day7_part1_2 ... ok
[INFO] [stdout] test day9::main2_test::test::test_day7_part1_3 ... ok
[INFO] [stdout] test day8::main1::test::test_day8_part1_1 ... ok
[INFO] [stdout] test day9::main2_test::test::test_day7_part1_real ... ok
[INFO] [stdout] test day9::main2_test::test::test_part1_1 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part1_2 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_1 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_10 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_11 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_12 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_13 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_14 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_15 ... ok
[INFO] [stdout] test day7::main2_test::test::test_day7_part2_real ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_2 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_3 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_4 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_16 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_5 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_7 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_6 ... ok
[INFO] [stdout] test day4::main1_short::test::real ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_8 ... ok
[INFO] [stdout] test day9::main2_test::test::test_part2_9 ... ok
[INFO] [stdout] test day4::main2_short::test::real ... ok
[INFO] [stdout] test day7::main2_test::test::test_day7_part2_2 ... ok
[INFO] [stdout] test day3::main2::test::test_main_real ... ok
[INFO] [stdout] test day9::main2_test::test::test_day7_part2_real ... ok
[INFO] [stdout] test day17::main2_test::test::test_day17_part2_real ... ok
[INFO] [stdout] test day12::main2::test::test_main_real ... ok
[INFO] [stdout] test day10::main1::test::test_day8_part1_5 ... ok
[INFO] [stdout] test day20::main2::test::test_main_real ... ok
[INFO] [stdout] test day24::main2::test::test_day24_part2_real ... ok
[INFO] [stdout] test day10::main1::test::test_main_real ... ok
[INFO] [stdout] test day16::main2::test::test_main_real ... ok
[INFO] [stdout] test day18::main1::test::test_day18_part1_3 ... ok
[INFO] [stdout] test day25::main1_test::test::test_day25_part1_real has been running for over 60 seconds
[INFO] [stderr] error: test failed, to rerun pass `--bin aoc2019`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/aoc2019-929ac218193c9207` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "1e47affefeafb2d7909735317105a853b7b96ebdb249b0f993ebcfdb0fd961b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e47affefeafb2d7909735317105a853b7b96ebdb249b0f993ebcfdb0fd961b7", kill_on_drop: false }`
[INFO] [stdout] 1e47affefeafb2d7909735317105a853b7b96ebdb249b0f993ebcfdb0fd961b7
