[INFO] cloning repository https://github.com/flakelolz/nooch
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/flakelolz/nooch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflakelolz%2Fnooch", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflakelolz%2Fnooch'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f88a6ed74af779411b411053c1a574868c1192e
[INFO] testing flakelolz/nooch against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflakelolz%2Fnooch" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/flakelolz/nooch
[INFO] finished tweaking git repo https://github.com/flakelolz/nooch
[INFO] tweaked toml for git repo https://github.com/flakelolz/nooch written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/flakelolz/nooch 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/flakelolz/nooch 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] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/flakelolz/glam-rs`
[INFO] [stderr]     Updating git repository `https://github.com/Indra-db/Flecs-Rust`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded specs-derive v0.4.1
[INFO] [stderr]   Downloaded shrev v1.1.3
[INFO] [stderr]   Downloaded tuple_utils v0.3.0
[INFO] [stderr]   Downloaded mopa v0.2.2
[INFO] [stderr]   Downloaded wayland-sys v0.31.4
[INFO] [stderr]   Downloaded wayland-cursor v0.31.5
[INFO] [stderr]   Downloaded flecs_ecs_derive v0.1.0
[INFO] [stderr]   Downloaded mint v0.5.9
[INFO] [stderr]   Downloaded crossbeam-queue v0.2.3
[INFO] [stderr]   Downloaded lazy-bytes-cast v5.0.1
[INFO] [stderr]   Downloaded clipboard-win v3.1.1
[INFO] [stderr]   Downloaded x11-clipboard v0.9.2
[INFO] [stderr]   Downloaded aseprite v0.1.3
[INFO] [stderr]   Downloaded thiserror v1.0.63
[INFO] [stderr]   Downloaded wayland-client v0.31.5
[INFO] [stderr]   Downloaded polling v3.7.3
[INFO] [stderr]   Downloaded wayland-backend v0.3.6
[INFO] [stderr]   Downloaded specs v0.16.1
[INFO] [stderr]   Downloaded serde_json v1.0.125
[INFO] [stderr]   Downloaded wayland-protocols v0.32.3
[INFO] [stderr]   Downloaded imgui v0.12.0
[INFO] [stderr]   Downloaded syn v2.0.74
[INFO] [stderr]   Downloaded quick-xml v0.34.0
[INFO] [stderr]   Downloaded compact_str v0.8.0
[INFO] [stderr]   Downloaded prettyplease v0.2.20
[INFO] [stderr]   Downloaded cc v1.1.13
[INFO] [stderr]   Downloaded flecs_ecs v0.1.3
[INFO] [stderr]   Downloaded regex v1.10.6
[INFO] [stderr]   Downloaded indexmap v2.4.0
[INFO] [stderr]   Downloaded hibitset v0.6.4
[INFO] [stderr]   Downloaded regex-syntax v0.8.4
[INFO] [stderr]   Downloaded hashbrown v0.7.2
[INFO] [stderr]   Downloaded rustversion v1.0.17
[INFO] [stderr]   Downloaded cmake v0.1.51
[INFO] [stderr]   Downloaded ahash v0.3.8
[INFO] [stderr]   Downloaded tynm v0.1.10
[INFO] [stderr]   Downloaded shred v0.10.2
[INFO] [stderr]   Downloaded raylib v5.0.1
[INFO] [stderr]   Downloaded redox_syscall v0.5.3
[INFO] [stderr]   Downloaded libloading v0.8.5
[INFO] [stderr]   Downloaded serde v1.0.208
[INFO] [stderr]   Downloaded thiserror-impl v1.0.63
[INFO] [stderr]   Downloaded wayland-protocols-wlr v0.3.3
[INFO] [stderr]   Downloaded wayland-scanner v0.31.4
[INFO] [stderr]   Downloaded serde_derive v1.0.208
[INFO] [stderr]   Downloaded regex-automata v0.4.7
[INFO] [stderr]   Downloaded copypasta v0.10.1
[INFO] [stderr]   Downloaded flecs_ecs_sys v0.1.2
[INFO] [stderr]   Downloaded castaway v0.2.3
[INFO] [stderr]   Downloaded chlorine v1.0.12
[INFO] [stderr]   Downloaded libc v0.2.156
[INFO] [stderr]   Downloaded raylib-sys v5.0.0
[INFO] [stderr]   Downloaded imgui-sys v0.12.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5ece62e171544b4f4f1e7e34f46f0bbe18f5359297268541376e77fe4903c0c8
[INFO] running `Command { std: "docker" "start" "-a" "5ece62e171544b4f4f1e7e34f46f0bbe18f5359297268541376e77fe4903c0c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5ece62e171544b4f4f1e7e34f46f0bbe18f5359297268541376e77fe4903c0c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ece62e171544b4f4f1e7e34f46f0bbe18f5359297268541376e77fe4903c0c8", kill_on_drop: false }`
[INFO] [stdout] 5ece62e171544b4f4f1e7e34f46f0bbe18f5359297268541376e77fe4903c0c8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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] bed45b37c1d4f2ebbf798382ea4b06f076c37a0958225afadf1e208f4ceaf253
[INFO] running `Command { std: "docker" "start" "-a" "bed45b37c1d4f2ebbf798382ea4b06f076c37a0958225afadf1e208f4ceaf253", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling prettyplease v0.2.20
[INFO] [stderr]    Compiling libc v0.2.156
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling cc v1.1.13
[INFO] [stderr]    Compiling libloading v0.8.5
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling bindgen v0.69.4
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling wayland-sys v0.31.4
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling wayland-client v0.31.5
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling thiserror v1.0.63
[INFO] [stderr]    Compiling rustversion v1.0.17
[INFO] [stderr]    Compiling serde v1.0.208
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling hashbrown v0.7.2
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling quick-xml v0.34.0
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling castaway v0.2.3
[INFO] [stderr]    Compiling syn v2.0.74
[INFO] [stderr]    Compiling cmake v0.1.51
[INFO] [stderr]    Compiling ahash v0.3.8
[INFO] [stderr]    Compiling xcursor v0.3.8
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling smithay-client-toolkit v0.19.2
[INFO] [stderr]    Compiling wayland-backend v0.3.6
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling cursor-icon v1.1.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling wayland-scanner v0.31.4
[INFO] [stderr]    Compiling compact_str v0.8.0
[INFO] [stderr]    Compiling imgui-sys v0.12.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling memmap2 v0.9.4
[INFO] [stderr]    Compiling serde_json v1.0.125
[INFO] [stderr]    Compiling xkeysym v0.2.1
[INFO] [stderr]    Compiling arrayvec v0.5.2
[INFO] [stderr]    Compiling x11rb-protocol v0.13.1
[INFO] [stderr]    Compiling mopa v0.2.2
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling tuple_utils v0.3.0
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling tynm v0.1.10
[INFO] [stderr]    Compiling chlorine v1.0.12
[INFO] [stderr]    Compiling shrev v1.1.3
[INFO] [stderr]    Compiling mint v0.5.9
[INFO] [stderr]    Compiling hibitset v0.6.4
[INFO] [stderr]    Compiling include_dir_macros v0.7.4
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling shred v0.10.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling include_dir v0.7.4
[INFO] [stderr]    Compiling specs v0.16.1
[INFO] [stderr]    Compiling specs-derive v0.4.1
[INFO] [stderr]    Compiling regex v1.10.6
[INFO] [stderr]    Compiling polling v3.7.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]    Compiling serde_derive v1.0.208
[INFO] [stderr]    Compiling flecs_ecs_derive v0.1.0 (https://github.com/Indra-db/Flecs-Rust?branch=meta-V2#6b265ecc)
[INFO] [stderr]    Compiling flecs_ecs_derive v0.1.0
[INFO] [stderr]    Compiling calloop v0.13.0
[INFO] [stderr]    Compiling wayland-csd-frame v0.3.0
[INFO] [stderr]    Compiling x11rb v0.13.1
[INFO] [stderr]    Compiling wayland-protocols v0.32.3
[INFO] [stderr]    Compiling calloop-wayland-source v0.3.0
[INFO] [stderr]    Compiling wayland-cursor v0.31.5
[INFO] [stderr]    Compiling x11-clipboard v0.9.2
[INFO] [stderr]    Compiling flecs_ecs_sys v0.1.2 (https://github.com/Indra-db/Flecs-Rust?branch=meta-V2#6b265ecc)
[INFO] [stderr]    Compiling raylib-sys v5.0.0
[INFO] [stderr]    Compiling flecs_ecs_sys v0.1.2
[INFO] [stderr]    Compiling imgui v0.12.0
[INFO] [stderr]    Compiling wayland-protocols-wlr v0.3.3
[INFO] [stderr]    Compiling indexmap v2.4.0
[INFO] [stderr]    Compiling aseprite v0.1.3
[INFO] [stderr]    Compiling smithay-clipboard v0.7.2
[INFO] [stderr]    Compiling copypasta v0.10.1
[INFO] [stderr]    Compiling flecs_ecs v0.1.3
[INFO] [stderr]    Compiling flecs_ecs v0.1.3 (https://github.com/Indra-db/Flecs-Rust?branch=meta-V2#6b265ecc)
[INFO] [stderr]    Compiling raylib v5.0.1
[INFO] [stderr]    Compiling glam v0.28.0 (https://github.com/flakelolz/glam-rs#d9315da2)
[INFO] [stderr]    Compiling nooch v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/collisions/mod.rs:144:32
[INFO] [stdout]     |
[INFO] [stdout] 144 |                         .get::<(&mut StateMachine)>(|state| {
[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] 144 -                         .get::<(&mut StateMachine)>(|state| {
[INFO] [stdout] 144 +                         .get::<&mut StateMachine >(|state| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `physics`
[INFO] [stdout]  --> src/input/buffer.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::{physics, prelude::*};
[INFO] [stdout]   |             ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `motion`
[INFO] [stdout]    --> src/input/motions.rs:218:32
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_motion`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `button`
[INFO] [stdout]    --> src/input/motions.rs:218:49
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/input/motions.rs:218:66
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]    --> src/input/motions.rs:218:80
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b_physics`
[INFO] [stdout]   --> src/reactions/mod.rs:31:69
[INFO] [stdout]    |
[INFO] [stdout] 31 |                         .get::<(&mut Physics, &mut StateMachine)>(|(b_physics, b_state)| {
[INFO] [stdout]    |                                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_physics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `info`, `inputs`, `proximity`, and `all` are never read
[INFO] [stdout]   --> src/debug/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DebugUI {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 11 |     pub editor: bool,
[INFO] [stdout] 12 |     pub info: bool,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub inputs: bool,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub proximity: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub all: bool,
[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 `toggle`, `all_false`, and `all_true` are never used
[INFO] [stdout]    --> src/debug/mod.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl DebugUI {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout]  45 |     pub fn toggle(&mut self, rl: &mut RaylibHandle) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     fn all_false(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn all_true(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_360` is never used
[INFO] [stdout]   --> src/drawing/mod.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl DisplayCongfig {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 32 |     pub fn set_360(&mut self, rl: &mut RaylibHandle, camera: &mut Camera2D) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `just_pressed` and `released` are never used
[INFO] [stdout]   --> src/input/buffer.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl Buffer {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn just_pressed(&self, button: Buttons) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn released(&self, button: Buttons) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Qcb`, `Dpb`, `Hcf`, and `Hcb` are never constructed
[INFO] [stdout]   --> src/input/motions.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum Motions {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout]  5 |     Qcf,
[INFO] [stdout]  6 |     Qcb,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]  7 |     Dpf,
[INFO] [stdout]  8 |     Dpb,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]  9 |     Hcf,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 10 |     Hcb,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Motions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `motion_timed` is never used
[INFO] [stdout]    --> src/input/motions.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl Buffer {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_add_x_position` is never used
[INFO] [stdout]   --> src/physics/mod.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Physics {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn can_add_x_position(&mut self, add: i32) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpperRising` is never constructed
[INFO] [stdout]   --> src/state_machine/states/common/reacting.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct UpperRising;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FrontSpin` is never constructed
[INFO] [stdout]   --> src/state_machine/states/common/reacting.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct FrontSpin;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BackSpin` is never constructed
[INFO] [stdout]   --> src/state_machine/states/common/reacting.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub struct BackSpin;
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerWeak` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub struct LowerWeak;
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerMid` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct LowerMid;
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerStrong` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub struct LowerStrong;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerRising` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 174 | pub struct LowerRising;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CrouchWeak` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub struct CrouchWeak;
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CrouchMid` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct CrouchMid;
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CrouchStrong` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct CrouchStrong;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdStandPre` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:250:12
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub struct GrdStandPre;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdStandEnd` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:269:12
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub struct GrdStandEnd;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdCrouchPre` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:290:12
[INFO] [stdout]     |
[INFO] [stdout] 290 | pub struct GrdCrouchPre;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdCrouchEnd` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub struct GrdCrouchEnd;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `common_crouching_reaction_transitions` is never used
[INFO] [stdout]   --> src/state_machine/transitions/react.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn common_crouching_reaction_transitions(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `screen_to_world_num` is never used
[INFO] [stdout]  --> src/utils/math.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn screen_to_world_num(coord: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `screen_to_world` is never used
[INFO] [stdout]   --> src/utils/math.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn screen_to_world(coord: IVec2) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ui_to_sprite` is never used
[INFO] [stdout]   --> src/utils/math.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn ui_to_sprite(x: i32, y: i32) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `screen_to_sprite` is never used
[INFO] [stdout]   --> src/utils/math.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn screen_to_sprite(x: f32, y: f32, w: i32, h: i32) -> (f32, f32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FWIDTH` is never used
[INFO] [stdout]   --> src/main.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub const FWIDTH: f32 = WIDTH as f32;
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FHEIGHT` is never used
[INFO] [stdout]   --> src/main.rs:37:15
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub const FHEIGHT: f32 = HEIGHT as f32;
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 10s
[INFO] running `Command { std: "docker" "inspect" "bed45b37c1d4f2ebbf798382ea4b06f076c37a0958225afadf1e208f4ceaf253", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bed45b37c1d4f2ebbf798382ea4b06f076c37a0958225afadf1e208f4ceaf253", kill_on_drop: false }`
[INFO] [stdout] bed45b37c1d4f2ebbf798382ea4b06f076c37a0958225afadf1e208f4ceaf253
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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] ab6b332dcc9947b9c2210ad163d396a470ce084963847b27427463051e7d6e30
[INFO] running `Command { std: "docker" "start" "-a" "ab6b332dcc9947b9c2210ad163d396a470ce084963847b27427463051e7d6e30", kill_on_drop: false }`
[INFO] [stderr]    Compiling nooch v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/collisions/mod.rs:144:32
[INFO] [stdout]     |
[INFO] [stdout] 144 |                         .get::<(&mut StateMachine)>(|state| {
[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] 144 -                         .get::<(&mut StateMachine)>(|state| {
[INFO] [stdout] 144 +                         .get::<&mut StateMachine >(|state| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `physics`
[INFO] [stdout]  --> src/input/buffer.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::{physics, prelude::*};
[INFO] [stdout]   |             ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `motion`
[INFO] [stdout]    --> src/input/motions.rs:218:32
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_motion`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `button`
[INFO] [stdout]    --> src/input/motions.rs:218:49
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/input/motions.rs:218:66
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]    --> src/input/motions.rs:218:80
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |                                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b_physics`
[INFO] [stdout]   --> src/reactions/mod.rs:31:69
[INFO] [stdout]    |
[INFO] [stdout] 31 |                         .get::<(&mut Physics, &mut StateMachine)>(|(b_physics, b_state)| {
[INFO] [stdout]    |                                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_physics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `info`, `inputs`, `proximity`, and `all` are never read
[INFO] [stdout]   --> src/debug/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DebugUI {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 11 |     pub editor: bool,
[INFO] [stdout] 12 |     pub info: bool,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub inputs: bool,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub proximity: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub all: bool,
[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 `toggle`, `all_false`, and `all_true` are never used
[INFO] [stdout]    --> src/debug/mod.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl DebugUI {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout]  45 |     pub fn toggle(&mut self, rl: &mut RaylibHandle) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     fn all_false(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn all_true(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_360` is never used
[INFO] [stdout]   --> src/drawing/mod.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl DisplayCongfig {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 32 |     pub fn set_360(&mut self, rl: &mut RaylibHandle, camera: &mut Camera2D) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `just_pressed` and `released` are never used
[INFO] [stdout]   --> src/input/buffer.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl Buffer {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn just_pressed(&self, button: Buttons) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn released(&self, button: Buttons) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Qcb`, `Dpb`, `Hcf`, and `Hcb` are never constructed
[INFO] [stdout]   --> src/input/motions.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum Motions {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout]  5 |     Qcf,
[INFO] [stdout]  6 |     Qcb,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]  7 |     Dpf,
[INFO] [stdout]  8 |     Dpb,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]  9 |     Hcf,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 10 |     Hcb,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Motions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `motion_timed` is never used
[INFO] [stdout]    --> src/input/motions.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl Buffer {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_add_x_position` is never used
[INFO] [stdout]   --> src/physics/mod.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Physics {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn can_add_x_position(&mut self, add: i32) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpperRising` is never constructed
[INFO] [stdout]   --> src/state_machine/states/common/reacting.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct UpperRising;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FrontSpin` is never constructed
[INFO] [stdout]   --> src/state_machine/states/common/reacting.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct FrontSpin;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BackSpin` is never constructed
[INFO] [stdout]   --> src/state_machine/states/common/reacting.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub struct BackSpin;
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerWeak` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub struct LowerWeak;
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerMid` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct LowerMid;
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerStrong` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub struct LowerStrong;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LowerRising` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 174 | pub struct LowerRising;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CrouchWeak` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub struct CrouchWeak;
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CrouchMid` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct CrouchMid;
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CrouchStrong` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct CrouchStrong;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdStandPre` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:250:12
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub struct GrdStandPre;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdStandEnd` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:269:12
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub struct GrdStandEnd;
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdCrouchPre` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:290:12
[INFO] [stdout]     |
[INFO] [stdout] 290 | pub struct GrdCrouchPre;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrdCrouchEnd` is never constructed
[INFO] [stdout]    --> src/state_machine/states/common/reacting.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub struct GrdCrouchEnd;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `common_crouching_reaction_transitions` is never used
[INFO] [stdout]   --> src/state_machine/transitions/react.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn common_crouching_reaction_transitions(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `screen_to_world_num` is never used
[INFO] [stdout]  --> src/utils/math.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn screen_to_world_num(coord: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `screen_to_world` is never used
[INFO] [stdout]   --> src/utils/math.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn screen_to_world(coord: IVec2) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ui_to_sprite` is never used
[INFO] [stdout]   --> src/utils/math.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn ui_to_sprite(x: i32, y: i32) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `screen_to_sprite` is never used
[INFO] [stdout]   --> src/utils/math.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn screen_to_sprite(x: f32, y: f32, w: i32, h: i32) -> (f32, f32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FWIDTH` is never used
[INFO] [stdout]   --> src/main.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub const FWIDTH: f32 = WIDTH as f32;
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FHEIGHT` is never used
[INFO] [stdout]   --> src/main.rs:37:15
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub const FHEIGHT: f32 = HEIGHT as f32;
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.09s
[INFO] running `Command { std: "docker" "inspect" "ab6b332dcc9947b9c2210ad163d396a470ce084963847b27427463051e7d6e30", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab6b332dcc9947b9c2210ad163d396a470ce084963847b27427463051e7d6e30", kill_on_drop: false }`
[INFO] [stdout] ab6b332dcc9947b9c2210ad163d396a470ce084963847b27427463051e7d6e30
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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] 157bd92b03107819f98ae2f745257eccd3f40b65bcee18d67f7536cb1e277725
[INFO] running `Command { std: "docker" "start" "-a" "157bd92b03107819f98ae2f745257eccd3f40b65bcee18d67f7536cb1e277725", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/collisions/mod.rs:144:32
[INFO] [stderr]     |
[INFO] [stderr] 144 |                         .get::<(&mut StateMachine)>(|state| {
[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] 144 -                         .get::<(&mut StateMachine)>(|state| {
[INFO] [stderr] 144 +                         .get::<&mut StateMachine >(|state| {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `physics`
[INFO] [stderr]  --> src/input/buffer.rs:2:13
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::{physics, prelude::*};
[INFO] [stderr]   |             ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `motion`
[INFO] [stderr]    --> src/input/motions.rs:218:32
[INFO] [stderr]     |
[INFO] [stderr] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stderr]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_motion`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `button`
[INFO] [stderr]    --> src/input/motions.rs:218:49
[INFO] [stderr]     |
[INFO] [stderr] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stderr]     |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `range`
[INFO] [stderr]    --> src/input/motions.rs:218:66
[INFO] [stderr]     |
[INFO] [stderr] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stderr]     |                                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `left`
[INFO] [stderr]    --> src/input/motions.rs:218:80
[INFO] [stderr]     |
[INFO] [stderr] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stderr]     |                                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `b_physics`
[INFO] [stderr]   --> src/reactions/mod.rs:31:69
[INFO] [stderr]    |
[INFO] [stderr] 31 |                         .get::<(&mut Physics, &mut StateMachine)>(|(b_physics, b_state)| {
[INFO] [stderr]    |                                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_physics`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `info`, `inputs`, `proximity`, and `all` are never read
[INFO] [stderr]   --> src/debug/mod.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct DebugUI {
[INFO] [stderr]    |            ------- fields in this struct
[INFO] [stderr] 11 |     pub editor: bool,
[INFO] [stderr] 12 |     pub info: bool,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     pub inputs: bool,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 19 |     pub proximity: bool,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     pub all: bool,
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `toggle`, `all_false`, and `all_true` are never used
[INFO] [stderr]    --> src/debug/mod.rs:45:12
[INFO] [stderr]     |
[INFO] [stderr]  44 | impl DebugUI {
[INFO] [stderr]     | ------------ methods in this implementation
[INFO] [stderr]  45 |     pub fn toggle(&mut self, rl: &mut RaylibHandle) {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  96 |     fn all_false(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 113 |     fn all_true(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `set_360` is never used
[INFO] [stderr]   --> src/drawing/mod.rs:32:12
[INFO] [stderr]    |
[INFO] [stderr] 31 | impl DisplayCongfig {
[INFO] [stderr]    | ------------------- method in this implementation
[INFO] [stderr] 32 |     pub fn set_360(&mut self, rl: &mut RaylibHandle, camera: &mut Camera2D) {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `just_pressed` and `released` are never used
[INFO] [stderr]   --> src/input/buffer.rs:55:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | impl Buffer {
[INFO] [stderr]    | ----------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 55 |     pub fn just_pressed(&self, button: Buttons) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub fn released(&self, button: Buttons) -> bool {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Qcb`, `Dpb`, `Hcf`, and `Hcb` are never constructed
[INFO] [stderr]   --> src/input/motions.rs:6:5
[INFO] [stderr]    |
[INFO] [stderr]  4 | pub enum Motions {
[INFO] [stderr]    |          ------- variants in this enum
[INFO] [stderr]  5 |     Qcf,
[INFO] [stderr]  6 |     Qcb,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]  7 |     Dpf,
[INFO] [stderr]  8 |     Dpb,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]  9 |     Hcf,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 10 |     Hcb,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Motions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `motion_timed` is never used
[INFO] [stderr]    --> src/input/motions.rs:218:12
[INFO] [stderr]     |
[INFO] [stderr]  65 | impl Buffer {
[INFO] [stderr]     | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 218 |     pub fn motion_timed(&self, motion: Motions, button: Buttons, range: usize, left: bool) {}
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `can_add_x_position` is never used
[INFO] [stderr]   --> src/physics/mod.rs:77:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | impl Physics {
[INFO] [stderr]    | ------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub fn can_add_x_position(&mut self, add: i32) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UpperRising` is never constructed
[INFO] [stderr]   --> src/state_machine/states/common/reacting.rs:60:12
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub struct UpperRising;
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FrontSpin` is never constructed
[INFO] [stderr]   --> src/state_machine/states/common/reacting.rs:79:12
[INFO] [stderr]    |
[INFO] [stderr] 79 | pub struct FrontSpin;
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BackSpin` is never constructed
[INFO] [stderr]   --> src/state_machine/states/common/reacting.rs:98:12
[INFO] [stderr]    |
[INFO] [stderr] 98 | pub struct BackSpin;
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LowerWeak` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:117:12
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub struct LowerWeak;
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LowerMid` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:136:12
[INFO] [stderr]     |
[INFO] [stderr] 136 | pub struct LowerMid;
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LowerStrong` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:155:12
[INFO] [stderr]     |
[INFO] [stderr] 155 | pub struct LowerStrong;
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LowerRising` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:174:12
[INFO] [stderr]     |
[INFO] [stderr] 174 | pub struct LowerRising;
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CrouchWeak` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:193:12
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub struct CrouchWeak;
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CrouchMid` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:212:12
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub struct CrouchMid;
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CrouchStrong` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:231:12
[INFO] [stderr]     |
[INFO] [stderr] 231 | pub struct CrouchStrong;
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GrdStandPre` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:250:12
[INFO] [stderr]     |
[INFO] [stderr] 250 | pub struct GrdStandPre;
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GrdStandEnd` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:269:12
[INFO] [stderr]     |
[INFO] [stderr] 269 | pub struct GrdStandEnd;
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GrdCrouchPre` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:290:12
[INFO] [stderr]     |
[INFO] [stderr] 290 | pub struct GrdCrouchPre;
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GrdCrouchEnd` is never constructed
[INFO] [stderr]    --> src/state_machine/states/common/reacting.rs:309:12
[INFO] [stderr]     |
[INFO] [stderr] 309 | pub struct GrdCrouchEnd;
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `common_crouching_reaction_transitions` is never used
[INFO] [stderr]   --> src/state_machine/transitions/react.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn common_crouching_reaction_transitions(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `screen_to_world_num` is never used
[INFO] [stderr]  --> src/utils/math.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn screen_to_world_num(coord: i32) -> i32 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `screen_to_world` is never used
[INFO] [stderr]   --> src/utils/math.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn screen_to_world(coord: IVec2) -> (i32, i32) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ui_to_sprite` is never used
[INFO] [stderr]   --> src/utils/math.rs:36:8
[INFO] [stderr]    |
[INFO] [stderr] 36 | pub fn ui_to_sprite(x: i32, y: i32) -> (i32, i32) {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `screen_to_sprite` is never used
[INFO] [stderr]   --> src/utils/math.rs:56:8
[INFO] [stderr]    |
[INFO] [stderr] 56 | pub fn screen_to_sprite(x: f32, y: f32, w: i32, h: i32) -> (f32, f32) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FWIDTH` is never used
[INFO] [stderr]   --> src/main.rs:36:15
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub const FWIDTH: f32 = WIDTH as f32;
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FHEIGHT` is never used
[INFO] [stderr]   --> src/main.rs:37:15
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub const FHEIGHT: f32 = HEIGHT as f32;
[INFO] [stderr]    |               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `nooch` (bin "nooch" test) generated 35 warnings (run `cargo fix --bin "nooch" -p nooch --tests` to apply 7 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s
[INFO] [stderr]      Running unittests src/imgui/lib.rs (/opt/rustwide/target/debug/deps/nooch-de3db309f2b3dc55)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/nooch-0f4d79caa45bacb5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]    Doc-tests nooch
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "157bd92b03107819f98ae2f745257eccd3f40b65bcee18d67f7536cb1e277725", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "157bd92b03107819f98ae2f745257eccd3f40b65bcee18d67f7536cb1e277725", kill_on_drop: false }`
[INFO] [stdout] 157bd92b03107819f98ae2f745257eccd3f40b65bcee18d67f7536cb1e277725
