[INFO] cloning repository https://github.com/benchatt/aoc2025
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/benchatt/aoc2025" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenchatt%2Faoc2025", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenchatt%2Faoc2025'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f0974ec05890f8f90f63c81342d141f75eff9c86
[INFO] testing benchatt/aoc2025 against 1.94.0 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenchatt%2Faoc2025" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/benchatt/aoc2025
[INFO] finished tweaking git repo https://github.com/benchatt/aoc2025
[INFO] tweaked toml for git repo https://github.com/benchatt/aoc2025 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/benchatt/aoc2025 on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/benchatt/aoc2025 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded radium v0.3.0
[INFO] [stderr]   Downloaded grid v1.0.0
[INFO] [stderr]   Downloaded bitvec v0.17.4
[INFO] [stderr]   Downloaded rust-3d v0.34.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7df6acce7b60e0a19f72f297674a4639ed36db5a06154b285f55ee75b1b4812d
[INFO] running `Command { std: "docker" "start" "-a" "7df6acce7b60e0a19f72f297674a4639ed36db5a06154b285f55ee75b1b4812d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7df6acce7b60e0a19f72f297674a4639ed36db5a06154b285f55ee75b1b4812d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7df6acce7b60e0a19f72f297674a4639ed36db5a06154b285f55ee75b1b4812d", kill_on_drop: false }`
[INFO] [stdout] 7df6acce7b60e0a19f72f297674a4639ed36db5a06154b285f55ee75b1b4812d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 632fea665338e96f49020fdf7cce65550b4c5755df484a6bd1162dc7ce375f8d
[INFO] running `Command { std: "docker" "start" "-a" "632fea665338e96f49020fdf7cce65550b4c5755df484a6bd1162dc7ce375f8d", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling radium v0.3.0
[INFO] [stderr]    Compiling grid v1.0.0
[INFO] [stderr]    Compiling bitvec v0.17.4
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling num v0.2.1
[INFO] [stderr]    Compiling rust-3d v0.34.0
[INFO] [stderr]    Compiling aoc2025 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::Error`
[INFO] [stdout]  --> src/problem01.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/problem01.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{self, BufReader, prelude::*};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufReader`
[INFO] [stdout]  --> src/problem02.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufReader, prelude::*};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/problem03.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude`
[INFO] [stdout]  --> src/problem02.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufReader, prelude::*};
[INFO] [stdout]   |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/problem01.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn main() -> () {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_power` is never used
[INFO] [stdout]   --> src/problem02.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn get_power(n: u64) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `even` is never used
[INFO] [stdout]   --> src/problem02.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn even(n: u32) -> bool {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_at_position` is never used
[INFO] [stdout]   --> src/problem02.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn split_at_position(skuchars: Vec<char>, pos: usize) -> Result<(String, String), &'static str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `repeats_at_position` is never used
[INFO] [stdout]   --> src/problem02.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn repeats_at_position(sku: u64, pos: usize) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_metarepeater` is never used
[INFO] [stdout]   --> src/problem02.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn is_metarepeater(sku: u64) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_valid` is never used
[INFO] [stdout]   --> src/problem02.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn find_valid() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bat_to_jolts` is never used
[INFO] [stdout]  --> src/problem03.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn bat_to_jolts(batteries: Vec<usize>) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `top_jolts` is never used
[INFO] [stdout]   --> src/problem03.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn top_jolts(joltimeter: &String, n: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_joltage` is never used
[INFO] [stdout]   --> src/problem03.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn find_joltage() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parseline` is never used
[INFO] [stdout]  --> src/problem04.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn parseline(line: &String) -> Vec<u8> {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbors` is never used
[INFO] [stdout]  --> src/problem04.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn neighbors(grid: &Grid<u8>, row: usize, col: usize) -> Vec<u8> {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_rolls` is never used
[INFO] [stdout]   --> src/problem04.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn remove_rolls(grid: &mut Grid<u8>, changes: Vec<(usize, usize)>) -> () {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `route_forklifts` is never used
[INFO] [stdout]   --> src/problem04.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn route_forklifts() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_check` is never used
[INFO] [stdout]  --> src/problem05.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn run_check(id: usize, range: &(usize, usize)) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combiner` is never used
[INFO] [stdout]   --> src/problem05.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn combiner(r1: &(usize, usize), r2: &(usize, usize)) -> Vec<(usize, usize)> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_freshness` is never used
[INFO] [stdout]   --> src/problem05.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn check_freshness() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_math_line` is never used
[INFO] [stdout]  --> src/problem06.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn parse_math_line(line: String) -> Vec<u8> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mathize` is never used
[INFO] [stdout]   --> src/problem06.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn mathize(column: Vec<usize>, op: u8) -> usize {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `squidize` is never used
[INFO] [stdout]   --> src/problem06.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn squidize(cols: Vec<Vec<char>>) -> usize {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `squid_math` is never used
[INFO] [stdout]   --> src/problem06.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn squid_math() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step_beam` is never used
[INFO] [stdout]  --> src/problem07.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn step_beam(prev: String, curr: String) -> (String, usize) {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step_quantum` is never used
[INFO] [stdout]   --> src/problem07.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn step_quantum(incoming: Vec<usize>, curr: String) -> Vec<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_splits` is never used
[INFO] [stdout]   --> src/problem07.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn count_splits() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.25s
[INFO] running `Command { std: "docker" "inspect" "632fea665338e96f49020fdf7cce65550b4c5755df484a6bd1162dc7ce375f8d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "632fea665338e96f49020fdf7cce65550b4c5755df484a6bd1162dc7ce375f8d", kill_on_drop: false }`
[INFO] [stdout] 632fea665338e96f49020fdf7cce65550b4c5755df484a6bd1162dc7ce375f8d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b5a233841c39e53c143812035ded5ac947456f5824393f3d5b202f4db976aef0
[INFO] running `Command { std: "docker" "start" "-a" "b5a233841c39e53c143812035ded5ac947456f5824393f3d5b202f4db976aef0", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc2025 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::Error`
[INFO] [stdout]  --> src/problem01.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/problem01.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{self, BufReader, prelude::*};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufReader`
[INFO] [stdout]  --> src/problem02.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufReader, prelude::*};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/problem03.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude`
[INFO] [stdout]  --> src/problem02.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufReader, prelude::*};
[INFO] [stdout]   |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/problem01.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn main() -> () {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_power` is never used
[INFO] [stdout]   --> src/problem02.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn get_power(n: u64) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `even` is never used
[INFO] [stdout]   --> src/problem02.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn even(n: u32) -> bool {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_at_position` is never used
[INFO] [stdout]   --> src/problem02.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn split_at_position(skuchars: Vec<char>, pos: usize) -> Result<(String, String), &'static str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `repeats_at_position` is never used
[INFO] [stdout]   --> src/problem02.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn repeats_at_position(sku: u64, pos: usize) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_metarepeater` is never used
[INFO] [stdout]   --> src/problem02.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn is_metarepeater(sku: u64) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_valid` is never used
[INFO] [stdout]   --> src/problem02.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn find_valid() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bat_to_jolts` is never used
[INFO] [stdout]  --> src/problem03.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn bat_to_jolts(batteries: Vec<usize>) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `top_jolts` is never used
[INFO] [stdout]   --> src/problem03.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn top_jolts(joltimeter: &String, n: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_joltage` is never used
[INFO] [stdout]   --> src/problem03.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn find_joltage() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parseline` is never used
[INFO] [stdout]  --> src/problem04.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn parseline(line: &String) -> Vec<u8> {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `neighbors` is never used
[INFO] [stdout]  --> src/problem04.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn neighbors(grid: &Grid<u8>, row: usize, col: usize) -> Vec<u8> {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_rolls` is never used
[INFO] [stdout]   --> src/problem04.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn remove_rolls(grid: &mut Grid<u8>, changes: Vec<(usize, usize)>) -> () {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `route_forklifts` is never used
[INFO] [stdout]   --> src/problem04.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn route_forklifts() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_check` is never used
[INFO] [stdout]  --> src/problem05.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn run_check(id: usize, range: &(usize, usize)) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combiner` is never used
[INFO] [stdout]   --> src/problem05.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn combiner(r1: &(usize, usize), r2: &(usize, usize)) -> Vec<(usize, usize)> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_freshness` is never used
[INFO] [stdout]   --> src/problem05.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn check_freshness() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_math_line` is never used
[INFO] [stdout]  --> src/problem06.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn parse_math_line(line: String) -> Vec<u8> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mathize` is never used
[INFO] [stdout]   --> src/problem06.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn mathize(column: Vec<usize>, op: u8) -> usize {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `squidize` is never used
[INFO] [stdout]   --> src/problem06.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn squidize(cols: Vec<Vec<char>>) -> usize {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `squid_math` is never used
[INFO] [stdout]   --> src/problem06.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn squid_math() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step_beam` is never used
[INFO] [stdout]  --> src/problem07.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn step_beam(prev: String, curr: String) -> (String, usize) {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step_quantum` is never used
[INFO] [stdout]   --> src/problem07.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn step_quantum(incoming: Vec<usize>, curr: String) -> Vec<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_splits` is never used
[INFO] [stdout]   --> src/problem07.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn count_splits() -> () {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s
[INFO] running `Command { std: "docker" "inspect" "b5a233841c39e53c143812035ded5ac947456f5824393f3d5b202f4db976aef0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b5a233841c39e53c143812035ded5ac947456f5824393f3d5b202f4db976aef0", kill_on_drop: false }`
[INFO] [stdout] b5a233841c39e53c143812035ded5ac947456f5824393f3d5b202f4db976aef0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 535965471f622cffbaeb661771e896b14b4a4ab87f9829277aaa4feeafa1abea
[INFO] running `Command { std: "docker" "start" "-a" "535965471f622cffbaeb661771e896b14b4a4ab87f9829277aaa4feeafa1abea", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::io::Error`
[INFO] [stderr]  --> src/problem01.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::io::Error;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/problem01.rs:3:15
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::io::{self, BufReader, prelude::*};
[INFO] [stderr]   |               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BufReader`
[INFO] [stderr]  --> src/problem02.rs:2:15
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::io::{BufReader, prelude::*};
[INFO] [stderr]   |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs`
[INFO] [stderr]  --> src/problem03.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::fs;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `prelude`
[INFO] [stderr]  --> src/problem02.rs:2:26
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::io::{BufReader, prelude::*};
[INFO] [stderr]   |                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]  --> src/problem01.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn main() -> () {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_power` is never used
[INFO] [stderr]   --> src/problem02.rs:17:4
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn get_power(n: u64) -> u32 {
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `even` is never used
[INFO] [stderr]   --> src/problem02.rs:26:4
[INFO] [stderr]    |
[INFO] [stderr] 26 | fn even(n: u32) -> bool {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `split_at_position` is never used
[INFO] [stderr]   --> src/problem02.rs:30:4
[INFO] [stderr]    |
[INFO] [stderr] 30 | fn split_at_position(skuchars: Vec<char>, pos: usize) -> Result<(String, String), &'static str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `repeats_at_position` is never used
[INFO] [stderr]   --> src/problem02.rs:39:4
[INFO] [stderr]    |
[INFO] [stderr] 39 | fn repeats_at_position(sku: u64, pos: usize) -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_metarepeater` is never used
[INFO] [stderr]   --> src/problem02.rs:74:4
[INFO] [stderr]    |
[INFO] [stderr] 74 | fn is_metarepeater(sku: u64) -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_valid` is never used
[INFO] [stderr]   --> src/problem02.rs:91:8
[INFO] [stderr]    |
[INFO] [stderr] 91 | pub fn find_valid() -> () {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bat_to_jolts` is never used
[INFO] [stderr]  --> src/problem03.rs:5:4
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn bat_to_jolts(batteries: Vec<usize>) -> usize {
[INFO] [stderr]   |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `top_jolts` is never used
[INFO] [stderr]   --> src/problem03.rs:13:4
[INFO] [stderr]    |
[INFO] [stderr] 13 | fn top_jolts(joltimeter: &String, n: usize) -> usize {
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_joltage` is never used
[INFO] [stderr]   --> src/problem03.rs:36:8
[INFO] [stderr]    |
[INFO] [stderr] 36 | pub fn find_joltage() -> () {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parseline` is never used
[INFO] [stderr]  --> src/problem04.rs:5:4
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn parseline(line: &String) -> Vec<u8> {
[INFO] [stderr]   |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `neighbors` is never used
[INFO] [stderr]  --> src/problem04.rs:9:4
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn neighbors(grid: &Grid<u8>, row: usize, col: usize) -> Vec<u8> {
[INFO] [stderr]   |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `remove_rolls` is never used
[INFO] [stderr]   --> src/problem04.rs:36:4
[INFO] [stderr]    |
[INFO] [stderr] 36 | fn remove_rolls(grid: &mut Grid<u8>, changes: Vec<(usize, usize)>) -> () {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `route_forklifts` is never used
[INFO] [stderr]   --> src/problem04.rs:46:8
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub fn route_forklifts() -> () {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_check` is never used
[INFO] [stderr]  --> src/problem05.rs:4:4
[INFO] [stderr]   |
[INFO] [stderr] 4 | fn run_check(id: usize, range: &(usize, usize)) -> bool {
[INFO] [stderr]   |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `combiner` is never used
[INFO] [stderr]   --> src/problem05.rs:11:4
[INFO] [stderr]    |
[INFO] [stderr] 11 | fn combiner(r1: &(usize, usize), r2: &(usize, usize)) -> Vec<(usize, usize)> {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `check_freshness` is never used
[INFO] [stderr]   --> src/problem05.rs:21:8
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn check_freshness() -> () {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_math_line` is never used
[INFO] [stderr]  --> src/problem06.rs:4:4
[INFO] [stderr]   |
[INFO] [stderr] 4 | fn parse_math_line(line: String) -> Vec<u8> {
[INFO] [stderr]   |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `mathize` is never used
[INFO] [stderr]   --> src/problem06.rs:10:4
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn mathize(column: Vec<usize>, op: u8) -> usize {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `squidize` is never used
[INFO] [stderr]   --> src/problem06.rs:19:4
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn squidize(cols: Vec<Vec<char>>) -> usize {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `squid_math` is never used
[INFO] [stderr]   --> src/problem06.rs:61:8
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub fn squid_math() -> () {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `step_beam` is never used
[INFO] [stderr]  --> src/problem07.rs:4:4
[INFO] [stderr]   |
[INFO] [stderr] 4 | fn step_beam(prev: String, curr: String) -> (String, usize) {
[INFO] [stderr]   |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `step_quantum` is never used
[INFO] [stderr]   --> src/problem07.rs:34:4
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn step_quantum(incoming: Vec<usize>, curr: String) -> Vec<usize> {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `count_splits` is never used
[INFO] [stderr]   --> src/problem07.rs:74:8
[INFO] [stderr]    |
[INFO] [stderr] 74 | pub fn count_splits() -> () {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc2025` (bin "aoc2025" test) generated 29 warnings (run `cargo fix --bin "aoc2025" -p aoc2025 --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/aoc2025-80994c77ed878c80)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "535965471f622cffbaeb661771e896b14b4a4ab87f9829277aaa4feeafa1abea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "535965471f622cffbaeb661771e896b14b4a4ab87f9829277aaa4feeafa1abea", kill_on_drop: false }`
[INFO] [stdout] 535965471f622cffbaeb661771e896b14b4a4ab87f9829277aaa4feeafa1abea
