[INFO] cloning repository https://github.com/smejkyz/aoc_2021_rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/smejkyz/aoc_2021_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsmejkyz%2Faoc_2021_rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsmejkyz%2Faoc_2021_rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 07a8012f65fb347fb7aa5016b9b95911f27ce756
[INFO] checking smejkyz/aoc_2021_rust/07a8012f65fb347fb7aa5016b9b95911f27ce756 against master#f28ac764c36004fa6a6e098d15b4016a838c13c6 for pr-158320
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsmejkyz%2Faoc_2021_rust" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/smejkyz/aoc_2021_rust
[INFO] finished tweaking git repo https://github.com/smejkyz/aoc_2021_rust
[INFO] tweaked toml for git repo https://github.com/smejkyz/aoc_2021_rust written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/smejkyz/aoc_2021_rust on toolchain f28ac764c36004fa6a6e098d15b4016a838c13c6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/smejkyz/aoc_2021_rust 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" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tailcall-impl v1.0.1
[INFO] [stderr]   Downloaded tailcall v1.0.1
[INFO] [stderr]   Downloaded unindent v0.2.3
[INFO] [stderr]   Downloaded partition v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67
[INFO] running `Command { std: "docker" "start" "d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67" "/opt/rustwide/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67" "/opt/rustwide/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.85
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling regex-syntax v0.8.3
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]     Checking either v1.12.0
[INFO] [stderr]     Checking zerocopy v0.7.34
[INFO] [stderr]     Checking unindent v0.2.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking partition v0.1.2
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]    Compiling syn v2.0.66
[INFO] [stderr]     Checking num-bigint v0.4.5
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking ahash v0.8.11
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]    Compiling structmeta-derive v0.3.0
[INFO] [stderr]    Compiling derive-new v0.6.0
[INFO] [stderr]    Compiling structmeta v0.3.0
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]     Checking bstr v1.9.1
[INFO] [stderr]    Compiling parse-display-derive v0.9.1
[INFO] [stderr]    Compiling tailcall-impl v1.0.1
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]     Checking tailcall v1.0.1
[INFO] [stderr]     Checking parse-display v0.9.1
[INFO] [stderr]     Checking aoc2021 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/days/d03.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 |     for i in (0..binary_number.len()){
[INFO] [stdout]    |              ^                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 40 -     for i in (0..binary_number.len()){
[INFO] [stdout] 40 +     for i in 0..binary_number.len() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/days/d07.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 |         array[(array.len()/2)] as f64
[INFO] [stdout]    |               ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 20 -         array[(array.len()/2)] as f64
[INFO] [stdout] 20 +         array[array.len()/2 ] as f64
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeSet` and `HashMap`
[INFO] [stdout]  --> src/days/d08.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{BTreeSet, HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bstr::Chars`
[INFO] [stdout]  --> src/days/d08.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bstr::Chars;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ahash::HashSet`
[INFO] [stdout]  --> src/days/d09.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ahash::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bstr::ByteSlice`
[INFO] [stdout]  --> src/days/d09.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bstr::ByteSlice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `print_day`
[INFO] [stdout]  --> src/days/d09.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{Array2D, print_day, parse_2d_input};
[INFO] [stdout]   |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ahash::RandomState`
[INFO] [stdout]  --> src/days/d04.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ahash::RandomState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/days/d11.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/days/d03.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 |     for i in (0..binary_number.len()){
[INFO] [stdout]    |              ^                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 40 -     for i in (0..binary_number.len()){
[INFO] [stdout] 40 +     for i in 0..binary_number.len() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/days/d07.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 |         array[(array.len()/2)] as f64
[INFO] [stdout]    |               ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 20 -         array[(array.len()/2)] as f64
[INFO] [stdout] 20 +         array[array.len()/2 ] as f64
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeSet` and `HashMap`
[INFO] [stdout]  --> src/days/d08.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{BTreeSet, HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bstr::Chars`
[INFO] [stdout]  --> src/days/d08.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bstr::Chars;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ahash::HashSet`
[INFO] [stdout]  --> src/days/d09.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ahash::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bstr::ByteSlice`
[INFO] [stdout]  --> src/days/d09.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bstr::ByteSlice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `print_day`
[INFO] [stdout]  --> src/days/d09.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{Array2D, print_day, parse_2d_input};
[INFO] [stdout]   |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ahash::RandomState`
[INFO] [stdout]  --> src/days/d04.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ahash::RandomState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/days/d11.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/days/d10.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/days/d03.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut input = parse_input(raw_input);
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/days/d03.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let mut indicis_to_use: Vec<usize> = (0..input[0].len()).collect();
[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/days/d03.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let mut oxygen_generator_rating: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `oxygen_generator_rating`
[INFO] [stdout]   --> src/days/d03.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let mut oxygen_generator_rating: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_oxygen_generator_rating`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zeros`
[INFO] [stdout]   --> src/days/d03.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let zeros = selected_bits.len() as i32 - ones;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_zeros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d01.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d01.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute` is never used
[INFO] [stdout]   --> src/days/d01.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn compute(input: Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d01.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn parse_input(raw_input: &str) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d02.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d02.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d02.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn parse_input(raw_input: &str){
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d03.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d03.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn p2(raw_input: &str) -> i32{
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_to_decimal` is never used
[INFO] [stdout]   --> src/days/d03.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn binary_to_decimal(binary_number: Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d03.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn parse_input(raw_input: &str) -> Vec<Vec<i32>>{
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d07.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_median` is never used
[INFO] [stdout]   --> src/days/d07.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn compute_median(array: &Vec<i32>)->f64{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d07.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_mean` is never used
[INFO] [stdout]   --> src/days/d07.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn compute_mean(vector: &Vec<i32>) -> f32{
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d07.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn parse_input(raw_input: &str) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_1` is never used
[INFO] [stdout]   --> src/days/d07.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn fn_1(x: i32, input: &Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_2` is never used
[INFO] [stdout]   --> src/days/d07.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn fn_2(x: i32, input: &Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d08.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn p1(raw_input: &str) -> i32{
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d08.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn p2(raw_input: &str) -> i32{
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2_per_line` is never used
[INFO] [stdout]   --> src/days/d08.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn p2_per_line(raw_line: &str) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_string` is never used
[INFO] [stdout]   --> src/days/d08.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn decode_string(input_str: &str, result_map: &Vec<HashSet<char>>) -> usize{
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_result_map` is never used
[INFO] [stdout]   --> src/days/d08.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn create_result_map(input: &str) -> Vec<HashSet<char>>{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_given_length` is never used
[INFO] [stdout]   --> src/days/d08.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn find_given_length(p0: &mut Vec<HashSet<char>>) -> (HashSet<char>, HashSet<char>, HashSet<char>, HashSet<char>){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_nine` is never used
[INFO] [stdout]    --> src/days/d08.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn find_nine(p0: &mut Vec<HashSet<char>>, four: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_zero` is never used
[INFO] [stdout]    --> src/days/d08.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn find_zero(p0: &mut Vec<HashSet<char>>, one: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_six` is never used
[INFO] [stdout]    --> src/days/d08.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn find_six(p0: &mut Vec<HashSet<char>>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_three` is never used
[INFO] [stdout]    --> src/days/d08.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn find_three(p0: &mut Vec<HashSet<char>>, seven: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_five` is never used
[INFO] [stdout]    --> src/days/d08.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn find_five(p0: &mut Vec<HashSet<char>>, six: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_input_data` is never used
[INFO] [stdout]    --> src/days/d08.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn create_input_data(input: &str) -> Vec<HashSet<char>>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_correct_size` is never used
[INFO] [stdout]    --> src/days/d08.rs:169:4
[INFO] [stdout]     |
[INFO] [stdout] 169 | fn has_correct_size(value: usize) -> bool{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d09.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_low_points` is never used
[INFO] [stdout]   --> src/days/d09.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn find_low_points(input_matrix: &Array2D) -> Vec<(usize, usize)>{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d09.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_basin_size` is never used
[INFO] [stdout]   --> src/days/d09.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn compute_basin_size(point: (usize, usize), input_matrix: &Array2D) -> usize{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d04.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn p1(raw_input: &str) -> i32{
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d04.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn p2(raw_input: &str) -> i32{
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `board_is_complete` is never used
[INFO] [stdout]   --> src/days/d04.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn board_is_complete(board: &Array2D) -> bool{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_board_state_value` is never used
[INFO] [stdout]   --> src/days/d04.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn compute_board_state_value(board: &Array2D) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Board` is never constructed
[INFO] [stdout]   --> src/days/d04.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct Board {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d04.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn parse_input(raw_input: &str) -> (Vec<i32>, Vec<Array2D>){
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_bingo_line` is never used
[INFO] [stdout]    --> src/days/d04.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn parse_bingo_line(raw_line: &str) -> Vec<i32>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d10.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn p1(raw_input: &str) -> i32{
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `corrupted_score` is never used
[INFO] [stdout]   --> src/days/d10.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn corrupted_score(raw_line: &str, points_table: &HashMap<char, i32>, close_to_open_states: &HashMap<char, char>) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d10.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn p2(raw_input: &str) -> i64{
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `incomplete_score` is never used
[INFO] [stdout]   --> src/days/d10.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn incomplete_score(raw_line: &str, points_table: &HashMap<char, i64>, close_to_open_states: &HashMap<char, char>, open_to_closed_st...
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/utils.rs:70:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl Array2D {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn get_row(&self, row: usize) -> Vec<i32>{
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn get_column(&self, col: usize) -> Vec<i32>{
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn get_4_neighbours(&self, row: usize, col: usize) -> Vec<i32>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn display(&self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn replace(&mut self, replaced_number: i32, replace_with: i32){
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn count(&self, number_of_interest: i32) -> i32{
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn sum(&self) -> i32{
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RADIX` is never used
[INFO] [stdout]    --> src/utils.rs:218:11
[INFO] [stdout]     |
[INFO] [stdout] 218 |     const RADIX: u32 = 10;
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/days/d04.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             bingo_card.push(int_line);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 93 |             let _ = bingo_card.push(int_line);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/days/d11.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 octopus_array.set(neighbour_i, neighbour_j, octopus_array.get(neighbour_i, neighbour_j) + 1);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let _ = octopus_array.set(neighbour_i, neighbour_j, octopus_array.get(neighbour_i, neighbour_j) + 1);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/days/d11.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             octopus_array.set(i, j, 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let _ = octopus_array.set(i, j, 0);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/utils.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             &self.set(i, j, self.get(i, j) + value);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 165 |             let _ = &self.set(i, j, self.get(i, j) + value);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/utils.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 &self.set(i, j, replace_with);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 let _ = &self.set(i, j, replace_with);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/utils.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         array_2d.push(vector);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 226 |         let _ = array_2d.push(vector);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/days/d10.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/days/d03.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut input = parse_input(raw_input);
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/days/d03.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let mut indicis_to_use: Vec<usize> = (0..input[0].len()).collect();
[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/days/d03.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let mut oxygen_generator_rating: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `oxygen_generator_rating`
[INFO] [stdout]   --> src/days/d03.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let mut oxygen_generator_rating: Vec<i32> = Vec::new();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_oxygen_generator_rating`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zeros`
[INFO] [stdout]   --> src/days/d03.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let zeros = selected_bits.len() as i32 - ones;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_zeros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `after_one_step`
[INFO] [stdout]   --> src/days/d11.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let after_one_step = perform_one_step(&mut _input);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_after_one_step`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d01.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d01.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute` is never used
[INFO] [stdout]   --> src/days/d01.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn compute(input: Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d01.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn parse_input(raw_input: &str) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d02.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d02.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d02.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn parse_input(raw_input: &str){
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d03.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d03.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn p2(raw_input: &str) -> i32{
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_to_decimal` is never used
[INFO] [stdout]   --> src/days/d03.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn binary_to_decimal(binary_number: Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d03.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn parse_input(raw_input: &str) -> Vec<Vec<i32>>{
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d07.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_median` is never used
[INFO] [stdout]   --> src/days/d07.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn compute_median(array: &Vec<i32>)->f64{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d07.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_mean` is never used
[INFO] [stdout]   --> src/days/d07.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn compute_mean(vector: &Vec<i32>) -> f32{
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/d07.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn parse_input(raw_input: &str) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_1` is never used
[INFO] [stdout]   --> src/days/d07.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn fn_1(x: i32, input: &Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_2` is never used
[INFO] [stdout]   --> src/days/d07.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn fn_2(x: i32, input: &Vec<i32>) -> i32{
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d08.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn p1(raw_input: &str) -> i32{
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d08.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn p2(raw_input: &str) -> i32{
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2_per_line` is never used
[INFO] [stdout]   --> src/days/d08.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn p2_per_line(raw_line: &str) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_string` is never used
[INFO] [stdout]   --> src/days/d08.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn decode_string(input_str: &str, result_map: &Vec<HashSet<char>>) -> usize{
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_result_map` is never used
[INFO] [stdout]   --> src/days/d08.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn create_result_map(input: &str) -> Vec<HashSet<char>>{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_given_length` is never used
[INFO] [stdout]   --> src/days/d08.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn find_given_length(p0: &mut Vec<HashSet<char>>) -> (HashSet<char>, HashSet<char>, HashSet<char>, HashSet<char>){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_nine` is never used
[INFO] [stdout]    --> src/days/d08.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn find_nine(p0: &mut Vec<HashSet<char>>, four: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_zero` is never used
[INFO] [stdout]    --> src/days/d08.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn find_zero(p0: &mut Vec<HashSet<char>>, one: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_six` is never used
[INFO] [stdout]    --> src/days/d08.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn find_six(p0: &mut Vec<HashSet<char>>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_three` is never used
[INFO] [stdout]    --> src/days/d08.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn find_three(p0: &mut Vec<HashSet<char>>, seven: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_five` is never used
[INFO] [stdout]    --> src/days/d08.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn find_five(p0: &mut Vec<HashSet<char>>, six: &HashSet<char>) -> HashSet<char>{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_input_data` is never used
[INFO] [stdout]    --> src/days/d08.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn create_input_data(input: &str) -> Vec<HashSet<char>>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_correct_size` is never used
[INFO] [stdout]    --> src/days/d08.rs:169:4
[INFO] [stdout]     |
[INFO] [stdout] 169 | fn has_correct_size(value: usize) -> bool{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p1` is never used
[INFO] [stdout]  --> src/days/d09.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn p1(raw_input: &str) -> i32 {
[INFO] [stdout]   |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_low_points` is never used
[INFO] [stdout]   --> src/days/d09.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn find_low_points(input_matrix: &Array2D) -> Vec<(usize, usize)>{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p2` is never used
[INFO] [stdout]   --> src/days/d09.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn p2(raw_input: &str) -> i32 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_basin_size` is never used
[INFO] [stdout]   --> src/days/d09.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn compute_basin_size(point: (usize, usize), input_matrix: &Array2D) -> usize{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Board` is never constructed
[INFO] [stdout]   --> src/days/d04.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct Board {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_4_neighbours` is never used
[INFO] [stdout]   --> src/utils.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl Array2D {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn get_4_neighbours(&self, row: usize, col: usize) -> Vec<i32>{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RADIX` is never used
[INFO] [stdout]    --> src/utils.rs:218:11
[INFO] [stdout]     |
[INFO] [stdout] 218 |     const RADIX: u32 = 10;
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/days/d04.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             bingo_card.push(int_line);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 93 |             let _ = bingo_card.push(int_line);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/days/d11.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 octopus_array.set(neighbour_i, neighbour_j, octopus_array.get(neighbour_i, neighbour_j) + 1);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let _ = octopus_array.set(neighbour_i, neighbour_j, octopus_array.get(neighbour_i, neighbour_j) + 1);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/days/d11.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             octopus_array.set(i, j, 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let _ = octopus_array.set(i, j, 0);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/utils.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             &self.set(i, j, self.get(i, j) + value);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 165 |             let _ = &self.set(i, j, self.get(i, j) + value);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/utils.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 &self.set(i, j, replace_with);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 let _ = &self.set(i, j, replace_with);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/utils.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         array_2d.push(vector);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 226 |         let _ = array_2d.push(vector);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.10s
[INFO] running `Command { std: "docker" "inspect" "d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67", kill_on_drop: false }`
[INFO] [stdout] d5176a17dc120b7c4f810da8f25a8df3bc7482dbbebf429983284ef995b98a67
