[INFO] cloning repository https://github.com/michcode2/advent-of-code-2024
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/michcode2/advent-of-code-2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 94dcf742dde4c528d7bfc8193a2cb591d620b207
[INFO] testing michcode2/advent-of-code-2024 against beta-2024-12-08 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichcode2%2Fadvent-of-code-2024" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/michcode2/advent-of-code-2024 on toolchain beta-2024-12-08
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/michcode2/advent-of-code-2024
[INFO] finished tweaking git repo https://github.com/michcode2/advent-of-code-2024
[INFO] tweaked toml for git repo https://github.com/michcode2/advent-of-code-2024 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/michcode2/advent-of-code-2024 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 548adef7165cad77fbaea6e8904795238311c540668e7fa1645e18aa6f1c68fe
[INFO] running `Command { std: "docker" "start" "-a" "548adef7165cad77fbaea6e8904795238311c540668e7fa1645e18aa6f1c68fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "548adef7165cad77fbaea6e8904795238311c540668e7fa1645e18aa6f1c68fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "548adef7165cad77fbaea6e8904795238311c540668e7fa1645e18aa6f1c68fe", kill_on_drop: false }`
[INFO] [stdout] 548adef7165cad77fbaea6e8904795238311c540668e7fa1645e18aa6f1c68fe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 54e721a2267db77cfbd58de1d89cd96eb2192be7eb4fd21dc4df48828816b912
[INFO] running `Command { std: "docker" "start" "-a" "54e721a2267db77cfbd58de1d89cd96eb2192be7eb4fd21dc4df48828816b912", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.167
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling threadpool v1.8.1
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling aoc2024 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `os::unix::fs::PermissionsExt`
[INFO] [stdout]  --> src/thing9b.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, fs, os::unix::fs::PermissionsExt};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::Display`
[INFO] [stdout]  --> src/thing11b.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fs, path::Display};
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude`
[INFO] [stdout]  --> src/thing7a.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_attempt` is never read
[INFO] [stdout]   --> src/thing7a.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut current_attempt: Vec<bool> = vec![];
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `this_file` is never read
[INFO] [stdout]   --> src/thing9b.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut this_file = FileSpace{
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/thing9b.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         for i in 0..space.size {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/thing11b.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     for i in 0..25 {
[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/thing11b.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut input: Vec<_> = fs::read_to_string("inputs/test").unwrap().split(" ").map(|n| n.parse::<usize>().unwrap()).collect();
[INFO] [stdout]   |         ----^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `toobig`
[INFO] [stdout]   --> src/thing11b.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec<usize>) {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_toobig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/thing12a.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec<Vec<String>>, x: usize, y: usize) {
[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/thing12a.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut adjacent = [(1, 0), (-1, 0), (0, 1), (0, -1)];
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/thing12a.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     for i in 0..2 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mesh`
[INFO] [stdout]   --> src/thing12a.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut mesh = Mesh {
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_mesh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_field`
[INFO] [stdout]   --> src/thing12a.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec<Vec<String>>, crop_patch: &Vec<(usize, usize)>){
[INFO] [stdout]    |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/thing12a.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut mesh = Mesh {
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/thing13a.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     for i in 0..As.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing8a.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Antenna` is never constructed
[INFO] [stdout]   --> src/thing8a.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct Antenna{
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pretty_print` is never used
[INFO] [stdout]   --> src/thing9a.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn pretty_print<T: Display>(input: &Vec<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing10a.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_trailheads` is never used
[INFO] [stdout]   --> src/thing10a.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn find_trailheads(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_from_queue` is never used
[INFO] [stdout]   --> src/thing10a.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn next_from_queue(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchState` is never constructed
[INFO] [stdout]   --> src/thing10a.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | struct SearchState {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sum` is never used
[INFO] [stdout]   --> src/thing10a.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl SearchState {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 74 |     pub fn sum(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QueueEntry` is never constructed
[INFO] [stdout]   --> src/thing10a.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | struct QueueEntry {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing10b.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_trailheads` is never used
[INFO] [stdout]   --> src/thing10b.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn find_trailheads(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_from_queue` is never used
[INFO] [stdout]   --> src/thing10b.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn next_from_queue(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchState` is never constructed
[INFO] [stdout]   --> src/thing10b.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | struct SearchState {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sum` is never used
[INFO] [stdout]   --> src/thing10b.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl SearchState {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 74 |     pub fn sum(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QueueEntry` is never constructed
[INFO] [stdout]   --> src/thing10b.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | struct QueueEntry {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing11b.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_cache_value` is never used
[INFO] [stdout]   --> src/thing11b.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec<usize>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_stone` is never used
[INFO] [stdout]   --> src/thing11b.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn parse_stone(value: usize) -> Vec<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing12a.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_from_here` is never used
[INFO] [stdout]  --> src/thing12a.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec<Vec<String>>, x: usize, y: usize) {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perimeter_of_field` is never used
[INFO] [stdout]   --> src/thing12a.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec<Vec<String>>, crop_patch: &Vec<(usize, usize)>){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mesh` is never constructed
[INFO] [stdout]   --> src/thing12a.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct Mesh {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]  --> src/thing13a.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut As = vec!();
[INFO] [stdout]   |             ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut r#as = vec!();
[INFO] [stdout]   |             ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Bs` should have a snake case name
[INFO] [stdout]  --> src/thing13a.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut Bs = vec!();
[INFO] [stdout]   |             ^^ help: convert the identifier to snake case: `bs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ps` should have a snake case name
[INFO] [stdout]  --> src/thing13a.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let mut Ps = vec!();
[INFO] [stdout]   |             ^^ help: convert the identifier to snake case: `ps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stdout]    |                               ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:43:49
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stdout]    |                                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/thing13a.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if target.x < 0 || target.y < 0 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/thing13a.rs:58:28
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if target.x < 0 || target.y < 0 {
[INFO] [stdout]    |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.08s
[INFO] running `Command { std: "docker" "inspect" "54e721a2267db77cfbd58de1d89cd96eb2192be7eb4fd21dc4df48828816b912", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "54e721a2267db77cfbd58de1d89cd96eb2192be7eb4fd21dc4df48828816b912", kill_on_drop: false }`
[INFO] [stdout] 54e721a2267db77cfbd58de1d89cd96eb2192be7eb4fd21dc4df48828816b912
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7d04436169949a547fc12a49e902d2a9fa2bcd8bc9422069f2f50aaff123fa7e
[INFO] running `Command { std: "docker" "start" "-a" "7d04436169949a547fc12a49e902d2a9fa2bcd8bc9422069f2f50aaff123fa7e", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc2024 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `os::unix::fs::PermissionsExt`
[INFO] [stdout]  --> src/thing9b.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, fs, os::unix::fs::PermissionsExt};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::Display`
[INFO] [stdout]  --> src/thing11b.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fs, path::Display};
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude`
[INFO] [stdout]  --> src/thing7a.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `total` is assigned to, but never used
[INFO] [stdout]   --> src/thing3a.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let mut total = 0;
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_total` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_attempt` is never read
[INFO] [stdout]   --> src/thing7a.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut current_attempt: Vec<bool> = vec![];
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `this_file` is never read
[INFO] [stdout]   --> src/thing9b.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut this_file = FileSpace{
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/thing9b.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         for i in 0..space.size {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/thing11b.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     for i in 0..25 {
[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/thing11b.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut input: Vec<_> = fs::read_to_string("inputs/test").unwrap().split(" ").map(|n| n.parse::<usize>().unwrap()).collect();
[INFO] [stdout]   |         ----^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `toobig`
[INFO] [stdout]   --> src/thing11b.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec<usize>) {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_toobig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/thing11b.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let input = vec![0, 1, 10, 99, 999];
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]   --> src/thing11b.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let output = vec![1, 2024, 1, 0, 9, 9, 2021976];
[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/thing11b.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let mut input = vec![125, 17];
[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/thing12a.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec<Vec<String>>, x: usize, y: usize) {
[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/thing12a.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut adjacent = [(1, 0), (-1, 0), (0, 1), (0, -1)];
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/thing12a.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     for i in 0..2 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mesh`
[INFO] [stdout]   --> src/thing12a.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut mesh = Mesh {
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_mesh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_field`
[INFO] [stdout]   --> src/thing12a.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec<Vec<String>>, crop_patch: &Vec<(usize, usize)>){
[INFO] [stdout]    |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/thing12a.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut mesh = Mesh {
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/thing13a.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     for i in 0..As.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing8a.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Antenna` is never constructed
[INFO] [stdout]   --> src/thing8a.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct Antenna{
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pretty_print` is never used
[INFO] [stdout]   --> src/thing9a.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn pretty_print<T: Display>(input: &Vec<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing10a.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_trailheads` is never used
[INFO] [stdout]   --> src/thing10a.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn find_trailheads(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_from_queue` is never used
[INFO] [stdout]   --> src/thing10a.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn next_from_queue(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchState` is never constructed
[INFO] [stdout]   --> src/thing10a.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | struct SearchState {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sum` is never used
[INFO] [stdout]   --> src/thing10a.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl SearchState {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 74 |     pub fn sum(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QueueEntry` is never constructed
[INFO] [stdout]   --> src/thing10a.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | struct QueueEntry {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing10b.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_trailheads` is never used
[INFO] [stdout]   --> src/thing10b.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn find_trailheads(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_from_queue` is never used
[INFO] [stdout]   --> src/thing10b.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn next_from_queue(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchState` is never constructed
[INFO] [stdout]   --> src/thing10b.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | struct SearchState {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sum` is never used
[INFO] [stdout]   --> src/thing10b.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl SearchState {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 74 |     pub fn sum(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QueueEntry` is never constructed
[INFO] [stdout]   --> src/thing10b.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | struct QueueEntry {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing11b.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_cache_value` is never used
[INFO] [stdout]   --> src/thing11b.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn write_cache_value(toobig: &Vec<usize>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/thing12a.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn main() {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_from_here` is never used
[INFO] [stdout]  --> src/thing12a.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn start_from_here(mut grid: &mut Vec<Vec<String>>, x: usize, y: usize) {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perimeter_of_field` is never used
[INFO] [stdout]   --> src/thing12a.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn perimeter_of_field(full_field: &Vec<Vec<String>>, crop_patch: &Vec<(usize, usize)>){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mesh` is never constructed
[INFO] [stdout]   --> src/thing12a.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct Mesh {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]  --> src/thing13a.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut As = vec!();
[INFO] [stdout]   |             ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut r#as = vec!();
[INFO] [stdout]   |             ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Bs` should have a snake case name
[INFO] [stdout]  --> src/thing13a.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut Bs = vec!();
[INFO] [stdout]   |             ^^ help: convert the identifier to snake case: `bs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ps` should have a snake case name
[INFO] [stdout]  --> src/thing13a.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let mut Ps = vec!();
[INFO] [stdout]   |             ^^ help: convert the identifier to snake case: `ps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stdout]    |                               ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:43:49
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stdout]    |                                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/thing13a.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if target.x < 0 || target.y < 0 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/thing13a.rs:58:28
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if target.x < 0 || target.y < 0 {
[INFO] [stdout]    |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let A = ControlInput::new(94, 34);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:76:13
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let B = ControlInput::new(22, 67);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:77:13
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let P = Position::new(8400, 5400);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let A = ControlInput::new(26, 66);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let B = ControlInput::new(67, 21);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let P = Position::new(12748, 12176);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let A = ControlInput::new(17, 86);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let B = ControlInput::new(84, 37);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/thing13a.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let P = Position::new(7870, 6450);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.10s
[INFO] running `Command { std: "docker" "inspect" "7d04436169949a547fc12a49e902d2a9fa2bcd8bc9422069f2f50aaff123fa7e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7d04436169949a547fc12a49e902d2a9fa2bcd8bc9422069f2f50aaff123fa7e", kill_on_drop: false }`
[INFO] [stdout] 7d04436169949a547fc12a49e902d2a9fa2bcd8bc9422069f2f50aaff123fa7e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d5406868fec9c332a0d9ee4c77eb126a0daa53d8e1d66a946b0bfac804f01111
[INFO] running `Command { std: "docker" "start" "-a" "d5406868fec9c332a0d9ee4c77eb126a0daa53d8e1d66a946b0bfac804f01111", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `os::unix::fs::PermissionsExt`
[INFO] [stderr]  --> src/thing9b.rs:1:27
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{fmt::Debug, fs, os::unix::fs::PermissionsExt};
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `path::Display`
[INFO] [stderr]  --> src/thing11b.rs:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{fs, path::Display};
[INFO] [stderr]   |               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rand::prelude`
[INFO] [stderr]  --> src/thing7a.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use rand::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `total` is assigned to, but never used
[INFO] [stderr]   --> src/thing3a.rs:84:17
[INFO] [stderr]    |
[INFO] [stderr] 84 |         let mut total = 0;
[INFO] [stderr]    |                 ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: consider using `_total` instead
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `current_attempt` is never read
[INFO] [stderr]   --> src/thing7a.rs:33:13
[INFO] [stderr]    |
[INFO] [stderr] 33 |     let mut current_attempt: Vec<bool> = vec![];
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `this_file` is never read
[INFO] [stderr]   --> src/thing9b.rs:45:17
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let mut this_file = FileSpace{
[INFO] [stderr]    |                 ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/thing9b.rs:131:13
[INFO] [stderr]     |
[INFO] [stderr] 131 |         for i in 0..space.size {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]  --> src/thing11b.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |     for i in 0..25 {
[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/thing11b.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let mut input: Vec<_> = fs::read_to_string("inputs/test").unwrap().split(" ").map(|n| n.parse::<usize>().unwrap()).collect();
[INFO] [stderr]   |         ----^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `toobig`
[INFO] [stderr]   --> src/thing11b.rs:17:22
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn write_cache_value(toobig: &Vec<usize>) {
[INFO] [stderr]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_toobig`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `input`
[INFO] [stderr]   --> src/thing11b.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |         let input = vec![0, 1, 10, 99, 999];
[INFO] [stderr]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output`
[INFO] [stderr]   --> src/thing11b.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |         let output = vec![1, 2024, 1, 0, 9, 9, 2021976];
[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/thing11b.rs:53:13
[INFO] [stderr]    |
[INFO] [stderr] 53 |         let mut input = vec![125, 17];
[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/thing12a.rs:8:20
[INFO] [stderr]   |
[INFO] [stderr] 8 | fn start_from_here(mut grid: &mut Vec<Vec<String>>, x: usize, y: usize) {
[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/thing12a.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let mut adjacent = [(1, 0), (-1, 0), (0, 1), (0, -1)];
[INFO] [stderr]    |         ----^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/thing12a.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |     for i in 0..2 {
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mesh`
[INFO] [stderr]   --> src/thing12a.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 57 |     let mut mesh = Mesh {
[INFO] [stderr]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_mesh`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `full_field`
[INFO] [stderr]   --> src/thing12a.rs:44:23
[INFO] [stderr]    |
[INFO] [stderr] 44 | fn perimeter_of_field(full_field: &Vec<Vec<String>>, crop_patch: &Vec<(usize, usize)>){
[INFO] [stderr]    |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_field`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/thing12a.rs:57:9
[INFO] [stderr]    |
[INFO] [stderr] 57 |     let mut mesh = Mesh {
[INFO] [stderr]    |         ----^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/thing13a.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |     for i in 0..As.len() {
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]  --> src/thing8a.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn main() {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Antenna` is never constructed
[INFO] [stderr]   --> src/thing8a.rs:60:8
[INFO] [stderr]    |
[INFO] [stderr] 60 | struct Antenna{
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pretty_print` is never used
[INFO] [stderr]   --> src/thing9a.rs:59:4
[INFO] [stderr]    |
[INFO] [stderr] 59 | fn pretty_print<T: Display>(input: &Vec<T>) {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]  --> src/thing10a.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn main() {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_trailheads` is never used
[INFO] [stderr]   --> src/thing10a.rs:19:4
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn find_trailheads(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `next_from_queue` is never used
[INFO] [stderr]   --> src/thing10a.rs:35:4
[INFO] [stderr]    |
[INFO] [stderr] 35 | fn next_from_queue(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SearchState` is never constructed
[INFO] [stderr]   --> src/thing10a.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 | struct SearchState {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `sum` is never used
[INFO] [stderr]   --> src/thing10a.rs:74:12
[INFO] [stderr]    |
[INFO] [stderr] 73 | impl SearchState {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] 74 |     pub fn sum(&self) -> usize {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `QueueEntry` is never constructed
[INFO] [stderr]   --> src/thing10a.rs:80:8
[INFO] [stderr]    |
[INFO] [stderr] 80 | struct QueueEntry {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]  --> src/thing10b.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn main() {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_trailheads` is never used
[INFO] [stderr]   --> src/thing10b.rs:19:4
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn find_trailheads(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `next_from_queue` is never used
[INFO] [stderr]   --> src/thing10b.rs:35:4
[INFO] [stderr]    |
[INFO] [stderr] 35 | fn next_from_queue(grid: &Vec<Vec<usize>>, search: &mut SearchState) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SearchState` is never constructed
[INFO] [stderr]   --> src/thing10b.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 | struct SearchState {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `sum` is never used
[INFO] [stderr]   --> src/thing10b.rs:74:12
[INFO] [stderr]    |
[INFO] [stderr] 73 | impl SearchState {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] 74 |     pub fn sum(&self) -> usize {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `QueueEntry` is never constructed
[INFO] [stderr]   --> src/thing10b.rs:80:8
[INFO] [stderr]    |
[INFO] [stderr] 80 | struct QueueEntry {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]  --> src/thing11b.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn main(){
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `write_cache_value` is never used
[INFO] [stderr]   --> src/thing11b.rs:17:4
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn write_cache_value(toobig: &Vec<usize>) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]  --> src/thing12a.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn main() {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `start_from_here` is never used
[INFO] [stderr]  --> src/thing12a.rs:8:4
[INFO] [stderr]   |
[INFO] [stderr] 8 | fn start_from_here(mut grid: &mut Vec<Vec<String>>, x: usize, y: usize) {
[INFO] [stderr]   |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `perimeter_of_field` is never used
[INFO] [stderr]   --> src/thing12a.rs:44:4
[INFO] [stderr]    |
[INFO] [stderr] 44 | fn perimeter_of_field(full_field: &Vec<Vec<String>>, crop_patch: &Vec<(usize, usize)>){
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Mesh` is never constructed
[INFO] [stderr]   --> src/thing12a.rs:65:8
[INFO] [stderr]    |
[INFO] [stderr] 65 | struct Mesh {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `As` should have a snake case name
[INFO] [stderr]  --> src/thing13a.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let mut As = vec!();
[INFO] [stderr]   |             ^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let mut r#as = vec!();
[INFO] [stderr]   |             ~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Bs` should have a snake case name
[INFO] [stderr]  --> src/thing13a.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut Bs = vec!();
[INFO] [stderr]   |             ^^ help: convert the identifier to snake case: `bs`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Ps` should have a snake case name
[INFO] [stderr]  --> src/thing13a.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let mut Ps = vec!();
[INFO] [stderr]   |             ^^ help: convert the identifier to snake case: `ps`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:43:13
[INFO] [stderr]    |
[INFO] [stderr] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:43:31
[INFO] [stderr]    |
[INFO] [stderr] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stderr]    |                               ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `P` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:43:49
[INFO] [stderr]    |
[INFO] [stderr] 43 | fn optimise(A: &ControlInput, B: &ControlInput, P: &Position) -> Option<usize> {
[INFO] [stderr]    |                                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]   --> src/thing13a.rs:58:12
[INFO] [stderr]    |
[INFO] [stderr] 58 |         if target.x < 0 || target.y < 0 {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]   --> src/thing13a.rs:58:28
[INFO] [stderr]    |
[INFO] [stderr] 58 |         if target.x < 0 || target.y < 0 {
[INFO] [stderr]    |                            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:75:13
[INFO] [stderr]    |
[INFO] [stderr] 75 |         let A = ControlInput::new(94, 34);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:76:13
[INFO] [stderr]    |
[INFO] [stderr] 76 |         let B = ControlInput::new(22, 67);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `P` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:77:13
[INFO] [stderr]    |
[INFO] [stderr] 77 |         let P = Position::new(8400, 5400);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `p`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:83:13
[INFO] [stderr]    |
[INFO] [stderr] 83 |         let A = ControlInput::new(26, 66);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:84:13
[INFO] [stderr]    |
[INFO] [stderr] 84 |         let B = ControlInput::new(67, 21);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `P` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:85:13
[INFO] [stderr]    |
[INFO] [stderr] 85 |         let P = Position::new(12748, 12176);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `p`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:91:13
[INFO] [stderr]    |
[INFO] [stderr] 91 |         let A = ControlInput::new(17, 86);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:92:13
[INFO] [stderr]    |
[INFO] [stderr] 92 |         let B = ControlInput::new(84, 37);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `P` should have a snake case name
[INFO] [stderr]   --> src/thing13a.rs:93:13
[INFO] [stderr]    |
[INFO] [stderr] 93 |         let P = Position::new(7870, 6450);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `p`
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc2024` (bin "aoc2024" test) generated 58 warnings (run `cargo fix --bin "aoc2024" --tests` to apply 7 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/aoc2024-80c29ea29d07cf2b)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test thing11a::test::repeated_blink ... ok
[INFO] [stdout] test thing11a::test::parse_stone_works ... ok
[INFO] [stdout] test thing11a::test::blink_works ... ok
[INFO] [stdout] test thing11b::test::parse_stone_works ... ok
[INFO] [stdout] test thing13a::test::test_case_1 ... ok
[INFO] [stdout] test thing13a::test::test_case_2 ... ok
[INFO] [stdout] test thing11b::test::blink_works ... ok
[INFO] [stdout] test thing2b::tests::line_1 ... ok
[INFO] [stdout] test thing13a::test::test_case_3 ... ok
[INFO] [stdout] test thing2b::tests::line_3 ... ok
[INFO] [stdout] test thing2b::tests::line_5 ... ok
[INFO] [stdout] test thing3a::tests::more_complex_test ... ok
[INFO] [stdout] test thing3a::tests::handle_individual_inputs ... ok
[INFO] [stdout] test thing2b::tests::line_2 ... ok
[INFO] [stdout] test thing2b::tests::line_4 ... ok
[INFO] [stdout] test thing9a::tests::compressed_to_bigstring ... ok
[INFO] [stdout] test thing2b::tests::line_6 ... ok
[INFO] [stdout] test thing11b::test::repeated_blink ... FAILED
[INFO] [stdout] test thing9a::tests::whole_thing ... FAILED
[INFO] [stdout] test thing9a::tests::bigstring_to_number ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- thing11b::test::repeated_blink stdout ----
[INFO] [stdout] thread 'thing11b::test::repeated_blink' panicked at src/thing11b.rs:58:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: [125, 17]
[INFO] [stdout]  right: [2097446912, 14168, 4048, 2, 0, 2, 4, 40, 48, 2024, 40, 48, 80, 96, 2, 8, 6, 7, 6, 0, 3, 2]
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64bbccd7fb1a - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x64bbccd7fb1a - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x64bbccd7fb1a - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x64bbccd7fb1a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x64bbccda5653 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x64bbccda5653 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x64bbccd7ccb3 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x64bbccd7f962 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x64bbccd80f9d - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x64bbccd80da7 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x64bbccd46fd7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x64bbccd46fd7 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x64bbccd81648 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x64bbccd81648 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x64bbccd8140a - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x64bbccd7fff9 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x64bbccd8109c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x64bbcccfaab0 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x64bbcccfae7b - core::panicking::assert_failed_inner::hf2c17e6d30928787
[INFO] [stdout]   19:     0x64bbccd0c458 - core::panicking::assert_failed::h006e1edd81e87e9b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:373:5
[INFO] [stdout]   20:     0x64bbccd09ff9 - aoc2024::thing11b::test::repeated_blink::h14895ab5259ff53e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing11b.rs:58:9
[INFO] [stdout]   21:     0x64bbccd09de7 - aoc2024::thing11b::test::repeated_blink::{{closure}}::h61a08319454c85a7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing11b.rs:52:24
[INFO] [stdout]   22:     0x64bbccd0aac6 - core::ops::function::FnOnce::call_once::he0083573fd6a3b10
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64bbccd4bafb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64bbccd4bafb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   25:     0x64bbccd4b4e8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   26:     0x64bbccd4b4e8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x64bbccd4b4e8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   28:     0x64bbccd4b4e8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   29:     0x64bbccd4b4e8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   30:     0x64bbccd4b4e8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   31:     0x64bbccd4b4e8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   32:     0x64bbccd0ef8a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   33:     0x64bbccd0ef8a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   34:     0x64bbccd12904 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   35:     0x64bbccd12904 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x64bbccd12904 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   37:     0x64bbccd12904 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   38:     0x64bbccd12904 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   39:     0x64bbccd12904 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   40:     0x64bbccd12904 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x64bbccd8558b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   42:     0x64bbccd8558b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   43:     0x64bbccd8558b - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   44:     0x735b947b5ac3 - <unknown>
[INFO] [stdout]   45:     0x735b94846a04 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- thing9a::tests::whole_thing stdout ----
[INFO] [stdout] thread 'thing9a::tests::whole_thing' panicked at src/thing9a.rs:15:59:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64bbccd7fb1a - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x64bbccd7fb1a - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x64bbccd7fb1a - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x64bbccd7fb1a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x64bbccda5653 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x64bbccda5653 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x64bbccd7ccb3 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x64bbccd7f962 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x64bbccd80f9d - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x64bbccd80da7 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x64bbccd46fd7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x64bbccd46fd7 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x64bbccd81648 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x64bbccd81648 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x64bbccd8140a - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x64bbccd7fff9 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x64bbccd8109c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x64bbcccfaab0 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x64bbcccfaef6 - core::result::unwrap_failed::h05e0602ed34287c5
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/result.rs:1699:5
[INFO] [stdout]   19:     0x64bbccd014e2 - core::result::Result<T,E>::unwrap::ha5c4d283f81c5015
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/result.rs:1104:23
[INFO] [stdout]   20:     0x64bbccd014e2 - aoc2024::thing9a::get_block_ids::h67a33f16272958e6
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing9a.rs:15:26
[INFO] [stdout]   21:     0x64bbccd03e63 - aoc2024::thing9a::tests::whole_thing::h3a29ed5defa9cc1a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing9a.rs:83:19
[INFO] [stdout]   22:     0x64bbccd03d67 - aoc2024::thing9a::tests::whole_thing::{{closure}}::h3e9d8d9a455f60ba
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing9a.rs:81:21
[INFO] [stdout]   23:     0x64bbccd0aa06 - core::ops::function::FnOnce::call_once::ha60a1ddd537a8c64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64bbccd4bafb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x64bbccd4bafb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   26:     0x64bbccd4b4e8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   27:     0x64bbccd4b4e8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x64bbccd4b4e8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   29:     0x64bbccd4b4e8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   30:     0x64bbccd4b4e8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   31:     0x64bbccd4b4e8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   32:     0x64bbccd4b4e8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   33:     0x64bbccd0ef8a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   34:     0x64bbccd0ef8a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   35:     0x64bbccd12904 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   36:     0x64bbccd12904 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x64bbccd12904 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   38:     0x64bbccd12904 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   39:     0x64bbccd12904 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   40:     0x64bbccd12904 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   41:     0x64bbccd12904 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x64bbccd8558b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   43:     0x64bbccd8558b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   44:     0x64bbccd8558b - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   45:     0x735b947b5ac3 - <unknown>
[INFO] [stdout]   46:     0x735b94846a04 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- thing9a::tests::bigstring_to_number stdout ----
[INFO] [stdout] fuckass weird edge case
[INFO] [stdout] thread 'thing9a::tests::bigstring_to_number' panicked at src/thing9a.rs:78:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 1610
[INFO] [stdout]  right: 1485
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64bbccd7fb1a - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x64bbccd7fb1a - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x64bbccd7fb1a - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x64bbccd7fb1a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x64bbccda5653 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x64bbccda5653 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x64bbccd7ccb3 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x64bbccd7f962 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x64bbccd80f9d - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x64bbccd80da7 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x64bbccd46fd7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x64bbccd46fd7 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x64bbccd81648 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x64bbccd81648 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x64bbccd8140a - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x64bbccd7fff9 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x64bbccd8109c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x64bbcccfaab0 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x64bbcccfae7b - core::panicking::assert_failed_inner::hf2c17e6d30928787
[INFO] [stdout]   19:     0x64bbccd51cc2 - core::panicking::assert_failed::h6b6c02d6bf46fda2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:373:5
[INFO] [stdout]   20:     0x64bbccd03d10 - aoc2024::thing9a::tests::bigstring_to_number::h5e44c50b96ff322a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing9a.rs:78:9
[INFO] [stdout]   21:     0x64bbccd03c67 - aoc2024::thing9a::tests::bigstring_to_number::{{closure}}::h22144b3f44ffcac8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/thing9a.rs:76:29
[INFO] [stdout]   22:     0x64bbccd0abc6 - core::ops::function::FnOnce::call_once::hf4d1f93318e47300
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64bbccd4bafb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64bbccd4bafb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   25:     0x64bbccd4b4e8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   26:     0x64bbccd4b4e8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x64bbccd4b4e8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   28:     0x64bbccd4b4e8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   29:     0x64bbccd4b4e8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   30:     0x64bbccd4b4e8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   31:     0x64bbccd4b4e8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   32:     0x64bbccd0ef8a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   33:     0x64bbccd0ef8a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   34:     0x64bbccd12904 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   35:     0x64bbccd12904 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x64bbccd12904 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   37:     0x64bbccd12904 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   38:     0x64bbccd12904 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   39:     0x64bbccd12904 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   40:     0x64bbccd12904 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x64bbccd8558b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   42:     0x64bbccd8558b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   43:     0x64bbccd8558b - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   44:     0x735b947b5ac3 - <unknown>
[INFO] [stdout]   45:     0x735b94846a04 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     thing11b::test::repeated_blink
[INFO] [stdout]     thing9a::tests::bigstring_to_number
[INFO] [stdout]     thing9a::tests::whole_thing
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 17 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin aoc2024`
[INFO] running `Command { std: "docker" "inspect" "d5406868fec9c332a0d9ee4c77eb126a0daa53d8e1d66a946b0bfac804f01111", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d5406868fec9c332a0d9ee4c77eb126a0daa53d8e1d66a946b0bfac804f01111", kill_on_drop: false }`
[INFO] [stdout] d5406868fec9c332a0d9ee4c77eb126a0daa53d8e1d66a946b0bfac804f01111
