[INFO] cloning repository https://github.com/TheArtistGuy/advent_of_code_2021
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TheArtistGuy/advent_of_code_2021" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheArtistGuy%2Fadvent_of_code_2021", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheArtistGuy%2Fadvent_of_code_2021'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9884713edfc625ec1735ae424a4ed6b9679387fa
[INFO] checking TheArtistGuy/advent_of_code_2021 against try#c05ee43175e02d208faed1fcc0f436c56e48bba6 for pr-92413
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheArtistGuy%2Fadvent_of_code_2021" "/workspace/builds/worker-0/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/TheArtistGuy/advent_of_code_2021 on toolchain c05ee43175e02d208faed1fcc0f436c56e48bba6
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+c05ee43175e02d208faed1fcc0f436c56e48bba6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/TheArtistGuy/advent_of_code_2021
[INFO] finished tweaking git repo https://github.com/TheArtistGuy/advent_of_code_2021
[INFO] tweaked toml for git repo https://github.com/TheArtistGuy/advent_of_code_2021 written to /workspace/builds/worker-0/source/Cargo.toml
[INFO] crate git repo https://github.com/TheArtistGuy/advent_of_code_2021 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+c05ee43175e02d208faed1fcc0f436c56e48bba6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+c05ee43175e02d208faed1fcc0f436c56e48bba6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f4b4a6e022939eb63de242f07526f4d1ed1fc4f922c356188e3f792bcf586c38
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "f4b4a6e022939eb63de242f07526f4d1ed1fc4f922c356188e3f792bcf586c38", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4b4a6e022939eb63de242f07526f4d1ed1fc4f922c356188e3f792bcf586c38", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4b4a6e022939eb63de242f07526f4d1ed1fc4f922c356188e3f792bcf586c38", kill_on_drop: false }`
[INFO] [stdout] f4b4a6e022939eb63de242f07526f4d1ed1fc4f922c356188e3f792bcf586c38
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+c05ee43175e02d208faed1fcc0f436c56e48bba6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c3ad0ba2e14d88123599a70f57ef51c2d74a4d9143df85f342d2a32b35d6304e
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "c3ad0ba2e14d88123599a70f57ef51c2d74a4d9143df85f342d2a32b35d6304e", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking itertools v0.10.3
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]     Checking integer-sqrt v0.1.5
[INFO] [stderr]     Checking pathfinding v3.0.5
[INFO] [stderr]     Checking advent_of_code_2021 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::day15::day15`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::day15::day15;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/mat2d.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/mat2d.rs:176:12
[INFO] [stdout]     |
[INFO] [stdout] 176 |         if (position + 1 > self.height) {return None};
[INFO] [stdout]     |            ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 176 -         if (position + 1 > self.height) {return None};
[INFO] [stdout] 176 +         if position + 1 > self.height {return None};
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around `return` value
[INFO] [stdout]    --> src/day10.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 |     return {BranchResult::Unfinished(rest, inclomplete)}
[INFO] [stdout]     |            ^                                           ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 117 -     return {BranchResult::Unfinished(rest, inclomplete)}
[INFO] [stdout] 117 +     return BranchResult::Unfinished(rest, inclomplete)
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::linux::raw::stat`
[INFO] [stdout]  --> src/day12.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::os::linux::raw::stat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/day15.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/day15.rs:181:88
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height);
[INFO] [stdout]     |                                                                                        ^                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 181 -     let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height);
[INFO] [stdout] 181 +     let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], mat_1.width + mat_2.width, mat_1.height);
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::os::linux::raw::stat`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]  --> src/day12.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::os::linux::raw::stat;
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: lifetime parameter `'a` never used
[INFO] [stdout]    --> src/day12.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn get_node<'a>(nodes: &Vec<Rc<RefCell<Node>>>, name: &&str) -> Option<Rc<RefCell<Node>>> {
[INFO] [stdout]     |            -^^- help: elide the unused lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[deny(unused_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: lifetime parameter `'a` never used
[INFO] [stdout]    --> src/day12.rs:184:23
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn get_node_and_count<'a>(nodes: &Vec<Rc<RefCell<Node>>>, name: &&str, max_count : i32) -> (Option<Rc<RefCell<Node>>>, i32) {
[INFO] [stdout]     |                      -^^- help: elide the unused lifetime
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::day15::day15`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::day15::day15;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/mat2d.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/mat2d.rs:176:12
[INFO] [stdout]     |
[INFO] [stdout] 176 |         if (position + 1 > self.height) {return None};
[INFO] [stdout]     |            ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 176 -         if (position + 1 > self.height) {return None};
[INFO] [stdout] 176 +         if position + 1 > self.height {return None};
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around `return` value
[INFO] [stdout]    --> src/day10.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 |     return {BranchResult::Unfinished(rest, inclomplete)}
[INFO] [stdout]     |            ^                                           ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 117 -     return {BranchResult::Unfinished(rest, inclomplete)}
[INFO] [stdout] 117 +     return BranchResult::Unfinished(rest, inclomplete)
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::raw::ino_t`
[INFO] [stdout]    --> src/day10.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     use std::os::unix::raw::ino_t;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `determine_incompleteness_value`
[INFO] [stdout]    --> src/day10.rs:180:70
[INFO] [stdout]     |
[INFO] [stdout] 180 |     use crate::day10::{check_for_corruption, compute_incompleteness, determine_incompleteness_value, parse_lines};
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::mat2d::Mat2d`
[INFO] [stdout]    --> src/day11.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     use crate::mat2d::Mat2d;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::linux::raw::stat`
[INFO] [stdout]  --> src/day12.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::os::linux::raw::stat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]    --> src/day12.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |     use std::cell::RefCell;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]    --> src/day12.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |     use std::rc::Rc;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::metadata`
[INFO] [stdout]    --> src/day13.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     use std::fs::metadata;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::mat2d::Mat2d`
[INFO] [stdout]    --> src/day13.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |     use crate::mat2d::Mat2d;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/day15.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/day15.rs:181:88
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height);
[INFO] [stdout]     |                                                                                        ^                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 181 -     let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], (mat_1.width + mat_2.width), mat_1.height);
[INFO] [stdout] 181 +     let mut mat_new = Mat2d::from(vec![0; (mat_1.width + mat_2.width) * mat_1.height], mat_1.width + mat_2.width, mat_1.height);
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::mat2d::Mat2d`
[INFO] [stdout]    --> src/day15.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |     use crate::mat2d::Mat2d;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `game_quantum_dice`
[INFO] [stdout]    --> src/day21.rs:136:49
[INFO] [stdout]     |
[INFO] [stdout] 136 |     use crate::day21::{DeterministicDice, game, game_quantum_dice, Player};
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::os::linux::raw::stat`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]  --> src/day12.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::os::linux::raw::stat;
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `std::os::unix::raw::ino_t`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]    --> src/day10.rs:178:29
[INFO] [stdout]     |
[INFO] [stdout] 178 |     use std::os::unix::raw::ino_t;
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: lifetime parameter `'a` never used
[INFO] [stdout]    --> src/day12.rs:175:13
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn get_node<'a>(nodes: &Vec<Rc<RefCell<Node>>>, name: &&str) -> Option<Rc<RefCell<Node>>> {
[INFO] [stdout]     |            -^^- help: elide the unused lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[deny(unused_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: lifetime parameter `'a` never used
[INFO] [stdout]    --> src/day12.rs:184:23
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn get_node_and_count<'a>(nodes: &Vec<Rc<RefCell<Node>>>, name: &&str, max_count : i32) -> (Option<Rc<RefCell<Node>>>, i32) {
[INFO] [stdout]     |                      -^^- help: elide the unused lifetime
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/day12.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/day9.rs:114:14
[INFO] [stdout]     |
[INFO] [stdout] 114 |         Some(val) => {
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]   --> src/day12.rs:52:43
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let (element_in_visited_list, count) = determine_is_in_visited(next, &mut visited, allow_second_time);
[INFO] [stdout]    |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `mat` is never read
[INFO] [stdout]   --> src/day13.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut mat = Mat2d::empty();
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/day14.rs:39:47
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let mut as_vec:Vec<i64>= map.iter().map(|(x,y)| *y).collect();
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cost`
[INFO] [stdout]   --> src/day15.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |             let (_,((x_new,y_new),cost,former_new)) = fetch_in_table(&table_searched, &former).unwrap();
[INFO] [stdout]    |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_cost`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day11.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn handle_flash(mut world: &mut Mat2d<i32>, has_flashed: &mut Mat2d<bool>, x: usize, y: usize) {
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/day11.rs:108:19
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn flash_neighbor(mut world: &mut Mat2d<i32>, has_flashed: &mut Mat2d<bool>, 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/day12.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let mut visited_nodes:Vec<Rc<RefCell<Node>>> = Vec::new();
[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/day12.rs:58:25
[INFO] [stdout]    |
[INFO] [stdout] 58 |                     for mut x in before.iter() {
[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/day12.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let mut f = get_node(&nodes, from);
[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/day12.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let mut t = get_node(&nodes, to);
[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/day12.rs:138:15
[INFO] [stdout]     |
[INFO] [stdout] 138 |         (Some(mut x), Some(mut y)) => {
[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/day12.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |         (Some(mut x), Some(mut y)) => {
[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/day12.rs:142:15
[INFO] [stdout]     |
[INFO] [stdout] 142 |         (Some(mut x), None) => {
[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/day12.rs:150:21
[INFO] [stdout]     |
[INFO] [stdout] 150 |         (None, Some(mut y)) => {
[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/day12.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |             let mut n = Rc::new(RefCell::new(Node {
[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/day12.rs:163:17
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let mut m = Rc::new(RefCell::new(Node {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot borrow `map` as mutable because it is also borrowed as immutable
[INFO] [stdout]   --> src/day14.rs:36:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let exist = map.get(&x);
[INFO] [stdout]    |                     ----------- immutable borrow occurs here
[INFO] [stdout] ...
[INFO] [stdout] 36 |             Some(y) => {map.insert(*x, y+1);}
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^-^^^
[INFO] [stdout]    |                         |              |
[INFO] [stdout]    |                         |              immutable borrow later used here
[INFO] [stdout]    |                         mutable borrow occurs here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default
[INFO] [stdout]    = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future
[INFO] [stdout]    = note: for more information, see issue #59159 <https://github.com/rust-lang/rust/issues/59159>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot borrow `table_not_searched` as mutable because it is also borrowed as immutable
[INFO] [stdout]   --> src/day15.rs:49:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let val = fetch_in_table(&table_not_searched, &pos);
[INFO] [stdout]    |                                          ------------------- immutable borrow occurs here
[INFO] [stdout] ...
[INFO] [stdout] 49 |                             table_not_searched.push(((x.clone(), y.clone()), current_value, actual_node));
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                             |                         |
[INFO] [stdout]    |                             |                         immutable borrow later used here
[INFO] [stdout]    |                             mutable borrow occurs here
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future
[INFO] [stdout]    = note: for more information, see issue #59159 <https://github.com/rust-lang/rust/issues/59159>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day15.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |     let mut m_right : Vec<i32>= mat_1.vector.iter().map(|x| calculate_cost(x)).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/day15.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     let mut m_right_2 : Vec<i32>= m_right.iter().map(|x| calculate_cost(x)).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/day15.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |     let mut m_right_3 : Vec<i32>= m_right_2.iter().map(|x| calculate_cost(x)).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/day15.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let mut m_right_4 : Vec<i32>= m_right_3.iter().map(|x| calculate_cost(x)).collect();
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day1`
[INFO] [stdout]  --> src/day1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day1(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sonar_sweep`
[INFO] [stdout]   --> src/day1.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn sonar_sweep(input_string : &String) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sweep`
[INFO] [stdout]   --> src/day1.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn sweep(input: &Vec<i32>) -> u32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sonar_sweep_summed`
[INFO] [stdout]   --> src/day1.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn sonar_sweep_summed(input_string: &String) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sum_inputs`
[INFO] [stdout]   --> src/day1.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn sum_inputs(input: &mut Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day1.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn parse_input(input_string: &String, input: &mut Vec<i32>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day2`
[INFO] [stdout]  --> src/day2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day2(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_and_print_part1`
[INFO] [stdout]   --> src/day2.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn compute_and_print_part1(data: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_and_print_part2`
[INFO] [stdout]   --> src/day2.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn compute_and_print_part2(data: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `steer_ship`
[INFO] [stdout]   --> src/day2.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn steer_ship(input: &String) -> (i32 , i32) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `steer_ship_with_aim`
[INFO] [stdout]   --> src/day2.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn steer_ship_with_aim(input: &String) -> (i32, i32){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day3`
[INFO] [stdout]  --> src/day3.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub(crate) fn day3(){
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `diagnostic`
[INFO] [stdout]   --> src/day3.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn diagnostic(data: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `diag_2`
[INFO] [stdout]   --> src/day3.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn diag_2 (data: String) -> i32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_to_matrix`
[INFO] [stdout]   --> src/day3.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn parse_to_matrix(data: String, data_int: &mut Vec<Vec<i32>>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_oxygen`
[INFO] [stdout]   --> src/day3.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn determine_oxygen(data_int: &Vec<Vec<i32>>, length: &usize) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_co2`
[INFO] [stdout]   --> src/day3.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn determine_co2(data_int: & Vec<Vec<i32>>, length: &usize) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bin_to_dec`
[INFO] [stdout]   --> src/day3.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn bin_to_dec(res_bin_in: Box<Vec<i32>>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_lines`
[INFO] [stdout]    --> src/day3.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn parse_lines(data: &String) -> (i32, Box<Vec<i32>>) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determinate_gamma_and_epsilon`
[INFO] [stdout]    --> src/day3.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn determinate_gamma_and_epsilon(count: &mut i32, v_in: &mut Box<Vec<i32>>) -> (Box<Vec<i32>>, Box<Vec<i32>>){
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `number`
[INFO] [stdout]  --> src/day4.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub number: i32,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `called`
[INFO] [stdout]  --> src/day4.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub called: bool
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `height`
[INFO] [stdout]   --> src/day4.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub height: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `width`
[INFO] [stdout]   --> src/day4.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub width: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `vector`
[INFO] [stdout]   --> src/day4.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     vector : Vec<Field>
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/day4.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn new(width : usize, height : usize) ->Self{
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_field`
[INFO] [stdout]   --> src/day4.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn get_field(&self, col : usize, row : usize) -> Option<&Field> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_field_number`
[INFO] [stdout]   --> src/day4.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn set_field_number(&mut self, col : usize, row : usize, value : i32) -> Result<bool, &str> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_field_called`
[INFO] [stdout]   --> src/day4.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn set_field_called(&mut self, col : usize, row : usize, value :bool) -> Result<bool, &str> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day4`
[INFO] [stdout]   --> src/day4.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn day4(){
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bingo`
[INFO] [stdout]   --> src/day4.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn bingo(data: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bingo_presience`
[INFO] [stdout]   --> src/day4.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn bingo_presience(data: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_result`
[INFO] [stdout]   --> src/day4.rs:83:4
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn compute_result(winning_board: Option<Board>, winning_number: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day4.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn parse_input(data: &String) -> (Vec<i32>, Vec<Board>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `call_bingo_numbers_to_last_board`
[INFO] [stdout]    --> src/day4.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn call_bingo_numbers_to_last_board(numbers: &mut Vec<i32>, boards: &mut Vec<Board>) -> (Option<Board>, i32){
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `call_bingo_numbers`
[INFO] [stdout]    --> src/day4.rs:160:4
[INFO] [stdout]     |
[INFO] [stdout] 160 | fn call_bingo_numbers(numbers: &mut Vec<i32>, boards: &mut Vec<Board>) -> (Option<Board>, i32){
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `check_board`
[INFO] [stdout]    --> src/day4.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn check_board(board: &mut Board, num: &i32) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `check_horizontals`
[INFO] [stdout]    --> src/day4.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn check_horizontals(board: & Board) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `check_diagonals`
[INFO] [stdout]    --> src/day4.rs:200:4
[INFO] [stdout]     |
[INFO] [stdout] 200 | fn check_diagonals(board: &mut Board) -> bool{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `check_number_on_board`
[INFO] [stdout]    --> src/day4.rs:215:4
[INFO] [stdout]     |
[INFO] [stdout] 215 | fn check_number_on_board(board: &mut Board, num: &i32) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `from`
[INFO] [stdout]   --> src/mat2d.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn from(vector : Vec<T>, width: usize, height: usize) -> Self{
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_width`
[INFO] [stdout]   --> src/mat2d.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn get_width(&self) -> usize{
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_height`
[INFO] [stdout]   --> src/mat2d.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn get_height(&self) -> usize{
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_as_vector`
[INFO] [stdout]   --> src/mat2d.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn get_as_vector(&self) -> &Vec<T>{
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_to_vector`
[INFO] [stdout]   --> src/mat2d.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn set_to_vector(&mut self, vector : Vec<T>){
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `resize`
[INFO] [stdout]   --> src/mat2d.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn resize(&mut self, width : usize, height : usize){
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `empty`
[INFO] [stdout]   --> src/mat2d.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn empty() -> Self{
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_value`
[INFO] [stdout]   --> src/mat2d.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn get_value(&self, col : usize, row : usize) -> Option<&T> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_value_in_position_of_i32`
[INFO] [stdout]   --> src/mat2d.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn get_value_in_position_of_i32(&self, col : i32, row : i32) -> Option<&T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `set_value`
[INFO] [stdout]   --> src/mat2d.rs:92:12
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn set_value(&mut self, col : usize, row : usize, value : T) -> Result<bool, &str> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `copy_part`
[INFO] [stdout]    --> src/mat2d.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 |     pub fn copy_part(&self, from_col : usize, to_col : usize, from_row : usize, to_row : usize) -> Option<Mat2d<T>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `split_vertical`
[INFO] [stdout]    --> src/mat2d.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn split_vertical(&self, position : usize) -> Option<(Mat2d<T>, Mat2d<T>)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `split_horizontal`
[INFO] [stdout]    --> src/mat2d.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 |     pub fn split_horizontal(&self, position: usize) -> Option<(Mat2d<T>, Mat2d<T>)>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertical_inverted_copy`
[INFO] [stdout]    --> src/mat2d.rs:207:12
[INFO] [stdout]     |
[INFO] [stdout] 207 |     pub fn vertical_inverted_copy(&self) -> Mat2d<T>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `horizontal_inverted_copy`
[INFO] [stdout]    --> src/mat2d.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn horizontal_inverted_copy(&self) -> Mat2d<T>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day5`
[INFO] [stdout]  --> src/day5.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn day5(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day5.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn part1(input: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day5.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn part2(input : &String)-> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day5.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_input(input : &String) -> Vec<Line> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `x1`
[INFO] [stdout]   --> src/day5.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     x1 : i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `y1`
[INFO] [stdout]   --> src/day5.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     y1 : i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `x2`
[INFO] [stdout]   --> src/day5.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     x2 : i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `y2`
[INFO] [stdout]   --> src/day5.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     y2 : i32
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_ways_to_matrix`
[INFO] [stdout]   --> src/day5.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn draw_ways_to_matrix(ways: &Vec<Line>, is_drawing_diagonals: bool) -> Mat2d<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_diagonal_line`
[INFO] [stdout]   --> src/day5.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn draw_diagonal_line(matrix: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_line_to_top_right`
[INFO] [stdout]   --> src/day5.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn draw_line_to_top_right(matrix: &mut Mat2d<i32>, x_end: i32, y_end: i32, mut x: i32, mut y: i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_line_to_top_left`
[INFO] [stdout]   --> src/day5.rs:91:4
[INFO] [stdout]    |
[INFO] [stdout] 91 | fn draw_line_to_top_left(matrix: &mut Mat2d<i32>, x_end: i32, y_end: i32, mut x: i32, mut y: i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `init_diagonal_path`
[INFO] [stdout]    --> src/day5.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn init_diagonal_path(line: &&Line) -> (i32, i32, i32, i32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_horizontal_line`
[INFO] [stdout]    --> src/day5.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn draw_horizontal_line(mat: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_line_from_top_to_bottom`
[INFO] [stdout]    --> src/day5.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn draw_line_from_top_to_bottom(mat: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_line_from_bottom_to_top`
[INFO] [stdout]    --> src/day5.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn draw_line_from_bottom_to_top(mat: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_vertical_line`
[INFO] [stdout]    --> src/day5.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn draw_vertical_line(mat: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_line_from_right_to_left`
[INFO] [stdout]    --> src/day5.rs:144:4
[INFO] [stdout]     |
[INFO] [stdout] 144 | fn draw_line_from_right_to_left(mat: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `draw_line_from_left_to_right`
[INFO] [stdout]    --> src/day5.rs:152:4
[INFO] [stdout]     |
[INFO] [stdout] 152 | fn draw_line_from_left_to_right(mat: &mut Mat2d<i32>, line: &&Line) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `max_x`
[INFO] [stdout]    --> src/day5.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn max_x(ways: &&Vec<Line>) -> usize {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `max_y`
[INFO] [stdout]    --> src/day5.rs:171:4
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn max_y(ways: &&Vec<Line>) -> usize {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `count_overlap`
[INFO] [stdout]    --> src/day5.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn count_overlap(matrix: &Mat2d<i32>) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day6`
[INFO] [stdout]  --> src/day6.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day6(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part_1`
[INFO] [stdout]  --> src/day6.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn part_1(data: &String) -> u64 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part_2`
[INFO] [stdout]   --> src/day6.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn part_2(data: &String) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day6.rs:23:15
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub(crate) fn parse_input(input: &String) -> Vec<u8> {
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sort_to_bins`
[INFO] [stdout]   --> src/day6.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn sort_to_bins(pond: &Vec<u8>) -> [u64;9] {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `advance`
[INFO] [stdout]   --> src/day6.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn advance(bins: &[u64; 9], days: i32) -> [u64; 9] {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `count_fish_in_bins`
[INFO] [stdout]   --> src/day6.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn count_fish_in_bins(bins: &[u64; 9]) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day7`
[INFO] [stdout]  --> src/day7.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day7(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day7.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn part1(data : &String) -> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day7.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn part2(data : &String) -> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day7.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_input(input: &String) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `position`
[INFO] [stdout]   --> src/day7.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     position : usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `fuel`
[INFO] [stdout]   --> src/day7.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fuel : i32
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_ways`
[INFO] [stdout]   --> src/day7.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn compute_ways(points: &mut Vec<i32>) -> Vec<Way> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_ways_higher_costs`
[INFO] [stdout]   --> src/day7.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn compute_ways_higher_costs(points: &mut Vec<i32>) -> Vec<Way> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_minimal`
[INFO] [stdout]   --> src/day7.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn get_minimal(ways: &mut Vec<Way>) -> Way {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day8`
[INFO] [stdout]  --> src/day8.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day8(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day8.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn part1(input: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day8.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn part2(input: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `split_wires_and_output`
[INFO] [stdout]   --> src/day8.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn split_wires_and_output(entry: &str) -> (Vec<&str>, Vec<&str>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_displayed_number`
[INFO] [stdout]   --> src/day8.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn determine_displayed_number(output: Vec<&str>, numbers: [&str; 10]) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_wiring_of_numbers`
[INFO] [stdout]   --> src/day8.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn determine_wiring_of_numbers(wires: Vec<&str>) -> [&str; 10] {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `contains_all_chars`
[INFO] [stdout]   --> src/day8.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn contains_all_chars(p0: &&str, p1: &&str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day9`
[INFO] [stdout]  --> src/day9.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn day9(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day9.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn part1(data: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day9.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part2(data : &String) -> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse`
[INFO] [stdout]   --> src/day9.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn parse(data: &String) -> Mat2d<i32> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `create_heat_map`
[INFO] [stdout]   --> src/day9.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn create_heat_map(mat: &Mat2d<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/day12.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]    --> src/day12.rs:200:9
[INFO] [stdout]     |
[INFO] [stdout] 200 |     use std::borrow::Borrow;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `is_lower_than_all_neighbours`
[INFO] [stdout]   --> src/day9.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn is_lower_than_all_neighbours(mat :&Mat2d<i32>, number : &i32, ix : i32, iy : i32) -> bool{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `is_lower`
[INFO] [stdout]   --> src/day9.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn is_lower(num: &i32, neighbour: Option<&i32>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `find_basins`
[INFO] [stdout]   --> src/day9.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn find_basins(mat: &Mat2d<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `scan_basin`
[INFO] [stdout]   --> src/day9.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn scan_basin(mat: &Mat2d<i32>, found_map: &mut Mat2d<bool>, x: usize, y: usize, basin: &mut Vec<i32>) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `try_neighbor`
[INFO] [stdout]    --> src/day9.rs:111:4
[INFO] [stdout]     |
[INFO] [stdout] 111 | fn try_neighbor(mat: &Mat2d<i32>, found_map: &mut Mat2d<bool>, basin: &mut Vec<i32>, ix: i32, iy: i32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day10`
[INFO] [stdout]  --> src/day10.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn day10(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `result`
[INFO] [stdout]   --> src/day10.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn result(data : &String) -> (i32, i64){
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_lines`
[INFO] [stdout]   --> src/day10.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn parse_lines(data: &String) -> Vec<Vec<char>> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `check_for_corruption`
[INFO] [stdout]   --> src/day10.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn check_for_corruption(lines: Vec<Vec<char>>) -> (Vec<Vec<char>>, Vec<i32>, Vec<Vec<char>>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `is_opening_char`
[INFO] [stdout]   --> src/day10.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn is_opening_char(c : &char)-> bool{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `is_closing_char`
[INFO] [stdout]   --> src/day10.rs:61:4
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn is_closing_char(c : &char)-> bool{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum is never used: `BranchResult`
[INFO] [stdout]   --> src/day10.rs:72:6
[INFO] [stdout]    |
[INFO] [stdout] 72 | enum BranchResult<'a>{
[INFO] [stdout]    |      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `new_branch`
[INFO] [stdout]   --> src/day10.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn new_branch<'a>(arr: &'a [char]) -> BranchResult {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_corrupton_value`
[INFO] [stdout]    --> src/day10.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn determine_corrupton_value(c: &char) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_incompleteness`
[INFO] [stdout]    --> src/day10.rs:131:4
[INFO] [stdout]     |
[INFO] [stdout] 131 | fn compute_incompleteness(incomplete: Vec<Vec<char>>) -> i64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_incompleteness_value`
[INFO] [stdout]    --> src/day10.rs:148:4
[INFO] [stdout]     |
[INFO] [stdout] 148 | fn determine_incompleteness_value(c: &char) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_opposing_char`
[INFO] [stdout]    --> src/day10.rs:159:4
[INFO] [stdout]     |
[INFO] [stdout] 159 | fn determine_opposing_char(character: &char) -> char {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day11`
[INFO] [stdout]  --> src/day11.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn day11(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `find_synchronized_event`
[INFO] [stdout]   --> src/day11.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn find_synchronized_event(world: &mut Mat2d<i32>) -> i32{
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `advance_to_generation_and_count_flashes`
[INFO] [stdout]   --> src/day11.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn advance_to_generation_and_count_flashes(world: &mut Mat2d<i32>, generations: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `set_flashed_to_zero`
[INFO] [stdout]   --> src/day11.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn set_flashed_to_zero(world: &mut Mat2d<i32>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `handle_flashes`
[INFO] [stdout]   --> src/day11.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn handle_flashes(world: &mut Mat2d<i32>, mut has_flashed: &mut Mat2d<bool>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `increase_by_one`
[INFO] [stdout]   --> src/day11.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn increase_by_one(world: &mut Mat2d<i32>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `handle_flash`
[INFO] [stdout]   --> src/day11.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn handle_flash(mut world: &mut Mat2d<i32>, has_flashed: &mut Mat2d<bool>, x: usize, y: usize) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `flash_neighbor`
[INFO] [stdout]    --> src/day11.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn flash_neighbor(mut world: &mut Mat2d<i32>, has_flashed: &mut Mat2d<bool>, x: usize, y: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]    --> src/day11.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn parse_input(data: &String) -> Mat2d<i32> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day12`
[INFO] [stdout]  --> src/day12.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn day12(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_to_vertices`
[INFO] [stdout]   --> src/day12.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn parse_to_vertices(data: &String) -> Vec<(&str, &str)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Node`
[INFO] [stdout]   --> src/day12.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct Node{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `check_ways`
[INFO] [stdout]   --> src/day12.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn check_ways(vertices: &Vec<(&str, &str)>, allow_second_time: bool) -> Vec<Vec<Rc<RefCell<Node>>>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `visit_next_node`
[INFO] [stdout]   --> src/day12.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn visit_next_node(node: &Rc<RefCell<Node>>, mut visited: Vec<Rc<RefCell<Node>>>, allow_second_time: bool) -> Vec<Vec<Rc<RefCell<Node>>>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_visit_policy`
[INFO] [stdout]   --> src/day12.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn determine_visit_policy(node: &&Rc<RefCell<Node>>, allow_second_time: bool, count: i32) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `add_to_visited`
[INFO] [stdout]   --> src/day12.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn add_to_visited(node: &&Rc<RefCell<Node>>, mut visited: &mut Vec<Rc<RefCell<Node>>>, allow_second_time: bool) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `filter_ways_which_do_reach_end`
[INFO] [stdout]   --> src/day12.rs:93:4
[INFO] [stdout]    |
[INFO] [stdout] 93 | fn filter_ways_which_do_reach_end(ways: &mut Vec<Vec<Rc<RefCell<Node>>>>) -> Vec<Vec<Rc<RefCell<Node>>>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_is_in_visited`
[INFO] [stdout]    --> src/day12.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn determine_is_in_visited(node: &Rc<RefCell<Node>>, visited: &mut Vec<Rc<RefCell<Node>>>, allow_second_time: bool) -> (Option<Rc<RefCell...
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `to_end`
[INFO] [stdout]    --> src/day12.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn to_end(way: &&Vec<Rc<RefCell<Node>>>) -> bool {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `is_big_cavern`
[INFO] [stdout]    --> src/day12.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn is_big_cavern(node: &&Rc<RefCell<Node>>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_start`
[INFO] [stdout]    --> src/day12.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn get_start(nodes: &Vec<Rc<RefCell<Node>>>) -> Option<Rc<RefCell<Node>>> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `create_nodes_with_vertices`
[INFO] [stdout]    --> src/day12.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn create_nodes_with_vertices(nodes: &mut Vec<Rc<RefCell<Node>>>, from: &&str, to: &&str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_node`
[INFO] [stdout]    --> src/day12.rs:175:4
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn get_node<'a>(nodes: &Vec<Rc<RefCell<Node>>>, name: &&str) -> Option<Rc<RefCell<Node>>> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_node_and_count`
[INFO] [stdout]    --> src/day12.rs:184:4
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn get_node_and_count<'a>(nodes: &Vec<Rc<RefCell<Node>>>, name: &&str, max_count : i32) -> (Option<Rc<RefCell<Node>>>, i32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day13`
[INFO] [stdout]  --> src/day13.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn day13(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day13.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn part1(data :&str) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day13.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn part2(data :&str){
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day13.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn parse_input(data: &String) ->  (Mat2d<bool>, Vec<(String, usize)>){
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_position_line`
[INFO] [stdout]   --> src/day13.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn parse_position_line(line: &str) -> (i32, i32){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_instruction_line`
[INFO] [stdout]   --> src/day13.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn parse_instruction_line(line: &str) -> (String, usize){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `initialize_matrix`
[INFO] [stdout]   --> src/day13.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn initialize_matrix(mut positions: &mut Vec<(i32, i32)>) -> Mat2d<bool> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_max_positions`
[INFO] [stdout]   --> src/day13.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn determine_max_positions(positions: &mut Vec<(i32, i32)>) -> (usize, usize) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `process_instructions`
[INFO] [stdout]   --> src/day13.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn process_instructions(matrix: Mat2d<bool>, instructions: &Vec<(String, usize)>) -> Mat2d<bool> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `horizontal_split`
[INFO] [stdout]    --> src/day13.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn horizontal_split(mat: &mut Mat2d<bool>, position: &usize) -> (Mat2d<bool>, Mat2d<bool>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `vertical_split`
[INFO] [stdout]    --> src/day13.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn vertical_split(mat: &mut Mat2d<bool>, position: &usize) -> (Mat2d<bool>, Mat2d<bool>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `fold_to_bigger`
[INFO] [stdout]    --> src/day13.rs:123:4
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn fold_to_bigger(smaller: Mat2d<bool>, mut bigger: Mat2d<bool>) -> Mat2d<bool> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `print_mat`
[INFO] [stdout]    --> src/day13.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn print_mat(mat : &Mat2d<bool>){
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day14`
[INFO] [stdout]  --> src/day14.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn day14(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day14.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn part1(data: &String) -> i64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day14.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn part2(data: &String) -> i64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_numbers`
[INFO] [stdout]   --> src/day14.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn determine_numbers(polymer: Vec<char>) -> (i64, i64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]   --> src/day14.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn parse_input(data: &String) -> (Vec<char>, Vec<(String, char)>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `read_instruction_line`
[INFO] [stdout]   --> src/day14.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn read_instruction_line(instructions: &mut Vec<(String, char)>, line: &str) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `to_step`
[INFO] [stdout]   --> src/day14.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn to_step(in_polymer: &Vec<char>, instructions : &Vec<(String, char)>, steps: usize) -> Vec<char> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `fetch_actual_instruction`
[INFO] [stdout]   --> src/day14.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn fetch_actual_instruction(input: String, instructions: &Vec<(String, char)>) -> Option<char> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day15`
[INFO] [stdout]  --> src/day15.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day15(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `dijkstra`
[INFO] [stdout]   --> src/day15.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn dijkstra(mat : & Mat2d<i32>, from : (i32,i32), to : (i32, i32) ) -> (Vec<(i32, i32)>, i32) {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `create_entry`
[INFO] [stdout]   --> src/day15.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn create_entry(mat: &Mat2d<i32>, table_not_searched: &mut Vec<((i32, i32), i32, (i32, i32))>, actual_node: (i32, i32), pos: (i32, i32), ...
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `fetch_in_table`
[INFO] [stdout]   --> src/day15.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn fetch_in_table<'a>(entrys: &'a Vec<((i32, i32), i32, (i32, i32)) >, pos : &(i32, i32) ) -> Option<(usize, ((&'a i32, &'a i32), &'a i32...
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `neighboring_valid_positions`
[INFO] [stdout]    --> src/day15.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn neighboring_valid_positions(mat: &Mat2d<i32>, x: i32, y: i32) -> Vec<(i32, i32)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `parse_input`
[INFO] [stdout]    --> src/day15.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn parse_input(data: &String) -> Mat2d<i32> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `unfold_matrix`
[INFO] [stdout]    --> src/day15.rs:144:4
[INFO] [stdout]     |
[INFO] [stdout] 144 | fn unfold_matrix(mat: &Mat2d<i32>) -> Mat2d<i32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `calculate_cost`
[INFO] [stdout]    --> src/day15.rs:174:4
[INFO] [stdout]     |
[INFO] [stdout] 174 | fn calculate_cost(x: &i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `merge`
[INFO] [stdout]    --> src/day15.rs:180:4
[INFO] [stdout]     |
[INFO] [stdout] 180 | fn merge(mat_1: Mat2d<i32>, mat_2: Mat2d<i32>) -> Mat2d<i32> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `print_mat`
[INFO] [stdout]    --> src/day15.rs:194:8
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub fn print_mat(mat : &Mat2d<i32>){
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day16`
[INFO] [stdout]  --> src/day16.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub(crate) fn day16(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `decode`
[INFO] [stdout]   --> src/day16.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn decode(start :usize, bin: &Vec<u8>) -> (usize, u32, u64) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bin_to_dec`
[INFO] [stdout]    --> src/day16.rs:287:4
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn bin_to_dec(bin: &[u8]) -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `read_to_binary`
[INFO] [stdout]    --> src/day16.rs:296:4
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn read_to_binary(input: &String) -> Vec<u8> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day17`
[INFO] [stdout]  --> src/day17.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn day17(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `TargetArea`
[INFO] [stdout]  --> src/day17.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct TargetArea{
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/day17.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn new(x_from: i64, x_to: i64, y_from: i64, y_to: i64) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_hit`
[INFO] [stdout]   --> src/day17.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn is_hit(&self, x: &i64, y: &i64) -> bool {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `next_iteration`
[INFO] [stdout]   --> src/day17.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn next_iteration(x: &mut i64, x_velocity: &mut i64, y: &mut i64, y_velocity: &mut i64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `determine_maximum_height`
[INFO] [stdout]   --> src/day17.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn determine_maximum_height(target_area: &TargetArea) -> (i32, i64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `follow_trajectory`
[INFO] [stdout]   --> src/day17.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn follow_trajectory(target_area: &TargetArea, init_velocity_x: &i64, init_velocity_y: &i64) -> (bool, i64) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/day15.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             mat_new.set_value(col, row, *val);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/day9.rs:114:14
[INFO] [stdout]     |
[INFO] [stdout] 114 |         Some(val) => {
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]   --> src/day12.rs:52:43
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let (element_in_visited_list, count) = determine_is_in_visited(next, &mut visited, allow_second_time);
[INFO] [stdout]    |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `mat` is never read
[INFO] [stdout]   --> src/day13.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut mat = Mat2d::empty();
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/day14.rs:39:47
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let mut as_vec:Vec<i64>= map.iter().map(|(x,y)| *y).collect();
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cost`
[INFO] [stdout]   --> src/day15.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |             let (_,((x_new,y_new),cost,former_new)) = fetch_in_table(&table_searched, &former).unwrap();
[INFO] [stdout]    |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_cost`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]    --> src/day15.rs:215:14
[INFO] [stdout]     |
[INFO] [stdout] 215 |         let (path, cost) = dijkstra(&matrix, (0,0), (matrix.get_width() as i32 - 1, matrix.get_height() as i32 -1));
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> src/day16.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |         let id = bin_to_dec(&binary[start+3..start+6]);
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> src/day16.rs:320:14
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let (pos,sum, _) = decode(0, &binary);
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 221 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `advent_of_code_2021` due to 3 previous errors; 221 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/day11.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn handle_flash(mut world: &mut Mat2d<i32>, has_flashed: &mut Mat2d<bool>, x: usize, y: usize) {
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/day11.rs:108:19
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn flash_neighbor(mut world: &mut Mat2d<i32>, has_flashed: &mut Mat2d<bool>, 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/day12.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let mut visited_nodes:Vec<Rc<RefCell<Node>>> = Vec::new();
[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/day12.rs:58:25
[INFO] [stdout]    |
[INFO] [stdout] 58 |                     for mut x in before.iter() {
[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/day12.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let mut f = get_node(&nodes, from);
[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/day12.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let mut t = get_node(&nodes, to);
[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/day12.rs:138:15
[INFO] [stdout]     |
[INFO] [stdout] 138 |         (Some(mut x), Some(mut y)) => {
[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/day12.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |         (Some(mut x), Some(mut y)) => {
[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/day12.rs:142:15
[INFO] [stdout]     |
[INFO] [stdout] 142 |         (Some(mut x), None) => {
[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/day12.rs:150:21
[INFO] [stdout]     |
[INFO] [stdout] 150 |         (None, Some(mut y)) => {
[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/day12.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |             let mut n = Rc::new(RefCell::new(Node {
[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/day12.rs:163:17
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let mut m = Rc::new(RefCell::new(Node {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot borrow `map` as mutable because it is also borrowed as immutable
[INFO] [stdout]   --> src/day14.rs:36:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let exist = map.get(&x);
[INFO] [stdout]    |                     ----------- immutable borrow occurs here
[INFO] [stdout] ...
[INFO] [stdout] 36 |             Some(y) => {map.insert(*x, y+1);}
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^-^^^
[INFO] [stdout]    |                         |              |
[INFO] [stdout]    |                         |              immutable borrow later used here
[INFO] [stdout]    |                         mutable borrow occurs here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default
[INFO] [stdout]    = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future
[INFO] [stdout]    = note: for more information, see issue #59159 <https://github.com/rust-lang/rust/issues/59159>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot borrow `table_not_searched` as mutable because it is also borrowed as immutable
[INFO] [stdout]   --> src/day15.rs:49:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let val = fetch_in_table(&table_not_searched, &pos);
[INFO] [stdout]    |                                          ------------------- immutable borrow occurs here
[INFO] [stdout] ...
[INFO] [stdout] 49 |                             table_not_searched.push(((x.clone(), y.clone()), current_value, actual_node));
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                             |                         |
[INFO] [stdout]    |                             |                         immutable borrow later used here
[INFO] [stdout]    |                             mutable borrow occurs here
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future
[INFO] [stdout]    = note: for more information, see issue #59159 <https://github.com/rust-lang/rust/issues/59159>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day15.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |     let mut m_right : Vec<i32>= mat_1.vector.iter().map(|x| calculate_cost(x)).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/day15.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     let mut m_right_2 : Vec<i32>= m_right.iter().map(|x| calculate_cost(x)).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/day15.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |     let mut m_right_3 : Vec<i32>= m_right_2.iter().map(|x| calculate_cost(x)).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/day15.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let mut m_right_4 : Vec<i32>= m_right_3.iter().map(|x| calculate_cost(x)).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/mat2d.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let mut mat: Mat2d<i32> = Mat2d::from(
[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/mat2d.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |         let mut mat: Mat2d<i32> = Mat2d::from(
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day1`
[INFO] [stdout]  --> src/day1.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day1(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day2`
[INFO] [stdout]  --> src/day2.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day2(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_and_print_part1`
[INFO] [stdout]   --> src/day2.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn compute_and_print_part1(data: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `compute_and_print_part2`
[INFO] [stdout]   --> src/day2.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn compute_and_print_part2(data: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day3`
[INFO] [stdout]  --> src/day3.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub(crate) fn day3(){
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day4`
[INFO] [stdout]   --> src/day4.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn day4(){
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `resize`
[INFO] [stdout]   --> src/mat2d.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn resize(&mut self, width : usize, height : usize){
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day5`
[INFO] [stdout]  --> src/day5.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn day5(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day5.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn part1(input: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day5.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn part2(input : &String)-> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day6`
[INFO] [stdout]  --> src/day6.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day6(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part_1`
[INFO] [stdout]  --> src/day6.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn part_1(data: &String) -> u64 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part_2`
[INFO] [stdout]   --> src/day6.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn part_2(data: &String) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day7`
[INFO] [stdout]  --> src/day7.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day7(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day7.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn part1(data : &String) -> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day7.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn part2(data : &String) -> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day8`
[INFO] [stdout]  --> src/day8.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn day8(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day9`
[INFO] [stdout]  --> src/day9.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn day9(){
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day9.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn part1(data: &String) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day9.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part2(data : &String) -> i32{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day10`
[INFO] [stdout]  --> src/day10.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn day10(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `result`
[INFO] [stdout]   --> src/day10.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn result(data : &String) -> (i32, i64){
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day11`
[INFO] [stdout]  --> src/day11.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn day11(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day12`
[INFO] [stdout]  --> src/day12.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn day12(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day13`
[INFO] [stdout]  --> src/day13.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn day13(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day13.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn part1(data :&str) -> i32 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day13.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn part2(data :&str){
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day14`
[INFO] [stdout]  --> src/day14.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn day14(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part1`
[INFO] [stdout]   --> src/day14.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn part1(data: &String) -> i64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `part2`
[INFO] [stdout]   --> src/day14.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn part2(data: &String) -> i64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day15`
[INFO] [stdout]  --> src/day15.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day15(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day16`
[INFO] [stdout]  --> src/day16.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub(crate) fn day16(){
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `day17`
[INFO] [stdout]  --> src/day17.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn day17(){
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/day15.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             mat_new.set_value(col, row, *val);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 82 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "c3ad0ba2e14d88123599a70f57ef51c2d74a4d9143df85f342d2a32b35d6304e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3ad0ba2e14d88123599a70f57ef51c2d74a4d9143df85f342d2a32b35d6304e", kill_on_drop: false }`
[INFO] [stdout] c3ad0ba2e14d88123599a70f57ef51c2d74a4d9143df85f342d2a32b35d6304e