[INFO] cloning repository https://github.com/hulufei/aoc-2020
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hulufei/aoc-2020" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhulufei%2Faoc-2020", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhulufei%2Faoc-2020'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 375225df3bb4ce4987e000d05e2d528dd8a0d1d6
[INFO] testing hulufei/aoc-2020 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhulufei%2Faoc-2020" "/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/hulufei/aoc-2020
[INFO] finished tweaking git repo https://github.com/hulufei/aoc-2020
[INFO] tweaked toml for git repo https://github.com/hulufei/aoc-2020 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hulufei/aoc-2020 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hulufei/aoc-2020 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9229fe987aef3631944074d1485fa0fdc72ffa96657d679aead3f2c598ad7084
[INFO] running `Command { std: "docker" "start" "-a" "9229fe987aef3631944074d1485fa0fdc72ffa96657d679aead3f2c598ad7084", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9229fe987aef3631944074d1485fa0fdc72ffa96657d679aead3f2c598ad7084", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9229fe987aef3631944074d1485fa0fdc72ffa96657d679aead3f2c598ad7084", kill_on_drop: false }`
[INFO] [stdout] 9229fe987aef3631944074d1485fa0fdc72ffa96657d679aead3f2c598ad7084
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6202bab6b7447a5a194ba99cfd70c8d140fe3b4d96828b69df1aff678e72b4ac
[INFO] running `Command { std: "docker" "start" "-a" "6202bab6b7447a5a194ba99cfd70c8d140fe3b4d96828b69df1aff678e72b4ac", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc-2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]   --> src/day13/mod.rs:75:24
[INFO] [stdout]    |
[INFO] [stdout] 75 |         .map(|&(i, b)| (b - i as i64))
[INFO] [stdout]    |                        ^            ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 75 -         .map(|&(i, b)| (b - i as i64))
[INFO] [stdout] 75 +         .map(|&(i, b)| b - i as i64 )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_inputs` is never used
[INFO] [stdout]  --> src/day01/mod.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn read_inputs() -> Vec<i64> {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `two_sum` is never used
[INFO] [stdout]   --> src/day01/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn two_sum(input: &[i64], target: i64) -> Option<(i64, i64)> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `three_sum` is never used
[INFO] [stdout]   --> src/day01/mod.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn three_sum(input: &[i64], target: i64) -> Option<(i64, i64, i64)> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day01/mod.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn part_1() -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day01/mod.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn part_2() -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day02/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_policy` is never used
[INFO] [stdout]  --> src/day02/mod.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn parse_policy(policy: &str) -> (usize, usize, char) {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid` is never used
[INFO] [stdout]   --> src/day02/mod.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn is_valid(policy: &str, password: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_2` is never used
[INFO] [stdout]   --> src/day02/mod.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn is_valid_2(policy: &str, password: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_valid_count` is never used
[INFO] [stdout]   --> src/day02/mod.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn get_valid_count<F>(check: F) -> usize
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day02/mod.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn part_1() -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day02/mod.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn part_2() -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day03/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]  --> src/day03/mod.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn part_1() -> usize {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]  --> src/day03/mod.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn part_2() -> usize {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_by_slope` is never used
[INFO] [stdout]   --> src/day03/mod.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn count_by_slope(step_x: usize, step_y: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day04/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_passport` is never used
[INFO] [stdout]  --> src/day04/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn parse_passport(input: &'static str) -> Vec<HashMap<&'static str, &'static str>> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day04/mod.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn part_1(input: &'static str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day04/mod.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn part_2(input: &'static str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day05/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_seat_id` is never used
[INFO] [stdout]  --> src/day05/mod.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn parse_seat_id(input: &str) -> i32 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day05/mod.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn part_1() -> Option<i32> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day05/mod.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn part_2() -> Option<i32> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day06/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_anyone_yes` is never used
[INFO] [stdout]  --> src/day06/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn parse_anyone_yes(input: &str) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_everyone_yes` is never used
[INFO] [stdout]   --> src/day06/mod.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn parse_everyone_yes(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day06/mod.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn part_1() -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day06/mod.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn part_2() -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day07/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]  --> src/day07/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn parse_line(line: &str) -> (&str, &str) {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day07/mod.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn part_1(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line_2` is never used
[INFO] [stdout]   --> src/day07/mod.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn parse_line_2(line: &str) -> (&str, Vec<(usize, String)>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_sum` is never used
[INFO] [stdout]   --> src/day07/mod.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn count_sum(bags: &HashMap<&str, Vec<(usize, String)>>, entry: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day07/mod.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn part_2(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day08/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Operation` is never used
[INFO] [stdout]  --> src/day08/mod.rs:5:6
[INFO] [stdout]   |
[INFO] [stdout] 5 | type Operation = String;
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Argument` is never used
[INFO] [stdout]  --> src/day08/mod.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | type Argument = i32;
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Instruction` is never used
[INFO] [stdout]  --> src/day08/mod.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type Instruction = (Operation, Argument);
[INFO] [stdout]   |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Address` is never used
[INFO] [stdout]   --> src/day08/mod.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | type Address = usize;
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Program` is never used
[INFO] [stdout]   --> src/day08/mod.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type Program = Vec<Instruction>;
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec` is never used
[INFO] [stdout]   --> src/day08/mod.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn exec(program: &Program, start: Address, visited: &mut HashSet<Address>, acc: i32) -> i32 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exec_terminate` is never used
[INFO] [stdout]   --> src/day08/mod.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn exec_terminate(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_program` is never used
[INFO] [stdout]   --> src/day08/mod.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn parse_program(input: &str) -> Program {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day08/mod.rs:93:4
[INFO] [stdout]    |
[INFO] [stdout] 93 | fn part_1(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day08/mod.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn part_2(input: &str) -> i32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day09/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attack` is never used
[INFO] [stdout]  --> src/day09/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn attack(xs: &[i64], window_size: usize) -> i64 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `encrypt` is never used
[INFO] [stdout]   --> src/day09/mod.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn encrypt(xs: &[i64], target: i64) -> i64 {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_numbers` is never used
[INFO] [stdout]   --> src/day09/mod.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn parse_numbers(input: &str) -> Vec<i64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day09/mod.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn part_1(input: &str, window_size: usize) -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day09/mod.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn part_2(input: &str, window_size: usize) -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]   --> src/day09/mod.rs:52:7
[INFO] [stdout]    |
[INFO] [stdout] 52 | const TEST_INPUT: &str = r#"35
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day10/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]  --> src/day10/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn part_1(input: &str) -> usize {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort_input` is never used
[INFO] [stdout]   --> src/day10/mod.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn sort_input(input: &str) -> Vec<u32> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_arrange` is never used
[INFO] [stdout]   --> src/day10/mod.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn total_arrange(sorted_arr: &[u32], index: usize, dp: &mut HashMap<usize, usize>) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day10/mod.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn part_2(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_1` is never used
[INFO] [stdout]   --> src/day10/mod.rs:55:7
[INFO] [stdout]    |
[INFO] [stdout] 55 | const TEST_INPUT_1: &str = r#"16
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT_2` is never used
[INFO] [stdout]   --> src/day10/mod.rs:67:7
[INFO] [stdout]    |
[INFO] [stdout] 67 | const TEST_INPUT_2: &str = r#"28
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day11/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Grid` is never used
[INFO] [stdout]  --> src/day11/mod.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | type Grid = Vec<Vec<u8>>;
[INFO] [stdout]   |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIR` is never used
[INFO] [stdout]  --> src/day11/mod.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const DIR: [(i64, i64); 8] = [
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_adjacent_seats` is never used
[INFO] [stdout]   --> src/day11/mod.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn get_adjacent_seats(grid: &Grid, (row, col): (usize, usize)) -> Vec<&u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evolve` is never used
[INFO] [stdout]   --> src/day11/mod.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn evolve(grid: &Grid) -> Grid {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_neighbour` is never used
[INFO] [stdout]   --> src/day11/mod.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn find_neighbour(grid: &Grid, (dy, dx): (i64, i64), (row, col): (usize, usize)) -> Option<&u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evolve_2` is never used
[INFO] [stdout]   --> src/day11/mod.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn evolve_2(grid: &Grid) -> Grid {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/day11/mod.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn parse_input(input: &str) -> Grid {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day11/mod.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn part_1(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day11/mod.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn part_2(input: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]    --> src/day11/mod.rs:110:7
[INFO] [stdout]     |
[INFO] [stdout] 110 | const TEST_INPUT: &str = r#"L.LL.LL.LL
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day12/mod.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Instruction` is never used
[INFO] [stdout]  --> src/day12/mod.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type Instruction = (char, u32);
[INFO] [stdout]   |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vector` is never constructed
[INFO] [stdout]  --> src/day12/mod.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct Vector {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `turn_clockwise`, `rotate_clockwise`, and `forward` are never used
[INFO] [stdout]   --> src/day12/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl Vector {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 51 |     fn new(x: i32, y: i32, face: char) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn turn_clockwise(&mut self, degree: u32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn rotate_clockwise(&mut self, degree: u32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     fn forward(&mut self, (dir, distance): Instruction) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/day12/mod.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn parse_input(input: &str) -> Vec<Instruction> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]    --> src/day12/mod.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn part_1(input: &str) -> i32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/day12/mod.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn part_2(input: &str) -> i32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EXAMPLE` is never used
[INFO] [stdout]    --> src/day12/mod.rs:137:7
[INFO] [stdout]     |
[INFO] [stdout] 137 | const EXAMPLE: &str = r#"F10
[INFO] [stdout]     |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day13/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]  --> src/day13/mod.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn parse_input(input: &str) -> (u32, Vec<Option<u32>>) {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day13/mod.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn part_1(input: &str) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `egcd` is never used
[INFO] [stdout]   --> src/day13/mod.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn egcd(a: i64, b: i64) -> (i64, i64, i64) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mod_inv` is never used
[INFO] [stdout]   --> src/day13/mod.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn mod_inv(x: i64, n: i64) -> Option<i64> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chinese_remainder` is never used
[INFO] [stdout]   --> src/day13/mod.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn chinese_remainder(residues: &[i64], modulii: &[i64]) -> Option<i64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/day13/mod.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn part_2(input: &str) -> i64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EXAMPLE` is never used
[INFO] [stdout]   --> src/day13/mod.rs:80:7
[INFO] [stdout]    |
[INFO] [stdout] 80 | const EXAMPLE: &str = r#"939
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INPUT` is never used
[INFO] [stdout]  --> src/day14/mod.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const INPUT: &str = include_str!("./input");
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_mask` is never used
[INFO] [stdout]  --> src/day14/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn apply_mask(mask: &str, n: u64) -> u64 {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]   --> src/day14/mod.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn parse_line(line: &str) -> (&str, &str) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/day14/mod.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn part_1(input: &str) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EXAMPLE` is never used
[INFO] [stdout]   --> src/day14/mod.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const EXAMPLE: &str = r#"mask = XXXXXXXXXXXXXXXXXXXXXXXXXXXXX1XXXX0X
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.52s
[INFO] running `Command { std: "docker" "inspect" "6202bab6b7447a5a194ba99cfd70c8d140fe3b4d96828b69df1aff678e72b4ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6202bab6b7447a5a194ba99cfd70c8d140fe3b4d96828b69df1aff678e72b4ac", kill_on_drop: false }`
[INFO] [stdout] 6202bab6b7447a5a194ba99cfd70c8d140fe3b4d96828b69df1aff678e72b4ac
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 17de4d19d0b7e659c03fef6d9fbecf5142145a0afddfa5c4168d8bccddeed20e
[INFO] running `Command { std: "docker" "start" "-a" "17de4d19d0b7e659c03fef6d9fbecf5142145a0afddfa5c4168d8bccddeed20e", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc-2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]   --> src/day13/mod.rs:75:24
[INFO] [stdout]    |
[INFO] [stdout] 75 |         .map(|&(i, b)| (b - i as i64))
[INFO] [stdout]    |                        ^            ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 75 -         .map(|&(i, b)| (b - i as i64))
[INFO] [stdout] 75 +         .map(|&(i, b)| b - i as i64 )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.46s
[INFO] running `Command { std: "docker" "inspect" "17de4d19d0b7e659c03fef6d9fbecf5142145a0afddfa5c4168d8bccddeed20e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17de4d19d0b7e659c03fef6d9fbecf5142145a0afddfa5c4168d8bccddeed20e", kill_on_drop: false }`
[INFO] [stdout] 17de4d19d0b7e659c03fef6d9fbecf5142145a0afddfa5c4168d8bccddeed20e
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] be21b84c39cfd7b8894855b42b8417184d5179c026d33a9c6ca75adfcbf0793c
[INFO] running `Command { std: "docker" "start" "-a" "be21b84c39cfd7b8894855b42b8417184d5179c026d33a9c6ca75adfcbf0793c", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]   --> src/day13/mod.rs:75:24
[INFO] [stderr]    |
[INFO] [stderr] 75 |         .map(|&(i, b)| (b - i as i64))
[INFO] [stderr]    |                        ^            ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 75 -         .map(|&(i, b)| (b - i as i64))
[INFO] [stderr] 75 +         .map(|&(i, b)| b - i as i64 )
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc-2020` (bin "aoc-2020" test) generated 1 warning (run `cargo fix --bin "aoc-2020" -p aoc-2020 --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/aoc_2020-81a5c5b7f82d5e44)
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test day01::test_two_sum ... ok
[INFO] [stdout] test day01::test_three_sum ... ok
[INFO] [stdout] test day01::test_part_1 ... ok
[INFO] [stdout] test day02::test_part_1 ... ok
[INFO] [stdout] test day05::test_part_1 ... ok
[INFO] [stdout] test day05::test_part_2 ... ok
[INFO] [stdout] test day02::test_part_2 ... ok
[INFO] [stdout] test day05::test_seat_id ... ok
[INFO] [stdout] test day06::test_parse_anyone_yes ... ok
[INFO] [stdout] test day06::test_parse_everyone_yes ... ok
[INFO] [stdout] test day07::test_parse_line_2 ... ok
[INFO] [stdout] test day04::test_part_2 ... ok
[INFO] [stdout] test day03::test_part_1 ... ok
[INFO] [stdout] test day04::test_part_1 ... ok
[INFO] [stdout] test day06::test_part_1 ... ok
[INFO] [stdout] test day08::test_part_2 ... ok
[INFO] [stdout] test day07::test_part_2 ... ok
[INFO] [stdout] test day10::test_part_1 ... ok
[INFO] [stdout] test day10::test_part_2 ... ok
[INFO] [stdout] test day09::test_part_1 ... ok
[INFO] [stdout] test day08::test_part_1 ... ok
[INFO] [stdout] test day12::test_part_1 ... ok
[INFO] [stdout] test day12::test_part_2 ... ok
[INFO] [stdout] test day13::test_part_1 ... ok
[INFO] [stdout] test day13::test_part_2 ... ok
[INFO] [stdout] test day14::test_apply_mask ... ok
[INFO] [stdout] test day09::test_part_2 ... ok
[INFO] [stdout] test day14::test_part_1 ... ok
[INFO] [stdout] test day01::test_part_2 ... ok
[INFO] [stdout] test day06::test_part_2 ... ok
[INFO] [stdout] test day03::test_part_2 ... ok
[INFO] [stdout] test day07::test_part_1 ... ok
[INFO] [stdout] test day11::test_part_2 ... ok
[INFO] [stdout] test day11::test_part_1 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "be21b84c39cfd7b8894855b42b8417184d5179c026d33a9c6ca75adfcbf0793c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be21b84c39cfd7b8894855b42b8417184d5179c026d33a9c6ca75adfcbf0793c", kill_on_drop: false }`
[INFO] [stdout] be21b84c39cfd7b8894855b42b8417184d5179c026d33a9c6ca75adfcbf0793c
