[INFO] cloning repository https://github.com/bayangan1991/advent-of-code-2022
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bayangan1991/advent-of-code-2022" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbayangan1991%2Fadvent-of-code-2022", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbayangan1991%2Fadvent-of-code-2022'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b1c3d1eefa98471a62f9b5457fe3a3489ba815f4
[INFO] checking bayangan1991/advent-of-code-2022 against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbayangan1991%2Fadvent-of-code-2022" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bayangan1991/advent-of-code-2022
[INFO] finished tweaking git repo https://github.com/bayangan1991/advent-of-code-2022
[INFO] tweaked toml for git repo https://github.com/bayangan1991/advent-of-code-2022 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bayangan1991/advent-of-code-2022 on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bayangan1991/advent-of-code-2022 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded regex v1.7.0
[INFO] [stderr]   Downloaded serde v1.0.150
[INFO] [stderr]   Downloaded serde_json v1.0.89
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c507e7785ee32a343fecb18ade62455d9d7cf1d420e7a9878ad101d0dee50fb2
[INFO] running `Command { std: "docker" "start" "-a" "c507e7785ee32a343fecb18ade62455d9d7cf1d420e7a9878ad101d0dee50fb2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c507e7785ee32a343fecb18ade62455d9d7cf1d420e7a9878ad101d0dee50fb2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c507e7785ee32a343fecb18ade62455d9d7cf1d420e7a9878ad101d0dee50fb2", kill_on_drop: false }`
[INFO] [stdout] c507e7785ee32a343fecb18ade62455d9d7cf1d420e7a9878ad101d0dee50fb2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9331f411c672f7243c9c14d68087c770d9502a0546b9c1be281b1df7b3e42753
[INFO] running `Command { std: "docker" "start" "-a" "9331f411c672f7243c9c14d68087c770d9502a0546b9c1be281b1df7b3e42753", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.150
[INFO] [stderr]    Compiling serde_json v1.0.89
[INFO] [stderr]     Checking either v1.8.0
[INFO] [stderr]     Checking regex-syntax v0.6.28
[INFO] [stderr]     Checking itoa v1.0.4
[INFO] [stderr]     Checking itertools v0.12.0
[INFO] [stderr]     Checking regex v1.7.0
[INFO] [stderr]     Checking advent-of-code-2022 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/days/day_15.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Point(i32, i32);
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `distance`, `in_range`, `edges_at_row`, and `points_in_row` are never used
[INFO] [stdout]   --> src/days/day_15.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Point {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] 23 |     fn distance(&self, other: &Point) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn in_range(&self, loc: &Point, other: &Point) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn edges_at_row(&self, range: i32, y: i32) -> (Point, Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn points_in_row(&self, range: u32, y: i32) -> HashSet<Point> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sensor` is never constructed
[INFO] [stdout]   --> src/days/day_15.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct Sensor {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `points_in_row`, `range`, `edges_at_row`, `in_range`, and `edges` are never used
[INFO] [stdout]   --> src/days/day_15.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Sensor {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 58 |     fn points_in_row(&self, y: i32, range_bonus: Option<u32>) -> HashSet<Point> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn range(&self) -> u32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn edges_at_row(&self, y: i32, range_bonus: Option<i32>) -> (Point, Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     fn in_range(&self, loc: &Point) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn edges(&self) -> HashSet<Point> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/days/day_15.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn exec() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_a` is never used
[INFO] [stdout]    --> src/days/day_15.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn part_a(filename: &str, target_row: i32) -> usize {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_b` is never used
[INFO] [stdout]    --> src/days/day_15.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn part_b(filename: &str, max_edge: i32) -> u64 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_points` is never used
[INFO] [stdout]    --> src/days/day_15.rs:164:4
[INFO] [stdout]     |
[INFO] [stdout] 164 | fn parse_points(filename: &str) -> HashMap<Point, Sensor> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]    --> src/days/day_15.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn parse_line(line: &str) -> Sensor {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `visualise` is never used
[INFO] [stdout]    --> src/days/day_15.rs:195:4
[INFO] [stdout]     |
[INFO] [stdout] 195 | fn visualise(sensors: &HashMap<Point, Sensor>, active: Option<&Point>) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Cache` is never used
[INFO] [stdout]  --> src/days/day_16.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type Cache = HashMap<(usize, u64, usize), (usize, HashSet<usize>)>;
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValveTemp` is never constructed
[INFO] [stdout]  --> src/days/day_16.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct ValveTemp {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Valve` is never constructed
[INFO] [stdout]   --> src/days/day_16.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Valve {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Graph` is never used
[INFO] [stdout]   --> src/days/day_16.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type Graph = HashMap<usize, Valve>;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/days/day_16.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn exec() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_hash` is never used
[INFO] [stdout]   --> src/days/day_16.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn calc_hash<I, J>(items: I) -> u64
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/days/day_16.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn dfs(
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_opened` is never used
[INFO] [stdout]    --> src/days/day_16.rs:158:4
[INFO] [stdout]     |
[INFO] [stdout] 158 | fn print_opened(opened: &HashSet<usize>, lookup: &HashMap<usize, &str>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]    --> src/days/day_16.rs:168:4
[INFO] [stdout]     |
[INFO] [stdout] 168 | fn parse_line(line: &str) -> ValveTemp {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Space` is never used
[INFO] [stdout]  --> src/days/day_17.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum Space {
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Room` is never used
[INFO] [stdout]   --> src/days/day_17.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type Room = Vec<Vec<Space>>;
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Gases` is never used
[INFO] [stdout]   --> src/days/day_17.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | type Gases = VecDeque<i32>;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECES` is never used
[INFO] [stdout]   --> src/days/day_17.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const PIECES: &'static [[[Space; 4]; 4]; 5] = &[
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/days/day_17.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn exec() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trim_room` is never used
[INFO] [stdout]    --> src/days/day_17.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn trim_room(room: &mut Room) -> u128 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_block` is never used
[INFO] [stdout]    --> src/days/day_17.rs:147:4
[INFO] [stdout]     |
[INFO] [stdout] 147 | fn add_block(room: &mut Room, block_index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate_block` is never used
[INFO] [stdout]    --> src/days/day_17.rs:164:4
[INFO] [stdout]     |
[INFO] [stdout] 164 | fn simulate_block(room: &mut Room, gases: &mut Gases) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_move` is never used
[INFO] [stdout]    --> src/days/day_17.rs:216:4
[INFO] [stdout]     |
[INFO] [stdout] 216 | fn can_move(room: &Room, y_mod: i32, x_mod: i32) -> bool {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_room` is never used
[INFO] [stdout]    --> src/days/day_17.rs:245:4
[INFO] [stdout]     |
[INFO] [stdout] 245 | fn hash_room(room: &Room, last_block_index: u128) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_hash` is never used
[INFO] [stdout]    --> src/days/day_17.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 | fn calc_hash<I, J>(items: I) -> u64
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]    --> src/days/day_17.rs:271:4
[INFO] [stdout]     |
[INFO] [stdout] 271 | fn parse_input(filename: &str) -> Gases {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `visualise` is never used
[INFO] [stdout]    --> src/days/day_17.rs:280:4
[INFO] [stdout]     |
[INFO] [stdout] 280 | fn visualise(room: &Room) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/days/day_15.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Point(i32, i32);
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `distance`, `in_range`, `edges_at_row`, and `points_in_row` are never used
[INFO] [stdout]   --> src/days/day_15.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Point {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] 23 |     fn distance(&self, other: &Point) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn in_range(&self, loc: &Point, other: &Point) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn edges_at_row(&self, range: i32, y: i32) -> (Point, Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn points_in_row(&self, range: u32, y: i32) -> HashSet<Point> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sensor` is never constructed
[INFO] [stdout]   --> src/days/day_15.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct Sensor {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `points_in_row`, `range`, `edges_at_row`, `in_range`, and `edges` are never used
[INFO] [stdout]   --> src/days/day_15.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Sensor {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 58 |     fn points_in_row(&self, y: i32, range_bonus: Option<u32>) -> HashSet<Point> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn range(&self) -> u32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn edges_at_row(&self, y: i32, range_bonus: Option<i32>) -> (Point, Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     fn in_range(&self, loc: &Point) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn edges(&self) -> HashSet<Point> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/days/day_15.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn exec() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_a` is never used
[INFO] [stdout]    --> src/days/day_15.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn part_a(filename: &str, target_row: i32) -> usize {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_b` is never used
[INFO] [stdout]    --> src/days/day_15.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn part_b(filename: &str, max_edge: i32) -> u64 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_points` is never used
[INFO] [stdout]    --> src/days/day_15.rs:164:4
[INFO] [stdout]     |
[INFO] [stdout] 164 | fn parse_points(filename: &str) -> HashMap<Point, Sensor> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]    --> src/days/day_15.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn parse_line(line: &str) -> Sensor {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `visualise` is never used
[INFO] [stdout]    --> src/days/day_15.rs:195:4
[INFO] [stdout]     |
[INFO] [stdout] 195 | fn visualise(sensors: &HashMap<Point, Sensor>, active: Option<&Point>) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Cache` is never used
[INFO] [stdout]  --> src/days/day_16.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type Cache = HashMap<(usize, u64, usize), (usize, HashSet<usize>)>;
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValveTemp` is never constructed
[INFO] [stdout]  --> src/days/day_16.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct ValveTemp {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Valve` is never constructed
[INFO] [stdout]   --> src/days/day_16.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Valve {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Graph` is never used
[INFO] [stdout]   --> src/days/day_16.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type Graph = HashMap<usize, Valve>;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/days/day_16.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn exec() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_hash` is never used
[INFO] [stdout]   --> src/days/day_16.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn calc_hash<I, J>(items: I) -> u64
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/days/day_16.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn dfs(
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_opened` is never used
[INFO] [stdout]    --> src/days/day_16.rs:158:4
[INFO] [stdout]     |
[INFO] [stdout] 158 | fn print_opened(opened: &HashSet<usize>, lookup: &HashMap<usize, &str>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]    --> src/days/day_16.rs:168:4
[INFO] [stdout]     |
[INFO] [stdout] 168 | fn parse_line(line: &str) -> ValveTemp {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Space` is never used
[INFO] [stdout]  --> src/days/day_17.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum Space {
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Room` is never used
[INFO] [stdout]   --> src/days/day_17.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type Room = Vec<Vec<Space>>;
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Gases` is never used
[INFO] [stdout]   --> src/days/day_17.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | type Gases = VecDeque<i32>;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECES` is never used
[INFO] [stdout]   --> src/days/day_17.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const PIECES: &'static [[[Space; 4]; 4]; 5] = &[
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/days/day_17.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn exec() {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trim_room` is never used
[INFO] [stdout]    --> src/days/day_17.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn trim_room(room: &mut Room) -> u128 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_block` is never used
[INFO] [stdout]    --> src/days/day_17.rs:147:4
[INFO] [stdout]     |
[INFO] [stdout] 147 | fn add_block(room: &mut Room, block_index: usize) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate_block` is never used
[INFO] [stdout]    --> src/days/day_17.rs:164:4
[INFO] [stdout]     |
[INFO] [stdout] 164 | fn simulate_block(room: &mut Room, gases: &mut Gases) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_move` is never used
[INFO] [stdout]    --> src/days/day_17.rs:216:4
[INFO] [stdout]     |
[INFO] [stdout] 216 | fn can_move(room: &Room, y_mod: i32, x_mod: i32) -> bool {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_room` is never used
[INFO] [stdout]    --> src/days/day_17.rs:245:4
[INFO] [stdout]     |
[INFO] [stdout] 245 | fn hash_room(room: &Room, last_block_index: u128) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_hash` is never used
[INFO] [stdout]    --> src/days/day_17.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 | fn calc_hash<I, J>(items: I) -> u64
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]    --> src/days/day_17.rs:271:4
[INFO] [stdout]     |
[INFO] [stdout] 271 | fn parse_input(filename: &str) -> Gases {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `visualise` is never used
[INFO] [stdout]    --> src/days/day_17.rs:280:4
[INFO] [stdout]     |
[INFO] [stdout] 280 | fn visualise(room: &Room) {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.03s
[INFO] running `Command { std: "docker" "inspect" "9331f411c672f7243c9c14d68087c770d9502a0546b9c1be281b1df7b3e42753", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9331f411c672f7243c9c14d68087c770d9502a0546b9c1be281b1df7b3e42753", kill_on_drop: false }`
[INFO] [stdout] 9331f411c672f7243c9c14d68087c770d9502a0546b9c1be281b1df7b3e42753
