[INFO] fetching crate rayon-hash 0.5.0... [INFO] testing rayon-hash-0.5.0 against beta-2022-02-22 for beta-1.60-1 [INFO] extracting crate rayon-hash 0.5.0 into /workspace/builds/worker-87/source [INFO] validating manifest of crates.io crate rayon-hash 0.5.0 on toolchain beta-2022-02-22 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate rayon-hash 0.5.0 [INFO] finished tweaking crates.io crate rayon-hash 0.5.0 [INFO] tweaked toml for crates.io crate rayon-hash 0.5.0 written to /workspace/builds/worker-87/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded hashbrown v0.3.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 15af9528b75c529fc2f622ff865b3860c20f2ac4e3cdd211b3ee776af156a0b2 [INFO] running `Command { std: "docker" "start" "-a" "15af9528b75c529fc2f622ff865b3860c20f2ac4e3cdd211b3ee776af156a0b2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "15af9528b75c529fc2f622ff865b3860c20f2ac4e3cdd211b3ee776af156a0b2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "15af9528b75c529fc2f622ff865b3860c20f2ac4e3cdd211b3ee776af156a0b2", kill_on_drop: false }` [INFO] [stdout] 15af9528b75c529fc2f622ff865b3860c20f2ac4e3cdd211b3ee776af156a0b2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cb1427ae8b600b529886835d5bb4487e96fa3834c309f4ea9e744b5ca8f0f19a [INFO] running `Command { std: "docker" "start" "-a" "cb1427ae8b600b529886835d5bb4487e96fa3834c309f4ea9e744b5ca8f0f19a", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.7 [INFO] [stderr] Compiling crossbeam-epoch v0.9.7 [INFO] [stderr] Compiling either v1.6.1 [INFO] [stderr] Compiling num_cpus v1.13.1 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling rayon v1.5.1 [INFO] [stderr] Compiling crossbeam-channel v0.5.2 [INFO] [stderr] Compiling crossbeam-deque v0.8.1 [INFO] [stderr] Compiling rayon-core v1.9.1 [INFO] [stderr] Compiling rayon-hash v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2540:34 [INFO] [stdout] | [INFO] [stdout] 2540 | fn next(&mut self) -> Option<(&'a K)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2540 - fn next(&mut self) -> Option<(&'a K)> { [INFO] [stdout] 2540 + fn next(&mut self) -> Option<&'a K> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2563:34 [INFO] [stdout] | [INFO] [stdout] 2563 | fn next(&mut self) -> Option<(&'a V)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2563 - fn next(&mut self) -> Option<(&'a V)> { [INFO] [stdout] 2563 + fn next(&mut self) -> Option<&'a V> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2586:34 [INFO] [stdout] | [INFO] [stdout] 2586 | fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2586 - fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stdout] 2586 + fn next(&mut self) -> Option<&'a mut V> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:18:24 [INFO] [stdout] | [INFO] [stdout] 18 | use std::alloc::{self, LayoutErr}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:21:20 [INFO] [stdout] | [INFO] [stdout] 21 | fn layout_err() -> LayoutErr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:230:11 [INFO] [stdout] | [INFO] [stdout] 230 | impl From for CollectionAllocErr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:59:78 [INFO] [stdout] | [INFO] [stdout] 59 | pub(crate) fn from_size_align(size: usize, align: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:147:68 [INFO] [stdout] | [INFO] [stdout] 147 | pub(crate) fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:176:70 [INFO] [stdout] | [INFO] [stdout] 176 | pub(crate) fn extend(&self, next: Self) -> Result<(Self, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:194:54 [INFO] [stdout] | [INFO] [stdout] 194 | pub(crate) fn array(n: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:232:16 [INFO] [stdout] | [INFO] [stdout] 232 | fn from(_: LayoutErr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/std_hash/table.rs:4:42 [INFO] [stdout] | [INFO] [stdout] 4 | use std::alloc::{alloc, dealloc, Layout, LayoutErr, handle_alloc_error}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/std_hash/table.rs:663:71 [INFO] [stdout] | [INFO] [stdout] 663 | fn calculate_layout(capacity: usize) -> Result<(Layout, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.67s [INFO] running `Command { std: "docker" "inspect" "cb1427ae8b600b529886835d5bb4487e96fa3834c309f4ea9e744b5ca8f0f19a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cb1427ae8b600b529886835d5bb4487e96fa3834c309f4ea9e744b5ca8f0f19a", kill_on_drop: false }` [INFO] [stdout] cb1427ae8b600b529886835d5bb4487e96fa3834c309f4ea9e744b5ca8f0f19a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ef4f59fa52a74015acbbf2774ac47766a98deba2408910cc24b2d1532eca0f7c [INFO] running `Command { std: "docker" "start" "-a" "ef4f59fa52a74015acbbf2774ac47766a98deba2408910cc24b2d1532eca0f7c", kill_on_drop: false }` [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Compiling hashbrown v0.3.1 [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2540:34 [INFO] [stdout] | [INFO] [stdout] 2540 | fn next(&mut self) -> Option<(&'a K)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2540 - fn next(&mut self) -> Option<(&'a K)> { [INFO] [stdout] 2540 + fn next(&mut self) -> Option<&'a K> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2563:34 [INFO] [stdout] | [INFO] [stdout] 2563 | fn next(&mut self) -> Option<(&'a V)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2563 - fn next(&mut self) -> Option<(&'a V)> { [INFO] [stdout] 2563 + fn next(&mut self) -> Option<&'a V> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2586:34 [INFO] [stdout] | [INFO] [stdout] 2586 | fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2586 - fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stdout] 2586 + fn next(&mut self) -> Option<&'a mut V> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:18:24 [INFO] [stdout] | [INFO] [stdout] 18 | use std::alloc::{self, LayoutErr}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:21:20 [INFO] [stdout] | [INFO] [stdout] 21 | fn layout_err() -> LayoutErr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:230:11 [INFO] [stdout] | [INFO] [stdout] 230 | impl From for CollectionAllocErr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:59:78 [INFO] [stdout] | [INFO] [stdout] 59 | pub(crate) fn from_size_align(size: usize, align: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:147:68 [INFO] [stdout] | [INFO] [stdout] 147 | pub(crate) fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:176:70 [INFO] [stdout] | [INFO] [stdout] 176 | pub(crate) fn extend(&self, next: Self) -> Result<(Self, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:194:54 [INFO] [stdout] | [INFO] [stdout] 194 | pub(crate) fn array(n: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:232:16 [INFO] [stdout] | [INFO] [stdout] 232 | fn from(_: LayoutErr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/std_hash/table.rs:4:42 [INFO] [stdout] | [INFO] [stdout] 4 | use std::alloc::{alloc, dealloc, Layout, LayoutErr, handle_alloc_error}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/std_hash/table.rs:663:71 [INFO] [stdout] | [INFO] [stdout] 663 | fn calculate_layout(capacity: usize) -> Result<(Layout, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rayon-hash v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2540:34 [INFO] [stdout] | [INFO] [stdout] 2540 | fn next(&mut self) -> Option<(&'a K)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2540 - fn next(&mut self) -> Option<(&'a K)> { [INFO] [stdout] 2540 + fn next(&mut self) -> Option<&'a K> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2563:34 [INFO] [stdout] | [INFO] [stdout] 2563 | fn next(&mut self) -> Option<(&'a V)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2563 - fn next(&mut self) -> Option<(&'a V)> { [INFO] [stdout] 2563 + fn next(&mut self) -> Option<&'a V> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/std_hash/map.rs:2586:34 [INFO] [stdout] | [INFO] [stdout] 2586 | fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2586 - fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stdout] 2586 + fn next(&mut self) -> Option<&'a mut V> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:18:24 [INFO] [stdout] | [INFO] [stdout] 18 | use std::alloc::{self, LayoutErr}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:21:20 [INFO] [stdout] | [INFO] [stdout] 21 | fn layout_err() -> LayoutErr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:230:11 [INFO] [stdout] | [INFO] [stdout] 230 | impl From for CollectionAllocErr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:59:78 [INFO] [stdout] | [INFO] [stdout] 59 | pub(crate) fn from_size_align(size: usize, align: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:147:68 [INFO] [stdout] | [INFO] [stdout] 147 | pub(crate) fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:176:70 [INFO] [stdout] | [INFO] [stdout] 176 | pub(crate) fn extend(&self, next: Self) -> Result<(Self, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:194:54 [INFO] [stdout] | [INFO] [stdout] 194 | pub(crate) fn array(n: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/alloc.rs:232:16 [INFO] [stdout] | [INFO] [stdout] 232 | fn from(_: LayoutErr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/std_hash/table.rs:4:42 [INFO] [stdout] | [INFO] [stdout] 4 | use std::alloc::{alloc, dealloc, Layout, LayoutErr, handle_alloc_error}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stdout] --> src/std_hash/table.rs:663:71 [INFO] [stdout] | [INFO] [stdout] 663 | fn calculate_layout(capacity: usize) -> Result<(Layout, usize), LayoutErr> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 5.82s [INFO] running `Command { std: "docker" "inspect" "ef4f59fa52a74015acbbf2774ac47766a98deba2408910cc24b2d1532eca0f7c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef4f59fa52a74015acbbf2774ac47766a98deba2408910cc24b2d1532eca0f7c", kill_on_drop: false }` [INFO] [stdout] ef4f59fa52a74015acbbf2774ac47766a98deba2408910cc24b2d1532eca0f7c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-87/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] e6471256322c1f79e644de28f7b8f3562043052378605ac9cd0dcca5a5325780 [INFO] running `Command { std: "docker" "start" "-a" "e6471256322c1f79e644de28f7b8f3562043052378605ac9cd0dcca5a5325780", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/std_hash/map.rs:2540:34 [INFO] [stderr] | [INFO] [stderr] 2540 | fn next(&mut self) -> Option<(&'a K)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2540 - fn next(&mut self) -> Option<(&'a K)> { [INFO] [stderr] 2540 + fn next(&mut self) -> Option<&'a K> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/std_hash/map.rs:2563:34 [INFO] [stderr] | [INFO] [stderr] 2563 | fn next(&mut self) -> Option<(&'a V)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2563 - fn next(&mut self) -> Option<(&'a V)> { [INFO] [stderr] 2563 + fn next(&mut self) -> Option<&'a V> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/std_hash/map.rs:2586:34 [INFO] [stderr] | [INFO] [stderr] 2586 | fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2586 - fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stderr] 2586 + fn next(&mut self) -> Option<&'a mut V> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:18:24 [INFO] [stderr] | [INFO] [stderr] 18 | use std::alloc::{self, LayoutErr}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:21:20 [INFO] [stderr] | [INFO] [stderr] 21 | fn layout_err() -> LayoutErr { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:230:11 [INFO] [stderr] | [INFO] [stderr] 230 | impl From for CollectionAllocErr { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:59:78 [INFO] [stderr] | [INFO] [stderr] 59 | pub(crate) fn from_size_align(size: usize, align: usize) -> Result { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:147:68 [INFO] [stderr] | [INFO] [stderr] 147 | pub(crate) fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:176:70 [INFO] [stderr] | [INFO] [stderr] 176 | pub(crate) fn extend(&self, next: Self) -> Result<(Self, usize), LayoutErr> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:194:54 [INFO] [stderr] | [INFO] [stderr] 194 | pub(crate) fn array(n: usize) -> Result { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/alloc.rs:232:16 [INFO] [stderr] | [INFO] [stderr] 232 | fn from(_: LayoutErr) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/std_hash/table.rs:4:42 [INFO] [stderr] | [INFO] [stderr] 4 | use std::alloc::{alloc, dealloc, Layout, LayoutErr, handle_alloc_error}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::alloc::LayoutErr`: Name does not follow std convention, use LayoutError [INFO] [stderr] --> src/std_hash/table.rs:663:71 [INFO] [stderr] | [INFO] [stderr] 663 | fn calculate_layout(capacity: usize) -> Result<(Layout, usize), LayoutErr> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `rayon-hash` (lib) generated 13 warnings [INFO] [stderr] warning: `rayon-hash` (lib test) generated 13 warnings (13 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.21s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rayon_hash-d9eb049b7afe9588) [INFO] [stdout] [INFO] [stdout] running 79 tests [INFO] [stdout] test std_hash::map::test_map::test_behavior_resize_policy ... ok [INFO] [stdout] test std_hash::map::test_map::test_empty_entry ... ok [INFO] [stdout] test std_hash::map::test_map::test_drops ... ok [INFO] [stdout] test std_hash::map::test_map::test_conflict_remove ... ok [INFO] [stdout] test std_hash::map::test_map::test_capacity_not_less_than_len ... ok [INFO] [stdout] test std_hash::map::test_map::test_empty_iter ... ok [INFO] [stdout] test std_hash::map::test_map::test_empty_remove ... ok [INFO] [stdout] test std_hash::map::test_map::test_clone ... ok [INFO] [stdout] test std_hash::map::test_map::test_entry ... ok [INFO] [stdout] test std_hash::map::test_map::test_expand ... ok [INFO] [stdout] test std_hash::map::test_map::test_eq ... ok [INFO] [stdout] test std_hash::map::test_map::test_entry_take_doesnt_corrupt ... ok [INFO] [stdout] test std_hash::map::test_map::test_find_mut ... ok [INFO] [stdout] test std_hash::map::test_map::test_extend_ref ... ok [INFO] [stdout] test std_hash::map::test_map::test_find ... ok [INFO] [stdout] test std_hash::map::test_map::test_create_capacity_zero ... ok [INFO] [stdout] test std_hash::map::test_map::test_index ... ok [INFO] [stdout] test std_hash::map::test_map::test_insert ... ok [INFO] [stdout] test std_hash::map::test_map::test_from_iter ... ok [INFO] [stdout] test std_hash::map::test_map::test_insert_overwrite ... ok [INFO] [stdout] test std_hash::map::test_map::test_insert_conflicts ... ok [INFO] [stdout] test std_hash::map::test_map::test_is_empty ... ok [INFO] [stdout] test std_hash::map::test_map::test_into_iter_drops ... ok [INFO] [stdout] test std_hash::map::test_map::test_iter_len ... ok [INFO] [stdout] test std_hash::map::test_map::test_iter_mut_len ... ok [INFO] [stdout] test std_hash::map::test_map::test_iterate ... ok [INFO] [stdout] test std_hash::map::test_map::test_keys ... ok [INFO] [stdout] test std_hash::map::test_map::test_mut_size_hint ... ok [INFO] [stdout] test std_hash::map::test_map::test_occupied_entry_key ... ok [INFO] [stdout] test std_hash::map::test_map::test_remove ... ok [INFO] [stdout] test std_hash::map::test_map::test_show ... ok [INFO] [stdout] test std_hash::map::test_map::test_reserve_shrink_to_fit ... ok [INFO] [stdout] test std_hash::map::test_map::test_retain ... ok [INFO] [stdout] test std_hash::map::test_map::test_size_hint ... ok [INFO] [stdout] test std_hash::map::test_map::test_vacant_entry_key ... ok [INFO] [stdout] test std_hash::map::test_map::test_values_mut ... ok [INFO] [stdout] test std_hash::map::test_map::test_values ... ok [INFO] [stdout] test std_hash::set::test_set::test_difference ... ok [INFO] [stdout] test std_hash::set::test_set::test_disjoint ... ok [INFO] [stdout] test std_hash::map::test_map::test_zero_capacities ... ok [INFO] [stdout] test std_hash::set::test_set::test_extend_ref ... ok [INFO] [stdout] test std_hash::set::test_set::test_from_iter ... ok [INFO] [stdout] test std_hash::set::test_set::test_eq ... ok [INFO] [stdout] test std_hash::set::test_set::test_intersection ... ok [INFO] [stdout] test std_hash::set::test_set::test_iterate ... ok [INFO] [stdout] test std_hash::set::test_set::test_retain ... ok [INFO] [stdout] test std_hash::set::test_set::test_show ... ok [INFO] [stdout] test std_hash::set::test_set::test_replace ... ok [INFO] [stdout] test std_hash::set::test_set::test_drain ... ok [INFO] [stdout] test std_hash::set::test_set::test_move_iter ... ok [INFO] [stdout] test std_hash::set::test_set::test_union ... ok [INFO] [stdout] test std_hash::set::test_set::test_subset_and_superset ... ok [INFO] [stdout] test std_hash::set::test_set::test_symmetric_difference ... ok [INFO] [stdout] test std_hash::set::test_set::test_trivial_drain ... ok [INFO] [stdout] test std_hash::table::can_alias_safehash_as_hash ... ok [INFO] [stdout] test std_hash::set::test_set::test_zero_capacities ... ok [INFO] [stdout] test std_hash::map::test_map::test_adaptive ... ok [INFO] [stdout] test par::map::test_par_map::test_empty_iter ... ok [INFO] [stdout] test par::map::test_par_map::test_from_iter ... ok [INFO] [stdout] test par::set::test_par_set::test_from_iter ... ok [INFO] [stdout] test par::set::test_par_set::test_symmetric_difference ... ok [INFO] [stdout] test par::set::test_par_set::test_intersection ... ok [INFO] [stdout] test par::map::test_par_map::test_eq ... ok [INFO] [stdout] test par::set::test_par_set::test_eq ... ok [INFO] [stdout] test par::map::test_par_map::test_extend_ref ... ok [INFO] [stdout] test par::set::test_par_set::test_iterate ... ok [INFO] [stdout] test par::set::test_par_set::test_difference ... ok [INFO] [stdout] test par::set::test_par_set::test_move_iter ... ok [INFO] [stdout] test par::map::test_par_map::test_keys ... ok [INFO] [stdout] test par::map::test_par_map::test_values ... ok [INFO] [stdout] test par::set::test_par_set::test_union ... ok [INFO] [stdout] test par::map::test_par_map::test_into_iter_drops ... ok [INFO] [stdout] test par::map::test_par_map::test_iterate ... ok [INFO] [stdout] test par::set::test_par_set::test_extend_ref ... ok [INFO] [stdout] test par::map::test_par_map::test_values_mut ... ok [INFO] [stdout] test par::set::test_par_set::test_subset_and_superset ... ok [INFO] [stdout] test std_hash::map::test_map::test_index_nonexistent - should panic ... ok [INFO] [stdout] test par::set::test_par_set::test_disjoint ... ok [INFO] [stdout] test std_hash::map::test_map::test_lots_of_insertions ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 79 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 35.32s [INFO] [stdout] [INFO] [stderr] Doc-tests rayon-hash [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/std_hash/map.rs:2540:34 [INFO] [stderr] | [INFO] [stderr] 2540 | fn next(&mut self) -> Option<(&'a K)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2540 - fn next(&mut self) -> Option<(&'a K)> { [INFO] [stderr] 2540 + fn next(&mut self) -> Option<&'a K> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/std_hash/map.rs:2563:34 [INFO] [stderr] | [INFO] [stderr] 2563 | fn next(&mut self) -> Option<(&'a V)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2563 - fn next(&mut self) -> Option<(&'a V)> { [INFO] [stderr] 2563 + fn next(&mut self) -> Option<&'a V> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/std_hash/map.rs:2586:34 [INFO] [stderr] | [INFO] [stderr] 2586 | fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2586 - fn next(&mut self) -> Option<(&'a mut V)> { [INFO] [stderr] 2586 + fn next(&mut self) -> Option<&'a mut V> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 3 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 80 tests [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::&'_HashSet::bitand (line 898) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::get (line 566) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::is_disjoint (line 589) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::&'_HashSet::bitxor (line 930) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::is_superset (line 641) ... FAILED [INFO] [stdout] test src/std_hash/map.rs - std_hash::map::HashMap::remove (line 1439) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::&'_HashSet::sub (line 962) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::union (line 506) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::intersection (line 473) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::is_subset (line 615) ... FAILED [INFO] [stdout] test src/std_hash/map.rs - std_hash::map::HashMap::remove_entry (line 1467) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::clear (line 250) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::symmetric_difference (line 445) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::drain (line 227) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::is_empty (line 210) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet (line 93) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::take (line 741) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::retain (line 765) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::replace (line 689) ... FAILED [INFO] [stdout] test src/std_hash/map.rs - std_hash::map::HashMap::len (line 874) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::with_hasher (line 280) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet::difference (line 414) ... FAILED [INFO] [stdout] test src/std_hash/set.rs - std_hash::set::HashSet (line 70) ... FAILED [INFO] [stderr] error: test failed, to rerun pass '--doc' [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type lib --crate-name rayon_hash --test /opt/rustwide/workdir/src/lib.rs -L dependency=/opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern hashbrown=/opt/rustwide/target/debug/deps/libhashbrown-ccf69460ba90d4f8.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-77483a987c30e46d.rlib --extern rand_xorshift=/opt/rustwide/target/debug/deps/librand_xorshift-06e217ad92df2bfc.rlib --extern rayon=/opt/rustwide/target/debug/deps/librayon-833563c7d184b136.rlib --extern rayon_hash=/opt/rustwide/target/debug/deps/librayon_hash-5e7dc5ad988773d0.rlib -C embed-bitcode=no --error-format human` (signal: 9, SIGKILL: kill) [INFO] running `Command { std: "docker" "inspect" "e6471256322c1f79e644de28f7b8f3562043052378605ac9cd0dcca5a5325780", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e6471256322c1f79e644de28f7b8f3562043052378605ac9cd0dcca5a5325780", kill_on_drop: false }` [INFO] [stdout] e6471256322c1f79e644de28f7b8f3562043052378605ac9cd0dcca5a5325780